Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Расширение Azure OpenAI для Функции Azure в настоящее время находится в предварительной версии.
Расширение Azure OpenAI для Функции Azure реализует набор триггеров и привязок, которые позволяют легко интегрировать функции и поведение Службы Azure OpenAI в выполнение кода функции.
Функции Azure — это служба вычислений на основе событий, которая предоставляет набор триггеров и привязок для легкого подключения к другим службам Azure.
Интеграция Между Azure OpenAI и Функциями позволяет создавать функции, которые могут:
Действие | Тип триггера и привязки |
---|---|
Использование стандартного текстового запроса для завершения содержимого | Входная привязка ввода текста OpenAI в Azure OpenAI |
Ответ на запрос помощника на вызов функции | Триггер помощника по Azure OpenAI |
Создание помощника | Помощник по Azure OpenAI создает выходную привязку |
Сообщение помощника | Привязка входных данных помощника по Azure OpenAI |
Получение журнала помощников | Входная привязка запроса Помощника по Azure OpenAI |
Чтение внедренных текста | Входная привязка Azure OpenAI для внедрения |
Запись в векторную базу данных | Выходная привязка хранилища встраивающих модулей Azure OpenAI |
Чтение из векторной базы данных | Привязка входных данных семантического поиска Azure OpenAI |
Установка расширения
Установленный пакет NuGet расширения зависит от режима C# в процессе или изолированном рабочем процессе, который вы используете в приложении-функции:
Добавьте расширение Azure OpenAI в проект, установив пакет NuGet Microsoft.Azure.Functions.Worker.Extensions.OpenAI NuGet, который можно сделать с помощью интерфейса командной строки .NET:
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.OpenAI --prerelease
При использовании векторной базы данных для хранения содержимого также следует установить по крайней мере один из следующих пакетов NuGet:
- Поиск ИИ Azure: Microsoft.Azure.Functions.Worker.Extensions.OpenAI.AzureAISearch
- Azure Cosmos DB для виртуальных ядер MongoDB: Microsoft.Azure.Functions.Worker.Extensions.OpenAI.CosmosDBSearch
- Azure Cosmos DB для NoSQL: Microsoft.Azure.Functions.Worker.Extensions.OpenAI.CosmosDBSearch
- Azure Data Explorer: Microsoft.Azure.Functions.Worker.Extensions.OpenAI.Kusto
Установка пакета
Вы можете добавить расширение предварительной версии, добавив или заменив следующий код в host.json
файле, который специально предназначен для предварительной версии пакета 4.x, содержащего расширение OpenAI:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
}
Подключение к OpenAI
Чтобы использовать расширение привязки Azure OpenAI, необходимо указать подключение к OpenAI. Это соединение определяется с помощью параметров приложения и AIConnectionName
свойства триггера или привязки. Можно также использовать переменные среды для определения подключений на основе ключей.
Рекомендуется использовать подключения на основе управляемых удостоверений и AIConnectionName
свойство.
Привязки OpenAI имеют AIConnectionName
свойство, которое можно использовать для указания <ConnectionNamePrefix>
этой группы параметров приложения, определяющих подключение к Azure OpenAI:
Имя настройки | Описание |
---|---|
<CONNECTION_NAME_PREFIX>__endpoint |
Задает конечную точку URI службы Azure OpenAI. Этот параметр всегда требуется. |
<CONNECTION_NAME_PREFIX>__clientId |
Задает определенное удостоверение, назначаемое пользователем, для использования при получении маркера доступа. Требуется, чтобы <CONNECTION_NAME_PREFIX>__credential было задано значением managedidentity . Свойство принимает идентификатор клиента, соответствующий назначаемому пользователем удостоверению, которое назначено приложению. Недопустимо указать идентификатор ресурса и идентификатор клиента. Если это не указано, используется удостоверение, назначаемое системой. Это свойство используется по-разному в локальных сценариях разработки, если credential не следует задавать. |
<CONNECTION_NAME_PREFIX>__credential |
Определяет способ получения маркера доступа для подключения. Используется managedidentity для проверки подлинности управляемого удостоверения. Это значение допустимо только в том случае, если управляемое удостоверение доступно в среде размещения. |
<CONNECTION_NAME_PREFIX>__managedIdentityResourceId |
Если credential задано managedidentity значение, это свойство можно задать, чтобы указать идентификатор ресурса, который будет использоваться при получении маркера. Свойство принимает идентификатор ресурса, соответствующий идентификатору ресурса определяемого пользователем управляемого удостоверения. Недопустимо указать идентификатор ресурса и идентификатор клиента. Если ни указано, используется удостоверение, назначаемое системой. Это свойство используется по-разному в локальных сценариях разработки, если credential не следует задавать. |
<CONNECTION_NAME_PREFIX>__key |
Задает общий секретный ключ, необходимый для доступа к конечной точке службы Azure OpenAI с помощью проверки подлинности на основе ключей. Рекомендуется использовать идентификатор Microsoft Entra с управляемыми удостоверениями для проверки подлинности. |
Рассмотрите следующие параметры подключения к управляемому удостоверению, если для свойства AIConnectionName
задано значение myAzureOpenAI
:
myAzureOpenAI__endpoint=https://contoso.openai.azure.com/
myAzureOpenAI__credential=managedidentity
myAzureOpenAI__clientId=aaaaaaaa-bbbb-cccc-1111-222222222222
Во время выполнения эти параметры совместно интерпретируются узлом как один параметр myAzureOpenAI
следующим образом:
"myAzureOpenAI":
{
"endpoint": "https://contoso.openai.azure.com/",
"credential": "managedidentity",
"clientId": "aaaaaaaa-bbbb-cccc-1111-222222222222"
}
При использовании управляемых удостоверений обязательно добавьте удостоверение в роль пользователя OpenAI Cognitive Services .
При локальном запуске необходимо добавить эти параметры в файл проекта local.settings.json . Дополнительные сведения см. в статье "Локальная разработка с использованием подключений на основе удостоверений".
Дополнительные сведения см. в разделе Работа с параметрами приложения.