你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用于 Azure Functions 的 Azure OpenAI 扩展
重要
适用于 Azure Functions 的 Azure OpenAI 扩展目前为预览版。
适用于 Azure Functions 的 Azure OpenAI 扩展实现了一组触发器和绑定,使你可以轻松地将 Azure OpenAI 服务的功能和行为集成到函数代码执行中。
Azure Functions 是事件驱动的计算服务,它提供一组触发器和绑定,可轻松与其他 Azure 服务连接。
通过 Azure OpenAI 与 Functions 之间的集成,可以构建具有以下功能的函数:
操作 | 触发器/绑定类型 |
---|---|
使用标准文本提示补全内容 | Azure OpenAI 文本补全输入绑定 |
响应助手请求以调用函数 | Azure OpenAI 助手触发器 |
创建助手 | Azure OpenAI 助手创建输出绑定 |
向助手发送消息 | Azure OpenAI 助手发布输入绑定 |
获取助手历史记录 | Azure OpenAI 助手查询输入绑定 |
读取文本嵌入 | Azure OpenAI 嵌入输入绑定 |
写入矢量数据库 | Azure OpenAI 嵌入存储输出绑定 |
从矢量数据库读取 | Azure OpenAI 语义搜索输入绑定 |
安装扩展
你安装的扩展 NuGet 包取决于你在函数应用中使用的 C# 模式进程内或独立工作进程:
通过安装 Microsoft.Azure.Functions.Worker.Extensions.OpenAI NuGet 包,将 Azure OpenAI 扩展添加到项目,可以使用 .NET CLI 执行此操作:
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.OpenAI --prerelease
使用矢量数据库存储内容时,还应至少安装其中一个 NuGet 包:
- Azure AI 搜索:Microsoft.Azure.Functions.Worker.Extensions.OpenAI.AzureAISearch
- Azure Cosmos DB for MongoDB:Microsoft.Azure.Functions.Worker.Extensions.OpenAI.CosmosDBSearch
- Azure 数据资源管理器:Microsoft.Azure.Functions.Worker.Extensions.OpenAI.Kusto
安装捆绑包
可以通过在 host.json
文件中添加或替换以下代码来添加预览扩展,该代码专门面向包含 OpenAI 扩展的 4.x 捆绑包的预览版本:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
}
应用程序设置
若要使用 Azure OpenAI 绑定扩展,需要添加一个或多个这些设置,这些设置用于连接到 OpenAI 资源。 在本地开发期间,还需要将这些设置添加到 local.settings.json
文件。
设置名 | 说明 |
---|---|
AZURE_OPENAI_ENDPOINT |
必填。 设置绑定使用的 OpenAI 资源的终结点。 |
AZURE_OPENAI_KEY |
设置用于访问 Azure OpenAI 资源的密钥。 |
OPENAI_API_KEY |
设置用于访问非 Azure OpenAI 资源的密钥。 |
AZURE_CLIENT_ID |
设置用于访问 Azure OpenAI 资源的用户分配托管标识。 |
有关详细信息,请参阅使用应用程序设置。