다음을 통해 공유


Azure Blob Storage 및 ADLS Gen2에서 Blob 지식 원본 만들기

비고

이 기능은 현재 공개 미리 보기로 제공됩니다. 이 미리 보기는 서비스 수준 계약 없이 제공되며 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.

Blob 지식 원본을 사용하여 에이전트 검색 파이프라인에서 Azure Blob 콘텐츠를 인덱싱하고 쿼리합니다. 지식 원본 은 독립적으로 생성되고, 기술 자료에서 참조되며, 에이전트 또는 챗봇이 쿼리 시 검색 작업을 호출할 때 접지 데이터로 사용됩니다.

기존 및 정규화된 인덱스를 지정하는 검색 인덱스 지식 원본과 달리 Blob 지식 원본은 외부 데이터 원본, 모델 및 속성을 지정하여 다음 Azure AI Search 개체를 자동으로 생성합니다.

  • Blob 컨테이너를 나타내는 데이터 원본입니다.
  • 컨테이너에서 다중 모달 콘텐츠를 청크하고 필요에 따라 벡터화하는 기술 세트입니다.
  • 보강된 콘텐츠를 저장하고 에이전트 검색 조건을 충족하는 인덱스입니다.
  • 이전 개체를 사용하여 인덱싱 및 보강 파이프라인을 구동하는 인덱서입니다.

비고

Azure Storage의 문서(Blob) 수준에서 사용자 액세스가 지정된 경우 지식 원본은 Azure AI Search의 인덱싱된 콘텐츠로 권한 메타데이터를 전달할 수 있습니다. 자세한 내용은 ADLS Gen2 권한 메타데이터 또는 Blob RBAC 범위를 참조하세요.

필수 조건

기존 지식 원본 확인

지식 원본은 재사용 가능한 최상위 개체입니다. 기존 지식 원본에 대해 아는 것은 새 개체를 다시 사용하거나 이름을 지정하는 데 유용합니다.

다음 코드를 실행하여 이름 및 형식별로 기술 자료를 나열합니다.

// 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}");
}

이름으로 단일 지식 원본을 반환하여 JSON 정의를 검토할 수도 있습니다.

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));

다음 JSON은 Blob 지식 원본에 대한 예제 응답입니다.

{
  "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",
          "apiKey": "<REDACTED>",
          "modelName": "text-embedding-3-large",
          "authIdentity": null
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "<REDACTED>",
          "deploymentId": "gpt-5-mini",
          "apiKey": "<REDACTED>",
          "modelName": "gpt-5-mini",
          "authIdentity": null
        }
      },
      "ingestionSchedule": null,
      "assetStore": null,
      "aiServices": {
        "uri": "<REDACTED>",
        "apiKey": "<REDACTED>"
      }
    },
    "createdResources": {
      "datasource": "my-blob-ks-datasource",
      "indexer": "my-blob-ks-indexer",
      "skillset": "my-blob-ks-skillset",
      "index": "my-blob-ks-index"
    }
  }
}

비고

중요한 정보가 수정됩니다. 생성된 리소스는 응답의 끝에 표시됩니다.

지식 원본 만들기

다음 코드를 실행하여 Blob 지식 소스를 생성하십시오.

// Create a blob knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure;

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

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
{
    DisableImageVerbalization = false,
    ChatCompletionModel = new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: chatCompletionParams),
    EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
    {
        AzureOpenAIParameters = embeddingParams
    }
};

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.");

원본별 속성

다음 속성을 전달하여 Blob 지식 원본을 만들 수 있습니다.

이름 Description 유형 편집 가능 필수
name 지식 원본 컬렉션 내에서 고유해야 하며 Azure AI Search의 개체에 대한 명명 지침을 따라야 하는 지식 원본의 이름입니다. String 아니오 Yes
Description 지식 원본에 대한 설명입니다. String Yes 아니오
encryptionKey 기술 원본과 생성된 개체 모두에서 중요한 정보를 암호화하는 고객 관리형 키 입니다. Object Yes 아니오
chatCompletionParams 검색 추론 작업이 낮거나 중간인 경우 쿼리 계획 및 선택적 응답 합성에 사용되는 채팅 완성 모델과 관련된 매개 변수입니다. Object 아니오
embeddingParams 콘텐츠 청크를 벡터화하려는 경우 사용되는 모델 포함과 관련된 매개 변수입니다. Object 아니오
azureBlobParameters Blob 지식 원본에 대한 특정 매개 변수: connectionString, containerName, folderPathisAdlsGen2. Object 아니오
connectionString 키 기반 연결 문자열 또는 관리 ID를 사용하는 경우 리소스 ID입니다. String 아니오 Yes
containerName Blob Storage 컨테이너의 이름입니다. String 아니오 Yes
folderPath 컨테이너 내의 폴더입니다. String 아니오 아니오
isAdlsGen2 기본값은 False입니다. True ADLS Gen2 스토리지 계정을 사용하는 경우로 설정합니다. 불리언 (Boolean) 아니오 아니오

ingestionParameters 속성

인덱싱된 기술 자료의 경우에만 다음 ingestionParameters 속성을 전달하여 콘텐츠를 수집하고 처리하는 방법을 제어할 수 있습니다.

이름 Description 유형 편집 가능 필수
Identity 생성된 인덱서에서 사용할 관리 ID 입니다. Object Yes 아니오
DisableImageVerbalization 이미지 설명 기능을 활성화하거나 비활성화합니다. 기본값은 False이미지 언어화를 사용하도록 설정하는 것입니다. 이미지 구두화를 True하려면 로 설정합니다. 불리언 (Boolean) 아니오 아니오
ChatCompletionModel 이미지를 구두로 처리하거나 콘텐츠를 추출하는 채팅 완성 모델입니다. 지원되는 모델은 gpt-4o, gpt-4o-mini,gpt-4.1, gpt-4.1-minigpt-4.1-nano, gpt-5, gpt-5-minigpt-5-nano. GenAI 프롬프트 기술이 생성된 기술 세트에 포함됩니다. 또한 이 매개 변수를 설정하려면 이 disable_image_verbalization 매개 변수를 .로 설정해야 합니다 False. Object api_keydeployment_name만 편집할 수 있습니다. 아니오
EmbeddingModel 인덱싱 중 및 쿼리 시간에 텍스트 및 이미지 콘텐츠를 벡터화하는 텍스트 포함 모델입니다. 지원되는 모델은 text-embedding-ada-002, text-embedding-3-smalltext-embedding-3-large. Azure OpenAI 포함 기술은 생성된 기술 집합에 포함되며, Azure OpenAI 벡터라이저는 생성된 인덱스로 포함됩니다. Object api_keydeployment_name만 편집할 수 있습니다. 아니오
ContentExtractionMode 파일에서 콘텐츠를 추출하는 방법을 제어합니다. 기본값은 minimal텍스트 및 이미지에 표준 콘텐츠 추출을 사용하는 것입니다. 생성된 기술 세트에 포함될 standard을 사용하여 고급 문서 크래킹 및 청크를 위해 로 설정합니다. standard에 대해서만 AiServicesAssetStore 매개 변수를 지정할 수 있습니다. String 아니오 아니오
AiServices Foundry 도구에서 Azure Content Understanding에 액세스하기 위한 Microsoft Foundry 리소스입니다. 이 매개 변수를 설정하려면 이 ContentExtractionMode 매개 변수를 .로 설정해야 합니다 standard. Object api_key만 편집 가능 Yes
IngestionSchedule 생성된 인덱서에 예약 정보를 추가합니다. 나중에 일정을 추가하여 데이터 새로 고침을 자동화할 수도 있습니다. Object Yes 아니오
IngestionPermissionOptions ADLS Gen2 또는 인덱싱된 SharePoint와 같은 선택한 지식 출처에서 데이터를 수집할 수 있는 문서 수준 권한입니다. 생성된 user_ids 또는 group_idsrbac_scope 지정하는 경우 수집된 권한이 포함됩니다. Array 아니오 아니오

수집 상태 확인

인덱서 파이프라인을 생성하고 검색 인덱스를 채우는 지식 원본의 인덱서 상태를 포함하여 수집 진행률 및 상태를 모니터링하려면 다음 코드를 실행합니다.

// Get knowledge source ingestion status
using Azure.Search.Documents.Indexes;
using System.Text.Json;

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

// Get the knowledge source 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);

수집 매개 변수를 포함하고 콘텐츠를 적극적으로 수집하는 요청에 대한 응답은 다음 예제와 같습니다.

{ 
  "synchronizationStatus": "active", // creating, active, deleting 
  "synchronizationInterval" : "1d", // null if no schedule 
  "currentSynchronizationState" : { // spans multiple indexer "runs" 
    "startTime": "2025-10-27T19:30:00Z", 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "lastSynchronizationState" : {  // null on first sync 
    "startTime": "2025-10-27T19:30:00Z", 
    "endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "statistics": {  // null on first sync 
    "totalSynchronization": 25, 
    "averageSynchronizationDuration": "00:15:20", 
    "averageItemsProcessedPerSynchronization" : 500 
  } 
} 

만들어진 개체를 검토하십시오

Blob 기술 원본을 만들 때 검색 서비스는 인덱서, 인덱스, 기술 세트 및 데이터 원본도 만듭니다. 오류 또는 비호환성을 도입하면 파이프라인이 중단 될 수 있으므로 이러한 개체를 편집하지 않는 것이 좋습니다.

기술 자료를 만든 후에는 생성된 개체가 응답에 나열됩니다. 이러한 개체는 고정 템플릿에 따라 만들어지고 해당 이름은 기술 자료의 이름을 기반으로 합니다. 개체 이름은 변경할 수 없습니다.

Azure Portal을 사용하여 출력 생성의 유효성을 검사하는 것이 좋습니다. 워크플로는 다음과 같습니다.

  1. 인덱서에서 성공 또는 실패 메시지를 확인합니다. 연결 또는 할당량 오류가 여기에 표시됩니다.
  2. 인덱스에서 검색 가능한 콘텐츠를 확인합니다. 검색 탐색기를 사용하여 쿼리를 실행합니다.
  3. 역량 집합을 확인하여 콘텐츠가 청크로 분할되고 옵션으로 벡터화되는 방법을 알아봅니다.
  4. 데이터 원본에서 연결 세부 정보를 확인합니다. 이 예제에서는 단순성을 위해 API 키를 사용하지만 인증에 Microsoft Entra ID를 사용하고 권한 부여를 위한 역할 기반 액세스 제어를 사용할 수 있습니다.

기술 자료에 할당

기술 자료에 만족하는 경우 기술 자료에서 기술 원본을 지정하는 다음 단계를 계속 진행 합니다.

기술 자료가 구성되면 검색 작업을 사용하여 기술 원본을 쿼리합니다.

지식 원본 삭제

기술 자료를 삭제하려면 먼저 이를 참조하는 기술 자료를 삭제하거나 기술 자료 정의를 업데이트하여 참조를 제거해야 합니다. 인덱스 및 인덱서 파이프라인을 생성하는 기술 원본의 경우 생성된 모든 개체 도 삭제됩니다. 그러나 기존 인덱스로 기술 원본을 만든 경우 인덱스가 삭제되지 않습니다.

사용 중인 기술 원본을 삭제하려고 하면 작업이 실패하고 영향을 받는 기술 자료 목록이 반환됩니다.

기술 자료를 삭제하려면 다음을 수행합니다.

  1. 검색 서비스의 모든 기술 자료 목록을 가져옵니다.

    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}");
    }
    

    예제 응답은 다음과 같을 수 있습니다.

     Knowledge Bases:
       - earth-knowledge-base
       - hotels-sample-knowledge-base
       - my-demo-knowledge-base
    
  2. 개별 기술 자료 정의를 가져와서 기술 자료 참조를 확인합니다.

    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);
    

    예제 응답은 다음과 같을 수 있습니다.

     {
       "Name": "earth-knowledge-base",
       "KnowledgeSources": [
         {
           "Name": "earth-knowledge-source"
         }
       ],
       "Models": [
         {}
       ],
       "RetrievalReasoningEffort": {},
       "OutputMode": {},
       "ETag": "\u00220x8DE278629D782B3\u0022",
       "EncryptionKey": null,
       "Description": null,
       "RetrievalInstructions": null,
       "AnswerInstructions": null
     }
    
  3. 기술 자료를 삭제하거나 기술 자료를 업데이트 하여 여러 원본이 있는 경우 기술 자료를 제거합니다. 이 예제에서는 삭제를 보여줍니다.

    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.");
    
  4. 지식 원본을 삭제합니다.

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

비고

이 기능은 현재 공개 미리 보기로 제공됩니다. 이 미리 보기는 서비스 수준 계약 없이 제공되며 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.

Blob 지식 원본을 사용하여 에이전트 검색 파이프라인에서 Azure Blob 콘텐츠를 인덱싱하고 쿼리합니다. 지식 원본 은 독립적으로 생성되고, 기술 자료에서 참조되며, 에이전트 또는 챗봇이 쿼리 시 검색 작업을 호출할 때 접지 데이터로 사용됩니다.

기존 및 정규화된 인덱스를 지정하는 검색 인덱스 지식 원본과 달리 Blob 지식 원본은 외부 데이터 원본, 모델 및 속성을 지정하여 다음 Azure AI Search 개체를 자동으로 생성합니다.

  • Blob 컨테이너를 나타내는 데이터 원본입니다.
  • 컨테이너에서 다중 모달 콘텐츠를 청크하고 필요에 따라 벡터화하는 기술 세트입니다.
  • 보강된 콘텐츠를 저장하고 에이전트 검색 조건을 충족하는 인덱스입니다.
  • 이전 개체를 사용하여 인덱싱 및 보강 파이프라인을 구동하는 인덱서입니다.

비고

Azure Storage의 문서(Blob) 수준에서 사용자 액세스가 지정된 경우 지식 원본은 Azure AI Search의 인덱싱된 콘텐츠로 권한 메타데이터를 전달할 수 있습니다. 자세한 내용은 ADLS Gen2 권한 메타데이터 또는 Blob RBAC 범위를 참조하세요.

필수 조건

기존 지식 원본 확인

지식 원본은 재사용 가능한 최상위 개체입니다. 기존 지식 원본에 대해 아는 것은 새 개체를 다시 사용하거나 이름을 지정하는 데 유용합니다.

다음 코드를 실행하여 이름 및 형식별로 기술 자료를 나열합니다.

# List knowledge sources by name and type
import requests
import json

endpoint = "{search_url}/knowledgesources"
params = {"api-version": "2025-11-01-preview", "$select": "name, kind"}
headers = {"api-key": "{api_key}"}

response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))

이름으로 단일 지식 원본을 반환하여 JSON 정의를 검토할 수도 있습니다.

# Get a knowledge source definition
import requests
import json

endpoint = "{search_url}/knowledgesources/{knowledge_source_name}"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}

response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))

다음 JSON은 Blob 지식 원본에 대한 예제 응답입니다.

{
  "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",
          "apiKey": "<REDACTED>",
          "modelName": "text-embedding-3-large",
          "authIdentity": null
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "<REDACTED>",
          "deploymentId": "gpt-5-mini",
          "apiKey": "<REDACTED>",
          "modelName": "gpt-5-mini",
          "authIdentity": null
        }
      },
      "ingestionSchedule": null,
      "assetStore": null,
      "aiServices": {
        "uri": "<REDACTED>",
        "apiKey": "<REDACTED>"
      }
    },
    "createdResources": {
      "datasource": "my-blob-ks-datasource",
      "indexer": "my-blob-ks-indexer",
      "skillset": "my-blob-ks-skillset",
      "index": "my-blob-ks-index"
    }
  }
}

비고

중요한 정보가 수정됩니다. 생성된 리소스는 응답의 끝에 표시됩니다.

지식 원본 만들기

다음 코드를 실행하여 Blob 기술 자료를 만듭니다.

# Create a blob knowledge source
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import AzureBlobKnowledgeSource, AzureBlobKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceAzureOpenAIVectorizer, KnowledgeSourceContentExtractionMode, KnowledgeSourceIngestionParameters

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

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(
            identity = None,
            disable_image_verbalization = False,
            chat_completion_model = KnowledgeBaseAzureOpenAIModel(
                azure_open_ai_parameters = AzureOpenAIVectorizerParameters(
                    # TRIMMED FOR BREVITY
                )
            ),
            embedding_model = KnowledgeSourceAzureOpenAIVectorizer(
                azure_open_ai_parameters=AzureOpenAIVectorizerParameters(
                    # TRIMMED FOR BREVITY
                )
            ),
            content_extraction_mode = KnowledgeSourceContentExtractionMode.MINIMAL,
            ingestion_schedule = None,
            ingestion_permission_options = None
        )
    )
)

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

원본별 속성

다음 속성을 전달하여 Blob 지식 원본을 만들 수 있습니다.

이름 Description 유형 편집 가능 필수
name 지식 원본 컬렉션 내에서 고유해야 하며 Azure AI Search의 개체에 대한 명명 지침을 따라야 하는 지식 원본의 이름입니다. String 아니오 Yes
description 지식 원본에 대한 설명입니다. String Yes 아니오
encryption_key 기술 원본과 생성된 개체 모두에서 중요한 정보를 암호화하는 고객 관리형 키 입니다. Object Yes 아니오
azure_blob_parameters Blob 지식 원본에 대한 특정 매개 변수: connection_string, container_name, folder_pathis_adls_gen2. Object 아니오
connection_string 키 기반 연결 문자열 또는 관리 ID를 사용하는 경우 리소스 ID입니다. String 아니오 Yes
container_name Blob Storage 컨테이너의 이름입니다. String 아니오 Yes
folder_path 컨테이너 내의 폴더입니다. String 아니오 아니오
is_adls_gen2 기본값은 False입니다. True ADLS Gen2 스토리지 계정을 사용하는 경우로 설정합니다. 불리언 (Boolean) 아니오 아니오

ingestionParameters 속성

인덱싱된 기술 자료의 경우에만 다음 ingestionParameters 속성을 전달하여 콘텐츠를 수집하고 처리하는 방법을 제어할 수 있습니다.

이름 Description 유형 편집 가능 필수
identity 생성된 인덱서에서 사용할 관리 ID 입니다. Object Yes 아니오
disable_image_verbalization 이미지 설명 기능을 활성화하거나 비활성화합니다. 기본값은 False이미지 언어화를 사용하도록 설정하는 것입니다. 이미지 구두화를 True하려면 로 설정합니다. 불리언 (Boolean) 아니오 아니오
chat_completion_model 이미지를 구두로 처리하거나 콘텐츠를 추출하는 채팅 완성 모델입니다. 지원되는 모델은 gpt-4o, gpt-4o-mini,gpt-4.1, gpt-4.1-minigpt-4.1-nano, gpt-5, gpt-5-minigpt-5-nano. GenAI 프롬프트 기술이 생성된 기술 세트에 포함됩니다. 또한 이 매개 변수를 설정하려면 이 disable_image_verbalization 매개 변수를 .로 설정해야 합니다 False. Object api_keydeployment_name만 편집할 수 있습니다. 아니오
embedding_model 인덱싱 중 및 쿼리 시간에 텍스트 및 이미지 콘텐츠를 벡터화하는 텍스트 포함 모델입니다. 지원되는 모델은 text-embedding-ada-002, text-embedding-3-smalltext-embedding-3-large. Azure OpenAI 포함 기술은 생성된 기술 집합에 포함되며, Azure OpenAI 벡터라이저는 생성된 인덱스로 포함됩니다. Object api_keydeployment_name만 편집할 수 있습니다. 아니오
content_extraction_mode 파일에서 콘텐츠를 추출하는 방법을 제어합니다. 기본값은 minimal텍스트 및 이미지에 표준 콘텐츠 추출을 사용하는 것입니다. 생성된 기술 세트에 포함될 standard을 사용하여 고급 문서 크래킹 및 청크를 위해 로 설정합니다. standard에 대해서만 ai_servicesasset_store 매개 변수를 지정할 수 있습니다. String 아니오 아니오
ai_services Foundry 도구에서 Azure Content Understanding에 액세스하기 위한 Microsoft Foundry 리소스입니다. 이 매개 변수를 설정하려면 이 content_extraction_mode 매개 변수를 .로 설정해야 합니다 standard. Object api_key만 편집 가능 Yes
asset_store 추출된 이미지를 저장할 Blob 컨테이너입니다. 이 매개 변수를 설정하려면 이 content_extraction_mode 매개 변수를 .로 설정해야 합니다 standard. Object 아니오 아니오
ingestion_schedule 생성된 인덱서에 예약 정보를 추가합니다. 나중에 일정을 추가하여 데이터 새로 고침을 자동화할 수도 있습니다. Object Yes 아니오
ingestion_permission_options ADLS Gen2 또는 인덱싱된 SharePoint와 같은 선택한 지식 출처에서 데이터를 수집할 수 있는 문서 수준 권한입니다. 생성된 user_ids 또는 group_idsrbac_scope 지정하는 경우 수집된 권한이 포함됩니다. Array 아니오 아니오

수집 상태 확인

인덱서 파이프라인을 생성하고 검색 인덱스를 채우는 지식 원본의 인덱서 상태를 포함하여 수집 진행률 및 상태를 모니터링하려면 다음 코드를 실행합니다.

# Check knowledge source ingestion status
import requests
import json

endpoint = "{search_url}/knowledgesources/{knowledge_source_name}/status"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}

response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))

수집 매개 변수를 포함하고 콘텐츠를 적극적으로 수집하는 요청에 대한 응답은 다음 예제와 같습니다.

{ 
  "synchronizationStatus": "active", // creating, active, deleting 
  "synchronizationInterval" : "1d", // null if no schedule 
  "currentSynchronizationState" : { // spans multiple indexer "runs" 
    "startTime": "2025-10-27T19:30:00Z", 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "lastSynchronizationState" : {  // null on first sync 
    "startTime": "2025-10-27T19:30:00Z", 
    "endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "statistics": {  // null on first sync 
    "totalSynchronization": 25, 
    "averageSynchronizationDuration": "00:15:20", 
    "averageItemsProcessedPerSynchronization" : 500 
  } 
} 

만들어진 개체를 검토하십시오

Blob 기술 원본을 만들 때 검색 서비스는 인덱서, 인덱스, 기술 세트 및 데이터 원본도 만듭니다. 오류 또는 비호환성을 도입하면 파이프라인이 중단 될 수 있으므로 이러한 개체를 편집하지 않는 것이 좋습니다.

기술 자료를 만든 후에는 생성된 개체가 응답에 나열됩니다. 이러한 개체는 고정 템플릿에 따라 만들어지고 해당 이름은 기술 자료의 이름을 기반으로 합니다. 개체 이름은 변경할 수 없습니다.

Azure Portal을 사용하여 출력 생성의 유효성을 검사하는 것이 좋습니다. 워크플로는 다음과 같습니다.

  1. 인덱서에서 성공 또는 실패 메시지를 확인합니다. 연결 또는 할당량 오류가 여기에 표시됩니다.
  2. 인덱스에서 검색 가능한 콘텐츠를 확인합니다. 검색 탐색기를 사용하여 쿼리를 실행합니다.
  3. 역량 집합을 확인하여 콘텐츠가 청크로 분할되고 옵션으로 벡터화되는 방법을 알아봅니다.
  4. 데이터 원본에서 연결 세부 정보를 확인합니다. 이 예제에서는 단순성을 위해 API 키를 사용하지만 인증에 Microsoft Entra ID를 사용하고 권한 부여를 위한 역할 기반 액세스 제어를 사용할 수 있습니다.

기술 자료에 할당

기술 자료에 만족하는 경우 기술 자료에서 기술 원본을 지정하는 다음 단계를 계속 진행 합니다.

기술 자료가 구성되면 검색 작업을 사용하여 기술 원본을 쿼리합니다.

지식 원본 삭제

기술 자료를 삭제하려면 먼저 이를 참조하는 기술 자료를 삭제하거나 기술 자료 정의를 업데이트하여 참조를 제거해야 합니다. 인덱스 및 인덱서 파이프라인을 생성하는 기술 원본의 경우 생성된 모든 개체 도 삭제됩니다. 그러나 기존 인덱스로 기술 원본을 만든 경우 인덱스가 삭제되지 않습니다.

사용 중인 기술 원본을 삭제하려고 하면 작업이 실패하고 영향을 받는 기술 자료 목록이 반환됩니다.

기술 자료를 삭제하려면 다음을 수행합니다.

  1. 검색 서비스의 모든 기술 자료 목록을 가져옵니다.

    # Get knowledge bases
    import requests
    import json
    
    endpoint = "{search_url}/knowledgebases"
    params = {"api-version": "2025-11-01-preview", "$select": "name"}
    headers = {"api-key": "{api_key}"}
    
    response = requests.get(endpoint, params = params, headers = headers)
    print(json.dumps(response.json(), indent = 2))
    

    예제 응답은 다음과 같을 수 있습니다.

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. 개별 기술 자료 정의를 가져와서 기술 자료 참조를 확인합니다.

    # Get a knowledge base definition
    import requests
    import json
    
    endpoint = "{search_url}/knowledgebases/{knowledge_base_name}"
    params = {"api-version": "2025-11-01-preview"}
    headers = {"api-key": "{api_key}"}
    
    response = requests.get(endpoint, params = params, headers = headers)
    print(json.dumps(response.json(), indent = 2))
    

    예제 응답은 다음과 같을 수 있습니다.

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. 기술 자료를 삭제하거나 기술 자료를 업데이트 하여 여러 원본이 있는 경우 기술 자료를 제거합니다. 이 예제에서는 삭제를 보여줍니다.

    # 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.")
    
  4. 지식 원본을 삭제합니다.

    # 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.")
    

비고

이 기능은 현재 공개 미리 보기로 제공됩니다. 이 미리 보기는 서비스 수준 계약 없이 제공되며 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.

Blob 지식 원본을 사용하여 에이전트 검색 파이프라인에서 Azure Blob 콘텐츠를 인덱싱하고 쿼리합니다. 지식 원본 은 독립적으로 생성되고, 기술 자료에서 참조되며, 에이전트 또는 챗봇이 쿼리 시 검색 작업을 호출할 때 접지 데이터로 사용됩니다.

기존 및 정규화된 인덱스를 지정하는 검색 인덱스 지식 원본과 달리 Blob 지식 원본은 외부 데이터 원본, 모델 및 속성을 지정하여 다음 Azure AI Search 개체를 자동으로 생성합니다.

  • Blob 컨테이너를 나타내는 데이터 원본입니다.
  • 컨테이너에서 다중 모달 콘텐츠를 청크하고 필요에 따라 벡터화하는 기술 세트입니다.
  • 보강된 콘텐츠를 저장하고 에이전트 검색 조건을 충족하는 인덱스입니다.
  • 이전 개체를 사용하여 인덱싱 및 보강 파이프라인을 구동하는 인덱서입니다.

비고

Azure Storage의 문서(Blob) 수준에서 사용자 액세스가 지정된 경우 지식 원본은 Azure AI Search의 인덱싱된 콘텐츠로 권한 메타데이터를 전달할 수 있습니다. 자세한 내용은 ADLS Gen2 권한 메타데이터 또는 Blob RBAC 범위를 참조하세요.

필수 조건

기존 지식 원본 확인

지식 원본은 재사용 가능한 최상위 개체입니다. 기존 지식 원본에 대해 아는 것은 새 개체를 다시 사용하거나 이름을 지정하는 데 유용합니다.

기술 자료 사용 - GET(REST API)을 사용하여 이름 및 형식별로 기술 자료를 나열합니다.

### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version=2025-11-01-preview&$select=name,kind
api-key: {{api-key}}

이름으로 단일 지식 원본을 반환하여 JSON 정의를 검토할 수도 있습니다.

### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
api-key: {{api-key}}

다음 JSON은 Blob 지식 원본에 대한 예제 응답입니다.

{
  "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",
          "apiKey": "<REDACTED>",
          "modelName": "text-embedding-3-large",
          "authIdentity": null
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "<REDACTED>",
          "deploymentId": "gpt-5-mini",
          "apiKey": "<REDACTED>",
          "modelName": "gpt-5-mini",
          "authIdentity": null
        }
      },
      "ingestionSchedule": null,
      "assetStore": null,
      "aiServices": {
        "uri": "<REDACTED>",
        "apiKey": "<REDACTED>"
      }
    },
    "createdResources": {
      "datasource": "my-blob-ks-datasource",
      "indexer": "my-blob-ks-indexer",
      "skillset": "my-blob-ks-skillset",
      "index": "my-blob-ks-index"
    }
  }
}

비고

중요한 정보가 수정됩니다. 생성된 리소스는 응답의 끝에 표시됩니다.

지식 원본 만들기

기술 자료 사용 - REST API(만들기 또는 업데이트)를 사용하여 Blob 지식 원본을 만듭니다.

PUT {{search-url}}/knowledgesources/my-blob-ks?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json

{
  "name": "my-blob-ks",
  "kind": "azureBlob",
  "description": "This knowledge source pulls from a blob storage container.",
  "encryptionKey": null,
  "azureBlobParameters": {
    "connectionString": "<YOUR AZURE STORAGE CONNECTION STRING>",
    "containerName": "<YOUR BLOB CONTAINER NAME>",
    "folderPath": null,
    "isADLSGen2": false,
    "ingestionParameters": {
        "identity": null,
        "disableImageVerbalization": null,
        "chatCompletionModel": { TRIMMED FOR BREVITY },
        "embeddingModel": { TRIMMED FOR BREVITY },
        "contentExtractionMode": "minimal",
        "ingestionSchedule": null,
        "ingestionPermissionOptions": []
    }
  }
}

원본별 속성

다음 속성을 전달하여 Blob 지식 원본을 만들 수 있습니다.

이름 Description 유형 편집 가능 필수
name 지식 원본 컬렉션 내에서 고유해야 하며 Azure AI Search의 개체에 대한 명명 지침을 따라야 하는 지식 원본의 이름입니다. String 아니오 Yes
kind 이 경우 지식 원본의 종류입니다 azureBlob . String 아니오 Yes
description 지식 원본에 대한 설명입니다. String Yes 아니오
encryptionKey 기술 원본과 생성된 개체 모두에서 중요한 정보를 암호화하는 고객 관리형 키 입니다. Object Yes 아니오
azureBlobParameters Blob 지식 원본에 대한 특정 매개 변수: connectionString, containerName, folderPathisADLSGen2. Object 아니오
connectionString 키 기반 연결 문자열 또는 관리 ID를 사용하는 경우 리소스 ID입니다. String 아니오 Yes
containerName Blob Storage 컨테이너의 이름입니다. String 아니오 Yes
folderPath 컨테이너 내의 폴더입니다. String 아니오 아니오
isADLSGen2 기본값은 false입니다. true ADLS Gen2 스토리지 계정을 사용하는 경우로 설정합니다. 불리언 (Boolean) 아니오 아니오

ingestionParameters 속성

인덱싱된 기술 자료의 경우에만 다음 ingestionParameters 속성을 전달하여 콘텐츠를 수집하고 처리하는 방법을 제어할 수 있습니다.

이름 Description 유형 편집 가능 필수
identity 생성된 인덱서에서 사용할 관리 ID 입니다. Object Yes 아니오
disableImageVerbalization 이미지 설명 기능을 활성화하거나 비활성화합니다. 기본값은 false이미지 언어화를 사용하도록 설정하는 것입니다. 이미지 구두화를 true하려면 로 설정합니다. 불리언 (Boolean) 아니오 아니오
chatCompletionModel 이미지를 구두로 처리하거나 콘텐츠를 추출하는 채팅 완성 모델입니다. 지원되는 모델은 gpt-4o, gpt-4o-mini,gpt-4.1, gpt-4.1-minigpt-4.1-nano, gpt-5, gpt-5-minigpt-5-nano. GenAI 프롬프트 기술이 생성된 기술 세트에 포함됩니다. 또한 이 매개 변수를 설정하려면 이 disableImageVerbalization 매개 변수를 .로 설정해야 합니다 false. Object apiKeydeploymentId만 편집할 수 있습니다. 아니오
embeddingModel 인덱싱 중 및 쿼리 시간에 텍스트 및 이미지 콘텐츠를 벡터화하는 텍스트 포함 모델입니다. 지원되는 모델은 text-embedding-ada-002, text-embedding-3-smalltext-embedding-3-large. Azure OpenAI 포함 기술은 생성된 기술 집합에 포함되며, Azure OpenAI 벡터라이저는 생성된 인덱스로 포함됩니다. Object apiKeydeploymentId만 편집할 수 있습니다. 아니오
contentExtractionMode 파일에서 콘텐츠를 추출하는 방법을 제어합니다. 기본값은 minimal텍스트 및 이미지에 표준 콘텐츠 추출을 사용하는 것입니다. 생성된 기술 세트에 포함될 standard을 사용하여 고급 문서 크래킹 및 청크를 위해 로 설정합니다. standard에 대해서만 aiServicesassetStore 매개 변수를 지정할 수 있습니다. String 아니오 아니오
aiServices Foundry 도구에서 Azure Content Understanding에 액세스하기 위한 Microsoft Foundry 리소스입니다. 이 매개 변수를 설정하려면 이 contentExtractionMode 매개 변수를 .로 설정해야 합니다 standard. Object apiKey만 편집 가능 Yes
assetStore 추출된 이미지를 저장할 Blob 컨테이너입니다. 이 매개 변수를 설정하려면 이 contentExtractionMode 매개 변수를 .로 설정해야 합니다 standard. Object 아니오 아니오
ingestionSchedule 생성된 인덱서에 예약 정보를 추가합니다. 나중에 일정을 추가하여 데이터 새로 고침을 자동화할 수도 있습니다. Object Yes 아니오
ingestionPermissionOptions ADLS Gen2 또는 인덱싱된 SharePoint와 같은 선택한 지식 출처에서 데이터를 수집할 수 있는 문서 수준 권한입니다. 생성된 userIds 또는 groupIdsrbacScope 지정하는 경우 수집된 권한이 포함됩니다. Array 아니오 아니오

수집 상태 확인

기술 자료 - 상태(REST API)를 사용하여 인덱서 파이프라인을 생성하고 검색 인덱스를 채우는 지식 원본의 인덱서 상태를 포함하여 수집 진행률 및 상태를 모니터링합니다.

### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json 

수집 매개 변수를 포함하고 콘텐츠를 적극적으로 수집하는 요청에 대한 응답은 다음 예제와 같습니다.

{ 
  "synchronizationStatus": "active", // creating, active, deleting 
  "synchronizationInterval" : "1d", // null if no schedule 
  "currentSynchronizationState" : { // spans multiple indexer "runs" 
    "startTime": "2025-10-27T19:30:00Z", 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "lastSynchronizationState" : {  // null on first sync 
    "startTime": "2025-10-27T19:30:00Z", 
    "endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve 
    "itemUpdatesProcessed": 1100, 
    "itemsUpdatesFailed": 100, 
    "itemsSkipped": 1100, 
  }, 
  "statistics": {  // null on first sync 
    "totalSynchronization": 25, 
    "averageSynchronizationDuration": "00:15:20", 
    "averageItemsProcessedPerSynchronization" : 500 
  } 
} 

만들어진 개체를 검토하십시오

Blob 기술 원본을 만들 때 검색 서비스는 인덱서, 인덱스, 기술 세트 및 데이터 원본도 만듭니다. 오류 또는 비호환성을 도입하면 파이프라인이 중단 될 수 있으므로 이러한 개체를 편집하지 않는 것이 좋습니다.

기술 자료를 만든 후에는 생성된 개체가 응답에 나열됩니다. 이러한 개체는 고정 템플릿에 따라 만들어지고 해당 이름은 기술 자료의 이름을 기반으로 합니다. 개체 이름은 변경할 수 없습니다.

Azure Portal을 사용하여 출력 생성의 유효성을 검사하는 것이 좋습니다. 워크플로는 다음과 같습니다.

  1. 인덱서에서 성공 또는 실패 메시지를 확인합니다. 연결 또는 할당량 오류가 여기에 표시됩니다.
  2. 인덱스에서 검색 가능한 콘텐츠를 확인합니다. 검색 탐색기를 사용하여 쿼리를 실행합니다.
  3. 역량 집합을 확인하여 콘텐츠가 청크로 분할되고 옵션으로 벡터화되는 방법을 알아봅니다.
  4. 데이터 원본에서 연결 세부 정보를 확인합니다. 이 예제에서는 단순성을 위해 API 키를 사용하지만 인증에 Microsoft Entra ID를 사용하고 권한 부여를 위한 역할 기반 액세스 제어를 사용할 수 있습니다.

기술 자료에 할당

기술 자료에 만족하는 경우 기술 자료에서 기술 원본을 지정하는 다음 단계를 계속 진행 합니다.

기술 자료가 구성되면 검색 작업을 사용하여 기술 원본을 쿼리합니다.

지식 원본 삭제

기술 자료를 삭제하려면 먼저 이를 참조하는 기술 자료를 삭제하거나 기술 자료 정의를 업데이트하여 참조를 제거해야 합니다. 인덱스 및 인덱서 파이프라인을 생성하는 기술 원본의 경우 생성된 모든 개체 도 삭제됩니다. 그러나 기존 인덱스로 기술 원본을 만든 경우 인덱스가 삭제되지 않습니다.

사용 중인 기술 원본을 삭제하려고 하면 작업이 실패하고 영향을 받는 기술 자료 목록이 반환됩니다.

기술 자료를 삭제하려면 다음을 수행합니다.

  1. 검색 서비스의 모든 기술 자료 목록을 가져옵니다.

    ### Get knowledge bases
    GET {{search-endpoint}}/knowledgebases?api-version=2025-11-01-preview&$select=name
    api-key: {{api-key}}
    

    예제 응답은 다음과 같을 수 있습니다.

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. 개별 기술 자료 정의를 가져와서 기술 자료 참조를 확인합니다.

    ### Get a knowledge base definition
    GET {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}
    

    예제 응답은 다음과 같을 수 있습니다.

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. 여러 원본이 있는 경우 기술 자료를 삭제하거나 기술 자료를 제거 하여 기술 자료를 업데이트합니다. 이 예제에서는 삭제를 보여줍니다.

    ### Delete a knowledge base
    DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}
    
  4. 지식 원본을 삭제합니다.

    ### Delete a knowledge source
    DELETE {{search-endpoint}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}