참고
Azure AI 검색 Azure 포털, REST API 및 Azure SDK 통해 사용할 수 있습니다. 또한 엔터프라이즈 콘텐츠를 Microsoft Foundry 포털의 에이전트에 대해 재사용 가능한 사용 권한 인식 기술 자료로 변환하는 관리되는 기술 계층인 Foundry IQ를 뒷받침합니다.
Important
기능, 기능 또는 표시된 속성(미리 보기)은 서비스 수준 계약에 포함되지 않으며 프로덕션 워크로드에는 권장되지 않으며 일반적으로 사용 가능해지기 전에 변경되거나 제한될 수 있습니다. Azure AI 검색 미리 보기 용어는 독립 실행형 기능이든 일반 공급 기능의 일부이든 관계없이 모든 미리 보기 기능에 적용됩니다.
원격 SharePoint 지식 원본(미리 보기)은 Copilot 검색 API(미리 보기)를 사용하여 Microsoft 365 SharePoint 텍스트 콘텐츠를 직접 쿼리합니다. 기술 원본은 독립적으로 생성되고, 기술 자료에서 참조되며, 런타임에 기술 자료를 쿼리할 때 접지 데이터로 사용됩니다.
사이트를 제한하거나 검색을 제한하려면 URL, 날짜 범위, 파일 형식 및 기타 메타데이터를 기준으로 필터 식을 범위로 설정합니다. Azure 테넌트와 Microsoft 365 테넌트는 검색 엔진이 사용자를 대신하여 SharePoint를 조회하기 때문에 호출자의 ID를 인식해야 합니다.
인덱싱된 기술 원본과 달리 원격 SharePoint 기술 원본은 검색 시 라이브 데이터를 직접 쿼리합니다. 검색 인덱스 또는 연결 문자열은 필요하지 않습니다.
사용량 지원
| Azure 포털 | Microsoft Foundry 포털 | .NET SDK | Python SDK | Java SDK | JavaScript SDK | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
필수 구성 요소
Azure AI 검색 서비스는 모든 지역에서 에이전트 검색 기능을 제공합니다.
Azure와 동일한 Microsoft Entra ID 테넌트에 속한 Microsoft 365 테넌트의 SharePoint.
SharePoint 콘텐츠를 쿼리하는 각 사용자에 대해 검색 API 사용이 포함된 Microsoft 365 Copilot 추가 기능 라이선스 또는 해당 사용자에 대해 사용하도록 설정된 검색 API 종량제 사용(미리 보기)이 필요합니다.
종량제 사용을 사용하려면 Microsoft 365 관리자 액세스 및 정상 상태의 Azure 구독에 대한 소유자 또는 기여자 액세스 권한이 있어야 합니다. Azure 리소스 그룹도 필요합니다. 테넌트에는 활성화 전에 그리고 종량제 사용 전반에 걸쳐 하나 이상의 Microsoft 365 Copilot 라이선스가 있어야 합니다.
Copilot 추가 기능 라이선스가 없는 사용자의 경우 종량제 사용을 사용하도록 설정하고 해당 Azure 구독을 사용하여 Microsoft 365 관리 센터에서 청구를 구성합니다. 두 결제 옵션 모두 동일한 원격 SharePoint 지식 원본 구성을 사용합니다.
지식 원본을 만들 수 있는 권한입니다. 사용자 계정에 할당된 Search Service 기여자 역할로 키 없는 인증을 구성하거나(권장) 관리자 API 키를 사용합니다.
최신
Azure.Search.Documents미리 보기 패키지:dotnet add package Azure.Search.Documents --prerelease키 없는 인증의 경우 패키지:
Azure.Identitydotnet add package Azure.Identity
최신
azure-search-documents미리 보기 패키지:pip install --pre azure-search-documents키 없는 인증의 경우 패키지:
azure-identitypip install azure-identity
Search Service REST API의 2026-08-01-preview 버전입니다.
키 없는 인증의 경우 각 HTTP 요청의 헤더에 Microsoft Entra ID 토큰을
Authorization포함합니다.
제한 사항 및 고려 사항
원격 SharePoint 지식 원본은 Copilot Retrieval API 및 Azure AI 검색의 제한을 받습니다.
Copilot 검색 API
다음 Copilot 검색 API 제한 사항은 원격 SharePoint 지식 원본에도 적용됩니다.
Copilot 커넥터 또는 OneDrive 콘텐츠는 지원되지 않습니다. 콘텐츠는 SharePoint 사이트에서만 검색됩니다.
시간당 사용자당 200개 요청으로 제한됩니다.
1,500자의 쿼리 문자 제한입니다.
하이브리드 쿼리는 다음 파일 확장 프로그램에 대해서만 지원됩니다.
.doc.docx.pptx.pdf.aspx.one다중 모드 검색(테이블, 이미지 및 차트를 포함한 텍스트가 아닌 콘텐츠)은 지원되지 않습니다.
쿼리의 최대 결과는 25개입니다.
결과는 Copilot 검색 API에서 순서가 지정되지 않은 것으로 반환됩니다.
잘못된 KQL(키워드 쿼리 언어) 필터 식이 무시되고 필터 없이 쿼리가 계속 실행됩니다.
Azure AI 검색
기술 자료를 쿼리할 때 Azure AI 검색 한 번에 제한된 수의 원격 SharePoint 쿼리를 실행할 수 있습니다. 한도는 가격 책정 모델에 따라 달라집니다.
전용: 각 서비스 복제본은 검색 요청에 대해 선택된 모든 원격 SharePoint 기술 원본에서 한 번에 하나의 쿼리를 실행합니다. 추가 쿼리는 사용 가능한 복제본을 대기하므로 대기 시간이 증가합니다. 쿼리 처리량을 늘리려면 복제본을 추가합니다.
서버리스 (미리 보기): Azure AI 검색는 retrieve 요청에 선택된 모든 원격 SharePoint 지식 원본에 대해 한 번에 하나의 쿼리만 실행합니다. 추가 쿼리가 대기합니다. 서버리스는 용량을 자동으로 관리하므로 쿼리 처리량을 늘릴 수 없습니다.
기존 지식 원본 확인
기술 자료는 재사용 가능한 최상위 개체입니다. 기존 지식 원본에 대해 아는 것은 새 개체를 다시 사용하거나 이름을 지정하는 데 유용합니다.
다음 코드를 실행하여 이름 및 형식별로 기술 자료를 나열합니다.
// 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}");
}
# 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})")
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}
참조:기술 자료 - 목록
이름으로 단일 기술 원본을 반환하여 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));
# 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))
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}
참조:기술 자료 - 가져오기
다음 JSON은 원격 SharePoint 기술 소스에 대한 예제 응답입니다.
{
"name": "my-sharepoint-ks",
"kind": "remoteSharePoint",
"description": "A sample remote SharePoint knowledge source",
"encryptionKey": null,
"remoteSharePointParameters": {
"filterExpression": "filetype:docx",
"containerTypeId": null,
"resourceMetadata": [
"Author",
"Title"
]
}
}
기술 자료 만들기
다음 코드를 실행하여 원격 SharePoint 기술 자료를 만듭니다.
// Create a remote SharePoint knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure.Identity;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
var knowledgeSource = new RemoteSharePointKnowledgeSource(name: "my-remote-sharepoint-ks")
{
Description = "This knowledge source queries .docx files in a trusted Microsoft 365 tenant.",
RemoteSharePointParameters = new RemoteSharePointKnowledgeSourceParameters()
{
FilterExpression = "filetype:docx",
ResourceMetadata = { "Author", "Title" }
}
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
# Create a remote SharePoint knowledge source
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import RemoteSharePointKnowledgeSource, RemoteSharePointKnowledgeSourceParameters
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
knowledge_source = RemoteSharePointKnowledgeSource(
name = "my-remote-sharepoint-ks",
description= "This knowledge source queries .docx files in a trusted Microsoft 365 tenant.",
encryption_key = None,
remote_share_point_parameters = RemoteSharePointKnowledgeSourceParameters(
filter_expression = "filetype:docx",
resource_metadata = ["Author", "Title"],
container_type_id = None
)
)
index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
### Create a remote SharePoint knowledge source
PUT {{search-endpoint}}/knowledgesources/my-remote-sharepoint-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
{
"name": "my-remote-sharepoint-ks",
"kind": "remoteSharePoint",
"description": "This knowledge source queries .docx files in a trusted Microsoft 365 tenant.",
"encryptionKey": null,
"remoteSharePointParameters": {
"filterExpression": "filetype:docx",
"resourceMetadata": [ "Author", "Title" ],
"containerTypeId": null
}
}
필터 식 예제
filterExpression 모든 SharePoint 속성이 지원되는 것은 아닙니다. 지원되는 속성 목록은 API 참조를 참조하세요. 쿼리 가능한 속성은 Queryable을 참조하세요.
구문 참조에서 KQL 필터 에 대해 자세히 알아봅니다.
| 예제 | 필터 식 |
|---|---|
| ID로 단일 사이트로 필터링 | "filterExpression": "SiteID:\"00aa00aa-bb11-cc22-dd33-44ee44ee44ee\"" |
| ID별로 여러 사이트로 필터링 | "filterExpression": "SiteID:\"00aa00aa-bb11-cc22-dd33-44ee44ee44ee\" OR SiteID:\"11bb11bb-cc22-dd33-ee44-55ff55ff55ff\"" |
| 특정 경로 아래의 파일로 필터링 | "filterExpression": "Path:\"https://my-demo.sharepoint.com/sites/mysite/Shared Documents/en/mydocs\"" |
| 특정 날짜 범위로 필터링 | "filterExpression": "LastModifiedTime >= 2024-07-22 AND LastModifiedTime <= 2025-01-08" |
| 특정 파일 형식의 파일로 필터링 | "filterExpression": "FileExtension:\"docx\" OR FileExtension:\"pdf\" OR FileExtension:\"pptx\"" |
| 특정 정보 보호 레이블의 파일로 필터링 | "filterExpression": "InformationProtectionLabelId:\"f0ddcc93-d3c0-4993-b5cc-76b0a283e252\"" |
기술 자료에 할당
기술 자료에 만족하는 경우 기술 자료에 추가합니다.
기술 자료 질의
기술 자료가 구성되면 검색 작업 또는 MCP 엔드포인트 호출하여 SharePoint 콘텐츠를 쿼리합니다. 원격 SharePoint 쿼리 시간 필터링, 쿼리 공식화, 응답 필드 및 권한 적용에 대한 원본별 동작이 있습니다.
쿼리 시 KQL 필터 적용
쿼리 시 KQL 필터를 적용하기 위해 검색 요청 내에서 FilterExpressionAddOn를 KnowledgeSourceParams에 전달할 수 있습니다. 검색 요청에서 FilterExpressionAddOn를 지정하고 지식 소스 정의에서 FilterExpression를 지정하는 경우, 필터는 AND 연산으로 결합됩니다.
var retrievalRequest = new KnowledgeBaseRetrievalRequest();
retrievalRequest.Messages.Add(
new KnowledgeBaseMessage(
content: new[] {
new KnowledgeBaseMessageTextContent("contoso product planning")
}
) { Role = "user" }
);
retrievalRequest.KnowledgeSourceParams.Add(
new RemoteSharePointKnowledgeSourceParams("my-remote-sharepoint-ks")
{
FilterExpressionAddOn = "filetype:docx"
}
);
var result = await kbClient.RetrieveAsync(
retrievalRequest, xMsQuerySourceAuthorization: token
);
참조:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
쿼리 시 KQL 필터를 적용하기 위해 검색 요청 내에서 filter_expression_add_on를 knowledge_source_params에 전달할 수 있습니다. 검색 요청에서 filter_expression_add_on를 지정하고 지식 소스 정의에서 filter_expression를 지정하는 경우, 필터는 AND 연산으로 결합됩니다.
from azure.search.documents.knowledgebases.models import (
KnowledgeBaseMessage,
KnowledgeBaseMessageTextContent,
KnowledgeBaseRetrievalRequest,
RemoteSharePointKnowledgeSourceParams,
)
request = KnowledgeBaseRetrievalRequest(
messages=[
KnowledgeBaseMessage(
role="user",
content=[
KnowledgeBaseMessageTextContent(
text="contoso product planning"
)
],
)
],
knowledge_source_params=[
RemoteSharePointKnowledgeSourceParams(
knowledge_source_name="my-remote-sharepoint-ks",
filter_expression_add_on="filetype:docx",
)
],
)
result = kb_client.retrieve(
retrieval_request=request,
x_ms_query_source_authorization=token,
)
참조:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
쿼리 시 KQL 필터를 적용하기 위해 검색 요청 내에서 filterExpressionAddOn를 knowledgeSourceParams에 전달할 수 있습니다. 검색 요청에서 filterExpressionAddOn를 지정하고 지식 소스 정의에서 filterExpression를 지정하는 경우, 필터는 AND 연산으로 결합됩니다.
### Retrieve knowledge base content
POST {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}/retrieve?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
x-ms-query-source-authorization: {{user-access-token}}
{
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "contoso product planning" }
]
}
],
"knowledgeSourceParams": [
{
"knowledgeSourceName": "my-remote-sharepoint-ks",
"kind": "remoteSharePoint",
"filterExpressionAddOn": "filetype:docx"
}
]
}
참조:지식 검색 - 검색
효과적인 쿼리 작성
콘텐츠 자체에 대해 묻는 쿼리는 파일이 있는 위치 또는 마지막으로 업데이트된 시기에 대한 질문보다 더 효과적입니다. 예를 들어 콘텐츠 자체가 위치를 공개하지 않으므로 "Ignite 2024의 키노트 문서는 어디에 있나요"에서 결과를 반환하지 않을 수 있습니다.
FilterExpression 메타데이터는 파일 위치 또는 날짜별 쿼리에 대한 더 나은 방법입니다.
콘텐츠 자체에 대해 묻는 쿼리는 파일이 있는 위치 또는 마지막으로 업데이트된 시기에 대한 질문보다 더 효과적입니다. 예를 들어 콘텐츠 자체가 위치를 공개하지 않으므로 "Ignite 2024의 키노트 문서는 어디에 있나요"에서 결과를 반환하지 않을 수 있습니다.
filter_expression 메타데이터는 파일 위치 또는 날짜별 쿼리에 대한 더 나은 방법입니다.
콘텐츠 자체에 대해 묻는 쿼리는 파일이 있는 위치 또는 마지막으로 업데이트된 시기에 대한 질문보다 더 효과적입니다. 예를 들어 콘텐츠 자체가 위치를 공개하지 않으므로 "Ignite 2024의 키노트 문서는 어디에 있나요"에서 결과를 반환하지 않을 수 있습니다.
filterExpression 메타데이터는 파일 위치 또는 날짜별 쿼리에 대한 더 나은 방법입니다.
더 효과적인 질문은 "Ignite 2024의 키노트 문서는 무엇인가요?"입니다. 응답에는 합성된 답변, 쿼리 활동 및 토큰 수와 URL 및 기타 메타데이터가 포함됩니다.
SharePoint 특정 응답 필드
원격 SharePoint 결과에는 resourceMetadata, webUrl 및 searchSensitivityLabelInfo 같은 다른 기술 원본 형식에 대해 표시되지 않는 필드가 포함됩니다.
{
"resourceMetadata": {
"Author": "Nuwan Amarathunga;Nurul Izzati",
"Title": "Ignite 2024 Keynote Address"
},
"rerankerScore": 2.489522,
"webUrl": "https://contoso-my.sharepoint.com/keynotes/Documents/Keynote-Ignite-2024.docx",
"searchSensitivityLabelInfo": {
"displayName": "Confidential\\Contoso Extended",
"sensitivityLabelId": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333",
"tooltip": "Data is classified and protected.",
"priority": 5,
"color": "#FF8C00",
"isEncrypted": true
}
}
쿼리 시 사용 권한 적용
원격 SharePoint 기술 원본은 쿼리 시 SharePoint 권한을 적용할 수 있습니다. 이 필터링을 사용하도록 설정하려면 검색 요청에 최종 사용자의 액세스 토큰을 포함합니다. 검색 엔진은 SharePoint 쿼리하고 사용자가 액세스할 수 있는 콘텐츠만 반환하는 Copilot 검색 API에 토큰을 전달합니다. SharePoint 권한과 Microsoft Purview 민감도 레이블이 준수됩니다.
원격 SharePoint 검색 인덱스를 사용하지 않으므로 수집 시간 권한 구성이 필요하지 않습니다. 액세스 토큰이 유일한 요구 사항입니다.
토큰 전달에 대한 지침은 쿼리 시 권한 적용(미리 보기)을 참조하세요.
지식 원본 삭제
기술 자료를 삭제하려면 먼저 이를 참조하는 기술 자료를 삭제하거나 기술 자료 정의를 업데이트하여 참조를 제거해야 합니다. 인덱스 및 인덱서 파이프라인을 생성하는 기술 원본의 경우 생성된 모든 개체 도 삭제됩니다. 그러나 기존 인덱스로 기술 원본을 만든 경우 인덱스가 삭제되지 않습니다.
사용 중인 기술 원본을 삭제하려고 하면 작업이 실패하고 영향을 받는 기술 자료 목록이 반환됩니다.
기술 자료를 삭제하려면 다음을 수행합니다.
검색 서비스의 모든 기술 자료 목록을 가져옵니다.
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}"); }예제 응답은 다음과 같을 수 있습니다.
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-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 }기술 자료를 삭제하거나 여러 기술 자료가 있는 경우 기술 자료를 업데이트하여 원본을 제거합니다. 이 예제에서는 삭제를 보여줍니다.
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.");기술 자료를 삭제합니다.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
검색 서비스의 모든 기술 자료 목록을 가져옵니다.
# 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}")예제 응답은 다음과 같을 수 있습니다.
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }개별 기술 자료 정의를 가져와서 기술 자료 참조를 확인합니다.
# 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)예제 응답은 다음과 같을 수 있습니다.
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }기술 자료를 삭제하거나 여러 기술 자료가 있는 경우 기술 자료를 업데이트하여 원본을 제거합니다. 이 예제에서는 삭제를 보여줍니다.
# 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.")기술 자료를 삭제합니다.
# 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.")
검색 서비스의 모든 기술 자료 목록을 가져옵니다.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}참조:기술 자료 - 목록
예제 응답은 다음과 같을 수 있습니다.
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }개별 기술 자료 정의를 가져와서 기술 자료 참조를 확인합니다.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}참조:기술 자료 - 가져오기
예제 응답은 다음과 같을 수 있습니다.
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }기술 자료를 삭제하거나 여러 기술 자료가 있는 경우 기술 자료를 업데이트하여 원본을 제거합니다. 이 예제에서는 삭제를 보여줍니다.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}참조:기술 자료 - 삭제
기술 자료를 삭제합니다.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}참조:기술 자료 - 삭제