Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota
Búsqueda de Azure AI está disponible a través del portal de Azure, las API REST y los SDK de Azure. También respalda Foundry IQ, la capa de conocimiento administrada que transforma el contenido empresarial en bases de conocimiento reutilizables y compatibles con permisos para agentes en el portal de Microsoft Foundry.
Importante
Las características, funcionalidades o propiedades marcadas (versión preliminar) no están cubiertas por un contrato de nivel de servicio, no se recomiendan para cargas de trabajo de producción y pueden cambiar o restringirse antes de que estén disponibles con carácter general. Los términos de la versión preliminar Búsqueda de Azure AI se aplican a todas las funciones de vista previa, ya sea independiente o parte de una característica disponible con carácter general.
Una fuente de conocimientos de índice de búsqueda conecta un índice existente de Búsqueda de Azure AI, incluidos su texto y vectores indexados, a una canalización de recuperación de agentes. Los orígenes de conocimiento se crean de forma independiente, se hace referencia en una base de conocimiento y se usan como datos de base cuando se consulta la base de conocimiento en tiempo de ejecución.
Soporte de uso
| Azure Portal | portal Microsoft Foundry | SDK de .NET | SDK de Python | SDK de Java | SDK de JavaScript | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Requisitos previos
Un servicio de Búsqueda de Azure AI en cualquier región que proporcione recuperación mediante agentes.
Índice de búsqueda que contiene texto sin formato o contenido vectorial con una configuración semántica. Revise los criterios del índice para la recuperación de agentes. El índice debe estar en el mismo servicio de búsqueda que la base de conocimiento.
Permiso para crear orígenes de conocimiento. Configure la autenticación sin clave con el rol Colaborador del servicio de búsqueda asignado a su cuenta de usuario (recomendado) o use una clave de API de administrador.
Paquete
Azure.Search.Documentsrequerido:Para las funciones de
2026-08-01-preview, el paquete preliminar más reciente:dotnet add package Azure.Search.Documents --prereleasePara las funciones de
2026-04-01, el paquete estable más reciente:dotnet add package Azure.Search.Documents
Para la autenticación sin claves, el
Azure.Identitypaquete:dotnet add package Azure.Identity
Paquete
azure-search-documentsrequerido:Para las funciones de
2026-08-01-preview, el paquete preliminar más reciente:pip install --pre azure-search-documentsPara las funciones de
2026-04-01, el paquete estable más reciente:pip install azure-search-documents
Para la autenticación sin claves, el
azure-identitypaquete:pip install azure-identity
Versión necesaria de la API REST del servicio search:
Para las funciones en versión preliminar: 2026-08-01-preview
Para las características disponibles con carácter general: 2026-04-01
Para la autenticación sin claves, incluya un token de Microsoft Entra ID en el
Authorizationencabezado de cada solicitud HTTP.
Limitations
La recuperación mediante el agente no hace que las solicitudes de recuperación respeten los perfiles de puntuación del índice subyacente, incluido defaultScoringProfile. Las respuestas de recuperación no muestran @search.rerankerBoostedScore.
Comprobación de orígenes de conocimiento existentes
Un origen de conocimiento es un objeto reutilizable de nivel superior. Conocer los orígenes de conocimiento existentes resulta útil para reutilizar o asignar nombres a nuevos objetos.
Ejecute el código siguiente para enumerar los orígenes de conocimiento por nombre y 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}");
}
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}}
Reference:Knowledge Sources - List
También puede devolver un único origen de conocimiento por nombre para revisar la definición JSON de este.
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}}
Referencia:Orígenes de conocimiento - Obtener
El siguiente JSON es una respuesta de ejemplo para un origen de conocimientos de índice de búsqueda. Observe que el origen de conocimiento especifica un único nombre de índice y qué campos del índice se van a incluir en la 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": []
}
}
Creación de un origen de conocimiento
Ejecute el código siguiente para crear un origen de conocimiento del índice de búsqueda.
Nota
A partir de la versión de la API 2026-05-01-preview, semanticConfigurationName es opcional en las fuentes de conocimiento del índice de búsqueda. Las versiones anteriores de la API todavía requieren semanticConfigurationName. Si el origen de conocimiento debe admitir versiones de API anteriores y más recientes, siga especificando 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" }
]
}
}
Referencia:Orígenes de conocimiento: crear o actualizar
Mantener un filtro base en una fuente de conocimiento (versión preliminar)
A partir de la versión de la API 2026-05-01-preview, una fuente de conocimiento de un índice de búsqueda puede persistir un filtro predeterminado mediante la propiedad baseFilter. Utilice baseFilter cuando la misma expresión de filtro deba aplicarse a todas las solicitudes de recuperación que usen la fuente de conocimiento, de modo que quienes realizan las llamadas no tengan que repetir el filtro en cada llamada.
En el ejemplo siguiente se almacena un filtro base en un origen de conocimiento de índice de búsqueda.
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);
Referencia: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)
Referencia: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'"
}
}
Referencia:Orígenes de conocimiento: crear o actualizar
En tiempo de recuperación, knowledgeSourceParams.filterAddOn agrega restricciones específicas de la solicitud al filtro base almacenado:
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'"
}
]
}
El filtro efectivo se compone como:
baseFilter AND filterAddOn
Dado que los filtros se combinan con AND, filterAddOn solo puede restringir el filtro base persistente. No puede reemplazarlo ni ampliarlo.
Configuración de sugerencias de consulta (versión preliminar)
A partir de la versión de la 2026-08-01-preview API, las sugerencias de consulta guían el modelo de planeamiento de consultas para generar filtros y aumentos de clasificación a partir de la solicitud de un usuario. Almacene sugerencias predeterminadas en searchIndexParameters.queryHints, que pueden contener filtros y aumentos.
En el ejemplo siguiente se almacenan una sugerencia de filtro y un fieldValue boost en una fuente de conocimiento para product-docs-index, que tiene un campo filtrable productFamily y un campo language en el que se puede buscar.
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);
Referencia: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)
Referencia: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."
}]
}
}
}
Referencia:Orígenes de conocimiento: crear o actualizar
Configure cada sugerencia según los siguientes requisitos:
| Hint | Requisitos de campo |
fieldValues comportamiento |
Límites de recopilación |
|---|---|---|---|
| Filter |
field debe identificar un campo de índice filtrable. |
Required. Enumerar el conjunto exhaustivo de valores permitidos. Si la solicitud no se corresponde con uno de los valores enumerados, se le indica al planificador que no filtre por ese campo. | Hasta cinco sugerencias con campos únicos. Cada valor puede contener hasta 128 caracteres y todos los valores de una sugerencia pueden contener hasta 2048 caracteres combinados. |
fieldValue boost |
field debe identificar un campo de búsqueda que utilice un analizador de idioma, estándar o predeterminado. |
Ejemplos opcionales. Si los omite, use boostInstructions para explicar qué valor seleccionar de la solicitud. |
Hasta cinco sugerencias con campos únicos. Cada sugerencia puede contener hasta 20 valores, con 128 caracteres por valor y 1024 caracteres combinados. |
multiWordExpression boost |
Omita field. El índice debe contener al menos un campo de búsqueda que use un analizador de idioma, estándar o predeterminado. |
Ejemplos opcionales de frases específicas del dominio. | Una sugerencia. Puede contener hasta 20 valores, con 128 caracteres por valor y 1024 caracteres combinados. |
Para cualquier tipo de aumento, boost es necesario y debe ser un número finito mayor que 1.0. Los valores más altos proporcionan más influencia a los documentos coincidentes en la clasificación sin excluir otros documentos. Limite cada valor opcional de boostInstructions o filterInstructions a 1,024 caracteres.
Utiliza un multiWordExpression refuerzo para frases específicas de un dominio cuyo significado no se deduce de las palabras individuales. Proporcione frases de ejemplo en fieldValues, o omítalas y deje que boostInstructions y la solicitud del usuario guíen la selección de frases:
{
"boosts": [{
"kind": "multiWordExpression",
"fieldValues": ["deferred tax", "wash sale"],
"boost": 3.0,
"boostInstructions": "Boost domain terms used as complete phrases."
}]
}
Al diseñar sugerencias de consulta, tenga en cuenta los siguientes comportamientos:
Las sugerencias son el mejor esfuerzo, por lo que es posible que el modelo no genere un filtro o una mejora para cada solicitud. Para las restricciones necesarias, como los límites de autorización, use el control de acceso de nivel de documento o un filtro determinista en su lugar.
Las sugerencias requieren una planificación de consultas basada en modelos, por lo que no se aplican cuando el esfuerzo de razonamiento de recuperación es
minimal. En otros niveles de esfuerzo, un modelo de familia GPT-4o o GPT-4.1 devuelve HTTP 400 cuando el objeto almacenadoqueryHintscontiene un filtro. El servicio comprueba los filtros almacenados antes de aplicarqueryHintOverrides, por lo que una anulación vacía o una anulación que solo contiene boosts no elude esta validación. Las mejoras almacenadas defieldValueymultiWordExpressionpor sí solas no desencadenan la validación.Los filtros generados se combinan con
baseFilteryfilterAddOnmedianteAND. Un boost generado reescribe la consulta con la sintaxis completa de Lucene, al tiempo que preserva los términos originales.Las pistas de consulta se basan en valores indexados como fundamento. No configuran analizadores ni habilitan la detección de idioma. Los
languagevalores de estos ejemplos son metadatos de índice normales.
Para reemplazar las sugerencias almacenadas de una única solicitud de recuperación y comprobar el filtro o la mejora generados, consulte Invalidar sugerencias de consulta almacenadas en el momento de la consulta (versión preliminar).
Asignar a una base de conocimiento
Si está satisfecho con el origen de conocimiento, agréguelo a una base de conocimiento.
Consulta de una base de conocimiento
Una vez configurada la base de conocimiento, llame a la acción de recuperación o al punto de conexión de MCP para consultar el origen de conocimiento.
Eliminación de un origen de conocimiento
Para poder eliminar un origen de conocimiento, debe eliminar cualquier base de conocimiento que haga referencia a ella o actualizar la definición de la base de conocimiento para quitar la referencia. En el caso de los orígenes de conocimiento que generan una canalización de índice e indexador, también se eliminan todos los objetos generados . Sin embargo, si usó un índice existente para crear un origen de conocimiento, el índice no se eliminará.
Si intenta eliminar un origen de conocimiento que está en uso, se produce un error en la acción y devuelve una lista de bases de conocimiento afectadas.
Para eliminar un origen de conocimiento:
Obtenga una lista de todas las bases de conocimiento del servicio de búsqueda.
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
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenga una definición de base de conocimiento individual para comprobar si hay referencias de origen de conocimiento.
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
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Elimine la base de conocimiento o, si tiene varios orígenes de conocimiento, actualice la base de conocimiento para quitar el origen. En este ejemplo se muestra la eliminación.
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
Elimine el origen de conocimiento.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Reference:SearchIndexClient
Obtenga una lista de todas las bases de conocimiento del servicio de búsqueda.
# 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
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenga una definición de base de conocimiento individual para comprobar si hay referencias de origen de conocimiento.
# 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
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Elimine la base de conocimiento o, si tiene varios orígenes de conocimiento, actualice la base de conocimiento para quitar el origen. En este ejemplo se muestra la eliminación.
# 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
Elimine el origen de conocimiento.
# 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
Obtenga una lista de todas las bases de conocimiento del servicio de búsqueda.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}Reference:Knowledge Bases - List
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Obtenga una definición de base de conocimiento individual para comprobar si hay referencias de origen de conocimiento.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Reference:Bases de Conocimiento - Obtener
Una respuesta de ejemplo podría ser similar a la siguiente:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Elimine la base de conocimiento o, si tiene varios orígenes de conocimiento, actualice la base de conocimiento para quitar el origen. En este ejemplo se muestra la eliminación.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referencia:Bases de Conocimiento - Eliminar
Elimine el origen de conocimiento.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referencia:Orígenes de conocimiento: Eliminar