Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Nota
O Pesquisa de IA do Azure está disponível através do portal Azure, APIs REST e SDKs do Azure. Também sustenta o Foundry IQ, a camada de conhecimento gerida que transforma conteúdos empresariais em bases de conhecimento reutilizáveis e conscientes de permissões para agentes no portal Microsoft Foundry.
Importante
Funcionalidades, capacidades ou propriedades assinaladas (pré-visualização) não são abrangidas por um acordo de nível de serviço, não são recomendadas para cargas de trabalho em produção e podem mudar ou ser limitadas antes de se tornarem geralmente disponíveis. Os termos de pré-visualização do Pesquisa de IA do Azure aplicam-se a todas as funcionalidades de pré-visualização, sejam independentes ou parte de uma funcionalidade geralmente disponível.
Uma fonte de conhecimento do índice de pesquisa liga um índice existente do Pesquisa de IA do Azure, incluindo o respetivo texto indexado e vetores, a um pipeline de recuperação com agentes. As fontes de conhecimento são criadas de forma independente, referenciadas numa base de conhecimento e usadas como dados de base quando a base é consultada em tempo de execução.
Suporte de utilização
| Portal do Azure | Portal Microsoft Foundry | .NET SDK | Python SDK | Java SDK | JavaScript SDK | API REST |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Pré-requisitos
Um serviço Pesquisa de IA do Azure em qualquer região que forneça recuperação proativa.
Um índice de pesquisa contendo texto simples ou conteúdo vetorial com uma configuração semântica. Revise os critérios do índice para a recuperação agentical. O índice deve estar no mesmo serviço de pesquisa que a base de conhecimento.
Permissão para criar fontes de conhecimento. Configure a autenticação sem chave com o papel de Contribuidor do Serviço de Pesquisa atribuído à sua conta de utilizador (recomendado) ou utilize uma chave API de administrador.
Pacote obrigatório
Azure.Search.Documents:Para as funcionalidades
2026-08-01-preview, o pacote de pré-visualização mais recente:dotnet add package Azure.Search.Documents --prereleasePara as funcionalidades de
2026-04-01, o pacote estável mais recente:dotnet add package Azure.Search.Documents
Para autenticação sem chave, o
Azure.Identitypacote:dotnet add package Azure.Identity
Pacote obrigatório
azure-search-documents:Para as funcionalidades
2026-08-01-preview, o pacote de pré-visualização mais recente:pip install --pre azure-search-documentsPara as funcionalidades de
2026-04-01, o pacote estável mais recente:pip install azure-search-documents
Para autenticação sem chave, o
azure-identitypacote:pip install azure-identity
Versão obrigatória da API REST do Serviço de Pesquisa:
Para funcionalidades de pré-visualização: 2026-08-01-preview
Para funcionalidades geralmente disponíveis: 2026-04-01
Para autenticação sem chave, inclua um token Microsoft Entra ID no
Authorizationcabeçalho de cada pedido HTTP.
Limitations
A recuperação agential não faz com que os pedidos de recuperação respeitem os perfis de pontuação do índice subjacente, incluindo defaultScoringProfile. As respostas de Retrieve não apresentam @search.rerankerBoostedScore.
Verifique fontes de conhecimento existentes
Uma fonte de conhecimento é um objeto de topo e reutilizável. Conhecer as fontes de conhecimento existentes é útil tanto para reutilizar como para nomear novos objetos.
Execute o seguinte código para listar as fontes de conhecimento por nome e tipo.
// 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}");
}
Referência: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})")
Referência:SearchIndexClient
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}
Referência:Fontes de Conhecimento - Lista
Também pode devolver uma única fonte de conhecimento pelo nome para rever a sua definição em 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));
Referência: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))
Referência:SearchIndexClient
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}
Referência:Fontes de Conhecimento - Obter
O JSON seguinte é uma resposta de exemplo para uma fonte de conhecimento de índice de pesquisa. Note que a fonte de conhecimento especifica um único nome de índice e quais os campos do índice a incluir na consulta.
{
"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": []
}
}
Criar uma fonte de conhecimento
Execute o código seguinte para criar uma fonte de conhecimento de índice de pesquisa.
Nota
A partir da versão 2026-05-01-preview da API, semanticConfigurationName é opcional nas fontes de conhecimento do índice de pesquisa. Versões anteriores da API ainda requerem semanticConfigurationName. Se a sua fonte de conhecimento precisar de suportar versões mais antigas e mais recentes da API, continue a especificar 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.");
Referência: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.")
Referência: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" }
]
}
}
Referência:Fontes de Conhecimento - Criar ou Atualizar
Persistir um filtro base numa fonte de conhecimento (pré-visualização)
A partir da versão 2026-05-01-preview da API, uma origem de conhecimento de um índice de pesquisa pode manter um filtro predefinido através da propriedade baseFilter.
baseFilter Use quando a mesma expressão de filtro deve aplicar-se a todos os pedidos de recuperação que utilizam a fonte de conhecimento, para que os chamadores não tenham de repetir o filtro em todas as chamadas.
O exemplo seguinte armazena um filtro de base numa fonte de conhecimento de um índice de pesquisa.
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);
Referência: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)
Referência: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'"
}
}
Referência:Fontes de Conhecimento - Criar ou Atualizar
No momento da recuperação, knowledgeSourceParams.filterAddOn adiciona restrições específicas do pedido ao filtro base armazenado:
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'"
}
]
}
O filtro efetivo é composto como:
baseFilter AND filterAddOn
Como os filtros são combinados com AND, filterAddOn só pode estreitar o filtro base persistente. Não pode substituí-lo nem ampliá-lo.
Configurar sugestões de consulta (pré-visualização)
A partir da versão 2026-08-01-preview da API, as sugestões de consulta orientam o modelo de planeamento de consultas para gerar filtros e reforços de classificação com base no pedido do utilizador. Guarde as sugestões predefinidas em searchIndexParameters.queryHints, que pode conter tanto filtros como reforços.
O exemplo seguinte armazena uma sugestão de filtro e um fieldValue boost numa origem de conhecimento para product-docs-index, que tem um campo filtrável productFamily e um campo pesquisável language.
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);
Referência: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)
Referência: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."
}]
}
}
}
Referência:Fontes de Conhecimento - Criar ou Atualizar
Configure cada dica de acordo com os seguintes requisitos:
| Hint | Requisitos de campo |
fieldValues Comportamento |
Limites de recolha |
|---|---|---|---|
| Filter |
field deve identificar um campo de índice filtrável. |
Required. Liste o conjunto exaustivo de valores permitidos. Se o pedido não corresponder a um valor listado, o planeador é instruído a não filtrar nesse campo. | Até cinco dicas com campos distintos. Cada valor pode conter até 128 caracteres, e todos os valores de uma dica podem conter até 2.048 caracteres no total. |
fieldValue Reforço |
field deve identificar um campo pesquisável que utilize uma linguagem, padrão ou analisador padrão. |
Exemplos opcionais. Se os omitir, use boostInstructions para explicar que valor selecionar na solicitação. |
Até cinco dicas com campos distintos. Cada dica pode conter até 20 valores, com 128 caracteres por valor e 1.024 caracteres no total. |
multiWordExpression Reforço |
Omite field. O índice deve conter pelo menos um campo pesquisável que utilize uma linguagem, padrão ou analisador padrão. |
Exemplos opcionais de frases específicas de domínio. | Uma pista. Pode conter até 20 valores, combinando 128 caracteres por valor e 1.024 caracteres. |
Para qualquer tipo de boost, boost é necessário e deve ser um número finito maior que 1.0. Valores mais elevados dão mais influência aos documentos correspondentes na classificação sem excluir outros documentos. Limite cada opcional filterInstructions ou boostInstructions valor a 1.024 caracteres.
Use um multiWordExpression reforço para frases específicas de domínio cujo significado não seja captado pelas palavras individuais. Forneça frases de exemplo em fieldValues, ou omita-as e deixe que boostInstructions e o pedido do utilizador orientem a seleção das frases:
{
"boosts": [{
"kind": "multiWordExpression",
"fieldValues": ["deferred tax", "wash sale"],
"boost": 3.0,
"boostInstructions": "Boost domain terms used as complete phrases."
}]
}
Ao definir sugestões de consulta, tenha em mente os seguintes comportamentos:
As dicas são o melhor esforço, por isso o modelo pode não gerar um filtro ou boost para cada pedido. Para as restrições obrigatórias, como limites de autorização, utilize controlo de acesso ao nível do documento ou um filtro determinístico .
As sugestões precisam de planeamento de consultas baseado em modelos, por isso não são aplicadas quando o esforço de raciocínio para recuperação é
minimal. Noutros níveis de esforço, um modelo da família GPT-4o ou GPT-4.1 devolve HTTP 400 quando o objeto armazenadoqueryHintscontém um filtro. O serviço verifica os filtros armazenados antes de aplicarqueryHintOverrides, por isso um override vazio ou apenas boosts não contorna esta validação. Os boostsfieldValueemultiWordExpressionarmazenados, por si só, não ativam a validação.Os filtros gerados combinam-se com
baseFilterefilterAddOnusandoAND. Um boost gerado reescreve a consulta na sintaxe completa do Lucene, preservando os termos originais.As dicas de consulta usam valores indexados como base. Eles não configuram analisadores nem ativam a deteção de linguagem. Os
languagevalores nestes exemplos são metadados de índice comuns.
Para substituir as dicas de consulta armazenadas para um único pedido de obtenção e verificar o filtro ou reforço gerado, veja Substituir as dicas de consulta armazenadas durante a consulta (pré-visualização).
Atribuir a uma base de conhecimento
Se estiver satisfeito com a fonte de conhecimento, adicione-a a uma base de conhecimento.
Consultar uma base de conhecimento
Depois de a base de conhecimento estar configurada, chame a ação de recuperação ou o endpoint MCP para consultar a fonte de conhecimento.
Eliminar uma fonte de conhecimento
Antes de poder eliminar uma fonte de conhecimento, deve eliminar qualquer base de conhecimento que a faça referência ou atualizar a definição da base de conhecimento para remover a referência. Para fontes de conhecimento que geram um pipeline de índice e indexador, todos os objetos gerados também são eliminados. No entanto, se usou um índice existente para criar uma fonte de conhecimento, o seu índice não é eliminado.
Se tentar eliminar uma fonte de conhecimento que está em uso, a ação falha e devolve uma lista das bases de conhecimento afetadas.
Para eliminar uma fonte de conhecimento:
Obtenha uma lista de todas as bases de conhecimento do seu serviço de pesquisa.
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}"); }Referência:SearchIndexClient
Uma resposta de exemplo pode ser a seguinte:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenha uma definição individual da base de conhecimento para verificar referências de fontes de conhecimento.
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);Referência:SearchIndexClient
Uma resposta de exemplo pode ser a seguinte:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Ou apagas a base de conhecimento ou, se tiveres várias fontes de conhecimento, atualizas a base de conhecimento para remover a fonte. Este exemplo mostra eliminação.
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.");Referência:SearchIndexClient
Apaga a fonte de conhecimento.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Referência:SearchIndexClient
Obtenha uma lista de todas as bases de conhecimento do seu serviço de pesquisa.
# 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}")Referência:SearchIndexClient
Uma resposta de exemplo pode ser a seguinte:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenha uma definição individual da base de conhecimento para verificar referências de fontes de conhecimento.
# 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)Referência:SearchIndexClient
Uma resposta de exemplo pode ser a seguinte:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Ou apagas a base de conhecimento ou, se tiveres várias fontes de conhecimento, atualizas a base de conhecimento para remover a fonte. Este exemplo mostra eliminação.
# 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.")Referência:SearchIndexClient
Apaga a fonte de conhecimento.
# 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.")Referência:SearchIndexClient
Obtenha uma lista de todas as bases de conhecimento do seu serviço de pesquisa.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}Referência:Bases de Conhecimento - Lista
Uma resposta de exemplo pode ser a seguinte:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenha uma definição individual da base de conhecimento para verificar referências de fontes de conhecimento.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referência:Bases de Conhecimento - Obter
Uma resposta de exemplo pode ser a seguinte:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Ou apagas a base de conhecimento ou, se tiveres várias fontes de conhecimento, atualizas a base de conhecimento para remover a fonte. Este exemplo mostra eliminação.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referência:Bases de Conhecimento - Eliminar
Apaga a fonte de conhecimento.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referência:Fontes de Conhecimento - Eliminar