Dosya bilgi kaynağı oluşturma (önizleme)

Note

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

Bu özellikler ve işlevler 2026-05-01-preview REST API'sinin bir parçasıdır. 2026-05-01-preview, Azure aboneliğinizin bir parçası olarak size lisanslanmıştır ve Microsoft Ürün Koşulları, Microsoft Ürünler ve Hizmetler Veri Koruma Eki ("DPA") ve Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları belgelerinde "Önizlemeler" için geçerli olan koşullara tabidir.

2026-05-01-preview, diğer Microsoft hizmetleri ve üçüncü taraf hizmetlerle bağlantıları destekler. Bu hizmetlerin kullanımı ilgili koşullara tabidir ve Azure uyumluluk sınırının dışında veri işleme veya depolamanın yanı sıra Azure uyumluluk sınırına akan verilere neden olabilir.

Verilerinizin kuruluşunuzun uyumluluk ve coğrafi sınırları dışında akıp akmayacağını ve ilgili etkileri ve uygun izinlerin, sınırların ve onayların sağlanıp sağlanmayacağını yönetmek sizin sorumluluğunuzdadır.

Özel kullanım örnekleriniz bağlamında oluşturduğunuz uygulamaları dikkatle gözden geçirmek ve test etmek ve tüm uygun kararları ve özelleştirmeleri yapmak sizin sorumluluğunuzdadır. Bu, metapromptlar, içerik filtreleri veya diğer güvenlik sistemleri gibi sorumlu yapay zeka risk azaltmalarınızı uygulamayı ve uygulamalarınızın uygun kalite, güvenilirlik, güvenlik ve güvenilirlik standartlarını karşılamasını sağlamayı içerir. Daha fazla bilgi için bkz. Azure Yapay Zeka Arama Saydamlık Notu.

Dosya bilgi kaynağı (önizleme), aracılı alma için küçük-orta boyutlu dosya kümelerini doğrudan Azure Yapay Zeka Arama yükler. 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.

Dosya bilgi kaynakları, Azure Depolama’ı kullanıma alma, erişimi yapılandırma ve harici bir kapsayıcı üzerinde bir dizin oluşturucu işlem hattı oluşturma yerine yönetilen bir yükleme deneyimi istediğiniz durumlarda kullanışlıdır. Azure Yapay Zeka Arama, ayıklanan içeriklerin bir bilgi bankasından alınabilmesi için karşıya yüklenen dosyaları işler.

Dosya bilgi kaynağı en fazla 100 dosyayı destekler. Dosyalarınız zaten Azure Blob Depolama veya Azure Data Lake Storage 2. Nesil olduğunda, dosya kümeniz 100 dosyayı aştığında veya büyük olasılıkla aştığında veya zamanlanmış alıma ihtiyacınız olduğunda bunun yerine bir blob bilgi kaynağı kullanın. Ayrıca, Azure Blob Depolama yaşam döngüsü yönetim ilkeleriyle kaynak blobları yönetmek istediğinizde veya Azure Depolama izinlerine göre belge düzeyi izinlere (önizleme) ihtiyacınız olduğunda blob bilgi kaynağı kullanın.

Kullanım desteği

Azure portalı Microsoft Foundry portalı .NET SDK Python SDK'sı Java SDK JavaScript SDK'sı REST API
✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Prerequisites

  • Aracı tabanlı alım sağlayan herhangi bir bölgede adanmış bir Azure Yapay Zeka Arama hizmeti. Dosya bilgi kaynakları sunucusuz arama hizmetlerinde desteklenmez. Ayrılmış katmanlar hakkında daha fazla bilgi için bkz. Hizmet katmanı seçme. Aylık ücretsiz ödeneğin ötesinde ücretli kullanıma ihtiyacınız varsaknowledgeRetrieval kullanarak hizmet özelliğini olarak standard ayarlayın.

  • Desteklenen biçimlerde dosyalar.

  • Bilgi kaynakları oluşturma izinleri. Kullanıcı hesabınıza atanan Arama Hizmeti Katkıda Bulunanı rolüyle anahtarsız kimlik doğrulamasını yapılandırın (önerilir) veya bir API anahtarı kullanın.

  • Bilgi kaynağı, gömmeler için bir Azure OpenAI modeli belirtiyorsa, arama hizmetinin Microsoft Foundry kaynağı üzerinde Cognitive Services User izinlerine sahip bir managed identity'si olmalıdır.

    • Foundry kaynağında genel ağ erişimi devre dışı bırakılmışsa, arama hizmetinden Foundry kaynağına paylaşılan bir openai_accountözel bağlantı oluşturun ve kaynağın Güvenilen hizmetler listesinde Azure hizmetlerine izin ver ayarını etkin tutun.

Desteklenen biçimler ve sınırlar

Aşağıdaki dosya türleri desteklenir.

Kategori Extensions
Text .txt, .md, .html, .json, , .csv
Kod .c, , .cs.cpp, , .java, .py, .js, .ts, .php, .rb,.sh
Belgeler .pdf, .docx, .pptx, .doc

Aşağıdaki sınırlar dosya bilgi kaynakları için geçerlidir.

Limit Value
Yükleme başına maksimum dosya boyutu 50 MB
Dosya bilgi kaynağı başına en fazla dosya sayısı 100

Karşıya yüklenen içeriği öbekleyecek veya vektörleştirecek şekilde dosya bilgi kaynağını yapılandırırsanız, model ve aşağı akış işleme sınırları da geçerlidir.

Note

  • Aynı dosya adının karşıya yüklenmesi, var olan bir dosyanın yerini almaz. Daha fazla bilgi için bkz. Dosyaları karşıya yükleme.
  • Oluşturulan arama dizini karşıya yüklenen içeriği depolar. Fiyatlandırma katmanına göre toplam depolama sınırları için bkz. Hizmet sınırları.

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
api-key: {{api-key}}

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}}
api-key: {{api-key}}

Başvuru:Bilgi Kaynakları - Get

Aşağıdaki JSON, bir dosya bilgi kaynağı için örnek bir yanıttır.

{
  "name": "my-file-ks",
  "kind": "file",
  "description": "A sample file knowledge source.",
  "encryptionKey": null,
  "fileParameters": {
    "ingestionParameters": {
      "contentExtractionMode": "minimal",
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "<REDACTED>",
          "deploymentId": "text-embedding-3-large",
          "modelName": "text-embedding-3-large"
        }
      }
    }
  }
}

Bilgi kaynağı oluşturma

Karşıya yüklenen içeriği vektörleştirmek için kullanılan ekleme modelini belirten bir dosya bilgi kaynağı oluşturun.

using Azure;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));

var embeddingParams = new AzureOpenAIVectorizerParameters
{
    ResourceUri = new Uri(aoaiEndpoint),
    DeploymentName = aoaiEmbeddingDeployment,
    ModelName = aoaiEmbeddingModel
};

var ingestionParams = new KnowledgeSourceIngestionParameters
{
    ContentExtractionMode = "minimal",
    EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
    {
        AzureOpenAIParameters = embeddingParams
    }
};

var fileParams = new FileKnowledgeSourceParameters
{
    IngestionParameters = ingestionParams
};

var knowledgeSource = new FileKnowledgeSource(
    name: "my-file-ks",
    fileParameters: fileParams
)
{
    Description = "This knowledge source uses directly uploaded product manuals."
};

await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");

Başvuru:SearchIndexClient

from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
    AzureOpenAIVectorizerParameters,
    FileKnowledgeSource,
    FileKnowledgeSourceParameters,
)
from azure.search.documents.knowledgebases.models import (
    KnowledgeSourceAzureOpenAIVectorizer,
    KnowledgeSourceIngestionParameters,
)

index_client = SearchIndexClient(endpoint="search_url", credential=AzureKeyCredential("api_key"))

embedding_params = AzureOpenAIVectorizerParameters(
    resource_url="aoai_endpoint",
    deployment_name="aoai_embedding_deployment",
    model_name="aoai_embedding_model",
)

ingestion_params = KnowledgeSourceIngestionParameters(
    content_extraction_mode="minimal",
    embedding_model=KnowledgeSourceAzureOpenAIVectorizer(
        azure_open_ai_parameters=embedding_params
    ),
)

knowledge_source = FileKnowledgeSource(
    name="my-file-ks",
    description="This knowledge source uses directly uploaded product manuals.",
    file_parameters=FileKnowledgeSourceParameters(ingestion_parameters=ingestion_params),
)

index_client.create_or_update_knowledge_source(knowledge_source=knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")

Başvuru:SearchIndexClient

PUT {{search-url}}/knowledgesources/my-file-ks?api-version=2026-05-01-preview
api-key: {{api-key}}
Content-Type: application/json
Prefer: return=representation

{
  "name": "my-file-ks",
  "kind": "file",
  "description": "This knowledge source uses directly uploaded product manuals.",
  "encryptionKey": null,
  "fileParameters": {
    "ingestionParameters": {
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "{{aoai-endpoint}}",
          "deploymentId": "{{aoai-embedding-deployment}}",
          "modelName": "{{aoai-embedding-model}}"
        }
      },
      "contentExtractionMode": "minimal"
    }
  }
}

Başvuru:Bilgi Kaynakları - Oluşturma veya Güncelleştirme

Dosyaları yükleyin

Bilgi kaynağı mevcut olduktan sonra dosyaları doğrudan bu kaynağa yükleyin. Her yükleme eşzamanlı bir çağrıdır: Azure Yapay Zeka Arama, karşıya yüklenen dosyadan içeriği çıkarır, içeriği parçalara böler, gerektiğinde gömme vektörleri oluşturur ve çağrı dönmeden önce çıkarılan içeriği geri getirme için hazırlar. Ayrı bir alım işlem hattı yapılandırmanız veya çalıştırmanız gerekmez.

Listelenen fileName, yükleme isteğindeki Content-Disposition: attachment; filename="..." üst bilgisinden alınır. REST çağrıları ve .NET SDK'sı bu üst bilgiyi doğrudan ayarlarken, Python SDK bir filename parametresi kabul eder ve üst bilgiyi otomatik olarak oluşturur. Üstbilgi ayarlanmamışsa, hizmet otomatik oluşturulmuş bir fileName atar.

using Azure;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));

string fileName = "installation-guide.pdf";
byte[] fileBytes = await File.ReadAllBytesAsync(fileName);
string contentDisposition = $"attachment; filename=\"{fileName}\"";

KnowledgeSourceFile uploadedFile = (await indexClient.UploadKnowledgeSourceFileAsync(
    "my-file-ks",
    contentDisposition,
    BinaryData.FromBytes(fileBytes))).Value;

Console.WriteLine($"Uploaded file ID: {uploadedFile.FileId}");

Referans:SearchIndexClient.UploadKnowledgeSourceFileAsync

from pathlib import Path

from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient

index_client = SearchIndexClient(endpoint="search_url", credential=AzureKeyCredential("api_key"))

file_path = Path("installation-guide.pdf")
uploaded_file = index_client.upload_knowledge_source_file(
    "my-file-ks",
    file_path.read_bytes(),
    filename=file_path.name,
)
print(f"Uploaded file ID: {uploaded_file.file_id}")

Referans:SearchIndexClient.upload_knowledge_source_file

POST {{search-url}}/knowledgesources/my-file-ks/files?api-version=2026-05-01-preview
api-key: {{api-key}}
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="installation-guide.pdf"

<binary file content>

Başvuru:Bilgi Kaynakları - Dosyayı Karşıya Yükle

Note

Bir dosyayı karşıya yüklemek, aynı fileNamedosyayı yeniden kullansanız bile var olan bir dosyanın yerini almaz. Her başarılı karşıya yükleme kendi fileIdile yeni bir dosya oluşturur, böylece karşıya yüklenen dosyalar listesi bir fileNameöğesini paylaşan birden çok girdi içerebilir.

İçeriği değiştirmek için, değiştirme işlemini karşıya yüklemeden önce önceki dosyayı fileId silin.

Yüklenen dosyaları listele

Yüklenen dosya kümesini incelemek için bilgi kaynağındaki dosyaları listeleyin.

using Azure;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));

await foreach (KnowledgeSourceFile file in indexClient.GetKnowledgeSourceFilesAsync("my-file-ks"))
{
    Console.WriteLine($"{file.FileName} ({file.FileSizeBytes} bytes) error={file.ErrorMessage}");
}

Başvuru:SearchIndexClient.GetKnowledgeSourceFilesAsync

from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient

index_client = SearchIndexClient(endpoint="search_url", credential=AzureKeyCredential("api_key"))

for file in index_client.list_knowledge_source_files("my-file-ks"):
    print(f"{file.file_name} ({file.file_size_bytes} bytes) error={file.error_message}")

Başvuru:SearchIndexClient.list_knowledge_source_files

GET {{search-url}}/knowledgesources/my-file-ks/files?api-version=2026-05-01-preview
api-key: {{api-key}}

Başvuru:Bilgi Kaynakları - Liste Dosyaları

Yanıt, karşıya yüklenen her dosya için meta veriler içerir. Karşıya yükleme hata olmadan işlendiğinde errorMessage değeri null olur.

{
  "value": [
    {
      "fileId": "file-abc123",
      "fileName": "installation-guide.txt",
      "fileSizeBytes": 89,
      "createdAt": "2026-05-07T18:10:00Z",
      "lastUpdatedAt": "2026-05-07T18:14:00.803Z",
      "errorMessage": null
    }
  ]
}

Yüklemeler eşzamanlı olduğundan, bir dosya yükleme çağrısı başarılı olur olmaz erişime hazırdır. İşleme başarısız olursa, yükleme yanıtı ve sonraki herhangi bir liste girdisi non-nullerrorMessage içerir. Yaygın nedenler arasında desteklenmeyen dosya türleri, ayıklama hataları, model erişim sorunları ve kota sınırları bulunur.

Modele erişim hatası oluşursa ve gömme modelini barındıran Foundry kaynağı özel ağ kullanıyorsa, openai_account paylaşılan özel bağlantının onaylandığını ve güvenilir hizmetler için atlamanın etkinleştirildiğini doğrulayın. Devre dışı bırakılmış bypass, 403 Public access is disabled döndürür. Kurulum ayrıntıları için bkz . Önkoşullar.

Yüklenen dosyaları sil

Artık alma için kullanılabilir olmasını istemediğiniz dosyaları bilgi kaynağından silin.

using Azure;
using Azure.Search.Documents.Indexes;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));

await indexClient.DeleteKnowledgeSourceFileAsync("my-file-ks", "file-abc123");

Başvuru:SearchIndexClient.DeleteKnowledgeSourceFileAsync

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_file("my-file-ks", "file-abc123")

Referans:SearchIndexClient.delete_knowledge_source_file

DELETE {{search-url}}/knowledgesources/my-file-ks/files/file-abc123?api-version=2026-05-01-preview
api-key: {{api-key}}

Başvuru:Bilgi Kaynakları - Dosyayı Sil

Bilgi bankasına atama

Bilgi kaynağından memnunsanız bunu bir bilgi bankasına ekleyin.

Bilgi bankasına sorgu yapma

Bilgi bankası yapılandırıldıktan sonra, bilgi kaynağını sorgulamak için alma eylemini veya MCP uç noktasını çağırın .

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:

  1. 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"
         }
         ]
     }
    
  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
     }
    
  3. 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

  4. Bilgi kaynağını silin.

    await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName);
    System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
    

    Başvuru:SearchIndexClient

  1. 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"
         }
         ]
     }
    
  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"
       }
     }
    
  3. 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

  4. 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

  1. Arama hizmetinizdeki tüm bilgi bankalarının listesini alın.

    ### Get knowledge bases
    GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name
    api-key: {{api-key}}
    

    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"
         }
         ]
     }
    
  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}}
    api-key: {{api-key}}
    

    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"
       }
     }
    
  3. 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}}
    api-key: {{api-key}}
    

    Başvuru:Bilgi Tabanları - Sil

  4. Bilgi kaynağını silin.

    ### Delete a knowledge source
    DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
    api-key: {{api-key}}
    

    Başvuru:Bilgi Kaynakları - Sil