Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Azure Yapay Zeka Arama Azure portalı, REST API'leri ve Azure SDK’ları aracılığıyla kullanılabilir. Ayrıca kuruluş içeriğini Microsoft Foundry portalındaki aracılar için yeniden kullanılabilir, izin kullanan bilgi bankalarına dönüştüren yönetilen bilgi katmanı Foundry IQ'yu temel alır.
Important
(önizleme) olarak işaretlenen özellikler, özellikler veya özellikler hizmet düzeyi sözleşmesi kapsamında değildir, üretim iş yükleri için önerilmez ve genel kullanıma sunulmadan önce değişebilir veya kısıtlanabilir. Azure Yapay Zeka Arama önizleme terimleri, tek başına veya genel kullanıma sunulan bir özelliğin parçası olsun, tüm önizleme işlevleri için geçerlidir.
blob bilgi kaynağı Azure Blob Depolama veya ADLS 2. Nesil içeriğini Azure Yapay Zeka Arama'daki bir aracılı alma işlem hattına alır. Bilgi kaynakları bağımsız olarak oluşturulur, bilgi bankasında başvurulur ve çalışma zamanında bilgi bankası sorgulandığında temel veri olarak kullanılır.
Blob bilgi kaynağı oluşturduğunuzda, aşağıdaki Azure Yapay Zeka Arama nesnelerini otomatik olarak oluşturmak için bir dış veri kaynağı, modeller ve özellikler belirtirsiniz:
- Blob kabını temsil eden bir veri kaynağı.
- Kapsayıcıdan çok modüllü içeriği öbekleyen ve isteğe bağlı olarak vektörleştiren bir beceri kümesi.
- Zenginleştirilmiş içeriği depolayan ve aracılı alma ölçütlerini karşılayan bir dizin.
- Dizin oluşturma ve zenginleştirme işlem hattını yönlendirmek için önceki nesneleri kullanan bir dizin oluşturucu.
Oluşturulan dizin oluşturucu, önkoşulları, desteklenen belge biçimleri ve sınırlamaları blob bilgi kaynakları için de geçerli olan blob dizin oluşturucuya uygundur. Daha fazla bilgi için blob dizin oluşturucu belgelerine ve dizin oluşturucu sınırlarına bakın. Oluşturulan beceri kümesi bir dış hizmeti çağırırsa, bu becerinin giriş ve hizmet sınırları da geçerlidir.
Not
Kullanıcı erişimi Azure Depolama belge (blob) düzeyinde belirtilirse, bir bilgi kaynağı izin meta verilerini Azure Yapay Zeka Arama'daki dizine alınan içeriğe iletebilir. Daha fazla bilgi için bkz. ADLS 2. Nesil izin meta verileri (önizleme) veya Blob RBAC kapsamları (önizleme).
Kullanım desteği
| Azure portalı | Microsoft Foundry portalı | .NET SDK | Python SDK'sı | Java SDK | JavaScript SDK'sı | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Önkoşullar
Azure Yapay Zeka Arama hizmetinin her hangi bir
bölgesinde özerk bilgi edinimini sağlayan. Azure Blob Depolama veya Azure Data Lake Storage (ADLS) 2. Nesil hesabı.
Metin içeriği için desteklenen içerik türlerine sahip bir blob kapsayıcısı. İsteğe bağlı görüntü sözelleştirmesi için desteklenen içerik türü, sohbet tamamlama modelinizin görüntü dosyasını analiz edip açıklayamayacağına bağlıdır.
contentExtractionModestandardise,https://<resource-name>.services.ai.azure.comuç noktasına sahip, Foundry Tools'da Content Understanding tarafından desteklenen bir bölgede bir Microsoft Foundry kaynağı kullanın. Kaynağın bir ekleme modeli dağıtımı ve görüntü sözelleştirmeyi etkinleştirirseniz çok modüllü bir sohbet modeli dağıtımı olmalıdır.Bilgi kaynakları oluşturma izni. Kullanıcı hesabınıza atanan Arama Hizmeti Katkıda Bulunanı ve Arama Dizini Veri Katkıda Bulunanı rolleriyle anahtarsız kimlik doğrulamasını yapılandırın (önerilir) veya bir yönetici API anahtarı kullanın.
Kaynak depolama hesabı kapsamında Depolama Blob Veri Okuyucusu ve Microsoft Foundry kaynağında Bilişsel Hizmetler Kullanıcısı ile arama hizmeti için yönetilen kimlik. Farklı bir depolama hesabında bir varlık deposu yapılandırdıysanız, Storage Blob Data Contributor rolünü de bu depolama hesabı kapsamına atayın. Kaynak ve varlık kapsayıcıları bir hesabı paylaşıyorsa , Depolama Blobu Veri Katkıda Bulunanı hem kaynak okuma erişimi hem de varlık deposu okuma/yazma erişimi sağlar.
privateöğesininetworkAccessModeolarak ayarlarsanız, aşağıdaki gereksinimleri karşılayın:S2, S3, L1 veya L2 arama hizmeti kullanın.
Arama hizmetinde sistem tarafından atanan veya kullanıcı tarafından atanan yönetilen kimliği etkinleştirin, depolama hesabında Depolama Blobu Veri Okuyucusu rolünü verin ve bir
ResourceId=/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>bağlantı dizesi kullanın. Kullanıcı tarafından atanan kimlik içiningestionParameters.identityöğesini de ayarlayın.Grup kimliğiyle
blobdepolama hesabına paylaşılan bir özel bağlantı oluşturun ve onaylayın. ADLS Gen2 için hemblobhem dedfspaylaşılan özel bağlantılarını oluşturun ve onaylayın.Her korumalı model uç noktası için paylaşılan bir özel bağlantı oluşturun ve onaylayın. Azure OpenAI uç noktaları için
openai_accountgrup kimliğini ve Foundry kaynak uç noktaları içinfoundry_accountgrup kimliğini kullanın.
Gerekli
Azure.Search.Documentspaketi:2026-08-01-previewözellikleri için en son önizleme paketi:dotnet add package Azure.Search.Documents --prerelease2026-04-01özellikleri için en son kararlı paket:dotnet add package Azure.Search.Documents
Anahtarsız kimlik doğrulaması için
Azure.Identitypaket:dotnet add package Azure.Identity
Gerekli
azure-search-documentspaketi:2026-08-01-previewözellikleri için en son önizleme paketi:pip install --pre azure-search-documents2026-04-01özellikleri için en son kararlı paket:pip install azure-search-documents
Anahtarsız kimlik doğrulaması için
azure-identitypaket:pip install azure-identity
Gerekli Arama Hizmeti REST API sürümü:
Önizleme özellikleri için: 2026-08-01-preview
Genel kullanıma sunulan özellikler için: 2026-04-01
Anahtarsız kimlik doğrulaması için her HTTP isteğinin üst bilgisine
Authorizationbir Microsoft Entra ID belirteci ekleyin.
Mevcut bilgi kaynaklarını denetleme
Bilgi kaynağı üst düzey, yeniden kullanılabilir bir nesnedir. Mevcut bilgi kaynakları hakkında bilgi edinmek, yeni nesneleri yeniden kullanmak veya adlandırmak için yararlıdır.
Bilgi kaynaklarını ada ve türe göre listelemek için aşağıdaki kodu çalıştırın.
// List knowledge sources by name and type
using Azure.Search.Documents.Indexes;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
var knowledgeSources = indexClient.GetKnowledgeSourcesAsync();
Console.WriteLine("Knowledge Sources:");
await foreach (var ks in knowledgeSources)
{
Console.WriteLine($" Name: {ks.Name}, Type: {ks.GetType().Name}");
}
Başvuru:SearchIndexClient
# List knowledge sources by name and type
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
for ks in index_client.list_knowledge_sources():
print(f" - {ks.name} ({ks.kind})")
Başvuru:SearchIndexClient
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}
Başvuru:Bilgi Kaynakları - Liste
JSON tanımını gözden geçirmek için, ismiyle tek bir bilgi kaynağını da döndürebilirsiniz.
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
// Specify the knowledge source name to retrieve
string ksNameToGet = "earth-knowledge-source";
// Get its definition
var knowledgeSourceResponse = await indexClient.GetKnowledgeSourceAsync(ksNameToGet);
var ks = knowledgeSourceResponse.Value;
// Serialize to JSON for display
var jsonOptions = new JsonSerializerOptions
{
WriteIndented = true,
DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.Never
};
Console.WriteLine(JsonSerializer.Serialize(ks, ks.GetType(), jsonOptions));
Başvuru:SearchIndexClient
# Get a knowledge source definition
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
import json
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
ks = index_client.get_knowledge_source("knowledge_source_name")
print(json.dumps(ks.as_dict(), indent = 2))
Başvuru:SearchIndexClient
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}
Başvuru:Bilgi Kaynakları - Get
Aşağıdaki JSON, blob bilgi kaynağı için örnek bir yanıttır.
{
"name": "my-blob-ks",
"kind": "azureBlob",
"description": "A sample blob knowledge source.",
"encryptionKey": null,
"azureBlobParameters": {
"connectionString": "<REDACTED>",
"containerName": "blobcontainer",
"folderPath": null,
"isADLSGen2": false,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "standard",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<aoai-endpoint>",
"deploymentId": "gpt-5-mini",
"modelName": "gpt-5-mini",
"authIdentity": null
}
},
"ingestionSchedule": null,
"assetStore": null,
"aiServices": {
"uri": "<aoai-endpoint>",
}
},
"createdResources": {
"datasource": "my-blob-ks-datasource",
"indexer": "my-blob-ks-indexer",
"skillset": "my-blob-ks-skillset",
"index": "my-blob-ks-index"
}
}
}
Not
Hassas bilgiler sansürlenir. Oluşturulan kaynaklar yanıtın sonunda görünür.
Bilgi kaynağı oluşturma
Blob bilgi kaynağı oluşturmak için aşağıdaki kodu çalıştırın.
// Create a blob knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure.Search.Documents.Models;
using Azure.Identity;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
var chatCompletionParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiGptDeployment,
ModelName = aoaiGptModel
};
var embeddingParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiEmbeddingDeployment,
ModelName = aoaiEmbeddingModel
};
var ingestionParams = new KnowledgeSourceIngestionParameters
{
NetworkAccessMode = KnowledgeSourceNetworkAccessMode.Public,
DisableImageVerbalization = false,
ChatCompletionModel = new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: chatCompletionParams),
EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
{
AzureOpenAIParameters = embeddingParams
},
IngestionPermissionOptions = new List<KnowledgeSourceIngestionPermissionOption>
{
KnowledgeSourceIngestionPermissionOption.UserIds,
KnowledgeSourceIngestionPermissionOption.GroupIds
}
};
var blobParams = new AzureBlobKnowledgeSourceParameters(
connectionString: connectionString,
containerName: containerName
)
{
IsAdlsGen2 = false,
IngestionParameters = ingestionParams
};
var knowledgeSource = new AzureBlobKnowledgeSource(
name: "my-blob-ks",
azureBlobParameters: blobParams
)
{
Description = "This knowledge source pulls from a blob storage container."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Reference:SearchIndexClient, AzureBlobKnowledgeSource
# Create a blob knowledge source
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import AzureBlobKnowledgeSource, AzureBlobKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceAzureOpenAIVectorizer, KnowledgeSourceContentExtractionMode, KnowledgeSourceIngestionParameters
from azure.search.documents.knowledgebases.models import KnowledgeSourceNetworkAccessMode
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
knowledge_source = AzureBlobKnowledgeSource(
name = "my-blob-ks",
description = "This knowledge source pulls from a blob storage container.",
encryption_key = None,
azure_blob_parameters = AzureBlobKnowledgeSourceParameters(
connection_string = "blob_connection_string",
container_name = "blob_container_name",
folder_path = None,
is_adls_gen2 = False,
ingestion_parameters = KnowledgeSourceIngestionParameters(
network_access_mode = KnowledgeSourceNetworkAccessMode.PUBLIC,
identity = None,
disable_image_verbalization = False,
chat_completion_model = KnowledgeBaseAzureOpenAIModel(
azure_open_ai_parameters = AzureOpenAIVectorizerParameters(
resource_url = "<aoai-endpoint>",
deployment_name = "<aoai-gpt-deployment>",
model_name = "<aoai-gpt-model>",
)
),
embedding_model = KnowledgeSourceAzureOpenAIVectorizer(
azure_open_ai_parameters=AzureOpenAIVectorizerParameters(
resource_url = "<aoai-endpoint>",
deployment_name = "<aoai-embedding-deployment>",
model_name = "<aoai-embedding-model>",
)
),
content_extraction_mode = KnowledgeSourceContentExtractionMode.MINIMAL,
ingestion_schedule = None,
ingestion_permission_options = ["user_ids", "group_ids"]
)
)
)
index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
Başvuru:SearchIndexClient
### Create a blob knowledge source
PUT {{search-endpoint}}/knowledgesources/my-blob-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
{
"name": "my-blob-ks",
"kind": "azureBlob",
"description": "This knowledge source pulls from a blob storage container.",
"encryptionKey": null,
"azureBlobParameters": {
"connectionString": "ResourceId=<storage-resource-id>",
"containerName": "<blob-container-name>",
"folderPath": null,
"isADLSGen2": false,
"ingestionParameters": {
"networkAccessMode": "public",
"identity": null,
"disableImageVerbalization": null,
"chatCompletionModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "{{aoai-endpoint}}",
"deploymentId": "{{aoai-gpt-deployment}}",
"modelName": "{{aoai-gpt-model}}"
}
},
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "{{aoai-endpoint}}",
"deploymentId": "{{aoai-embedding-deployment}}",
"modelName": "{{aoai-embedding-model}}"
}
},
"contentExtractionMode": "minimal",
"ingestionSchedule": null,
"ingestionPermissionOptions": ["userIds", "groupIds"]
}
}
}
Not
ile ingestionPermissionOptionsbelge düzeyi izinlerini zorunlu kılmak için 2026-08-01-preview API sürümünü kullanın. 2026-04-01 API sürümü bu özelliği desteklemez.
Veri alımını özel bir ağ ile sınırla (önizleme)
API sürümünden 2026-08-01-preview başlayarak, networkAccessMode blob bilgi kaynağı için oluşturulan dizin oluşturucunun çalıştığı ağ ortamını denetler. Bu ayar yalnızca alımı etkiler ve bilgi bankası alma isteklerini veya yanıtlarını değiştirmez.
networkAccessMode varsayılan olarak publicöğesini kullanır ve bu da mevcut genel ağ davranışını korur. olduğunda networkAccessModeprivate, oluşturulan dizin oluşturucu özel yürütme ortamında çalışır. Azure Blob Depolama veya ADLS 2. Nesil kaynak bağlantısına erişmek için onaylı paylaşılan özel bağlantıları ve Azure OpenAI modelleri ve Microsoft Foundry kaynakları gibi desteklenen Azure bağımlılıklarını kullanır.
Özel ağ erişimini yapılandırmak ve doğrulamak için:
Özel ağ önkoşullarını tamamlayın.
Bilgi kaynağı oluşturma isteğinde
privatedeğerininetworkAccessModeolarak ayarlayın. Bu özelliği yalnızca oluşturma sırasında ayarlayabilirsiniz. Daha sonra değiştirmek için bilgi kaynağını silin ve yeniden oluşturun.Hizmet katmanı veya çalışma zamanı özel yürütmeyi desteklemiyorsa veya gerekli bir paylaşılan özel bağlantı yoksa oluşturma başarısız olabilir.
Oluşturulan dizin oluşturucunun
executionEnvironmentprivateolduğunu onaylayın.Gerekli her paylaşılan özel bağlantının onaylandığını ve doğru bağımlılığı hedeflediğini onaylayın. Tek başına başarılı oluşturma işlemi bağlantı onayını veya hedeflemeyi onaylamaz.
lastSynchronizationState.endTimebir değere sahip olana kadar bilgi kaynağının durumunu yoklayın.itemsUpdatesFailedöğesinin0olduğunu onaylayın ve ardından bağlayıcıya özgü kaynak içeriğini doğrulayın. Bir bağımlılık ulaşılamıyorsa eşitleme başarısız olur.
Dil başına otomatik çözümleyicileri kullanma (önizleme)
API sürümünden 2026-08-01-preview başlayarak blob, dizinli OneLake ve dizinli SharePoint bilgi kaynakları için dil başına otomatik çözümleyiciler kullanılabilir. etkinleştirildiğinde, Azure Yapay Zeka Arama her kaynak belgenin dilini algılar ve otomatik olarak eşleşen bir Microsoft dil çözümleyicisi uygular. Bilgi kaynağı tanımında veya sorguda çözümleyici belirtemezsiniz.
Dil başına otomatik çözümleyicileri etkinleştirmek için, minimal değerini contentExtractionMode olarak ayarlayın ve bilgi kaynağı tanımında ingestionParameters.aiServices öğesini yapılandırın.
Anahtarsız kimlik doğrulaması için, Microsoft Foundry kaynağınızdaki Bilişsel Hizmetler Kullanıcı rolünü atlayıp aiServices.apiKey arama hizmetinizin yönetilen kimliğine atayın. Anahtar tabanlı kimlik doğrulaması için, aiServices.apiKey öğesini Foundry kaynağınız için geçerli bir anahtar olarak ayarlayın.
Aşağıdaki diller desteklenir:
- English
- Japanese
- French
- Spanish
- German
- Flemenkçe
- Italian
- Brezilya Portekizcesi
- Avrupa Portekizcesi
- Basitleştirilmiş Çince
- Geleneksel Çince
- Korece
çok dilli içerik için Azure Yapay Zeka Arama, baskın algılanan dile göre bir çözümleyici seçer. Dil desteklenmeyen veya belirsiz olduğunda standart çözümleyiciyi kullanır.
Otomatik dil başına çözümleyicileri etkinleştirdiğinizde, Azure Yapay Zeka Arama verileriniz bu dillerde belgeler içerse de içermese de oluşturulan dizin şemasına desteklenen her dil için dile özgü içerik alanları ekler. Alma sırasında belgeler, algılanan dillerine göre uygun dile özgü alana yönlendirilir.
Kullanılmayan dil alanları dizine alınan içerik içermez ve en az depolama etkisine sahiptir, ancak bunlar dizin şemasının bir parçası olarak kalır ve dizin alanı sınırına doğru sayılır. Dizin tasarımınızı, alan sayınızı ve depolama gereksinimlerinizi planlarken ek alanları göz önünde bulundurun. Daha fazla bilgi için bkz. Dizin sınırları ve Arama hizmetinin kapasitesini tahmin ve yönetme.
Dil algılama, ücretsiz yapay zeka zenginleştirme ayırma sonrasında faturalandırılabilir. Daha fazla bilgi için bkz. Ücretsiz zenginleştirmeler.
Alım durumunu denetleme
Bilgi kaynağı türü ve dizin oluşturucu işlem hattı oluşturan ve arama dizinini dolduran bilgi kaynakları için ayrıntılı dizin oluşturma hataları dahil olmak üzere alım ilerleme durumunu ve durumunu izlemek için aşağıdaki kodu çalıştırın.
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
// Get knowledge source ingestion status
var statusResponse = await indexClient.GetKnowledgeSourceStatusAsync(knowledgeSourceName);
var status = statusResponse.Value;
// Serialize to JSON for display
var json = JsonSerializer.Serialize(status, new JsonSerializerOptions { WriteIndented = true });
Console.WriteLine(json);
Başvuru:SearchIndexClient
# Check knowledge source ingestion status
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
import json
index_client = SearchIndexClient(endpoint="search_url", credential=AzureKeyCredential("api_key"))
status = index_client.get_knowledge_source_status("knowledge_source_name")
print(json.dumps(status.as_dict(), indent=2))
Başvuru:SearchIndexClient
### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version={{api-version}}
Authorization: Bearer {{token}}
Content-Type: application/json
Başvuru:Bilgi Kaynakları - Durumu Al
Alma parametrelerini içeren ve etkin olarak içerik alan bir istek için yanıt aşağıdaki örneğe benzer olabilir.
{
"kind": "azureBlob",
"synchronizationStatus": "active",
"synchronizationInterval": "1d",
"currentSynchronizationState": {
"startTime": "2026-04-10T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": [
{
"key": "Item id 1",
"docURL": "https://contoso.blob.core.windows.net/contracts/2024/Q4/doc-00023.csv",
"statusCode": 400,
"componentName": "DocumentExtraction.AzureBlob.MyDataSource",
"errorMessage": "Could not read the value of column 'foo' at index '0'.",
"details": "The file could not be parsed.",
"documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388"
}
]
},
"lastSynchronizationState": {
"status": "partialSuccess",
"startTime": "2026-04-09T19:30:00Z",
"endTime": "2026-04-09T19:40:01Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": null
},
"statistics": {
"totalSynchronizations": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization": 500
}
}
Not
kind Belge düzeyi hata ayrıntılarını içeren özellik ve currentSynchronizationState.errors[] dizi, 2026-04-01 API sürümünden itibaren kullanılabilir. Önceki API sürümleri için bu alanlar döndürülmüyor. Bu lastSynchronizationState.status alan 2026-04-01 sürümünde de yenidir.
Oluşturulan nesneleri gözden geçirme
Bu bilgi kaynağını oluşturduğunuzda Azure Yapay Zeka Arama otomatik olarak bir veri kaynağı, beceri kümesi, dizin oluşturucu ve dizin oluşturur. Oluşturma yanıtı altında createdResourcesher nesneyi listeler.
Bu nesneler sabit bir şablona göre oluşturulur ve adları bilgi kaynağının adına göre oluşturulur. Nesne adlarını değiştiremezsiniz. Değişiklikler dizin oluşturucu işlem hattını bozan hatalar veya uyumsuzluklara neden olabileceğinden, bu nesneleri doğrudan düzenlemekten kaçının.
Nesne oluşturmayı doğrulamak için Azure portalını kullanabilirsiniz. İş akışı şu şekildedir:
Dizin oluşturucuda başarılı veya başarısız iletileri olup olmadığını denetleyin. Bağlantı veya kota hataları burada görünür.
Veri deponuzla bağlantıyı doğrulamak için veri kaynağını denetleyin. Bağlantı, bilgi kaynağını nasıl yapılandırdığınıza bağlı olarak bir bağlantı dizesi veya yönetilen kimlik kullanır.
İçeriğinizin nasıl parçalara ayrıldığını ve isteğe bağlı olarak nasıl vektörleştirildiğini görmek için beceri kümesini inceleyin.
hangi alanların aranabilir ve filtrelenebilir olduğu ve benzerlik araması için vektörlerin depolandığı alanlar dahil olmak üzere içeriğinizin dizine nasıl eklendiğini ve alma için nasıl kullanıma sunulduğuna bakmak için dizini denetleyin. Oluşturulan dizinde sorgu çalıştırmak için Arama Gezgini'ni kullanın.
Bilgi bankasına atama
Bilgi kaynağından memnunsanız bunu bir bilgi bankasına ekleyin.
Bilgi bankasına sorgu yapma
Bilgi bankasını yapılandırdıktan sonra, bilgi kaynağını sorgulamak için alma eylemini veya MCP uç noktasını çağırın . Senaryonuzla eşleşen yapılandırmayı seçin.
Belge düzeyinde izinleri uygulama (önizleme)
Belge düzeyi izinlerini zorunlu kılmak için, bu bilgi kaynağını oluştururken ayarlayın ingestionPermissionOptions ve ardından kullanıcının erişim belirtecini alma isteğine ekleyin. Daha fazla bilgi için bkz. Sorgu zamanında izinleri zorlama (önizleme).
Belgeye gömülü görüntüleri görüntüleme (önizleme)
Diyagramlar veya taramalar gibi belgeye gömülü görüntüleri yanıt sentezi yanıtlarında görüntülemek için, bu bilgi kaynağında assetStore yapılandırın ve ardından bilgi tabanında görüntü sunmayı etkinleştirin.
ingestionPermissionOptions yapılandırıldığında, görüntü sunumu desteklenmez. Daha fazla bilgi için bkz. Aracı tabanlı almada belgeye gömülü görüntüleri ortaya çıkarma (önizleme).
Bilgi kaynağını silme
Bilgi kaynağını silebilmeniz için önce, buna başvuran bilgi bankalarını silmeniz veya başvuruyu kaldırmak için bilgi bankası tanımını güncelleştirmeniz gerekir. Dizin ve dizin oluşturucu işlem hattı oluşturan bilgi kaynakları için , oluşturulan tüm nesneler de silinir. Ancak, bilgi kaynağı oluşturmak için mevcut bir dizini kullandıysanız dizininiz silinmez.
Kullanımda olan bir bilgi kaynağını silmeye çalışırsanız, eylem başarısız olur ve etkilenen bilgi bankalarının listesini döndürür.
Bilgi kaynağını silmek için:
Arama hizmetinizdeki tüm bilgi bankalarının listesini alın.
using Azure.Search.Documents.Indexes; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); var knowledgeBases = indexClient.GetKnowledgeBasesAsync(); Console.WriteLine("Knowledge Bases:"); await foreach (var kb in knowledgeBases) { Console.WriteLine($" - {kb.Name}"); }Başvuru:SearchIndexClient
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Bilgi kaynağı başvurularını denetlemek için tek bir bilgi bankası tanımı alın.
using Azure.Search.Documents.Indexes; using System.Text.Json; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); // Specify the knowledge base name to retrieve string kbNameToGet = "earth-knowledge-base"; // Get a specific knowledge base definition var knowledgeBaseResponse = await indexClient.GetKnowledgeBaseAsync(kbNameToGet); var kb = knowledgeBaseResponse.Value; // Serialize to JSON for display string json = JsonSerializer.Serialize(kb, new JsonSerializerOptions { WriteIndented = true }); Console.WriteLine(json);Başvuru:SearchIndexClient
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Bilgi bankasını silin veya birden çok bilgi kaynağınız varsa, kaynağı kaldırmak için bilgi bankasını güncelleştirin. Bu örnekte silme işlemi gösterilmektedir.
using Azure.Search.Documents.Indexes; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); await indexClient.DeleteKnowledgeBaseAsync(knowledgeBaseName); System.Console.WriteLine($"Knowledge base '{knowledgeBaseName}' deleted successfully.");Başvuru:SearchIndexClient
Bilgi kaynağını silin.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Başvuru:SearchIndexClient
Arama hizmetinizdeki tüm bilgi bankalarının listesini alın.
# Get knowledge bases from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) print("Knowledge Bases:") for kb in index_client.list_knowledge_bases(): print(f" - {kb.name}")Başvuru:SearchIndexClient
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Bilgi kaynağı başvurularını denetlemek için tek bir bilgi bankası tanımı alın.
# Get a knowledge base definition from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) kb = index_client.get_knowledge_base("knowledge_base_name") print(kb)Başvuru:SearchIndexClient
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Bilgi bankasını silin veya birden çok bilgi kaynağınız varsa, kaynağı kaldırmak için bilgi bankasını güncelleştirin. Bu örnekte silme işlemi gösterilmektedir.
# Delete a knowledge base from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) index_client.delete_knowledge_base("knowledge_base_name") print(f"Knowledge base deleted successfully.")Başvuru:SearchIndexClient
Bilgi kaynağını silin.
# Delete a knowledge source from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) index_client.delete_knowledge_source("knowledge_source_name") print(f"Knowledge source deleted successfully.")Başvuru:SearchIndexClient
Arama hizmetinizdeki tüm bilgi bankalarının listesini alın.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}Başvuru:Bilgi Bankaları - Liste
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Bilgi kaynağı başvurularını denetlemek için tek bir bilgi bankası tanımı alın.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Başvuru:Bilgi Bankaları - Get
Örnek bir yanıt aşağıdaki gibi görünebilir:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Bilgi bankasını silin veya birden çok bilgi kaynağınız varsa, kaynağı kaldırmak için bilgi bankasını güncelleştirin. Bu örnekte silme işlemi gösterilmektedir.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Başvuru:Bilgi Tabanları - Sil
Bilgi kaynağını silin.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Başvuru:Bilgi Kaynakları - Sil
İlgili içerik
- Azure Yapay Zeka Arama'te Agentic retrieval
- Bilgi kaynağı nedir?
- Bilgi bankası oluşturma
- Bilgi bankasını sorgulama
- Python örneği: Azure Yapay Zeka Arama blob bilgi kaynağı