Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта функция сейчас доступна в общедоступной предварительной версии. Этот предварительный просмотр предоставляется без соглашения об уровне обслуживания и не предназначается для производственных рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.
Используйте индексированные источники знаний SharePoint для индексирования и запроса содержимого SharePoint в агентном конвейере извлечения. Источники знаний создаются независимо, ссылаются на базу знаний и используются в качестве опорных данных, когда агент или чат-бот вызывает действие извлечения во время запроса.
При создании индексированного источника знаний SharePoint необходимо указать строку подключения SharePoint, модели и свойства для автоматического создания следующих объектов поиска ИИ Azure:
- Источник данных, указывающий на сайты SharePoint.
- Навык, который разделяет и при необходимости векторизует мультимодальное содержание.
- Индекс, который хранит обогащенное содержимое и соответствует критериям для агентского извлечения.
- Индексатор, использующий предыдущие объекты для управления конвейером индексирования и обогащения.
Предпосылки
Поиск по искусственному интеллекту Azure в любом регионе, который предоставляет агентское извлечение. Необходимо включить семантику ранжирования.
Завершение предварительных требований индексатора SharePoint.
Завершение трех шагов конфигурации индексатора SharePoint:
Последняя предварительная версия клиентской библиотеки
Azure.Search.Documentsдля пакета SDK для .NET.Разрешение на создание и использование объектов в службе "Поиск ИИ Azure". Рекомендуется доступ на основе ролей, но при невозможности назначения роли можно использовать ключи API. Дополнительные сведения см. в разделе "Подключение к службе поиска".
Проверка существующих источников знаний
Источник знаний — это объект верхнего уровня, который можно использовать повторно. Знание существующих источников знаний полезно для повторного использования или именования новых объектов.
Выполните следующий код, чтобы перечислить источники знаний по имени и типу.
// 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}");
}
Вы также можете вернуть один источник знаний по имени, чтобы просмотреть его определение 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));
Следующий код JSON является примером ответа для индексированного источника знаний SharePoint.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Замечание
Конфиденциальная информация редактируется. Созданные ресурсы отображаются в конце ответа.
Создание источника знаний
Выполните следующий код, чтобы создать индексированные источники знаний SharePoint.
// Create an IndexedSharePoint knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
var chatCompletionParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiGptDeployment,
ModelName = aoaiGptModel
};
var embeddingParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiEmbeddingDeployment,
ModelName = aoaiEmbeddingModel
};
var ingestionParams = new KnowledgeSourceIngestionParameters
{
DisableImageVerbalization = false,
ChatCompletionModel = new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: chatCompletionParams),
EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
{
AzureOpenAIParameters = embeddingParams
}
};
var sharePointParams = new IndexedSharePointKnowledgeSourceParameters(
connectionString: sharePointConnectionString,
containerName: "defaultSiteLibrary")
{
IngestionParameters = ingestionParams
};
var knowledgeSource = new IndexedSharePointKnowledgeSource(
name: "my-indexed-sharepoint-ks",
indexedSharePointParameters: sharePointParams)
{
Description = "A sample indexed SharePoint knowledge source."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Свойства, относящиеся к источнику
Для создания индексированного источника знаний SharePoint можно передать следующие свойства.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
Name |
Имя источника знаний, которое должно быть уникальным в коллекции источников знаний и следуйте рекомендациям по именованию объектов в службе "Поиск ИИ Azure". | String | нет | Да |
Description |
Описание источника знаний. | String | Да | нет |
EncryptionKey |
Управляемый клиентом ключ для шифрования конфиденциальной информации как в источнике знаний, так и в созданных объектах. | Object | Да | нет |
IndexedSharePointKnowledgeSourceParameters |
Параметры, характерные для индексированных источников знаний SharePoint: connectionString, containerNameи query. |
Object | нет | нет |
connectionString |
Строка подключения к сайту SharePoint. Дополнительные сведения см. в разделе "Синтаксис строки подключения". | String | Да | Да |
containerName |
Доступ к библиотеке SharePoint. Используется defaultSiteLibrary для индексирования содержимого из библиотеки документов по умолчанию сайта или allSiteLibraries индексирования содержимого из каждой библиотеки документов на сайте. Игнорировать useQuery сейчас. |
String | нет | Да |
query |
Игнорировать пока. | String | Да | нет |
свойства ingestion_parameters
Только для индексированных источников знаний можно передать следующие ingestionParameters свойства, чтобы управлять приемом и обработкой содержимого.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
Identity |
Управляемое удостоверение, используемое в созданном индексаторе. | Object | Да | нет |
DisableImageVerbalization |
Включает или отключает использование словесности изображений. Значение по умолчанию — Falseэто включение словесности изображения. Установите для Trueотключения словизации изображения. |
Boolean | нет | нет |
ChatCompletionModel |
Модель завершения чата, которая словесно преобразует изображения или извлекает содержимое. Поддерживаемые модели: gpt-4o, gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, gpt-5-miniи .gpt-5-nano
Навык запроса GenAI будет включен в созданный набор навыков. Для задания этого параметра также требуется disable_image_verbalization установить значение False. |
Object | Только api_key и deployment_name редактируются |
нет |
EmbeddingModel |
Модель внедрения текста, которая векторизирует содержимое текста и изображения во время индексирования и во время запроса. Поддерживаемые модели: text-embedding-ada-002, text-embedding-3-smallи text-embedding-3-large.
Навык внедрения Azure OpenAI будет включен в созданный набор навыков, а в созданный векторизатор Azure OpenAI будет включен в созданный индекс. |
Object | Только api_key и deployment_name редактируются |
нет |
ContentExtractionMode |
Управляет извлечением содержимого из файлов. По умолчанию используется minimalстандартное извлечение содержимого для текста и изображений.
standard Установите значение для расширенного взлома и фрагментирования документов с помощью навыка "Понимание содержимого Azure", который будет включен в созданный набор навыков. Только standard параметры AiServices и AssetStore параметры могут быть характеристики. |
String | нет | нет |
AiServices |
Ресурс Microsoft Foundry для доступа к azure Content Understanding in Foundry Tools. Для этого параметра требуется ContentExtractionMode задать значение standard. |
Object |
api_key Только редактируется |
Да |
IngestionSchedule |
Добавляет сведения о планировании в созданный индексатор. Вы также можете добавить расписание позже для автоматизации обновления данных. | Object | Да | нет |
IngestionPermissionOptions |
Разрешения уровня документа для приема из выборов источников знаний: ADLS 2-го поколения или индексированных SharePoint. При указании user_idsили group_idsrbac_scopeв созданном индексаторе ADLS 2-го поколения или индексаторе SharePoint будут включены разрешения приема. |
Массив | нет | нет |
Проверка состояния приема
Выполните следующий код, чтобы отслеживать прогресс и состояние системы, включая статус индексатора для источников знаний, которые создают конвейер индексатора и заполняют поисковый индекс.
// Get knowledge source ingestion status
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
// Get the knowledge source 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);
Ответ на запрос, включающий параметры приема и активно прием содержимого, может выглядеть следующим образом.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Просмотр созданных объектов
При создании индексированного источника знаний SharePoint служба поиска также создает индексатор, индекс, набор навыков и источник данных. Не рекомендуется изменять эти объекты, так как при возникновении ошибки или несовместимости конвейер может нарушиться.
После создания источника знаний ответ выводит список созданных объектов. Эти объекты создаются в соответствии с фиксированным шаблоном, а их имена основаны на имени источника знаний. Нельзя изменить имена объектов.
Мы рекомендуем использовать портал Azure для проверки создания выходных данных. Рабочий процесс:
- Проверьте индексатор для сообщений об успешном выполнении или сбое. Ошибки подключения или квоты отображаются здесь.
- Проверьте индекс содержимого, доступного для поиска. Используйте обозреватель поиска для выполнения запросов.
- Проверьте функционал, чтобы узнать, как содержимое разбивается на части и опционально преобразовано в векторы.
- Проверьте источник данных для получения сведений о подключении. В нашем примере используются ключи API для простоты, но вы можете использовать идентификатор Microsoft Entra для проверки подлинности и управления доступом на основе ролей для авторизации.
Назначение базе знаний
Если вы удовлетворены источником знаний, перейдите к следующему шагу: укажите источник знаний в базе знаний.
Для любой базы знаний, указывающей индексированные источники знаний SharePoint, обязательно задайте значение includeReferenceSourceDatatrue. Этот шаг необходим для извлечения URL-адреса исходного документа в ссылку.
После настройки базы знаний используйте действие извлечения для запроса источника знаний.
Удаление источника знаний
Прежде чем удалить источник знаний, необходимо удалить любую базу знаний, которая ссылается на нее или обновить определение базы знаний, чтобы удалить ссылку. Для источников знаний, которые создают индекс и конвейер индексатора, все созданные объекты также удаляются. Однако если вы использовали существующий индекс для создания источника знаний, индекс не удаляется.
Если вы пытаетесь удалить используемый источник знаний, действие завершается ошибкой и возвращает список затронутых баз знаний.
Удаление источника знаний:
Получите список всех баз знаний в службе поиска.
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}"); }Пример ответа может выглядеть следующим образом:
Knowledge Bases: - earth-knowledge-base - hotels-sample-knowledge-base - my-demo-knowledge-baseПолучите отдельное определение базы знаний для проверки ссылок на источники знаний.
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);Пример ответа может выглядеть следующим образом:
{ "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.");Удалите источник знаний.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
Замечание
Эта функция сейчас доступна в общедоступной предварительной версии. Этот предварительный просмотр предоставляется без соглашения об уровне обслуживания и не предназначается для производственных рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.
Используйте индексированные источники знаний SharePoint для индексирования и запроса содержимого SharePoint в агентном конвейере извлечения. Источники знаний создаются независимо, ссылаются на базу знаний и используются в качестве опорных данных, когда агент или чат-бот вызывает действие извлечения во время запроса.
При создании индексированного источника знаний SharePoint необходимо указать строку подключения SharePoint, модели и свойства для автоматического создания следующих объектов поиска ИИ Azure:
- Источник данных, указывающий на сайты SharePoint.
- Навык, который разделяет и при необходимости векторизует мультимодальное содержание.
- Индекс, который хранит обогащенное содержимое и соответствует критериям для агентского извлечения.
- Индексатор, использующий предыдущие объекты для управления конвейером индексирования и обогащения.
Предпосылки
Поиск по искусственному интеллекту Azure в любом регионе, который предоставляет агентское извлечение. Необходимо включить семантику ранжирования.
Завершение предварительных требований индексатора SharePoint.
Завершение трех шагов конфигурации индексатора SharePoint:
Последняя предварительная версия клиентской библиотеки
azure-search-documentsдля Python.Разрешение на создание и использование объектов в службе "Поиск ИИ Azure". Рекомендуется доступ на основе ролей, но при невозможности назначения роли можно использовать ключи API. Дополнительные сведения см. в разделе "Подключение к службе поиска".
Проверка существующих источников знаний
Источник знаний — это объект верхнего уровня, который можно использовать повторно. Знание существующих источников знаний полезно для повторного использования или именования новых объектов.
Выполните следующий код, чтобы перечислить источники знаний по имени и типу.
# List knowledge sources by name and type
import requests
import json
endpoint = "{search_url}/knowledgesources"
params = {"api-version": "2025-11-01-preview", "$select": "name, kind"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Вы также можете вернуть один источник знаний по имени, чтобы просмотреть его определение JSON.
# Get a knowledge source definition
import requests
import json
endpoint = "{search_url}/knowledgesources/{knowledge_source_name}"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Следующий код JSON является примером ответа для индексированного источника знаний SharePoint.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Замечание
Конфиденциальная информация редактируется. Созданные ресурсы отображаются в конце ответа.
Создание источника знаний
Выполните следующий код, чтобы создать индексированные источники знаний SharePoint.
# Create an indexed SharePoint knowledge source
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import IndexedSharePointKnowledgeSource, IndexedSharePointKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceAzureOpenAIVectorizer, KnowledgeSourceContentExtractionMode, KnowledgeSourceIngestionParameters
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
knowledge_source = IndexedSharePointKnowledgeSource(
name = "my-indexed-sharepoint-ks",
description = "A sample indexed SharePoint knowledge source.",
encryption_key = None,
indexed_share_point_parameters = IndexedSharePointKnowledgeSourceParameters(
connection_string = "connection_string",
container_name = "defaultSiteLibrary",
query = None,
ingestion_parameters = KnowledgeSourceIngestionParameters(
identity = None,
disable_image_verbalization = False,
chat_completion_model = KnowledgeBaseAzureOpenAIModel(
azure_open_ai_parameters = AzureOpenAIVectorizerParameters(
# TRIMMED FOR BREVITY
)
),
embedding_model = KnowledgeSourceAzureOpenAIVectorizer(
azure_open_ai_parameters=AzureOpenAIVectorizerParameters(
# TRIMMED FOR BREVITY
)
),
content_extraction_mode = KnowledgeSourceContentExtractionMode.MINIMAL,
ingestion_schedule = None,
ingestion_permission_options = None
)
)
)
index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
Свойства, относящиеся к источнику
Для создания индексированного источника знаний SharePoint можно передать следующие свойства.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
name |
Имя источника знаний, которое должно быть уникальным в коллекции источников знаний и следуйте рекомендациям по именованию объектов в службе "Поиск ИИ Azure". | String | нет | Да |
description |
Описание источника знаний. | String | Да | нет |
encryption_key |
Управляемый клиентом ключ для шифрования конфиденциальной информации как в источнике знаний, так и в созданных объектах. | Object | Да | нет |
indexed_share_point_parameters |
Параметры, характерные для индексированных источников знаний SharePoint: connection_string, container_nameи query. |
Object | нет | нет |
connection_string |
Строка подключения к сайту SharePoint. Дополнительные сведения см. в разделе "Синтаксис строки подключения". | String | Да | Да |
container_name |
Доступ к библиотеке SharePoint. Используется defaultSiteLibrary для индексирования содержимого из библиотеки документов по умолчанию сайта или allSiteLibraries индексирования содержимого из каждой библиотеки документов на сайте. Игнорировать useQuery сейчас. |
String | нет | Да |
query |
Игнорировать пока. | String | Да | нет |
свойства ingestion_parameters
Только для индексированных источников знаний можно передать следующие ingestionParameters свойства, чтобы управлять приемом и обработкой содержимого.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
identity |
Управляемое удостоверение, используемое в созданном индексаторе. | Object | Да | нет |
disable_image_verbalization |
Включает или отключает использование словесности изображений. Значение по умолчанию — Falseэто включение словесности изображения. Установите для Trueотключения словизации изображения. |
Boolean | нет | нет |
chat_completion_model |
Модель завершения чата, которая словесно преобразует изображения или извлекает содержимое. Поддерживаемые модели: gpt-4o, gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, gpt-5-miniи .gpt-5-nano
Навык запроса GenAI будет включен в созданный набор навыков. Для задания этого параметра также требуется disable_image_verbalization установить значение False. |
Object | Только api_key и deployment_name редактируются |
нет |
embedding_model |
Модель внедрения текста, которая векторизирует содержимое текста и изображения во время индексирования и во время запроса. Поддерживаемые модели: text-embedding-ada-002, text-embedding-3-smallи text-embedding-3-large.
Навык внедрения Azure OpenAI будет включен в созданный набор навыков, а в созданный векторизатор Azure OpenAI будет включен в созданный индекс. |
Object | Только api_key и deployment_name редактируются |
нет |
content_extraction_mode |
Управляет извлечением содержимого из файлов. По умолчанию используется minimalстандартное извлечение содержимого для текста и изображений.
standard Установите значение для расширенного взлома и фрагментирования документов с помощью навыка "Понимание содержимого Azure", который будет включен в созданный набор навыков. Только standard параметры ai_services и asset_store параметры могут быть характеристики. |
String | нет | нет |
ai_services |
Ресурс Microsoft Foundry для доступа к azure Content Understanding in Foundry Tools. Для этого параметра требуется content_extraction_mode задать значение standard. |
Object |
api_key Только редактируется |
Да |
asset_store |
Контейнер BLOB-объектов для хранения извлеченных образов. Для этого параметра требуется content_extraction_mode задать значение standard. |
Object | нет | нет |
ingestion_schedule |
Добавляет сведения о планировании в созданный индексатор. Вы также можете добавить расписание позже для автоматизации обновления данных. | Object | Да | нет |
ingestion_permission_options |
Разрешения уровня документа для приема из выборов источников знаний: ADLS 2-го поколения или индексированных SharePoint. При указании user_idsили group_idsrbac_scopeв созданном индексаторе ADLS 2-го поколения или индексаторе SharePoint будут включены разрешения приема. |
Массив | нет | нет |
Проверка состояния приема
Выполните следующий код, чтобы отслеживать процесс сбора данных и состояние системы, включая состояние индексатора, использующегося для источников знаний, создающих индексаторный конвейер и заполняющих поисковый индекс.
# Check knowledge source ingestion status
import requests
import json
endpoint = "{search_url}/knowledgesources/{knowledge_source_name}/status"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Ответ на запрос, включающий параметры приема и активно прием содержимого, может выглядеть следующим образом.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Просмотр созданных объектов
При создании индексированного источника знаний SharePoint служба поиска также создает индексатор, индекс, набор навыков и источник данных. Не рекомендуется изменять эти объекты, так как при возникновении ошибки или несовместимости конвейер может нарушиться.
После создания источника знаний ответ выводит список созданных объектов. Эти объекты создаются в соответствии с фиксированным шаблоном, а их имена основаны на имени источника знаний. Нельзя изменить имена объектов.
Мы рекомендуем использовать портал Azure для проверки создания выходных данных. Рабочий процесс:
- Проверьте индексатор для сообщений об успешном выполнении или сбое. Ошибки подключения или квоты отображаются здесь.
- Проверьте индекс содержимого, доступного для поиска. Используйте обозреватель поиска для выполнения запросов.
- Проверьте функционал, чтобы узнать, как содержимое разбивается на части и опционально преобразовано в векторы.
- Проверьте источник данных для получения сведений о подключении. В нашем примере используются ключи API для простоты, но вы можете использовать идентификатор Microsoft Entra для проверки подлинности и управления доступом на основе ролей для авторизации.
Назначение базе знаний
Если вы удовлетворены источником знаний, перейдите к следующему шагу: укажите источник знаний в базе знаний.
Для любой базы знаний, указывающей индексированные источники знаний SharePoint, обязательно задайте значение includeReferenceSourceDatatrue. Этот шаг необходим для извлечения URL-адреса исходного документа в ссылку.
После настройки базы знаний используйте действие извлечения для запроса источника знаний.
Удаление источника знаний
Прежде чем удалить источник знаний, необходимо удалить любую базу знаний, которая ссылается на нее или обновить определение базы знаний, чтобы удалить ссылку. Для источников знаний, которые создают индекс и конвейер индексатора, все созданные объекты также удаляются. Однако если вы использовали существующий индекс для создания источника знаний, индекс не удаляется.
Если вы пытаетесь удалить используемый источник знаний, действие завершается ошибкой и возвращает список затронутых баз знаний.
Удаление источника знаний:
Получите список всех баз знаний в службе поиска.
# Get knowledge bases import requests import json endpoint = "{search_url}/knowledgebases" params = {"api-version": "2025-11-01-preview", "$select": "name"} headers = {"api-key": "{api_key}"} response = requests.get(endpoint, params = params, headers = headers) print(json.dumps(response.json(), indent = 2))Пример ответа может выглядеть следующим образом:
{ "@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 import requests import json endpoint = "{search_url}/knowledgebases/{knowledge_base_name}" params = {"api-version": "2025-11-01-preview"} headers = {"api-key": "{api_key}"} response = requests.get(endpoint, params = params, headers = headers) print(json.dumps(response.json(), indent = 2))Пример ответа может выглядеть следующим образом:
{ "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.")Удалите источник знаний.
# 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.")
Замечание
Эта функция сейчас доступна в общедоступной предварительной версии. Этот предварительный просмотр предоставляется без соглашения об уровне обслуживания и не предназначается для производственных рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.
Используйте индексированные источники знаний SharePoint для индексирования и запроса содержимого SharePoint в агентном конвейере извлечения. Источники знаний создаются независимо, ссылаются на базу знаний и используются в качестве опорных данных, когда агент или чат-бот вызывает действие извлечения во время запроса.
При создании индексированного источника знаний SharePoint необходимо указать строку подключения SharePoint, модели и свойства для автоматического создания следующих объектов поиска ИИ Azure:
- Источник данных, указывающий на сайты SharePoint.
- Навык, который разделяет и при необходимости векторизует мультимодальное содержание.
- Индекс, который хранит обогащенное содержимое и соответствует критериям для агентского извлечения.
- Индексатор, использующий предыдущие объекты для управления конвейером индексирования и обогащения.
Предпосылки
Поиск по искусственному интеллекту Azure в любом регионе, который предоставляет агентское извлечение. Необходимо включить семантику ранжирования.
Завершение предварительных требований индексатора SharePoint.
Завершение трех шагов конфигурации индексатора SharePoint:
Версия REST API службы поиска 2025-11-01-preview .
Разрешение на создание и использование объектов в службе "Поиск ИИ Azure". Рекомендуется доступ на основе ролей, но при невозможности назначения роли можно использовать ключи API. Дополнительные сведения см. в разделе "Подключение к службе поиска".
Проверка существующих источников знаний
Источник знаний — это объект верхнего уровня, который можно использовать повторно. Знание существующих источников знаний полезно для повторного использования или именования новых объектов.
Используйте Knowledge Sources - Get (REST API) для перечисления источников знаний по имени и типу.
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version=2025-11-01-preview&$select=name,kind
api-key: {{api-key}}
Вы также можете вернуть один источник знаний по имени, чтобы просмотреть его определение JSON.
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
api-key: {{api-key}}
Следующий код JSON является примером ответа для индексированного источника знаний SharePoint.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Замечание
Конфиденциальная информация редактируется. Созданные ресурсы отображаются в конце ответа.
Создание источника знаний
Используйте источники знаний. Создание или обновление (REST API) для создания индексированного источника знаний SharePoint.
POST {{search-url}}/knowledgesources/my-indexed-sharepoint-ks?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source.",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "{{sharepoint-connection-string}}",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"resourceUri": "{{aoai-endpoint}}",
"apiKey": "{{aoai-key}}"
}
},
"chatCompletionModel": null,
"disableImageVerbalization": false,
"ingestionSchedule": null,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal"
}
}
}
Свойства, относящиеся к источнику
Для создания индексированного источника знаний SharePoint можно передать следующие свойства.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
name |
Имя источника знаний, которое должно быть уникальным в коллекции источников знаний и следуйте рекомендациям по именованию объектов в службе "Поиск ИИ Azure". | String | нет | Да |
kind |
Тип источника знаний, который в indexedSharePoint данном случае. |
String | нет | Да |
description |
Описание источника знаний. | String | Да | нет |
encryptionKey |
Управляемый клиентом ключ для шифрования конфиденциальной информации как в источнике знаний, так и в созданных объектах. | Object | Да | нет |
indexedSharePointParameters |
Параметры, характерные для индексированных источников знаний SharePoint: connectionString, containerNameи query. |
Object | нет | Да |
connectionString |
Строка подключения к сайту SharePoint. Дополнительные сведения см. в разделе "Синтаксис строки подключения". | String | Да | нет |
container_name |
Доступ к библиотеке SharePoint. Используется defaultSiteLibrary для индексирования содержимого из библиотеки документов по умолчанию сайта или allSiteLibraries индексирования содержимого из каждой библиотеки документов на сайте. Игнорировать useQuery сейчас. |
String | нет | Да |
query |
Игнорировать пока. | String | Да | нет |
свойства ingestionParameters
Только для индексированных источников знаний можно передать следующие ingestionParameters свойства, чтобы управлять приемом и обработкой содержимого.
| Имя | Description | Тип | Возможно изменение | Обязательно |
|---|---|---|---|---|
identity |
Управляемое удостоверение, используемое в созданном индексаторе. | Object | Да | нет |
disableImageVerbalization |
Включает или отключает использование словесности изображений. Значение по умолчанию — falseэто включение словесности изображения. Установите для trueотключения словизации изображения. |
Boolean | нет | нет |
chatCompletionModel |
Модель завершения чата, которая словесно преобразует изображения или извлекает содержимое. Поддерживаемые модели: gpt-4o, gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, gpt-5-miniи .gpt-5-nano
Навык запроса GenAI будет включен в созданный набор навыков. Для задания этого параметра также требуется disableImageVerbalization установить значение false. |
Object | Только apiKey и deploymentId редактируются |
нет |
embeddingModel |
Модель внедрения текста, которая векторизирует содержимое текста и изображения во время индексирования и во время запроса. Поддерживаемые модели: text-embedding-ada-002, text-embedding-3-smallи text-embedding-3-large.
Навык внедрения Azure OpenAI будет включен в созданный набор навыков, а в созданный векторизатор Azure OpenAI будет включен в созданный индекс. |
Object | Только apiKey и deploymentId редактируются |
нет |
contentExtractionMode |
Управляет извлечением содержимого из файлов. По умолчанию используется minimalстандартное извлечение содержимого для текста и изображений.
standard Установите значение для расширенного взлома и фрагментирования документов с помощью навыка "Понимание содержимого Azure", который будет включен в созданный набор навыков. Только standard параметры aiServices и assetStore параметры могут быть характеристики. |
String | нет | нет |
aiServices |
Ресурс Microsoft Foundry для доступа к azure Content Understanding in Foundry Tools. Для этого параметра требуется contentExtractionMode задать значение standard. |
Object |
apiKey Только редактируется |
Да |
assetStore |
Контейнер BLOB-объектов для хранения извлеченных образов. Для этого параметра требуется contentExtractionMode задать значение standard. |
Object | нет | нет |
ingestionSchedule |
Добавляет сведения о планировании в созданный индексатор. Вы также можете добавить расписание позже для автоматизации обновления данных. | Object | Да | нет |
ingestionPermissionOptions |
Разрешения уровня документа для приема из выборов источников знаний: ADLS 2-го поколения или индексированных SharePoint. При указании userIdsили groupIdsrbacScopeв созданном индексаторе ADLS 2-го поколения или индексаторе SharePoint будут включены разрешения приема. |
Массив | нет | нет |
Проверка состояния приема
Использование источников знаний — состояние (REST API) для мониторинга хода приема и работоспособности, включая состояние индексатора для источников знаний, которые создают конвейер индексатора и заполняют индексатор.
### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json
Ответ на запрос, включающий параметры приема и активно прием содержимого, может выглядеть следующим образом.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Просмотр созданных объектов
При создании индексированного источника знаний SharePoint служба поиска также создает индексатор, индекс, набор навыков и источник данных. Не рекомендуется изменять эти объекты, так как при возникновении ошибки или несовместимости конвейер может нарушиться.
После создания источника знаний ответ выводит список созданных объектов. Эти объекты создаются в соответствии с фиксированным шаблоном, а их имена основаны на имени источника знаний. Нельзя изменить имена объектов.
Мы рекомендуем использовать портал Azure для проверки создания выходных данных. Рабочий процесс:
- Проверьте индексатор для сообщений об успешном выполнении или сбое. Ошибки подключения или квоты отображаются здесь.
- Проверьте индекс содержимого, доступного для поиска. Используйте обозреватель поиска для выполнения запросов.
- Проверьте функционал, чтобы узнать, как содержимое разбивается на части и опционально преобразовано в векторы.
- Проверьте источник данных для получения сведений о подключении. В нашем примере используются ключи API для простоты, но вы можете использовать идентификатор Microsoft Entra для проверки подлинности и управления доступом на основе ролей для авторизации.
Назначение базе знаний
Если вы удовлетворены источником знаний, перейдите к следующему шагу: укажите источник знаний в базе знаний.
Для любой базы знаний, указывающей индексированные источники знаний SharePoint, обязательно задайте значение includeReferenceSourceDatatrue. Этот шаг необходим для извлечения URL-адреса исходного документа в ссылку.
После настройки базы знаний используйте действие извлечения для запроса источника знаний.
Удаление источника знаний
Прежде чем удалить источник знаний, необходимо удалить любую базу знаний, которая ссылается на нее или обновить определение базы знаний, чтобы удалить ссылку. Для источников знаний, которые создают индекс и конвейер индексатора, все созданные объекты также удаляются. Однако если вы использовали существующий индекс для создания источника знаний, индекс не удаляется.
Если вы пытаетесь удалить используемый источник знаний, действие завершается ошибкой и возвращает список затронутых баз знаний.
Удаление источника знаний:
Получите список всех баз знаний в службе поиска.
### Get knowledge bases GET {{search-endpoint}}/knowledgebases?api-version=2025-11-01-preview&$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-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview 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-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview api-key: {{api-key}}Удалите источник знаний.
### Delete a knowledge source DELETE {{search-endpoint}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview api-key: {{api-key}}