Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga
Wyszukiwanie AI platformy Azure jest dostępna za pośrednictwem portalu Azure, interfejsów API REST i Azure SDKs. Jest także podstawą Foundry IQ — zarządzanej warstwy wiedzy, która przekształca treści przedsiębiorstwa w bazy wiedzy wielokrotnego użytku z uwzględnieniem uprawnień dla agentów w portalu Microsoft Foundry.
Ważna
Funkcje, możliwości lub właściwości oznaczone (wersja zapoznawcza) nie są objęte umową dotyczącą poziomu usług, nie są zalecane w przypadku obciążeń produkcyjnych i mogą ulec zmianie lub ograniczeniu, zanim staną się one ogólnie dostępne. Warunki Wyszukiwanie AI platformy Azure wersji zapoznawczej mają zastosowanie do wszystkich funkcji w wersji zapoznawczej, niezależnie od tego, czy jest ona autonomiczna, czy częścią ogólnie dostępnej funkcji.
Źródło wiedzy indeksu wyszukiwania łączy istniejący indeks usługi Wyszukiwanie AI platformy Azure, w tym zaindeksowany tekst i wektory, z potokiem wyszukiwania agentowego. Źródła wiedzy są tworzone niezależnie, przywoływane w bazie wiedzy i używane jako dane uziemienia, gdy baza wiedzy jest odpytywane w czasie wykonywania zapytań.
Wsparcie użytkowania
| portal Azure | portal Microsoft Foundry | zestaw SDK .NET | SDK języka Python | SDK Java | JavaScript SDK | API REST |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Wymagania wstępne
Usługa Wyszukiwanie AI platformy Azure w dowolnym regionie, która zapewnia autonomiczne wyszukiwanie.
Indeks wyszukiwania zawierający zwykły tekst lub zawartość wektorową z konfiguracją semantyczną. Przejrzyj kryteria indeksu dotyczące wyszukiwania agenta. Indeks musi znajdować się w tej samej usłudze wyszukiwania co baza wiedzy.
Uprawnienie do tworzenia źródeł wiedzy. Skonfiguruj uwierzytelnianie bez klucza przy użyciu roli Współautor usługi wyszukiwania przypisanej do konta użytkownika (zalecane) lub użyj klucza interfejsu API administratora.
Wymagany pakiet
Azure.Search.Documents:Dla funkcji
2026-08-01-previewnajnowszy pakiet w wersji zapoznawczej:dotnet add package Azure.Search.Documents --prereleaseDla funkcji
2026-04-01, najnowszy stabilny pakiet:dotnet add package Azure.Search.Documents
W przypadku uwierzytelniania bezkluczowego pakiet
Azure.Identity:dotnet add package Azure.Identity
Wymagany pakiet
azure-search-documents:Dla funkcji
2026-08-01-previewnajnowszy pakiet w wersji zapoznawczej:pip install --pre azure-search-documentsDla funkcji
2026-04-01, najnowszy stabilny pakiet:pip install azure-search-documents
W przypadku uwierzytelniania bezkluczowego pakiet
azure-identity:pip install azure-identity
Wymagana wersja interfejsu API REST usługi wyszukiwania:
W przypadku funkcji w wersji zapoznawczej: 2026-08-01-preview
Funkcje ogólnie dostępne: 2026-04-01
W przypadku uwierzytelniania bez klucza dołącz token Microsoft Entra ID w nagłówku
Authorizationkażdego żądania HTTP.
Limitations
Wyszukiwanie agentowe nie sprawia, że żądania wyszukiwania uwzględniają profile ocen indeksu bazowego, w tym defaultScoringProfile. Odpowiedzi zwracane nie wyświetlają @search.rerankerBoostedScore.
Sprawdzanie istniejących źródeł wiedzy
Źródłem wiedzy jest obiekt najwyższego poziomu wielokrotnego użytku. Znajomość istniejących źródeł wiedzy jest przydatna w przypadku ponownego użycia lub nazewnictwa nowych obiektów.
Uruchom następujący kod, aby wyświetlić listę źródeł wiedzy według nazwy i typu.
// 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}");
}
Reference: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})")
Reference:SearchIndexClient
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}
Dokumentacja:Źródła wiedzy — lista
Możesz również zwrócić pojedyncze źródło wiedzy według nazwy, aby przejrzeć jego definicję 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));
Reference: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))
Reference:SearchIndexClient
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}
Dokumentacja:Źródła wiedzy — pobierz
Poniższy kod JSON to przykładowa odpowiedź dla źródła wiedzy indeksu wyszukiwania. Zwróć uwagę, że źródło wiedzy określa pojedynczą nazwę indeksu i pola w indeksie do uwzględnienia w zapytaniu.
{
"name": "my-search-index-ks",
"kind": "searchIndex",
"description": "A sample search index knowledge source.",
"encryptionKey": null,
"searchIndexParameters": {
"searchIndexName": "my-search-index",
"semanticConfigurationName": null,
"sourceDataFields": [],
"searchFields": []
}
}
Tworzenie źródła wiedzy
Uruchom następujący kod, aby utworzyć źródło wiedzy indeksu wyszukiwania.
Uwaga
Począwszy od wersji interfejsu 2026-05-01-preview API, semanticConfigurationName jest opcjonalny w źródłach wiedzy indeksu wyszukiwania. Wcześniejsze wersje interfejsu API nadal wymagają semanticConfigurationName. Jeśli źródło wiedzy musi obsługiwać starsze i nowsze wersje interfejsu API, należy określić wartość semanticConfigurationName.
// Create a search index knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Identity;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
var indexKnowledgeSource = new SearchIndexKnowledgeSource(
name: knowledgeSourceName,
searchIndexParameters: new SearchIndexKnowledgeSourceParameters(searchIndexName: indexName)
{
SearchFields = { new SearchIndexFieldReference(name: "page_chunk") },
SourceDataFields = { new SearchIndexFieldReference(name: "id"), new SearchIndexFieldReference(name: "page_chunk"), new SearchIndexFieldReference(name: "page_number") }
}
);
await indexClient.CreateOrUpdateKnowledgeSourceAsync(indexKnowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSourceName}' created or updated successfully.");
Reference:SearchIndexClient, SearchIndexKnowledgeSource
# Create a search index knowledge source
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import SearchIndexKnowledgeSource, SearchIndexKnowledgeSourceParameters, SearchIndexFieldReference
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
knowledge_source = SearchIndexKnowledgeSource(
name = "my-search-index-ks",
description= "This knowledge source pulls from an existing index designed for agentic retrieval.",
encryption_key = None,
search_index_parameters = SearchIndexKnowledgeSourceParameters(
search_index_name = "search_index_name",
source_data_fields = [
SearchIndexFieldReference(name="description"),
SearchIndexFieldReference(name="category"),
],
search_fields = [
SearchIndexFieldReference(name="id")
],
)
)
index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
Reference:SearchIndexClient
### Create a search index knowledge source
PUT {{search-endpoint}}/knowledgesources/my-search-index-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
{
"name": "my-search-index-ks",
"kind": "searchIndex",
"description": "This knowledge source pulls from an existing index designed for agentic retrieval.",
"encryptionKey": null,
"searchIndexParameters": {
"searchIndexName": "<index-name>",
"sourceDataFields": [
{ "name": "description" },
{ "name": "category" }
]
}
}
Dokumentacja:Źródła wiedzy — tworzenie lub aktualizowanie
Utrwalanie podstawowego filtru w źródle wiedzy (wersja zapoznawcza)
Od wersji interfejsu API 2026-05-01-preview źródło wiedzy indeksu wyszukiwania może zachowywać domyślny filtr za pomocą właściwości baseFilter. Użyj baseFilter, gdy to samo wyrażenie filtru powinno mieć zastosowanie do każdego żądania pobrania korzystającego ze źródła wiedzy, aby wywołujący nie musieli powtarzać filtru przy każdym wywołaniu.
Poniższy przykład przechowuje filtr podstawowy w źródle wiedzy indeksu wyszukiwania.
var knowledgeSource = new SearchIndexKnowledgeSource(
name: "public-docs-ks",
searchIndexParameters: new SearchIndexKnowledgeSourceParameters(searchIndexName: "public-docs-index")
{
BaseFilter = "isPublished eq true and accessScope eq 'public'"
}
);
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Reference:SearchIndexKnowledgeSourceParameters
knowledge_source = SearchIndexKnowledgeSource(
name="public-docs-ks",
search_index_parameters=SearchIndexKnowledgeSourceParameters(
search_index_name="public-docs-index",
base_filter="isPublished eq true and accessScope eq 'public'",
),
)
index_client.create_or_update_knowledge_source(knowledge_source)
Reference:SearchIndexKnowledgeSourceParameters
PUT {{search-endpoint}}/knowledgesources/public-docs-ks?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name": "public-docs-ks",
"kind": "searchIndex",
"searchIndexParameters": {
"searchIndexName": "public-docs-index",
"baseFilter": "isPublished eq true and accessScope eq 'public'"
}
}
Dokumentacja:Źródła wiedzy — tworzenie lub aktualizowanie
Podczas pobierania knowledgeSourceParams.filterAddOn dodaje ograniczenia specyficzne dla danego żądania do zapisanego filtru bazowego:
var retrievalRequest = new KnowledgeBaseRetrievalRequest();
retrievalRequest.KnowledgeSourceParams.Add(
new SearchIndexKnowledgeSourceParams("public-docs-ks")
{
FilterAddOn = "category eq 'Benefits'"
}
);
request = KnowledgeBaseRetrievalRequest(
knowledge_source_params=[
SearchIndexKnowledgeSourceParams(
knowledge_source_name="public-docs-ks",
filter_add_on="category eq 'Benefits'",
),
],
)
{
"knowledgeSourceParams": [
{
"knowledgeSourceName": "public-docs-ks",
"kind": "searchIndex",
"filterAddOn": "category eq 'Benefits'"
}
]
}
Skuteczny filtr składa się z następujących elementów:
baseFilter AND filterAddOn
Ponieważ filtry są łączone za pomocą AND, filterAddOn może jedynie zawęzić utrwalony filtr bazowy. Nie może go zastąpić ani poszerzyć.
Konfigurowanie wskazówek dotyczących zapytań (wersja zapoznawcza)
Począwszy od wersji interfejsu 2026-08-01-preview API, wskazówki dotyczące zapytań prowadzą model planowania zapytań w celu generowania filtrów i zwiększania klasyfikacji na podstawie żądania użytkownika. Przechowuj domyślne podpowiedzi w searchIndexParameters.queryHints, który może zawierać zarówno filtry, jak i wzmocnienia.
Poniższy przykład zapisuje jedną wskazówkę filtru i jedno fieldValue wzmocnienie w źródle wiedzy dla product-docs-index, które ma filtrowalne pole productFamily oraz pole language, w którym można wyszukiwać.
using System;
using Azure.Identity;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
var endpoint = new Uri("<search-endpoint>");
var indexClient = new SearchIndexClient(
endpoint,
new DefaultAzureCredential());
var queryHints = new SearchIndexKnowledgeSourceQueryHints();
queryHints.Filters.Add(
new SearchIndexKnowledgeSourceFilterHint(
"productFamily",
["Model-X100", "Model-X200"])
{
FilterInstructions =
"Filter only when the user names a model."
});
var languageBoost =
new SearchIndexKnowledgeSourceFieldValueBoost(
"language",
2.0);
languageBoost.FieldValues.Add("en-US");
languageBoost.FieldValues.Add("ja-JP");
languageBoost.BoostInstructions =
"Prefer the language requested by the user.";
queryHints.Boosts.Add(languageBoost);
var knowledgeSource = new SearchIndexKnowledgeSource(
"product-docs-ks",
new SearchIndexKnowledgeSourceParameters(
"product-docs-index")
{
QueryHints = queryHints
});
await indexClient.CreateOrUpdateKnowledgeSourceAsync(
knowledgeSource);
Reference:SearchIndexKnowledgeSourceParameters
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
SearchIndexKnowledgeSource,
SearchIndexKnowledgeSourceFieldValueBoost,
SearchIndexKnowledgeSourceFilterHint,
SearchIndexKnowledgeSourceParameters,
SearchIndexKnowledgeSourceQueryHints,
)
endpoint = "<search-endpoint>"
index_client = SearchIndexClient(
endpoint=endpoint,
credential=DefaultAzureCredential(),
)
query_hints = SearchIndexKnowledgeSourceQueryHints(
filters=[
SearchIndexKnowledgeSourceFilterHint(
field="productFamily",
field_values=["Model-X100", "Model-X200"],
filter_instructions=(
"Filter only when the user names a model."
),
)
],
boosts=[
SearchIndexKnowledgeSourceFieldValueBoost(
field="language",
field_values=["en-US", "ja-JP"],
boost=2.0,
boost_instructions=(
"Prefer the language requested by the user."
),
)
],
)
knowledge_source = SearchIndexKnowledgeSource(
name="product-docs-ks",
search_index_parameters=SearchIndexKnowledgeSourceParameters(
search_index_name="product-docs-index",
query_hints=query_hints,
),
)
index_client.create_or_update_knowledge_source(knowledge_source)
Reference:SearchIndexKnowledgeSourceParameters
PUT {{search-endpoint}}/knowledgesources('product-docs-ks')?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name": "product-docs-ks",
"kind": "searchIndex",
"searchIndexParameters": {
"searchIndexName": "product-docs-index",
"queryHints": {
"filters": [{
"field": "productFamily",
"fieldValues": ["Model-X100", "Model-X200"],
"filterInstructions": "Filter only when the user names a model."
}],
"boosts": [{
"kind": "fieldValue",
"field": "language",
"fieldValues": ["en-US", "ja-JP"],
"boost": 2.0,
"boostInstructions": "Prefer the language requested by the user."
}]
}
}
}
Dokumentacja:Źródła wiedzy — tworzenie lub aktualizowanie
Skonfiguruj każdą wskazówkę zgodnie z następującymi wymaganiami:
| Hint | Wymagania dotyczące pola |
fieldValues Zachowanie |
Limity kolekcji |
|---|---|---|---|
| Filtr |
field musi zidentyfikować pole indeksu z możliwością filtrowania. |
Required. Wyświetl wyczerpujący zestaw dozwolonych wartości. Jeśli żądanie nie odpowiada żadnej z wymienionych wartości, moduł planowania otrzymuje instrukcję, aby nie filtrować według tego pola. | Maksymalnie pięć wskazówek z unikatowymi polami. Każda wartość może zawierać maksymalnie 128 znaków, a wszystkie wartości w jednej wskazówce mogą zawierać maksymalnie 2048 znaków łącznie. |
fieldValue wzmocnienie |
field musi zidentyfikować pole z możliwością wyszukiwania, które używa języka, standardu lub analizatora domyślnego. |
Przykłady opcjonalne. Jeśli je pominiesz, użyj boostInstructions, aby wskazać, którą wartość należy wybrać z żądania. |
Maksymalnie pięć wskazówek z unikatowymi polami. Każda wskazówka może zawierać maksymalnie 20 wartości, przy czym każda wartość może mieć do 128 znaków, a łącznie wszystkie wartości — 1 024 znaki. |
multiWordExpression wzmocnienie |
Pomiń field. Indeks musi zawierać co najmniej jedno pole z możliwością wyszukiwania, które używa języka, standardu lub analizatora domyślnego. |
Opcjonalne przykłady fraz specyficznych dla domeny. | Jedna wskazówka. Może zawierać maksymalnie 20 wartości, po 128 znaków na każdą wartość i łącznie 1 024 znaki. |
Dla każdego typu wzmocnienia wartość boost jest wymagana i musi być liczbą skończoną większą niż 1.0. Wyższe wartości dają pasującym dokumentom większy wpływ na klasyfikację bez wykluczania innych dokumentów. Ogranicz każdą opcjonalną filterInstructions lub boostInstructions wartość do 1024 znaków.
Użyj impulsu multiWordExpression dla fraz specyficznych dla domeny, których znaczenie nie jest przechwytywane przez poszczególne wyrazy. Podaj przykładowe sformułowania w fieldValues lub pomiń je i pozostaw wybór sformułowań boostInstructions oraz prośbie użytkownika:
{
"boosts": [{
"kind": "multiWordExpression",
"fieldValues": ["deferred tax", "wash sale"],
"boost": 3.0,
"boostInstructions": "Boost domain terms used as complete phrases."
}]
}
Podczas projektowania wskazówek dotyczących zapytań należy pamiętać o następujących zachowaniach:
Wskazówki są najlepszym rozwiązaniem, więc model może nie wygenerować filtru ani zwiększenia dla każdego żądania. W przypadku wymaganych ograniczeń, takich jak granice autoryzacji, należy zamiast tego użyć kontroli dostępu na poziomie dokumentu lub filtru deterministycznego .
Podpowiedzi wymagają planowania zapytań sterowanego przez model, więc nie są stosowane, gdy nakład wnioskowania podczas wyszukiwania to
minimal. Na innych poziomach nakładu pracy model rodziny GPT-4o lub GPT-4.1 zwraca http 400, gdy przechowywanyqueryHintsobiekt zawiera filtr. Usługa sprawdza zapisane filtry przed zastosowaniemqueryHintOverrides, więc puste nadpisanie lub nadpisanie zawierające wyłącznie wzmocnienia nie omija tej weryfikacji. Same zapisanefieldValueimultiWordExpressionboosty nie uruchamiają walidacji.Wygenerowane filtry są łączone z
baseFilterifilterAddOnza pomocąAND. Wygenerowany impuls ponownie zapisuje zapytanie w pełnej składni Lucene przy zachowaniu oryginalnych terminów.Wskazówki dotyczące zapytań używają indeksowanych wartości jako uziemienia. Nie konfigurują analizatorów ani nie włączają wykrywania języka. Wartości
languagew tych przykładach to zwykłe metadane indeksu.
Aby zastąpić zapisane wskazówki dla pojedynczego żądania pobrania i zweryfikować wygenerowany filtr lub wzmocnienie, zobacz Zastępowanie zapisanych wskazówek zapytania w czasie wykonywania zapytania (wersja zapoznawcza).
Przypisywanie do bazy wiedzy
Jeśli źródło wiedzy jest zadowalające, dodaj je do bazy wiedzy.
Wykonywanie zapytań w bazie wiedzy
Po skonfigurowaniu bazy wiedzy wywołaj akcję pobierania lub punkt końcowy MCP , aby wysłać zapytanie do źródła wiedzy.
Usuwanie źródła wiedzy
Aby można było usunąć źródło wiedzy, należy usunąć dowolną bazę wiedzy, która odwołuje się do źródła wiedzy, lub zaktualizować definicję bazy wiedzy, aby usunąć odwołanie. W przypadku źródeł wiedzy, które generują potok indeksu i indeksatora, wszystkie wygenerowane obiekty również są usuwane. Jeśli jednak użyto istniejącego indeksu do utworzenia źródła wiedzy, indeks nie zostanie usunięty.
Jeśli spróbujesz usunąć używane źródło wiedzy, akcja zakończy się niepowodzeniem i zwróci listę baz wiedzy, których dotyczy problem.
Aby usunąć źródło wiedzy:
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
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}"); }Reference:SearchIndexClient
Przykładowa odpowiedź może wyglądać następująco:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Uzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
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);Reference:SearchIndexClient
Przykładowa odpowiedź może wyglądać następująco:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Usuń bazę wiedzy lub, jeśli masz wiele źródeł wiedzy, zaktualizuj bazę wiedzy, aby usunąć źródło. W tym przykładzie pokazano usunięcie.
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.");Reference:SearchIndexClient
Usuń źródło wiedzy.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Reference:SearchIndexClient
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
# 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}")Reference:SearchIndexClient
Przykładowa odpowiedź może wyglądać następująco:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Uzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
# 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)Reference:SearchIndexClient
Przykładowa odpowiedź może wyglądać następująco:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Usuń bazę wiedzy lub, jeśli masz wiele źródeł wiedzy, zaktualizuj bazę wiedzy, aby usunąć źródło. W tym przykładzie pokazano usunięcie.
# 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.")Reference:SearchIndexClient
Usuń źródło wiedzy.
# 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.")Reference:SearchIndexClient
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}Dokumentacja:Bazy wiedzy — lista
Przykładowa odpowiedź może wyglądać następująco:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Uzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Dokumentacja:Bazy wiedzy — pobieranie
Przykładowa odpowiedź może wyglądać następująco:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Usuń bazę wiedzy lub, jeśli masz wiele źródeł wiedzy, zaktualizuj bazę wiedzy, aby usunąć źródło. W tym przykładzie pokazano usunięcie.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Dokumentacja:Bazy wiedzy — usuwanie
Usuń źródło wiedzy.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Dokumentacja:Źródła wiedzy — usuwanie