Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Nota
Pesquisa de IA do Azure está disponível por meio do portal Azure, APIs REST e SDKs do Azure. Ele também sustenta o IQ do Foundry, a camada de conhecimento gerenciado que transforma o conteúdo da empresa em bases de conhecimento reutilizáveis e com reconhecimento de permissão para agentes no portal do Microsoft Foundry.
Nota
Esse recurso de recuperação com agente está disponível de forma geral na API REST 2026-04-01 por acesso programático. O portal do Azure e o portal do Microsoft Foundry continuam fornecendo acesso apenas em versão prévia a todos os recursos de recuperação por agentes. Para obter diretrizes de migração, consulte Migrar o código de recuperação agêncico para a versão mais recente.
Se você optar por usar uma API REST de visualização, poderá acessar recursos que ainda não estão disponíveis para esse recurso. Os recursos de pré-visualização são fornecidos sem um contrato de nível de serviço e não são recomendados para trabalhos em ambientes de produção. Para obter mais informações, consulte Termos de Uso Complementares para Versões Prévias do Microsoft Azure.
Importante
Esses recursos e funcionalidades fazem parte da API REST 2026-08-01-preview. A versão prévia 2026-08-01 é licenciada para você como parte de sua assinatura de Azure e está sujeita aos termos aplicáveis a "Visualizações" nos Termos do Produto Microsoft, no Adendo de Proteção de Dados Microsoft Produtos e Serviços ("DPA" e nos Termos de Uso Complementares para visualizações de Microsoft Azure.
A versão prévia 2026-08-01 dá suporte a conexões com outros serviços de serviços Microsoft e de terceiros. O uso desses serviços está sujeito aos respectivos termos e pode resultar em processamento ou armazenamento de dados fora do limite de conformidade Azure, bem como dados que fluem para o limite de conformidade Azure.
É sua responsabilidade gerenciar se os seus dados serão transferidos para fora dos limites geográficos e de conformidade da sua organização, bem como quaisquer implicações relacionadas, e garantir que as permissões, os limites e as aprovações apropriados estejam devidamente estabelecidos.
Você é responsável por examinar e testar cuidadosamente os aplicativos que cria no contexto de seus casos de uso específicos e tomar todas as decisões e personalizações apropriadas. Isso inclui implementar suas próprias mitigações de IA responsáveis, como metaprompts, filtros de conteúdo ou outros sistemas de segurança, e garantir que seus aplicativos atendam aos padrões adequados de qualidade, confiabilidade, segurança e confiabilidade. Para obter mais informações, consulte a Pesquisa de IA do Azure Nota de Transparência.
Na Pesquisa de IA do Azure, uma base de conhecimento é um objeto de nível superior que orquestra a recuperação por meio de agentes. Ele define quais fontes de conhecimento consultar e o comportamento padrão para operações de recuperação. No momento da consulta, o método recuperar tem como alvo a base de dados de conhecimento para executar o pipeline de recuperação configurado.
Uma base de dados de conhecimento especifica:
Uma ou mais fontes de conhecimento que apontam para conteúdo pesquisável.
Uma LLM opcional para planejamento de consultas, síntese de resposta ou resumo de conteúdo da Web. As tarefas com suporte variam de acordo com a versão da API e o tipo de fonte de conhecimento.
Propriedades personalizadas que controlam roteamento, seleção de origem e criptografia de objeto.
Suporte ao uso
| Portal do Azure | Portal Microsoft Foundry | SDK do .NET | SDK Python | SDK do Java | SDK JavaScript | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Pré-requisitos
Pesquisa de IA do Azure em qualquer região que fornece recuperação agêntica. Se você estiver usando uma identidade gerenciada para acesso baseado em função a modelos implantados, seu serviço de pesquisa deverá estar na camada Básica ou superior.
Uma ou mais fontes de conhecimento. Use a versão da
2026-08-01-previewAPI para acessar fontes de conhecimento prévias ou para usar uma LLM com fontes de conhecimento que não são da Web. Use a versão da API2026-04-01para fontes de conhecimento de disponibilidade geral e recuperação extrativa mínima.(Condicional) O OpenAI do Azure com uma implantação do LLM com suporte. Uma LLM será necessária se sua base de dados de conhecimento incluir uma fonte de conhecimento da Web. Para outras fontes de conhecimento, um LLM é opcional na versão da
2026-08-01-previewAPI e sem suporte na versão da2026-04-01API.Permissão para criar bases de dados de conhecimento. Configure a autenticação sem chave com a função Colaborador do Serviço de Pesquisa atribuída à sua conta de usuário (recomendada) ou use uma chave de API de administrador.
Se a base de dados de conhecimento especificar uma LLM, o serviço de pesquisa deverá ter uma identidade gerenciada com permissões de usuário dos Serviços Cognitivos no recurso Microsoft Foundry.
Pacote necessário:
Azure.Search.DocumentsPara os recursos do
2026-08-01-preview, o pacote de prévia mais recente:dotnet add package Azure.Search.Documents --prereleasePara obter 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 necessário:
azure-search-documentsPara os recursos de
2026-08-01-preview, o pacote de versão prévia mais recente:pip install --pre azure-search-documentsPara os recursos 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 necessária da API REST do Serviço de Busca:
Para recursos em versão prévia: 2026-08-01-preview
Para recursos disponíveis em geral: 2026-04-01
Para autenticação sem chave, inclua um token Microsoft Entra ID no
Authorizationcabeçalho de cada solicitação HTTP.
Modelos com suporte
Use uma das seguintes LLMs do Azure OpenAI em Foundry Models. Azure OpenAI determina a disponibilidade regional para a implantação selecionada. Para obter instruções de implantação, consulte Deploy Microsoft Foundry Models no portal da Foundry.
A família GPT-4 foi descontinuada. Para obter orientações sobre o ciclo de vida dos modelos, datas de aposentadoria e status atual, consulte Retirada e descontinuação de modelos e Cronograma de retirada de modelos - Microsoft Foundry.
| Modelo | Versões de API com suporte |
|---|---|
gpt-4o (preterido) |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-4o-mini (preterido) |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-4.1 (preterido) |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-4.1-mini (preterido) |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-4.1-nano (preterido) |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-5 |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-5-mini |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-5-nano |
2025-11-01-preview, 2026-05-01-preview, 2026-08-01-preview |
gpt-5.1 |
2026-05-01-preview, 2026-08-01-preview |
gpt-5.2 |
2026-05-01-preview, 2026-08-01-preview |
gpt-5.4 |
2026-05-01-preview, 2026-08-01-preview |
gpt-5.4-mini |
2026-05-01-preview, 2026-08-01-preview |
gpt-5.4-nano |
2026-05-01-preview, 2026-08-01-preview |
gpt-5.5 |
2026-08-01-preview |
gpt-5.6-sol |
2026-08-01-preview |
gpt-5.6-terra |
2026-08-01-preview |
gpt-5.6-luna |
2026-08-01-preview |
Configurar o acesso
Pesquisa de IA do Azure precisa de acesso ao LLM da Azure OpenAI nos Foundry Models. Recomendamos Microsoft Entra ID para autenticação e acesso baseado em função para autorização. Para atribuir funções, você deve ser um Proprietário ou Administrador de Acesso do Usuário. Se você não puder usar funções, use a autenticação baseada em chave.
Habilite o controle de acesso baseado em função em Pesquisa de IA do Azure .
Configure Pesquisa de IA do Azure para usar uma identidade gerenciada.
No fornecedor de modelos, atribua o Usuário de Serviços Cognitivos para a identidade gerenciada do serviço de pesquisa. Se você estiver testando localmente, atribua a mesma função à sua conta de usuário.
Para testes locais, siga as etapas no Guia de Início Rápido: Conexão sem Uso de Chaves para acessar uma assinatura e um locatário específicos. Use
DefaultAzureCredentialem vez deAzureKeyCredentialem cada solicitação, que deve ser semelhante ao exemplo a seguir.// Authenticate using roles using Azure.Search.Documents.Indexes; using Azure.Identity; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
Habilite o controle de acesso baseado em função em Pesquisa de IA do Azure .
Configure Pesquisa de IA do Azure para usar uma identidade gerenciada.
No fornecedor de modelos, atribua o Usuário de Serviços Cognitivos para a identidade gerenciada do serviço de pesquisa. Se você estiver testando localmente, atribua a mesma função à sua conta de usuário.
Para testes locais, siga as etapas no Guia de Início Rápido: Conexão sem Uso de Chaves para acessar uma assinatura e um locatário específicos. Use
DefaultAzureCredentialem vez deAzureKeyCredentialem cada solicitação, que deve ser semelhante ao exemplo a seguir.# Authenticate using roles from azure.identity import DefaultAzureCredential index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
Habilite o controle de acesso baseado em função em Pesquisa de IA do Azure .
Configure Pesquisa de IA do Azure para usar uma identidade gerenciada.
No fornecedor de modelos, atribua o Usuário de Serviços Cognitivos para a identidade gerenciada do serviço de pesquisa. Se você estiver testando localmente, atribua a mesma função à sua conta de usuário.
Para testes locais, siga as etapas no Início Rápido: conecte-se sem chaves para obter um token de acesso pessoal para uma assinatura e um locatário específicos. Especifique o token de acesso em cada solicitação, que deve ser semelhante ao exemplo a seguir.
# List indexes using roles GET {{search-endpoint}}/indexes?api-version=2026-04-01 Content-Type: application/json Authorization: Bearer {{search-access-token}}
Importante
Os snippets de código neste artigo usam autenticação sem chave. Para usar uma chave de API, atualize cada solicitação adequadamente. Em uma solicitação que especifica ambas as abordagens, a chave de API tem precedência.
Verificar se há bases de dados de conhecimento existentes
Uma base de dados de conhecimento é um objeto reutilizável de nível superior. Saber sobre bases de dados de conhecimento existentes é útil para reutilizar ou nomear novos objetos.
Execute o código a seguir para listar as bases de dados de conhecimento existentes por nome. A lista inclui todas as bases de dados de conhecimento em seu serviço de pesquisa, independentemente de qual versão da API você usou para criá-las.
// List knowledge bases by name
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
# List knowledge bases by name
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
for kb in index_client.list_knowledge_bases():
print(f" - {kb.name}")
Reference:SearchIndexClient
# List knowledge bases
GET {{search-endpoint}}/knowledgebases?api-version={{api-version}}&$select=name
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
Referência:Bases de Dados de Conhecimento – Lista
Você também pode retornar uma única base de dados de conhecimento por nome para revisar sua definição de JSON.
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
# Get a knowledge base definition
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
import json
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
kb = index_client.get_knowledge_base("<knowledge-base-name>")
print(json.dumps(kb.as_dict(), indent = 2))
Reference:SearchIndexClient
# Get knowledge base
GET {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
Referência:Bases de Conhecimento – Obter
O JSON a seguir é uma resposta de exemplo para uma base de dados de conhecimento.
{
"name": "my-kb",
"description": "A sample knowledge base.",
"retrievalInstructions": null,
"answerInstructions": null,
"outputMode": null,
"knowledgeSources": [
{
"name": "my-blob-ks"
}
],
"models": [],
"encryptionKey": null,
"retrievalReasoningEffort": {
"kind": "low"
}
}
Nota
O esquema de resposta reflete a versão da API usada para criar a base de dados de conhecimento. Uma base de conhecimento criada com a versão da API 2026-04-01, disponibilizada para o público geral, retorna uma definição mais restrita do que a 2026-08-01-preview. Para obter mais informações sobre quais propriedades cada versão dá suporte, consulte Criar uma base de dados de conhecimento.
Criar uma base de dados de conhecimento
Importante
A versão da 2026-04-01 API aceita apenas tipos de fonte de conhecimento disponíveis em geral e dá suporte à recuperação extrativa mínima. Ele não oferece suporte a recursos disponíveis apenas em versão prévia, como planejamento de consultas, síntese de respostas e esforço de raciocínio configurável. Para ter funcionalidade completa, use o 2026-08-01-preview.
Uma base de conhecimento conecta uma ou mais fontes de conhecimento (conteúdo pesquisável) a uma LLM opcional nos Modelos Foundry da Azure OpenAI. As propriedades definidas estabelecem padrões para a execução da consulta e a resposta de recuperação.
Depois de criar uma base de dados de conhecimento, você pode atualizar suas propriedades a qualquer momento. Se a base de conhecimento estiver em uso, as atualizações terão efeito na próxima consulta.
// Create a knowledge base
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 aoaiParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiGptDeployment,
ModelName = aoaiGptModel,
};
var knowledgeBase = new KnowledgeBase(
name: "my-kb",
knowledgeSources: new KnowledgeSourceReference[]
{
new KnowledgeSourceReference("hotels-ks"),
new KnowledgeSourceReference("earth-at-night-ks")
}
)
{
Description = "This knowledge base handles questions directed at two unrelated sample indexes.",
RetrievalInstructions = "Use the hotels knowledge source for queries about where to stay, otherwise use the earth at night knowledge source.",
AnswerInstructions = "Answer in two concise sentences.",
OutputMode = KnowledgeRetrievalOutputMode.AnswerSynthesis,
Models = { new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: aoaiParams) },
RetrievalReasoningEffort = new KnowledgeRetrievalAutoReasoningEffort()
};
await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase);
Console.WriteLine($"Knowledge base '{knowledgeBase.Name}' created or updated successfully.");
Reference:SearchIndexClient, KnowledgeBase
# Create a knowledge base
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
AzureOpenAIVectorizerParameters,
KnowledgeBase,
KnowledgeBaseAzureOpenAIModel,
KnowledgeSourceReference,
)
from azure.search.documents.knowledgebases.models import (
KnowledgeRetrievalAutoReasoningEffort,
KnowledgeRetrievalOutputMode,
)
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
aoai_params = AzureOpenAIVectorizerParameters(
resource_url = "<aoai-endpoint>",
deployment_name = "<aoai-gpt-deployment>",
model_name = "<aoai-gpt-model>",
)
knowledge_base = KnowledgeBase(
name = "my-kb",
description = "This knowledge base handles questions directed at two unrelated sample indexes.",
retrieval_instructions = "Use the hotels knowledge source for queries about where to stay, otherwise use the earth at night knowledge source.",
answer_instructions = "Answer in two concise sentences.",
output_mode = KnowledgeRetrievalOutputMode.ANSWER_SYNTHESIS,
knowledge_sources = [
KnowledgeSourceReference(name = "hotels-ks"),
KnowledgeSourceReference(name = "earth-at-night-ks"),
],
models = [KnowledgeBaseAzureOpenAIModel(azure_open_ai_parameters = aoai_params)],
encryption_key = None,
retrieval_reasoning_effort = KnowledgeRetrievalAutoReasoningEffort(),
)
index_client.create_or_update_knowledge_base(knowledge_base)
print(f"Knowledge base '{knowledge_base.name}' created or updated successfully.")
Reference:SearchIndexClient, KnowledgeBase
# Create a knowledge base
PUT {{search-endpoint}}/knowledgebases/my-kb?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name" : "my-kb",
"description": "This knowledge base handles questions directed at two unrelated sample indexes.",
"retrievalInstructions": "Use the hotels knowledge source for queries about where to stay, otherwise use the earth at night knowledge source.",
"answerInstructions": "Answer in two concise sentences.",
"outputMode": "answerSynthesis",
"knowledgeSources": [
{
"name": "hotels-ks"
},
{
"name": "earth-at-night-ks"
}
],
"models" : [
{
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "{{aoai-endpoint}}",
"deploymentId": "gpt-5.4-mini",
"modelName": "gpt-5.4-mini"
}
}
],
"encryptionKey": null,
"retrievalReasoningEffort": {
"kind": "auto"
}
}
Referência:Bases de Dados de Conhecimento – Criar ou Atualizar
Configurar limites de recuperação padrão (versão prévia)
A partir da versão da 2026-08-01-preview API, você pode usar o objeto opcional retrieveDefaults para armazenar padrões de toda a solicitação em uma base de dados de conhecimento. Cada propriedade armazenada se aplica somente quando uma solicitação de recuperação omite o campo de solicitação correspondente:
| Propriedade armazenada | Recuperar campo de solicitação |
|---|---|
maxRuntimeInSeconds |
maxRuntimeInSeconds |
maxOutputDocuments |
maxOutputDocuments |
maxOutputSizeInTokens |
maxOutputSize |
O orçamento do token de saída usa nomes de propriedade diferentes quando armazenado e substituído. Defina maxOutputSizeInTokens em retrieveDefaults e use maxOutputSize em uma solicitação de recuperação.
O valor efetivo de cada propriedade é determinado independentemente nesta ordem:
- O valor correspondente na solicitação de recuperação de dados.
- O valor no objeto da base de conhecimento
retrieveDefaults. - O padrão do serviço quando a propriedade está ausente em ambos os níveis.
O exemplo a seguir usa uma fonte de conhecimento de índice de pesquisa existente chamada your-knowledge-source. Ele armazena um orçamento de tempo de execução de 45 segundos, um máximo de oito documentos de saída e um limite de saída de 12.000 tokens.
using System;
using Azure.Identity;
using Azure.Search.Documents;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.Models;
string searchEndpoint = "<search-endpoint>";
var options = new SearchClientOptions(
SearchClientOptions.ServiceVersion.V2026_08_01_Preview);
var indexClient = new SearchIndexClient(
new Uri(searchEndpoint),
new DefaultAzureCredential(),
options);
var knowledgeBase = new KnowledgeBase(
"your-knowledge-base",
new[] { new KnowledgeSourceReference("your-knowledge-source") })
{
Description = "A knowledge base for product support content.",
RetrieveDefaults = new KnowledgeBaseRetrieveDefaults
{
MaxRuntimeInSeconds = 45,
MaxOutputDocuments = 8,
MaxOutputSizeInTokens = 12000
}
};
await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase);
Reference:SearchIndexClient, SearchClientOptions.ServiceVersion, KnowledgeBase
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
KnowledgeBase,
KnowledgeBaseRetrieveDefaults,
KnowledgeSourceReference,
)
search_endpoint = "<search-endpoint>"
index_client = SearchIndexClient(
endpoint=search_endpoint,
credential=DefaultAzureCredential(),
api_version="2026-08-01-preview",
)
knowledge_base = KnowledgeBase(
name="your-knowledge-base",
description="A knowledge base for product support content.",
knowledge_sources=[
KnowledgeSourceReference(name="your-knowledge-source"),
],
retrieve_defaults=KnowledgeBaseRetrieveDefaults(
max_runtime_in_seconds=45,
max_output_documents=8,
max_output_size_in_tokens=12000,
),
)
index_client.create_or_update_knowledge_base(knowledge_base)
Reference:SearchIndexClient, KnowledgeBase
PUT {{search-endpoint}}/knowledgebases/your-knowledge-base?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name": "your-knowledge-base",
"description": "A knowledge base for product support content.",
"knowledgeSources": [
{
"name": "your-knowledge-source"
}
],
"retrieveDefaults": {
"maxRuntimeInSeconds": 45,
"maxOutputDocuments": 8,
"maxOutputSizeInTokens": 12000
}
}
Referência:Bases de Dados de Conhecimento – Criar ou Atualizar
Para substituir esses valores armazenados por 20 segundos, um documento e 5.000 tokens em uma solicitação, consulte Verificar os valores padrão de recuperação da base de conhecimento.
Configurar o CORS para chamadas de recuperação baseadas em navegador (versão prévia)
Importante
O CORS (compartilhamento de recursos entre origens) permite que aplicativos baseados em navegador solicitem dados diretamente do serviço. Dependendo da configuração do CORS, as páginas da Web externas podem acessar ou invocar o serviço e seus dados usando o contexto do navegador do usuário. Esse acesso pode criar ameaças à segurança. Habilitar o CORS é por sua conta e risco.
A partir da versão da API 2026-05-01-preview, uma base de conhecimento pode definir corsOptions para aplicativos executados no navegador que chamam diretamente do JavaScript a ação retrieve. A política de CORS identifica quais origens do navegador podem enviar solicitações para recuperar informações da base de conhecimento.
Quando você omite corsOptions, a base de dados de conhecimento não tem nenhuma política CORS e os navegadores bloqueiam solicitações de recuperação entre origens.
O exemplo a seguir cria uma base de dados de conhecimento que permite recuperar solicitações de uma origem do navegador.
using Azure.Identity;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
var knowledgeBase = new KnowledgeBase(
name: "browser-chat-kb",
knowledgeSources: new[] { new KnowledgeSourceReference("product-docs-ks") }
)
{
Description = "A knowledge base that allows one browser app origin.",
CorsOptions = new CorsOptions(new[] { "https://myapp.example.com" })
{
MaxAgeInSeconds = 300
}
};
await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase);
Reference:CorsOptions, KnowledgeBase
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
CorsOptions,
KnowledgeBase,
KnowledgeSourceReference,
)
index_client = SearchIndexClient(endpoint="<search-endpoint>", credential=DefaultAzureCredential())
knowledge_base = KnowledgeBase(
name="browser-chat-kb",
description="A knowledge base that allows one browser app origin.",
knowledge_sources=[KnowledgeSourceReference(name="product-docs-ks")],
cors_options=CorsOptions(
allowed_origins=["https://myapp.example.com"],
max_age_in_seconds=300,
),
)
index_client.create_or_update_knowledge_base(knowledge_base)
Reference:CorsOptions, KnowledgeBase
PUT {{search-endpoint}}/knowledgebases/browser-chat-kb?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name": "browser-chat-kb",
"description": "A knowledge base that allows one browser app origin.",
"knowledgeSources": [
{
"name": "product-docs-ks"
}
],
"corsOptions": {
"allowedOrigins": [
"https://myapp.example.com"
],
"maxAgeInSeconds": 300
}
}
Consultar uma base de dados de conhecimento
Depois de criar uma base de conhecimento, chame a ação de recuperação ou o ponto de extremidade MCP para consultá-la.
Excluir uma base de dados de conhecimento
Se você não precisar mais da base de dados de conhecimento ou precisar recompilá-la em seu serviço de pesquisa, execute o código a seguir para excluir o objeto.
// Delete a knowledge base
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
# Delete a knowledge base
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
index_client.delete_knowledge_base("<knowledge-base-name>")
print(f"Knowledge base deleted successfully.")
Reference:SearchIndexClient
# Delete a knowledge base
DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
Authorization: Bearer {{search-access-token}}
Referência:Bases de Dados de Conhecimento – Excluir