Azure openai invoke
使用 Azure OpenAI 调用策略来调用 Azure OpenAI 操作。
网关支持
| 网关 | 策略版本 |
|---|---|
| DataPower® API Gateway | 2.0.0 |
本主题介绍如何在程序集用户界面中配置策略;有关如何在源代码中配置策略的详情,请参阅 openai-invoke。 OpenAPI 源中配置策略的详情,请参阅 Azure openai-invoke。
关于
Azure OpenAI invoke 策略可访问四个 Azure OpenAI 操作:
POST /chat/completionsPOST /embeddingsGET /modelsGET /models/[model-id]
Azure OpenAI 调用策略支持表 2 所示的属性。
属性
下表列示了策略属性,指示属性是否为必需属性,指定输入的有效值和缺省值并指定值的数据类型。
| 属性标签 | 必需 | 描述 | 数据类型 |
|---|---|---|---|
| 职务 | False | Azure OpenAI 调用聊天完成 | 字符串 |
| 描述 | False | 对策略的描述。 | 字符串 |
| Azure OpenAI 运行 | 是 | 要调用的 Azure OpenAI 操作;必须是以下操作之一:
|
字符串 |
| Azure OpenAI API 密钥 | 是 | API 密钥,或指向包含 API 密钥的变量的变量引用。 API 密钥用于验证 Azure OpenAI 请求。 | 字符串 |
| Azure OpenAI 资源编号 | 是 | 作为 URL 端点的一部分,指向已配置的资源。 | 字符串 |
| Azure OpenAI 部署编号 | 是 | 路径参数 - Azure 中部署模型的项目/部署名称。 | 字符串 |
| 启用响应缓存 | False | 默认情况下会启用响应缓存,以优化 API 性能;但如果您的 API 需要,也可以禁用响应缓存。 启用响应缓存后,当向 Azure OpenAI 服务发送请求时,就会检查响应缓存,以确定请求有效载荷是否有相关的缓存响应。 如果是,该缓存响应及其相关的 HTTP 响应标头将被放入由输出消息属性指定的 DataPower API Gateway 上下文消息中。 如果没有缓存响应,则会将请求传递给 OpenAI 服务,并使用响应缓存过期属性中指定的生存时间缓存响应,供后续操作使用。 |
布尔型 |
| 响应缓存过期 | False | 缓存的持续时间(存活时间)。 最短持续时间为 60 秒,最长持续时间为 86400 秒(1 天)--在发布 API 时,任何超出此范围的值都将无法通过验证,即使此字段中的值已被接受。 | 整数 |
| 缓存范围 | False | 为用于存储缓存响应的密钥添加唯一性的字符串。 添加缓存范围可将同一请求保存在多个缓存条目中。 | 字符串 |
| 操作版本 | False | 操作版本指定策略适用的 OpenAI 操作(如完成、聊天/完成、嵌入)的版本。 使用 YYYY-MM-DD 格式定义。 | |
| Azure OpenAI 运行路径参数 | False | 如果操作中有一个路径参数,并在操作中用方括号指定了路径参数名,则指定参数名和值,参数名和值之间用冒号隔开。 如果操作有一个以上的路径参数,则每个路径参数应使用逗号分隔。 例如,对于操作 GET models/[model] ,路径参数属性应指定为 model:somename。注意: 如果所选操作需要但未提供路径参数,则调用操作将失败。 不过,对于不需要路径参数的操作,任何提供的路径参数都将被忽略。
|
字符串 |
| Azure OpenAI 操作查询参数 | False | 对于支持查询参数的操作,请指定一个查询参数字符串,该字符串应指定参数名称和用等号分隔的值。 如果支持一个以上的查询参数,则每个查询参数之间用 "ampersand "字符分隔。 目前支持的操作不支持查询参数,但未来可能支持的操作将支持查询参数。 | 字符串 |
| 输出消息 | False | 接收 Azure OpenAI 响应的 DataPower API Gateway 上下文信息的名称。 默认情况下,该属性使用消息作为值,这样就可以通过 message.body 和 message.headers 中的后续 API 策略访问响应。 |
字符串 |