Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Note
Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также лежит в основе Foundry IQ — управляемого слоя знаний, который преобразует корпоративный контент в многократно используемые базы знаний с учетом разрешений доступа для агентов на портале Microsoft Foundry.
Important
Эти возможности и функциональность доступны в REST API версии 2026-05-01-preview. Предварительная версия 2026-05-01-preview лицензируется вам в рамках вашей подписки Azure и подпадает под условия, применимые к "Предварительным версиям", изложенные в Microsoft Product Terms, Microsoft Products and Services Data Protection Addendum ("DPA") и Supplemental Terms of Use for Microsoft Azure Previews.
Предварительная версия 2026-05-01 поддерживает подключения к другим службы Майкрософт и сторонним службам. Использование этих служб регулируется соответствующими условиями и может привести к обработке или хранению данных за пределами периметра соответствия требованиям Azure, а также к передаче данных в периметр соответствия требованиям Azure.
Вы несете ответственность за управление тем, будут ли данные передаваться за пределы соответствия вашей организации и географических границ и любых связанных последствий, а также предоставлять соответствующие разрешения, границы и утверждения.
Вы несете ответственность за тщательное изучение и тестирование приложений, которые вы создаете в контексте конкретных вариантов использования и принятия всех соответствующих решений и настроек. Это включает в себя реализацию собственных ответственных мер по устранению рисков искусственного интеллекта, таких как метаподсказки, фильтры содержимого или другие системы безопасности, а также обеспечение соответствия приложений соответствующим стандартам качества, надежности, безопасности и доверия. Дополнительные сведения см. в примечании о прозрачности Поиск с использованием ИИ Azure.
индексированный источник знаний Azure SQL (предварительная версия) принимает строки из База данных SQL Azure или Управляемый экземпляр SQL Azure в конвейер агентного извлечения в Поиск с использованием ИИ Azure. Источники знаний создаются независимо, ссылаются в базе знаний и используются в качестве базирования данных при запросе базы знаний во время выполнения.
В отличие от источников знаний на основе файлов, таких как Хранилище BLOB-объектов Azure и OneLake, каждая строка SQL рассматривается как один логический документ. Схема индекса определяется клиентом через явные сопоставления столбцов, а не фиксированной схемой документа.
При создании индексированного источника знаний Azure SQL укажите источник данных SQL, необязательные сопоставления столбцов и необязательные модели для автоматического создания следующих объектов Поиск с использованием ИИ Azure:
- Источник данных, представляющий таблицу ИЛИ представление SQL.
- Индекс, поля которого являются производными от сопоставлений столбцов.
- Набор навыков, создающий эмбеддинги. Служба создает набор навыков только при указании
embeddingColumns. - Индексатор, использующий предыдущие объекты для запуска конвейера загрузки данных.
Созданный индексатор соответствует индексатору Azure SQL, необходимые условия, политики обнаружения изменений и ограничения также применяются к индексируемым источникам знаний Azure SQL. Дополнительные сведения см. в документации по индексатору Azure SQL.
Поддержка использования
| Портал Azure | Портал Microsoft Foundry | Пакет SDK для .NET | Пакет SDK для Python | SDK для Java | Пакет SDK для JavaScript | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Необходимые условия
Служба Поиск с использованием ИИ Azure в любом регионе, который предоставляет агентский доступ.
Завершение предварительных требований индексатора Azure SQL, в том числе:
База данных SQL Azure или Управляемый экземпляр SQL Azure с таблицей или представлением для приема данных.
Однозначный первичный ключ в исходной таблице или представлении.
Для представлений столбец, подходящий для обнаружения изменений с высоким уровнем воды. Мы настоятельно рекомендуем
rowversionстолбец.
Разрешения на создание источников знаний. Настройте проверку подлинности без ключа с помощью ролей участника службы поиска и участника индекса поиска , назначенных учетной записи пользователя (рекомендуется) или используйте ключ API.
Если указать
embeddingColumns, у службы поиска должно быть управляемое удостоверение с разрешениями Пользователь Cognitive Services для ресурса Microsoft Foundry, на котором размещена модель эмбеддингов.
- Последний пакет предварительной версии
Azure.Search.Documents:dotnet add package Azure.Search.Documents --prerelease
- Последний пакет предварительной версии
azure-search-documents:pip install --pre azure-search-documents
- Версия REST API службы поиска 2026-05-01-preview .
Ограничения и рекомендации
- Источник знаний может получать данные ровно из одной таблицы или одного представления.
- Исходная таблица или представление должны иметь однозначный первичный ключ. Составные ключи не поддерживаются.
- Первичный ключ обнаружен автоматически и не может быть переопределен.
-
contentExtractionModeподдерживает только"minimal". - Извлечение изображений и их словесное описание не поддерживаются.
- Синхронизация в режиме реального времени не поддерживается. Созданный индексатор основан на расписании.
- Извлечение SQL в режиме реального времени не поддерживается. Источник знаний индексируемый, а не удалённый.
Подготовка созданного индексатора
Индексированный источник знаний Azure SQL автоматически создает индексатор для приема данных. Ознакомьтесь со следующими сведениями перед созданием источника знаний.
Обнаружение изменений
Созданный индексатор использует стандартный механизм обнаружения изменений индексатора Azure SQL:
Таблицы: Служба автоматически применяет встроенное отслеживание изменений SQL . Перед созданием источника знаний включите отслеживание изменений SQL в исходной таблице.
Представления: Служба применяет обнаружение изменений по метке верхней границы. Укажите столбец, используемый в
highWaterMarkColumn. Настоятельно рекомендуется использоватьrowversionстолбец. Чтобы обнаружить удаления в представлении, включите в него столбец-маркер обратимого удаления, как описано в разделе Политика обнаружения удалений по столбцу обратимого удаления.
Authentication
Созданный индексатор поддерживает два варианта проверки подлинности:
SQL authentication: Укажите имя пользователя и пароль в строка подключения.
Аутентификация с помощью управляемого удостоверения: Используйте управляемое удостоверение, назначаемое системой или пользователем, которому назначены роли Azure RBAC и роли уровня базы данных для ресурса SQL.
Сведения о форматах строк подключения, требованиях к ролям и действиях по настройке см. в разделах Предварительные требования для индексатора Azure SQL и Подключение с помощью управляемого удостоверения.
Проверка существующих источников знаний
Источник знаний — это объект верхнего уровня, который можно использовать повторно. Знание существующих источников знаний полезно для повторного использования или именования новых объектов.
Выполните следующий код, чтобы перечислить источники знаний по имени и типу.
// 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
api-key: {{api-key}}
Справочник:Источники знаний — список
Вы также можете вернуть один источник знаний по имени, чтобы просмотреть его определение 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}}
api-key: {{api-key}}
Reference:Источники знаний — получить
Следующий код JSON является примером ответа для индексированного Azure SQL источника знаний.
{
"name": "indexedsqlks",
"kind": "indexedSql",
"description": "Sample indexed Azure SQL knowledge source.",
"encryptionKey": null,
"indexedSqlParameters": {
"connectionString": "<SQL database connection string>",
"tableOrView": "dbo.tbl_hotels",
"contentColumns": [
{ "name": "hotelName", "sourceField": "HotelName", "searchFieldType": "Edm.String" },
{ "name": "description", "sourceField": "Description", "searchFieldType": "Edm.String" }
],
"embeddingColumns": [
{ "name": "descriptionVector", "sourceField": "Description" }
],
"ingestionParameters": {
"contentExtractionMode": "minimal",
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<Foundry resource endpoint URI>",
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large"
}
},
"createdResources": {
"datasource": "indexedsqlks-datasource",
"indexer": "indexedsqlks-indexer",
"skillset": "indexedsqlks-skillset",
"index": "indexedsqlks-index"
}
}
}
}
Создание источника знаний
Выполните следующий код, чтобы создать индексированный источник знаний Azure SQL.
using Azure;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
var embeddingParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiEmbeddingDeployment,
ModelName = aoaiEmbeddingModel,
ApiKey = aoaiKey
};
var ingestionParams = new KnowledgeSourceIngestionParameters
{
ContentExtractionMode = "minimal",
EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
{
AzureOpenAIParameters = embeddingParams
}
};
var sqlParams = new IndexedSqlKnowledgeSourceParameters(
connectionString: sqlConnectionString,
tableOrView: "dbo.tbl_hotels")
{
ContentColumns =
{
new ContentColumnMapping("hotelName", "HotelName", "Edm.String"),
new ContentColumnMapping("description", "Description", "Edm.String")
},
EmbeddingColumns =
{
new EmbeddingColumnMapping("descriptionVector", "Description")
},
IngestionParameters = ingestionParams
};
var knowledgeSource = new IndexedSqlKnowledgeSource(
name: "indexedsqlks",
indexedSqlParameters: sqlParams)
{
Description = "Indexed Azure SQL knowledge source."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Reference:SearchIndexClient, IndexedSqlKnowledgeSource
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
AzureOpenAIVectorizerParameters,
ContentColumnMapping,
EmbeddingColumnMapping,
IndexedSqlKnowledgeSource,
IndexedSqlKnowledgeSourceParameters,
)
from azure.search.documents.knowledgebases.models import (
KnowledgeSourceAzureOpenAIVectorizer,
KnowledgeSourceIngestionParameters,
)
index_client = SearchIndexClient(endpoint="search_url", credential=AzureKeyCredential("api_key"))
embedding_params = AzureOpenAIVectorizerParameters(
resource_url="aoai_endpoint",
deployment_name="aoai_embedding_deployment",
model_name="aoai_embedding_model",
api_key="aoai_key",
)
ingestion_params = KnowledgeSourceIngestionParameters(
content_extraction_mode="minimal",
embedding_model=KnowledgeSourceAzureOpenAIVectorizer(
azure_open_ai_parameters=embedding_params
),
)
knowledge_source = IndexedSqlKnowledgeSource(
name="indexedsqlks",
description="Indexed Azure SQL knowledge source.",
indexed_sql_parameters=IndexedSqlKnowledgeSourceParameters(
connection_string="Server=tcp:{server}.database.windows.net,1433;Database={db};...;",
table_or_view="dbo.tbl_hotels",
content_columns=[
ContentColumnMapping(
name="hotelName",
source_field="HotelName",
search_field_type="Edm.String",
),
ContentColumnMapping(
name="description",
source_field="Description",
search_field_type="Edm.String",
),
],
embedding_columns=[
EmbeddingColumnMapping(
name="descriptionVector",
source_field="Description",
)
],
ingestion_parameters=ingestion_params,
),
)
index_client.create_or_update_knowledge_source(knowledge_source=knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
Reference:SearchIndexClient
### Create an indexed Azure SQL knowledge source
PUT {{search-url}}/knowledgesources/indexedsqlks?api-version=2026-05-01-preview
api-key: {{api-key}}
Content-Type: application/json
{
"name": "indexedsqlks",
"kind": "indexedSql",
"description": "Indexed Azure SQL knowledge source.",
"indexedSqlParameters": {
"connectionString": "Server=tcp:{server}.database.windows.net,1433;Database={db};...;",
"tableOrView": "dbo.tbl_hotels",
"contentColumns": [
{ "name": "hotelName", "sourceField": "HotelName", "searchFieldType": "Edm.String" },
{ "name": "description", "sourceField": "Description", "searchFieldType": "Edm.String" }
],
"embeddingColumns": [
{ "name": "descriptionVector", "sourceField": "Description" }
],
"ingestionParameters": {
"contentExtractionMode": "minimal",
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "{{aoai-endpoint}}",
"deploymentId": "{{aoai-embedding-deployment}}",
"modelName": "{{aoai-embedding-model}}",
"apiKey": "{{aoai-key}}"
}
}
}
}
}
Справочник:Источники знаний — создание или обновление
Используйте indexedSqlParameters, чтобы указать таблицу или представление SQL, из которой будут загружаться данные, и определить сопоставления столбцов, которые станут полями в создаваемом индексе. Для представлений укажите столбец верхней отметки, используемый для отслеживания изменений.
Сопоставление столбцов
Используйте contentColumns, чтобы сопоставить текстовые столбцы SQL с поисковыми полями в создаваемом индексе Поиск с использованием ИИ Azure. Каждое сопоставление столбцов содержимого называет целевое поле индекса, исходный столбец SQL и тип поля Поиск с использованием ИИ Azure. Для contentColumns используйте Edm.String.
Сопоставление эмбеддингов
Используется embeddingColumns для сопоставления текстовых столбцов SQL с созданными векторными полями. Укажите модель эмбеддингов в ingestionParameters, если вы используете столбцы эмбеддингов.
Для индексированных источников знаний Azure SQL contentExtractionMode должно быть "minimal", поскольку прием данных из SQL выполняется построчно и не извлекает содержимое из двоичных документов. Извлечение изображений и словесное описание изображений не поддерживаются, поэтому chatCompletionModel, assetStore, aiServices и настройки, связанные с изображениями, не имеют эффекта.
Правила задания значений по умолчанию и проверки
Следующие значения по умолчанию применяются при создании индексированного Azure SQL источника знаний.
Если опущено
contentColumns, служба автоматически сопоставляет столбцы SQL, которые можно безопасно представить в виде текста, с полямиEdm.Stringв создаваемом индексе, используя сопоставление 1:1, гдеnameравноsourceField.Если не указано
embeddingColumns, служба не создает векторные поля и не настраивает навык внедрения.embeddingColumnsне зависит отcontentColumns. Чтобы сделать векторы соответствующими извлекаемому тексту, включите один и тот же столбец SQL в обоих массивах.Первичный ключ исходной таблицы или представления обнаруживается автоматически. Явные переопределения не поддерживаются, и источник должен иметь однозначный первичный ключ.
Проверка состояния приема
Выполните следующий код, чтобы отслеживать процесс приема и состояние системы, включая тип источника знаний и подробные ошибки индексирования для источников знаний, которые формируют индексаторный конвейер и заполняют индекс поиска.
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
// Get knowledge source ingestion status
var statusResponse = await indexClient.GetKnowledgeSourceStatusAsync(knowledgeSourceName);
var status = statusResponse.Value;
// Serialize to JSON for display
var json = JsonSerializer.Serialize(status, new JsonSerializerOptions { WriteIndented = true });
Console.WriteLine(json);
Reference:SearchIndexClient
# Check knowledge source ingestion status
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"))
status = index_client.get_knowledge_source_status("knowledge_source_name")
print(json.dumps(status.as_dict(), indent=2))
Reference:SearchIndexClient
### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version={{api-version}}
api-key: {{api-key}}
Content-Type: application/json
Референс:Базы знаний — текущий статус
Ответ на запрос, который включает параметры загрузки и активно осуществляет прием содержимого, может выглядеть следующим образом.
{
"kind": "azureBlob",
"synchronizationStatus": "active",
"synchronizationInterval": "1d",
"currentSynchronizationState": {
"startTime": "2026-04-10T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": [
{
"key": "Item id 1",
"docURL": "https://contoso.blob.core.windows.net/contracts/2024/Q4/doc-00023.csv",
"statusCode": 400,
"componentName": "DocumentExtraction.AzureBlob.MyDataSource",
"errorMessage": "Could not read the value of column 'foo' at index '0'.",
"details": "The file could not be parsed.",
"documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388"
}
]
},
"lastSynchronizationState": {
"status": "partialSuccess",
"startTime": "2026-04-09T19:30:00Z",
"endTime": "2026-04-09T19:40:01Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": null
},
"statistics": {
"totalSynchronizations": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization": 500
}
}
Note
Свойства kind и currentSynchronizationState.errors[] массив с сведениями об ошибке на уровне документа доступны начиная с версии API 2026-04-01. Для более ранних версий API эти поля не возвращаются. Поле lastSynchronizationState.status также новое в 2026-04-01.
Просмотр созданных объектов
При создании этого источника знаний Поиск с использованием ИИ Azure автоматически создает источник данных, набор навыков, индексатор и индекс. Ответ на создание перечисляет каждый объект в разделе createdResources.
Эти объекты создаются в соответствии с фиксированным шаблоном, и их имена основаны на имени источника знаний. Нельзя изменить имена объектов. Избегайте непосредственного редактирования этих объектов, так как изменения могут привести к ошибкам или несовместимости, которые нарушают конвейер индексатора.
Для проверки создания объектов можно использовать портал Azure. Рабочий процесс:
Проверьте индексатор для сообщений об успешном выполнении или сбое. Ошибки подключения или квотирования отображаются в этом разделе.
Проверьте источник данных, чтобы проверить подключение к хранилищу данных. Подключение использует либо строку подключения, либо управляемый идентификатор, в зависимости от того, как вы настроили источник знаний.
Проверьте набор навыков, чтобы увидеть, как ваш контент разбивается на фрагменты и при необходимости векторизуется.
Проверьте индекс, чтобы увидеть, как ваше содержимое индексируется и предоставляется для извлечения, включая поля, которые доступны для поиска и фильтрации, а также поля, в которых хранятся векторы для поиска по схожести. Используйте обозреватель поиска для выполнения запросов к созданному индексу.
Назначение базе знаний
Если вы удовлетворены источником знаний, добавьте его в базу знаний.
Запрос к базе знаний
После настройки базы знаний вызовите действие извлечения или конечную точку MCP для запроса источника знаний.
Удаление источника знаний
Прежде чем удалить источник знаний, необходимо удалить любую базу знаний, которая ссылается на нее или обновить определение базы знаний, чтобы удалить ссылку. Для источников знаний, генерирующих индекс и конвейер индексатора, все созданные объекты также удаляются. Однако если вы использовали существующий индекс для создания источника знаний, индекс не удаляется.
Если вы пытаетесь удалить используемый источник знаний, действие завершается ошибкой и возвращает список затронутых баз знаний.
Удаление источника знаний:
Получите список всех баз знаний в службе поиска.
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
Пример ответа может выглядеть следующим образом:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Получите отдельное определение базы знаний для проверки ссылок на источники знаний.
using Azure.Search.Documents.Indexes; using System.Text.Json; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); // Specify the knowledge base name to retrieve string kbNameToGet = "earth-knowledge-base"; // Get a specific knowledge base definition var knowledgeBaseResponse = await indexClient.GetKnowledgeBaseAsync(kbNameToGet); var kb = knowledgeBaseResponse.Value; // Serialize to JSON for display string json = JsonSerializer.Serialize(kb, new JsonSerializerOptions { WriteIndented = true }); Console.WriteLine(json);Reference:SearchIndexClient
Пример ответа может выглядеть следующим образом:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Удалите базу знаний или, если у вас несколько источников знаний, обновите базу знаний, чтобы удалить источник. В этом примере показано удаление.
using Azure.Search.Documents.Indexes; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); await indexClient.DeleteKnowledgeBaseAsync(knowledgeBaseName); System.Console.WriteLine($"Knowledge base '{knowledgeBaseName}' deleted successfully.");Reference:SearchIndexClient
Удалите источник знаний.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Reference:SearchIndexClient
Получите список всех баз знаний в службе поиска.
# 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
Пример ответа может выглядеть следующим образом:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Получите отдельное определение базы знаний для проверки ссылок на источники знаний.
# Get a knowledge base definition from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) kb = index_client.get_knowledge_base("knowledge_base_name") print(kb)Reference:SearchIndexClient
Пример ответа может выглядеть следующим образом:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Удалите базу знаний или, если у вас несколько источников знаний, обновите базу знаний, чтобы удалить источник. В этом примере показано удаление.
# Delete a knowledge base from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) index_client.delete_knowledge_base("knowledge_base_name") print(f"Knowledge base deleted successfully.")Reference:SearchIndexClient
Удалите источник знаний.
# 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
Получите список всех баз знаний в службе поиска.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name api-key: {{api-key}}Справочник:Базы знаний — список
Пример ответа может выглядеть следующим образом:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Получите отдельное определение базы знаний для проверки ссылок на источники знаний.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} api-key: {{api-key}}Справочник:Базы знаний — получение
Пример ответа может выглядеть следующим образом:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Удалите базу знаний или, если у вас несколько источников знаний, обновите базу знаний, чтобы удалить источник. В этом примере показано удаление.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} api-key: {{api-key}}Справочник:Базы знаний — удаление
Удалите источник знаний.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} api-key: {{api-key}}Справочник:Источники знаний — удаление