你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure OpenAI 服务 REST API 参考

本文详细介绍了 Azure OpenAI 的推理 REST API 端点。

API 规范

管理 Azure OpenAI 模型和资源并与之交互分为三个主要 API 图面:

  • 控制面板
  • 数据平面 - 创作
  • 数据平面 - 推理

每个 API 图面/规范封装了一组不同的 Azure OpenAI 功能。 每个 API 都有自己独特的预览版和稳定/正式发布 (GA) API 版本集。 预览版目前按月发布。

API 最新预览版 最新 GA 版本 规范 说明
控制面板 2024-06-01-preview 2023-05-01 规范文件 Azure OpenAI 与所有其他 Azure AI 服务共享通用控制平面。 控制平面 API 用于创建 Azure OpenAI 资源模型部署和其他更高级别的资源管理任务等。 控制平面还控制使用 Azure 资源管理器、Bicep、Terraform 和 Azure CLI 等功能可以执行的操作。
数据平面 - 创作 2024-10-01-preview 2024-06-01 规范文件 数据平面创作 API 可控制微调文件上传引入作业批处理,以及某些模型级查询
数据平面 - 推理 2024-10-01-preview 2024-06-01 规范文件 数据平面推理 API 为补全、聊天补全、嵌入、语音/耳语、基于自有数据、Dall-e、助手等功能提供推理功能/终结点。

身份验证

Azure OpenAI 提供两种身份验证方法。 可以使用 API 密钥或 Microsoft Entra ID。

  • API 密钥身份验证:对于这种类型的身份验证,所有 API 请求都必须在 api-key HTTP 标头中包含 API 密钥。 本快速入门提供有关如何通过此类身份验证进行调用的指南。

  • Microsoft Entra ID 身份验证:可以使用 Microsoft Entra 令牌对 API 调用进行身份验证。 身份验证令牌作为 Authorization 标头包含在请求中。 提供的令牌必须以 Bearer 开头,例如 Bearer YOUR_AUTH_TOKEN。 可以阅读有关如何使用 Microsoft Entra ID 进行身份验证的操作指南。

REST API 版本控制

服务 API 使用 api-version 查询参数进行版本控制。 所有版本都遵循 YYYY-MM-DD 日期结构。 例如:

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2024-06-01

数据平面推理

本文的其余部分介绍了 Azure OpenAI 数据平面推理规范的最新 GA 版本,即 2024-06-01

如果要查找有关最新预览版 API 版本的文档,请参阅最新的预览版数据平面推理 API

完成

POST https://{endpoint}/openai/deployments/{deployment-id}/completions?api-version=2024-06-01

为提供的提示、参数和所选模型创建补全。

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string 已部署 模型的部署 ID。
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

“内容类型”: application/json

名称 Type 描述 需要 默认
prompt 字符串或数组 生成补全的提示,其编码为字符串或字符串数组。
请注意,<|endoftext|> 是模型在训练期间看到的文档分隔符,因此如果未指定提示,则模型将像从新文档的开头一样生成。 字符串列表的最大允许大小为 2048。
max_tokens integer 提示加上 max_tokens 的令牌计数不能超过模型的上下文长度。 除最新模型(它支持 4096 个令牌)外,大多数模型的上下文长度为 2048 个令牌。 最小大小为 0。 16
温度 数字 要使用的采样温度。 较高的值意味着模型将承担更多风险。 尝试将值设为 0.9 以获得更有创意的应用程序,将值设为 0 (arg max sampling) 以获得具有明确答案的应用程序。
我们通常建议更改此设置或 top_p,但不要同时更改这两者。
1
top_p 数字 温度采样的替代方法,称为核采样,其中模型考虑具有 top_p 概率质量的令牌的结果。 所以 0.1 意味着只考虑包含前 10% 概率质量的令牌。
我们通常建议更改此设置或温度,但不要同时更改这两者。
1
logit_bias object 默认为“null”。 修改指定令牌在完成中出现的可能性。 接受 json 对象,该对象将令牌(由其在 GPT tokenizer 中的令牌 ID 指定)映射到从 -100 到 100 的关联偏差。 可以使用此 tokenizer 工具(适用于 GPT-2 和 GPT-3)将文本转换为令牌 ID。 在数学上,采样之前会将偏差添加到由模型生成的 logit 中。 具体效果因模型而异,但 -1 和 1 之间的值会减少或增加选择的可能性;-100 或 100 等值会导致相关令牌的禁止或独占选择。 例如,可以传递 {"50256": -100} 以防止生成 <|endoftext|> 令牌。
user string 表示最终用户的唯一标识符,可帮助监视和检测滥用行为
n integer 要为每个提示生成的完成数。 允许的最小值为 1,最大值为 128。
注意:由于此参数会生成许多完成,因此可能会快速消耗你的令牌配额。 谨慎使用并确保对 max_tokens 和 stop 进行了合理的设置。
1
流 (stream) boolean 是否流式传输回部分进度。 如果设置,令牌将在可用时作为仅数据服务器发送的事件发送,流由 data:[DONE] 消息终止。 False
logprobs integer 包含有关 logprobs 最有可能的令牌和已选择的令牌的日志概率。 例如,如果 logprobs 为 5,则 API 将返回包含 5 个最有可能的令牌的列表。 API 将始终返回采样令牌的 logprob,因此响应中可能最多有 logprobs+1 个元素。
允许的最小值为 0,最大值为 5。
suffix string 插入的文本完成后的后缀。
echo boolean 除了完成之外,还回显提示 False
stop 字符串或数组 最多四个序列,其中 API 将停止生成更多令牌。 返回的文本将不包含停止序列。
completion_config string
presence_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止是否在文本中出现来惩罚新令牌,从而增加模型谈论新话题的可能性。 0
frequency_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止在文本中的现有频率来惩罚新令牌,从而降低模型逐字重复同一行的可能性。 0
best_of integer 在服务器端生成 best_of 补全并返回“最佳”(定义为每个令牌的对数概率最高的参数)。 无法流式传输结果。
与 n 一起使用时,best_of 控制候选补全数,n 指定返回的补全数,best_of 的值必须大于 n 的值。
注意:由于此参数会生成许多完成,因此可能会快速消耗你的令牌配额。 谨慎使用并确保对 max_tokens 和 stop 进行了合理的设置。 最大值为 128。

响应

名称 Type 描述 需要 默认
id string
对象 (object) string
created integer
模型 string
prompt_filter_results promptFilterResults 请求中零个或多个提示的内容筛选结果。 在流式处理请求中,不同提示的结果可能以不同的时间或不同的顺序到达。
choices array
使用情况 object

用法属性

completion_tokens

名称 Type 描述 默认
completion_tokens 数字
prompt_tokens 数字
total_tokens 数字

状态代码:200

说明:确定

Content-Type 类型 描述
application/json object

状态代码:默认值

说明:服务不可用

Content-Type 类型 描述
application/json errorResponse

示例

示例

为提供的提示、参数和所选模型创建补全。

POST https://{endpoint}/openai/deployments/{deployment-id}/completions?api-version=2024-06-01

{
 "prompt": [
  "tell me a joke about mango"
 ],
 "max_tokens": 32,
 "temperature": 1.0,
 "n": 1
}

响应:状态代码:200

{
  "body": {
    "id": "cmpl-7QmVI15qgYVllxK0FtxVGG6ywfzaq",
    "created": 1686617332,
    "choices": [
      {
        "text": "es\n\nWhat do you call a mango who's in charge?\n\nThe head mango.",
        "index": 0,
        "finish_reason": "stop",
        "logprobs": null
      }
    ],
    "usage": {
      "completion_tokens": 20,
      "prompt_tokens": 6,
      "total_tokens": 26
    }
  }
}

嵌入

POST https://{endpoint}/openai/deployments/{deployment-id}/embeddings?api-version=2024-06-01

获取给定输入的向量表示形式,该输入可由机器学习模型和算法轻松使用。

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

“内容类型”: application/json

名称 Type 描述 需要 默认
input 字符串或数组 获取嵌入的输入文本,编码为字符串。 要在单个请求中获取多个输入的嵌入,请传递一个由字符串构成的数组。 每个数组的长度不得超过 2048 个输入。
除非嵌入代码,否则我们建议将输入中的换行符 (\n) 替换为一个空格,因为我们观察到出现换行符时会产生较差的结果。
user string 表示最终用户的唯一标识符,可帮助监视和检测滥用行为。
input_type string 要使用的嵌入搜索的输入类型
encoding_format string 嵌入的返回格式。 可以为 floatbase64。 默认为 float
dimensions integer 生成的输出嵌入应有的维度数。 仅在 text-embedding-3 及更高版本中受支持。

响应

名称 Type 描述 需要 默认
object string
模型 string
data array
使用情况 object

用法属性

prompt_tokens

名称 Type 描述 默认
prompt_tokens integer

total_tokens

名称 Type 描述 默认
total_tokens integer

状态代码:200

说明:确定

Content-Type 类型 描述
application/json object

示例

示例

返回给定提示的嵌入。

POST https://{endpoint}/openai/deployments/{deployment-id}/embeddings?api-version=2024-06-01

{
 "input": [
  "this is a test"
 ]
}

响应:状态代码:200

{
  "body": {
    "data": [
      {
        "index": 0,
        "embedding": [
          -0.012838088,
          -0.007421397,
          -0.017617522,
          -0.028278312,
          -0.018666342,
          0.01737855,
          -0.01821495,
          -0.006950092,
          -0.009937238,
          -0.038580645,
          0.010674067,
          0.02412286,
          -0.013647936,
          0.013189907,
          0.0021125758,
          0.012406612,
          0.020790534,
          0.00074595667,
          0.008397198,
        ]
      }
    ],
    "usage": {
      "prompt_tokens": 4,
      "total_tokens": 4
    }
  }
}

聊天完成

POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-06-01

为聊天消息创建完成操作

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string 已部署 模型的部署 ID。
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

“内容类型”: application/json

名称 Type 描述 需要 默认
温度 数字 要使用的采样温度,介于 0 和 2 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性
我们通常建议更改此设置或 top_p,但不要同时更改两者。
1
top_p 数字 温度采样的替代方法,称为核采样,其中模型考虑具有 top_p 概率质量的令牌的结果。 所以 0.1 意味着只考虑包含前 10% 概率质量的令牌。
我们通常建议更改此设置或 temperature,但不要同时更改两者。
1
流 (stream) boolean 如果设置此选项,将发送部分消息增量,如在 ChatGPT 中一样。 令牌将在可用时作为服务器发送的事件发送(内容仅包括数据),并且流式传输将由 data: [DONE] 消息终止。 False
stop 字符串或数组 最多四个序列,其中 API 将停止生成更多令牌。
max_tokens integer 生成的答案允许的最大令牌数。 默认情况下,模型可返回的标记数将为(4096 - 提示标记)。 4096
presence_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止是否在文本中出现来惩罚新令牌,从而增加模型谈论新话题的可能性。 0
frequency_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止在文本中的现有频率来惩罚新令牌,从而降低模型逐字重复同一行的可能性。 0
logit_bias object 修改指定令牌在完成中出现的可能性。 接受 json 对象,该对象将标记(由 tokenizer 中的标记 ID 指定)映射到从 -100 到 100 的相关偏差值。 在数学上,采样之前会将偏差添加到由模型生成的 logit 中。 具体效果因模型而异,但 -1 和 1 之间的值会减少或增加选择的可能性;-100 或 100 等值会导致相关令牌的禁止或独占选择。
user string 表示最终用户的唯一标识符,可帮助 Azure OpenAI 监视和检测滥用行为。
messages array 包含到目前为止的对话的消息列表。 Python 代码示例
data_sources array 使用它们的 Azure OpenAI 聊天扩展的配置条目。
此附加规范仅与 Azure OpenAI 兼容。
n integer 要为每个输入消息生成的聊天完成选项数。 1
seed integer 指定后,我们的系统将尽最大努力进行确定性采样,以便具有相同 seed 和参数的重复请求应返回相同的结果。 无法保证确定性,你应参考 system_fingerprint 响应参数来监视后端的更改。 0
logprobs boolean 是否返回输出令牌的对数概率。 如果为 true,则返回在 messagecontent 中返回的每个输出令牌的对数概率。 此选项当前在 gpt-4-vision-preview 模型上不可用。 False
top_logprobs integer 一个介于 0 和 5 之间的整数,指定在每个标记位置最有可能返回的的标记数,每个都有关联的对数概率。 如果使用此参数,则必须将 logprobs 设置为 true
response_format object 一个对象,指定模型必须输出的格式。 用于启用 JSON 模式。
工具 array 模型可能调用的工具列表。 目前,仅支持函数作为工具。 使用它可以提供函数列表,模型可能为其生成 JSON 输入。
tool_choice chatCompletionToolChoiceOption 控制模型调用的函数(如有)。 none 表示模型不会调用函数,而是会生成消息。 auto 表示模型可以在生成消息和调用函数之间进行选择。 通过 {"type": "function", "function": {"name": "my_function"}} 指定特定函数会强制模型调用该函数。
functions array 弃用了,改用 tools。 模型可能为其生成 JSON 输入的函数的列表。
function_call 字符串或对象 已弃用,改用 tool_choice。 控制模型如何响应函数调用。 “none”表示模型不调用函数,并对最终用户做出响应。 “auto”表示模型可以在最终用户或调用函数之间进行选择。 通过 {"name":\ "my_function"} 指定特定函数会强制模型调用该函数。 当不存在任何函数时,“none”是默认值。 如果存在函数,则“auto”是默认值。

response_format 的属性

类型

名称 Type 描述 默认
type chatCompletionResponseFormat 设置为 json_object 启用 JSON 模式。 这可以保证模型生成的消息是有效的 JSON。 text

响应

状态代码:200

说明:确定

Content-Type 类型 描述
application/json createChatCompletionResponse

状态代码:默认值

说明:服务不可用

Content-Type 类型 描述
application/json errorResponse

示例

示例

为提供的提示、参数和所选模型创建补全。

POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-06-01

{
 "messages": [
  {
   "role": "system",
   "content": "you're a helpful assistant that talks like a pirate"
  },
  {
   "role": "user",
   "content": "can you tell me how to care for a parrot?"
  }
 ]
}

响应:状态代码:200

{
  "body": {
    "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
    "created": 1686676106,
    "choices": [
      {
        "index": 0,
        "finish_reason": "stop",
        "message": {
          "role": "assistant",
          "content": "Ahoy matey! So ye be wantin' to care for a fine squawkin' parrot, eh? Well, shiver me timbers, let ol' Cap'n Assistant share some wisdom with ye! Here be the steps to keepin' yer parrot happy 'n healthy:\n\n1. Secure a sturdy cage: Yer parrot be needin' a comfortable place to lay anchor! Be sure ye get a sturdy cage, at least double the size of the bird's wingspan, with enough space to spread their wings, yarrrr!\n\n2. Perches 'n toys: Aye, parrots need perches of different sizes, shapes, 'n textures to keep their feet healthy. Also, a few toys be helpin' to keep them entertained 'n their minds stimulated, arrrh!\n\n3. Proper grub: Feed yer feathered friend a balanced diet of high-quality pellets, fruits, 'n veggies to keep 'em strong 'n healthy. Give 'em fresh water every day, or ye\u00e2\u20ac\u2122ll have a scurvy bird on yer hands!\n\n4. Cleanliness: Swab their cage deck! Clean their cage on a regular basis: fresh water 'n food daily, the floor every couple of days, 'n a thorough scrubbing ev'ry few weeks, so the bird be livin' in a tidy haven, arrhh!\n\n5. Socialize 'n train: Parrots be a sociable lot, arrr! Exercise 'n interact with 'em daily to create a bond 'n maintain their mental 'n physical health. Train 'em with positive reinforcement, treat 'em kindly, yarrr!\n\n6. Proper rest: Yer parrot be needin' \u00e2\u20ac\u2122bout 10-12 hours o' sleep each night. Cover their cage 'n let them slumber in a dim, quiet quarter for a proper night's rest, ye scallywag!\n\n7. Keep a weather eye open for illness: Birds be hidin' their ailments, arrr! Be watchful for signs of sickness, such as lethargy, loss of appetite, puffin' up, or change in droppings, and make haste to a vet if need be.\n\n8. Provide fresh air 'n avoid toxins: Parrots be sensitive to draft and pollutants. Keep yer quarters well ventilated, but no drafts, arrr! Be mindful of toxins like Teflon fumes, candles, or air fresheners.\n\nSo there ye have it, me hearty! With proper care 'n commitment, yer parrot will be squawkin' \"Yo-ho-ho\" for many years to come! Good luck, sailor, and may the wind be at yer back!"
        }
      }
    ],
    "usage": {
      "completion_tokens": 557,
      "prompt_tokens": 33,
      "total_tokens": 590
    }
  }
}

示例

基于 Azure 认知搜索数据和系统分配的托管标识创建补全。

POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-06-01

{
 "messages": [
  {
   "role": "user",
   "content": "can you tell me how to care for a dog?"
  }
 ],
 "data_sources": [
  {
   "type": "azure_search",
   "parameters": {
    "endpoint": "https://your-search-endpoint.search.windows.net/",
    "index_name": "{index name}",
    "authentication": {
     "type": "system_assigned_managed_identity"
    }
   }
  }
 ]
}

响应:状态代码:200

{
  "body": {
    "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
    "created": 1686676106,
    "choices": [
      {
        "index": 0,
        "finish_reason": "stop",
        "message": {
          "role": "assistant",
          "content": "Content of the completion [doc1].",
          "context": {
            "citations": [
              {
                "content": "Citation content.",
                "title": "Citation Title",
                "filepath": "contoso.txt",
                "url": "https://contoso.blob.windows.net/container/contoso.txt",
                "chunk_id": "0"
              }
            ],
            "intent": "dog care"
          }
        }
      }
    ],
    "usage": {
      "completion_tokens": 557,
      "prompt_tokens": 33,
      "total_tokens": 590
    }
  }
}

示例

基于 Azure 认知搜索矢量数据、以前的助手消息和用户分配的托管标识创建补全。

POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-06-01

{
 "messages": [
  {
   "role": "user",
   "content": "can you tell me how to care for a cat?"
  },
  {
   "role": "assistant",
   "content": "Content of the completion [doc1].",
   "context": {
    "intent": "cat care"
   }
  },
  {
   "role": "user",
   "content": "how about dog?"
  }
 ],
 "data_sources": [
  {
   "type": "azure_search",
   "parameters": {
    "endpoint": "https://your-search-endpoint.search.windows.net/",
    "authentication": {
     "type": "user_assigned_managed_identity",
     "managed_identity_resource_id": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name}"
    },
    "index_name": "{index name}",
    "query_type": "vector",
    "embedding_dependency": {
     "type": "deployment_name",
     "deployment_name": "{embedding deployment name}"
    },
    "in_scope": true,
    "top_n_documents": 5,
    "strictness": 3,
    "role_information": "you're an AI assistant that helps people find information.",
    "fields_mapping": {
     "content_fields_separator": "\\n",
     "content_fields": [
      "content"
     ],
     "filepath_field": "filepath",
     "title_field": "title",
     "url_field": "url",
     "vector_fields": [
      "contentvector"
     ]
    }
   }
  }
 ]
}

响应:状态代码:200

{
  "body": {
    "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
    "created": 1686676106,
    "choices": [
      {
        "index": 0,
        "finish_reason": "stop",
        "message": {
          "role": "assistant",
          "content": "Content of the completion [doc1].",
          "context": {
            "citations": [
              {
                "content": "Citation content 2.",
                "title": "Citation Title 2",
                "filepath": "contoso2.txt",
                "url": "https://contoso.blob.windows.net/container/contoso2.txt",
                "chunk_id": "0"
              }
            ],
            "intent": "dog care"
          }
        }
      }
    ],
    "usage": {
      "completion_tokens": 557,
      "prompt_tokens": 33,
      "total_tokens": 590
    }
  }
}

示例

为提供的 Azure Cosmos DB 创建补全。

POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-06-01

{
 "messages": [
  {
   "role": "user",
   "content": "can you tell me how to care for a dog?"
  }
 ],
 "data_sources": [
  {
   "type": "azure_cosmos_db",
   "parameters": {
    "authentication": {
     "type": "connection_string",
     "connection_string": "mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
    },
    "database_name": "vectordb",
    "container_name": "azuredocs",
    "index_name": "azuredocindex",
    "embedding_dependency": {
     "type": "deployment_name",
     "deployment_name": "{embedding deployment name}"
    },
    "fields_mapping": {
     "content_fields": [
      "content"
     ],
     "vector_fields": [
      "contentvector"
     ]
    }
   }
  }
 ]
}

响应:状态代码:200

{
  "body": {
    "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
    "created": 1686676106,
    "choices": [
      {
        "index": 0,
        "finish_reason": "stop",
        "message": {
          "role": "assistant",
          "content": "Content of the completion [doc1].",
          "context": {
            "citations": [
              {
                "content": "Citation content.",
                "title": "Citation Title",
                "filepath": "contoso.txt",
                "url": "https://contoso.blob.windows.net/container/contoso.txt",
                "chunk_id": "0"
              }
            ],
            "intent": "dog care"
          }
        }
      }
    ],
    "usage": {
      "completion_tokens": 557,
      "prompt_tokens": 33,
      "total_tokens": 590
    }
  }
}

听录

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-06-01

将音频转录为输入语言。

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string 耳语模型的部署 ID。
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

内容类型:multipart/form-data

名称 Type 描述 需要 默认
文件 string 要转录的音频文件对象。
prompt string 用于指导模型风格或继续之前的音频片段的可选文本。 提示应与音频语言匹配。
response_format audioResponseFormat 定义输出的格式。
温度 数字 采样温度,介于 0 和 1 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性 如果设置为 0,则模型将使用对数概率自动升高温度,直到达到特定阈值。 0
language string 输入音频的语言。 以 ISO-639-1 格式提供输入语言将提高准确性并减少延迟。

响应

状态代码:200

说明:确定

Content-Type 类型 描述
application/json audioResponseaudioVerboseResponse
text/plain string 输出格式的转录文本(当 response_format 为 text、vtt 或 srt 之一时)。

示例

示例

从提供的语音音频数据中获取转录的文本和关联的元数据。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-06-01

响应:状态代码:200

{
  "body": {
    "text": "A structured object when requesting json or verbose_json"
  }
}

示例

从提供的语音音频数据中获取转录的文本和关联的元数据。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-06-01

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

响应:状态代码:200

{
  "type": "string",
  "example": "plain text when requesting text, srt, or vtt"
}

翻译

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-06-01

将输入音频转录并翻译为英语文本。

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string 已部署耳语模型的部署 ID。
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

内容类型:multipart/form-data

名称 Type 描述 需要 默认
文件 string 要翻译的音频文件。
prompt string 用于指导模型风格或继续之前的音频片段的可选文本。 提示应为英语。
response_format audioResponseFormat 定义输出的格式。
温度 数字 采样温度,介于 0 和 1 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性 如果设置为 0,则模型将使用对数概率自动升高温度,直到达到特定阈值。 0

响应

状态代码:200

说明:确定

Content-Type 类型 描述
application/json audioResponseaudioVerboseResponse
text/plain string 输出格式的转录文本(当 response_format 为 text、vtt 或 srt 之一时)。

示例

示例

从提供的语音音频数据中获取转录的英语语言文本和关联的元数据。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-06-01

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

响应:状态代码:200

{
  "body": {
    "text": "A structured object when requesting json or verbose_json"
  }
}

示例

从提供的语音音频数据中获取转录的英语语言文本和关联的元数据。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-06-01

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

响应:状态代码:200

{
  "type": "string",
  "example": "plain text when requesting text, srt, or vtt"
}

图像生成

POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-06-01

根据给定 DALLE 模型部署上的文本描述生成一批图像

URI 参数

名称 必需 类型​​ 描述
endpoint path string
url
支持的 Azure OpenAI 终结点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的 Azure OpenAI 资源名称)。 https://{your-resource-name}.openai.azure.com
deployment-id path string 已部署 dall-e 模型的部署 ID。
api-version 查询 string API 版本

请求头

名称 必需 类型​​ 描述
api-key True string 在这里提供 Azure OpenAI API 密钥

请求正文

“内容类型”: application/json

名称 Type 描述 需要 默认
prompt string 所需图像的文本说明。 最大长度为 4000 个字符。
n integer 要生成的图像数。 1
size imageSize 生成的图像的大小。 1024x1024
response_format imagesResponseFormat 返回生成图像的格式。 url
user string 表示最终用户的唯一标识符,可帮助监视和检测滥用行为。
质量 imageQuality 将生成的图像的质量。 standard
style imageStyle 生成的图像的样式。 vivid

响应

状态代码:200

说明:确定

Content-Type 类型 描述
application/json generateImagesResponse

状态代码:默认值

说明:发生错误。

Content-Type 类型 描述
application/json dalleErrorResponse

示例

示例

根据提示创建图像。

POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-06-01

{
 "prompt": "In the style of WordArt, Microsoft Clippy wearing a cowboy hat.",
 "n": 1,
 "style": "natural",
 "quality": "standard"
}

响应:状态代码:200

{
  "body": {
    "created": 1698342300,
    "data": [
      {
        "revised_prompt": "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat.",
        "prompt_filter_results": {
          "sexual": {
            "severity": "safe",
            "filtered": false
          },
          "violence": {
            "severity": "safe",
            "filtered": false
          },
          "hate": {
            "severity": "safe",
            "filtered": false
          },
          "self_harm": {
            "severity": "safe",
            "filtered": false
          },
          "profanity": {
            "detected": false,
            "filtered": false
          }
        },
        "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&...",
        "content_filter_results": {
          "sexual": {
            "severity": "safe",
            "filtered": false
          },
          "violence": {
            "severity": "safe",
            "filtered": false
          },
          "hate": {
            "severity": "safe",
            "filtered": false
          },
          "self_harm": {
            "severity": "safe",
            "filtered": false
          }
        }
      }
    ]
  }
}

组件

errorResponse

名称 Type 描述 需要 默认
error error

errorBase

名称 Type 描述 需要 默认
code string
message string

错误

名称 Type 描述 需要 默认
param string
type string
inner_error innerError 包含其他详细信息的内部错误。

innerError

包含其他详细信息的内部错误。

名称 Type 描述 需要 默认
code innerErrorCode 内部错误对象的错误代码。
content_filter_results contentFilterPromptResults 有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

innerErrorCode

内部错误对象的错误代码。

说明:内部错误对象的错误代码。

类型:string

默认:

枚举名称:InnerErrorCode

枚举值:

说明
ResponsibleAIPolicyViolation 提示违反了其他内容筛选器规则之一。

dalleErrorResponse

名称 Type 描述 需要 默认
error dalleError

dalleError

名称 Type 描述 需要 默认
param string
type string
inner_error dalleInnerError 包含其他详细信息的内部错误。

dalleInnerError

包含其他详细信息的内部错误。

名称 Type 描述 需要 默认
code innerErrorCode 内部错误对象的错误代码。
content_filter_results dalleFilterResults 有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。
revised_prompt string 用于生成图像的提示(如果有对提示的任何修订)。

contentFilterResultBase

名称 Type 描述 需要 默认
filtered boolean

contentFilterSeverityResult

名称 Type 描述 需要 默认
filtered boolean
severity string

contentFilterDetectedResult

名称 Type 描述 需要 默认
filtered boolean
detected boolean

contentFilterDetectedWithCitationResult

名称 Type 描述 需要 默认
citation object

citation 的属性

URL

名称 Type 描述 默认
URL string

许可证

名称 Type 描述 默认
license string

contentFilterResultsBase

有关内容筛选结果的信息。

名称 Type 描述 需要 默认
sexual contentFilterSeverityResult
violence contentFilterSeverityResult
hate contentFilterSeverityResult
self_harm contentFilterSeverityResult
profanity contentFilterDetectedResult
error errorBase

contentFilterPromptResults

有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

名称 Type 描述 需要 默认
sexual contentFilterSeverityResult
violence contentFilterSeverityResult
hate contentFilterSeverityResult
self_harm contentFilterSeverityResult
profanity contentFilterDetectedResult
error errorBase
越狱 contentFilterDetectedResult

contentFilterChoiceResults

有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),以及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关第三方文本和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

名称 Type 描述 需要 默认
sexual contentFilterSeverityResult
violence contentFilterSeverityResult
hate contentFilterSeverityResult
self_harm contentFilterSeverityResult
profanity contentFilterDetectedResult
error errorBase
protected_material_text contentFilterDetectedResult
protected_material_code contentFilterDetectedWithCitationResult

promptFilterResult

请求中单个提示的内容筛选结果。

名称 Type 描述 需要 默认
prompt_index integer
content_filter_results contentFilterPromptResults 有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

promptFilterResults

请求中零个或多个提示的内容筛选结果。 在流式处理请求中,不同提示的结果可能以不同的时间或不同的顺序到达。

dalleContentFilterResults

有关内容筛选结果的信息。

名称 Type 描述 需要 默认
sexual contentFilterSeverityResult
violence contentFilterSeverityResult
hate contentFilterSeverityResult
self_harm contentFilterSeverityResult

dalleFilterResults

有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

名称 Type 描述 需要 默认
sexual contentFilterSeverityResult
violence contentFilterSeverityResult
hate contentFilterSeverityResult
self_harm contentFilterSeverityResult
profanity contentFilterDetectedResult
越狱 contentFilterDetectedResult

chatCompletionsRequestCommon

名称 Type 描述 需要 默认
温度 数字 要使用的采样温度,介于 0 和 2 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性
我们通常建议更改此设置或 top_p,但不要同时更改两者。
1
top_p 数字 温度采样的替代方法,称为核采样,其中模型考虑具有 top_p 概率质量的令牌的结果。 所以 0.1 意味着只考虑包含前 10% 概率质量的令牌。
我们通常建议更改此设置或 temperature,但不要同时更改两者。
1
流 (stream) boolean 如果设置此选项,将发送部分消息增量,如在 ChatGPT 中一样。 令牌将在可用时作为服务器发送的事件发送(内容仅包括数据),并且流式传输将由 data: [DONE] 消息终止。 False
stop 字符串或数组 最多四个序列,其中 API 将停止生成更多令牌。
max_tokens integer 生成的答案允许的最大令牌数。 默认情况下,模型可返回的标记数将为(4096 - 提示标记)。 4096
presence_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止是否在文本中出现来惩罚新令牌,从而增加模型谈论新话题的可能性。 0
frequency_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止在文本中的现有频率来惩罚新令牌,从而降低模型逐字重复同一行的可能性。 0
logit_bias object 修改指定令牌在完成中出现的可能性。 接受 json 对象,该对象将标记(由 tokenizer 中的标记 ID 指定)映射到从 -100 到 100 的相关偏差值。 在数学上,采样之前会将偏差添加到由模型生成的 logit 中。 具体效果因模型而异,但 -1 和 1 之间的值会减少或增加选择的可能性;-100 或 100 等值会导致相关令牌的禁止或独占选择。
user string 表示最终用户的唯一标识符,可帮助 Azure OpenAI 监视和检测滥用行为。

createChatCompletionRequest

名称 Type 描述 需要 默认
温度 数字 要使用的采样温度,介于 0 和 2 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性
我们通常建议更改此设置或 top_p,但不要同时更改两者。
1
top_p 数字 温度采样的替代方法,称为核采样,其中模型考虑具有 top_p 概率质量的令牌的结果。 所以 0.1 意味着只考虑包含前 10% 概率质量的令牌。
我们通常建议更改此设置或 temperature,但不要同时更改两者。
1
流 (stream) boolean 如果设置此选项,将发送部分消息增量,如在 ChatGPT 中一样。 令牌将在可用时作为服务器发送的事件发送(内容仅包括数据),并且流式传输将由 data: [DONE] 消息终止。 False
stop 字符串或数组 最多四个序列,其中 API 将停止生成更多令牌。
max_tokens integer 生成的答案允许的最大令牌数。 默认情况下,模型可返回的标记数将为(4096 - 提示标记)。 4096
presence_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止是否在文本中出现来惩罚新令牌,从而增加模型谈论新话题的可能性。 0
frequency_penalty 数字 介于 -2.0 和 2.0 之间的数字。 正值会根据它们到目前为止在文本中的现有频率来惩罚新令牌,从而降低模型逐字重复同一行的可能性。 0
logit_bias object 修改指定令牌在完成中出现的可能性。 接受 json 对象,该对象将标记(由 tokenizer 中的标记 ID 指定)映射到从 -100 到 100 的相关偏差值。 在数学上,采样之前会将偏差添加到由模型生成的 logit 中。 具体效果因模型而异,但 -1 和 1 之间的值会减少或增加选择的可能性;-100 或 100 等值会导致相关令牌的禁止或独占选择。
user string 表示最终用户的唯一标识符,可帮助 Azure OpenAI 监视和检测滥用行为。
messages array 包含到目前为止的对话的消息列表。 Python 代码示例
data_sources array 使用它们的 Azure OpenAI 聊天扩展的配置条目。
此附加规范仅与 Azure OpenAI 兼容。
n integer 要为每个输入消息生成的聊天完成选项数。 1
seed integer 指定后,我们的系统将尽最大努力进行确定性采样,以便具有相同 seed 和参数的重复请求应返回相同的结果。 无法保证确定性,你应参考 system_fingerprint 响应参数来监视后端的更改。 0
logprobs boolean 是否返回输出令牌的对数概率。 如果为 true,则返回在 messagecontent 中返回的每个输出令牌的对数概率。 此选项当前在 gpt-4-vision-preview 模型上不可用。 False
top_logprobs integer 一个介于 0 和 5 之间的整数,指定在每个标记位置最有可能返回的的标记数,每个都有关联的对数概率。 如果使用此参数,则必须将 logprobs 设置为 true
response_format object 一个对象,指定模型必须输出的格式。 用于启用 JSON 模式。
工具 array 模型可能调用的工具列表。 目前,仅支持函数作为工具。 使用它可以提供函数列表,模型可能为其生成 JSON 输入。
tool_choice chatCompletionToolChoiceOption 控制模型调用的函数(如有)。 none 表示模型不会调用函数,而是会生成消息。 auto 表示模型可以在生成消息和调用函数之间进行选择。 通过 {"type": "function", "function": {"name": "my_function"}} 指定特定函数会强制模型调用该函数。
functions array 弃用了,改用 tools。 模型可能为其生成 JSON 输入的函数的列表。
function_call 字符串或对象 已弃用,改用 tool_choice。 控制模型如何响应函数调用。 “none”表示模型不调用函数,并对最终用户做出响应。 “auto”表示模型可以在最终用户或调用函数之间进行选择。 通过 {"name":\ "my_function"} 指定特定函数会强制模型调用该函数。 当不存在任何函数时,“none”是默认值。 如果存在函数,则“auto”是默认值。

response_format 的属性

类型

名称 Type 描述 默认
type chatCompletionResponseFormat 设置为 json_object 启用 JSON 模式。 这可以保证模型生成的消息是有效的 JSON。 text

chatCompletionResponseFormat

设置为 json_object 启用 JSON 模式。 这可以保证模型生成的消息是有效的 JSON。

说明:设为 json_object 可启用 JSON 模式。 这可以保证模型生成的消息是有效的 JSON。

类型:string

默认值:text

枚举名称:ChatCompletionResponseFormat

枚举值:

说明
text 响应格式是纯文本字符串。
json_object 响应格式为 JSON 对象。

chatCompletionFunction

名称 Type 描述 需要 默认
name string 要调用的函数的名称。 必须是 a-z、A-z、0-9,或包含下划线和短划线,最大长度为 64。
description string 函数操作的说明。
parameters chatCompletionFunctionParameters 函数接受的参数,被描述为 JSON 架构对象。 有关格式的文档,请参阅 JSON 模式引用

chatCompletionFunctionParameters

函数接受的参数,被描述为 JSON 架构对象。 有关格式的文档,请参阅 JSON 模式引用

chatCompletionRequestMessage

名称 Type 描述 需要 默认
role chatCompletionRequestMessageRole 消息作者的角色。

chatCompletionRequestMessageRole

消息作者的角色。

说明:消息作者的角色。

类型:string

默认:

枚举名称:ChatCompletionRequestMessageRole

枚举值:

说明
系统 消息作者角色是系统。
user 消息作者角色是用户。
assistant 消息作者角色是助手。
tool 消息作者角色是工具。
function 已弃用。 消息作者角色是函数。

chatCompletionRequestMessageSystem

名称 Type 描述 需要 默认
role chatCompletionRequestMessageRole 消息作者的角色。
内容 string 消息的内容。

chatCompletionRequestMessageUser

名称 Type 描述 需要 默认
role chatCompletionRequestMessageRole 消息作者的角色。
内容 字符串或数组

chatCompletionRequestMessageContentPart

名称 Type 描述 需要 默认
type chatCompletionRequestMessageContentPartType 内容部件的类型。

chatCompletionRequestMessageContentPartType

内容部件的类型。

说明:内容部件的类型。

类型:string

默认:

枚举名称:ChatCompletionRequestMessageContentPartType

枚举值:

说明
text 内容部件类型为 text。
image_url 内容部件类型为 image_url。

chatCompletionRequestMessageContentPartText

名称 Type 描述 需要 默认
type chatCompletionRequestMessageContentPartType 内容部件的类型。
text string 文本内容。

chatCompletionRequestMessageContentPartImage

名称 Type 描述 需要 默认
type chatCompletionRequestMessageContentPartType 内容部件的类型。
url string 图像的 URL 或 base64 编码的图像数据。
detail imageDetailLevel 指定图像的详细信息级别。 auto

imageDetailLevel

指定图像的详细信息级别。

说明:指定图像的详细信息级别。

类型:string

默认值:auto

枚举名称:ImageDetailLevel

枚举值:

说明
auto 图像详细信息级别是自动。
low 图像详细信息级别为低。
high 图像详细信息级别为高。

chatCompletionRequestMessageAssistant

名称 Type 描述 需要 默认
role chatCompletionRequestMessageRole 消息作者的角色。
内容 string 消息的内容。
tool_calls array 模型生成的工具调用,例如函数调用。
上下文 azureChatExtensionsMessageContext 当 Azure OpenAI 聊天扩展涉及到生成相应的聊天补全响应时
可用的其他上下文信息的表示形式。 此上下文信息仅在使用
配置为使用匹配扩展的 Azure OpenAI 请求时填充。

azureChatExtensionConfiguration

单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。 使用此配置仅与 Azure OpenAI 兼容。

名称 Type 描述 需要 默认
type azureChatExtensionType 单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,
该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。
使用此配置仅与 Azure OpenAI 兼容。

azureChatExtensionType

单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。 使用此配置仅与 Azure OpenAI 兼容。

说明:单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,
该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。
使用此配置仅与 Azure OpenAI 兼容。

类型:string

默认:

枚举名称:AzureChatExtensionType

枚举值:

说明
azure_search 表示将 Azure 认知搜索用作 Azure OpenAI 聊天扩展。
azure_cosmos_db 表示将 Azure Cosmos DB 用作 Azure OpenAI 聊天扩展。

azureSearchChatExtensionConfiguration

将 Azure 认知搜索用作 Azure OpenAI 聊天扩展时可配置选项的特定表示形式。

名称 Type 描述 需要 默认
type azureChatExtensionType 单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,
该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。
使用此配置仅与 Azure OpenAI 兼容。
parameters azureSearchChatExtensionParameters 用作 Azure OpenAI 聊天扩展时 Azure 认知搜索的参数。

azureSearchChatExtensionParameters

用作 Azure OpenAI 聊天扩展时 Azure 认知搜索的参数。

名称 Type 描述 需要 默认
authentication onYourDataApiKeyAuthenticationOptionsonYourDataSystemAssignedManagedIdentityAuthenticationOptionsonYourDataUserAssignedManagedIdentityAuthenticationOptions
top_n_documents integer 为配置的查询提供的已配置最多文档数。
in_scope boolean 是否应将查询限制为使用索引数据。
strictness integer 搜索相关性筛选的已配置严格性。 严格度越高,精准率越高,但回复的召回率越低。
role_information string 为模型提供有关它应该如何运行以及在生成回复时应引用的任何上下文的说明。 你可以描述助手的个性,告诉它如何设置回复的格式。 存在 100 个令牌的限制,并将计入整体令牌限制。
endpoint string 要使用的 Azure 认知搜索资源的绝对终结点路径。
index_name string 在引用的 Azure 认知搜索资源中可供使用的索引的名称。
fields_mapping azureSearchIndexFieldMappingOptions 用于控制使用配置的 Azure 认知搜索资源时如何处理字段的可选设置。
query_type azureSearchQueryType 在将其用作 Azure OpenAI 聊天扩展时应执行的 Azure 认知搜索检索查询的类型。
semantic_configuration string 查询的附加语义配置。
filter string 搜索筛选器。
embedding_dependency onYourDataEndpointVectorizationSourceonYourDataDeploymentNameVectorizationSource

azureSearchIndexFieldMappingOptions

用于控制使用配置的 Azure 认知搜索资源时如何处理字段的可选设置。

名称 Type 描述 需要 默认
title_field string 要用作标题的索引字段的名称。
url_field string 要用作 URL 的索引字段的名称。
filepath_field string 要用作文件路径的索引字段的名称。
content_fields array 应被视为内容的索引字段的名称。
content_fields_separator string 内容字段应使用的分隔符模式。
vector_fields array 表示矢量数据的字段的名称。

azureSearchQueryType

在将其用作 Azure OpenAI 聊天扩展时应执行的 Azure 认知搜索检索查询的类型。

说明:在将其用作 Azure OpenAI 聊天扩展时应执行的 Azure 认知搜索检索查询的类型。

类型:string

默认:

枚举名称:azureSearchQueryType

枚举值:

说明
简单 表示默认的简单查询分析程序。
语义 表示用于高级语义建模的语义查询分析程序。
vector 表示对计算数据的矢量搜索。
vector_simple_hybrid 表示简单查询策略与矢量数据的组合。
vector_semantic_hybrid 表示语义搜索和矢量数据查询的组合。

azureCosmosDBChatExtensionConfiguration

将 Azure Cosmos DB 用作 Azure OpenAI 聊天扩展时可配置选项的特定表示形式。

名称 Type 描述 需要 默认
type azureChatExtensionType 单个 Azure OpenAI 聊天扩展的配置数据的表示形式。 这将由聊天补全请求使用,
该请求应使用 Azure OpenAI 聊天扩展来增强响应行为。
使用此配置仅与 Azure OpenAI 兼容。
parameters azureCosmosDBChatExtensionParameters 使用 Azure Cosmos DB for MongoDB vCore 配置基于自有数据的 Azure OpenAI 聊天扩展时
要使用的参数。

azureCosmosDBChatExtensionParameters

使用 Azure Cosmos DB for MongoDB vCore 配置基于自有数据的 Azure OpenAI 聊天扩展时要使用的参数。

名称 Type 描述 需要 默认
authentication onYourDataConnectionStringAuthenticationOptions 使用连接字符串时,基于自有数据的 Azure OpenAI 的验证选项。
top_n_documents integer 为配置的查询提供的已配置最多文档数。
in_scope boolean 是否应将查询限制为使用索引数据。
strictness integer 搜索相关性筛选的已配置严格性。 严格度越高,精准率越高,但回复的召回率越低。
role_information string 为模型提供有关它应该如何运行以及在生成回复时应引用的任何上下文的说明。 你可以描述助手的个性,告诉它如何设置回复的格式。 存在 100 个令牌的限制,并将计入整体令牌限制。
database_name string 用于 Azure Cosmos DB 的 MongoDB vCore 数据库名称。
container_name string Azure Cosmos DB 资源容器的名称。
index_name string 用于 Azure Cosmos DB 的 MongoDB vCore 索引名称。
fields_mapping azureCosmosDBFieldMappingOptions 用于控制使用配置的 Azure Cosmos DB 资源时如何处理字段的可选设置。
embedding_dependency onYourDataEndpointVectorizationSourceonYourDataDeploymentNameVectorizationSource

azureCosmosDBFieldMappingOptions

用于控制使用配置的 Azure Cosmos DB 资源时如何处理字段的可选设置。

名称 Type 描述 需要 默认
title_field string 要用作标题的索引字段的名称。
url_field string 要用作 URL 的索引字段的名称。
filepath_field string 要用作文件路径的索引字段的名称。
content_fields array 应被视为内容的索引字段的名称。
content_fields_separator string 内容字段应使用的分隔符模式。
vector_fields array 表示矢量数据的字段的名称。

onYourDataAuthenticationOptions

基于自有数据的 Azure OpenAI 的身份验证选项。

名称 Type 描述 需要 默认
type onYourDataAuthenticationType 基于自有数据的 Azure OpenAI 支持的身份验证类型。

onYourDataAuthenticationType

基于自有数据的 Azure OpenAI 支持的身份验证类型。

说明:基于自有数据的 Azure OpenAI 支持的身份验证类型。

类型:string

默认:

枚举名称:OnYourDataAuthenticationType

枚举值:

说明
api_key 通过 API 密钥进行身份验证。
connection_string 通过连接字符串进行身份验证。
system_assigned_managed_identity 通过系统分配的托管标识进行身份验证。
user_assigned_managed_identity 通过用户分配的托管标识进行身份验证。

onYourDataApiKeyAuthenticationOptions

使用 API 密钥时,基于自有数据的 Azure OpenAI 的验证选项。

名称 Type 描述 需要 默认
type onYourDataAuthenticationType 基于自有数据的 Azure OpenAI 支持的身份验证类型。
key string 用于身份验证的 API 密钥。

onYourDataConnectionStringAuthenticationOptions

使用连接字符串时,基于自有数据的 Azure OpenAI 的验证选项。

名称 Type 描述 需要 默认
type onYourDataAuthenticationType 基于自有数据的 Azure OpenAI 支持的身份验证类型。
connection_string string 用于身份验证的连接字符串。

onYourDataSystemAssignedManagedIdentityAuthenticationOptions

使用系统分配的托管标识时,基于自有数据的 Azure OpenAI 的验证选项。

名称 Type 描述 需要 默认
type onYourDataAuthenticationType 基于自有数据的 Azure OpenAI 支持的身份验证类型。

onYourDataUserAssignedManagedIdentityAuthenticationOptions

使用用户分配的托管标识时,基于自有数据的 Azure OpenAI 的验证选项。

名称 Type 描述 需要 默认
type onYourDataAuthenticationType 基于自有数据的 Azure OpenAI 支持的身份验证类型。
managed_identity_resource_id string 用于进行身份验证的用户分配托管标识的资源 ID。

onYourDataVectorizationSource

使用矢量搜索的基于自有数据的 Azure OpenAI 的矢量化源的抽象表示形式。

名称 Type 描述 需要 默认
type onYourDataVectorizationSourceType 表示基于自有数据的 Azure OpenAI 可用于配置用于矢量搜索的矢量化数据的
可用源。

onYourDataVectorizationSourceType

表示基于自有数据的 Azure OpenAI 可用于配置用于矢量搜索的矢量化数据的可用源。

说明:表示基于自有数据的 Azure OpenAI 可用于配置用于矢量搜索的矢量化数据的
矢量搜索。

类型:string

默认:

枚举名称:OnYourDataVectorizationSourceType

枚举值:

说明
endpoint 表示通过对 Azure OpenAI 嵌入模型的公共服务调用执行的矢量化。
deployment_name 表示要使用的 Ada 模型部署名称。 此模型部署必须位于同一 Azure OpenAI 资源中,但
Azure OpenAI On Your Data 将通过内部调用而不是公共调用使用此模型部署,这使得
即使在专用网络中也可以进行矢量搜索。

onYourDataDeploymentNameVectorizationSource

应用矢量搜索时基于自有数据的 Azure OpenAI 使用的矢量化源的详细信息,此矢量化源基于同一 Azure OpenAI 资源中的内部嵌入模型部署名称。

名称 Type 描述 需要 默认
type onYourDataVectorizationSourceType 表示基于自有数据的 Azure OpenAI 可用于配置用于矢量搜索的矢量化数据的
可用源。
deployment_name string 指定要用于矢量化的模型部署的名称。 此模型部署必须位于同一 Azure OpenAI 资源中,但基于自有数据将通过内部调用(而不是公共调用)使用此模型部署,从而即使在专用网络中也能实现矢量搜索。

onYourDataEndpointVectorizationSource

应用矢量搜索时 Azure OpenAI 对数据使用矢量化源的详细信息,此矢量化源基于 Azure OpenAI 的公共嵌入终结点。

名称 Type 描述 需要 默认
type onYourDataVectorizationSourceType 表示基于自有数据的 Azure OpenAI 可用于配置用于矢量搜索的矢量化数据的
可用源。
authentication onYourDataApiKeyAuthenticationOptions 使用 API 密钥时,基于自有数据的 Azure OpenAI 的验证选项。
endpoint string 指定要用于矢量化的终结点。 此终结点必须位于同一 Azure OpenAI 资源中,但 On Your Data 将通过内部调用而不是公共调用使用此终结点,从而即使在专用网络中也能实现矢量搜索。

azureChatExtensionsMessageContext

当 Azure OpenAI 聊天扩展涉及到生成相应的聊天补全响应时可用的其他上下文信息的表示形式。 仅当使用配置为使用匹配扩展的 Azure OpenAI 请求时,才会填充此上下文信息。

名称 Type 描述 需要 默认
citations array 数据源检索结果,用于在响应中生成助手消息。
意向 string 聊天历史记录中检测到的意向,用于传递到下一轮,以传递上下文。

引文

聊天补全响应消息的引文信息。

名称 Type 描述 需要 默认
content string 引文的内容。
title string 引文的标题。
url string 引文的 URL。
filepath string 引文的文件路径。
chunk_id string 引文的区块 ID。

chatCompletionMessageToolCall

名称 Type 描述 需要 默认
id string 工具调用的 ID。
type toolCallType 工具调用的类型,在本例中为 function
function object 模型调用的函数。

function 的属性

名称

名称 Type 描述 默认
name string 要调用的函数名称。

参数

名称 Type 描述 默认
参数 string 用于调用函数的参数,由模型以 JSON 格式生成。 请注意,该模型并非始终生成有效的 JSON,并且可能会构造函数架构未定义的参数。 在调用函数之前验证代码中的参数。

toolCallType

工具调用的类型,在本例中为 function

说明:工具调用的类型,在本例中为 function

类型:string

默认:

枚举名称:ToolCallType

枚举值:

说明
function 工具调用类型为 function。

chatCompletionRequestMessageTool

名称 Type 描述 需要 默认
role chatCompletionRequestMessageRole 消息作者的角色。
tool_call_id string 此消息正在响应的工具调用。
content string 消息的内容。

chatCompletionRequestMessageFunction

名称 Type 描述 需要 默认
role enum 消息作者的角色,在本例中为 function
可能的值:function
名称 string 消息的内容。
content string 消息的内容。

createChatCompletionResponse

名称 Type 描述 需要 默认
id string 聊天补全的唯一标识符。
对象 (object) chatCompletionResponseObject 对象类型。
created integer 聊天补全创建时间的 Unix 时间戳(以秒为单位)。
模型 string 用于聊天补全的模型。
使用情况 completionUsage 完成请求的使用情况统计信息。
system_fingerprint string 可以与 seed 请求参数一起使用,以了解何时进行了可能影响确定性的后端更改。
prompt_filter_results promptFilterResults 请求中零个或多个提示的内容筛选结果。 在流式处理请求中,不同提示的结果可能以不同的时间或不同的顺序到达。
choices 数组

chatCompletionChoiceLogProbs

所选的对数概率信息。

名称 Type 描述 需要 默认
内容 array 包含对数概率信息的消息内容令牌列表。

chatCompletionTokenLogprob

名称 Type 描述 需要 默认
token string 令牌。
logprob 数字 此令牌的对数概率。
bytes array 表示令牌的 UTF-8 字节表示形式的整数列表。 在字符由多个令牌表示,并且其字节表示形式必须组合在一起才能生成正确的文本表示形式的情况下非常有用。 如果令牌没有字节表示形式,则为 null
top_logprobs array 在此标记位置上,最有可能的标记及其对数概率的列表。 在极少数情况下,返回的数量可能少于请求的 top_logprobs 数。

chatCompletionResponseMessage

模型生成的聊天补全消息。

名称 Type 描述 需要 默认
role chatCompletionResponseMessageRole 响应消息作者的角色。
content string 消息的内容。
tool_calls array 模型生成的工具调用,例如函数调用。
function_call chatCompletionFunctionCall 已弃用并替换为 tool_calls。 应调用的函数的名称和参数,由模型生成。
上下文 azureChatExtensionsMessageContext 当 Azure OpenAI 聊天扩展涉及到生成相应的聊天补全响应时
可用的其他上下文信息的表示形式。 此上下文信息仅在使用
配置为使用匹配扩展的 Azure OpenAI 请求时填充。

chatCompletionResponseMessageRole

响应消息作者的角色。

说明:响应消息作者的角色。

类型:string

默认:

枚举值:

  • assistant

chatCompletionToolChoiceOption

控制模型调用的函数(如有)。 none 表示模型不会调用函数,而是会生成消息。 auto 表示模型可以在生成消息和调用函数之间进行选择。 通过 {"type": "function", "function": {"name": "my_function"}} 指定特定函数会强制模型调用该函数。

此组件可以是下列组件之一:

chatCompletionNamedToolChoice

指定模型应使用的工具。 用于强制模型调用特定函数。

名称 Type 描述 需要 默认
type 枚举 工具的类型。 目前仅支持 function
可能的值:function
function object

function 的属性

名称

名称 Type 描述 默认
name string 要调用的函数名称。

chatCompletionFunctionCall

已弃用并替换为 tool_calls。 应调用的函数的名称和参数,由模型生成。

名称 Type 描述 需要 默认
name string 要调用的函数名称。
参数 string 用于调用函数的参数,由模型以 JSON 格式生成。 请注意,该模型并非始终生成有效的 JSON,并且可能会构造函数架构未定义的参数。 在调用函数之前验证代码中的参数。

chatCompletionsResponseCommon

名称 Type 描述 需要 默认
id string 聊天补全的唯一标识符。
对象 (object) chatCompletionResponseObject 对象类型。
created integer 聊天补全创建时间的 Unix 时间戳(以秒为单位)。
模型 string 用于聊天补全的模型。
使用情况 completionUsage 完成请求的使用情况统计信息。
system_fingerprint string 可以与 seed 请求参数一起使用,以了解何时进行了可能影响确定性的后端更改。

chatCompletionResponseObject

对象类型。

说明:对象类型。

类型:string

默认:

枚举名称:ChatCompletionResponseObject

枚举值:

说明
chat.completion 对象类型为聊天补全。

completionUsage

完成请求的使用情况统计信息。

名称 Type 描述 需要 默认
prompt_tokens integer 提示中的标记数。
completion_tokens integer 生成的补全中的词元数。
total_tokens integer 请求中使用的令牌总数(提示 + 补全)。

chatCompletionTool

名称 Type 描述 需要 默认
type chatCompletionToolType 工具的类型。 目前仅支持 function
function object

function 的属性

说明

Name Type 描述 默认值
description string 函数作用的描述,由模型用于选择何时以及如何调用函数。

名称

名称 Type 描述 默认
name string 要调用的函数的名称。 必须是 a-z、A-z、0-9,或包含下划线和短划线,最大长度为 64。

参数

客户 Type 描述 默认
parameters chatCompletionFunctionParameters 函数接受的参数,被描述为 JSON 架构对象。 有关格式的文档,请参阅 JSON 模式引用

chatCompletionToolType

工具的类型。 目前仅支持 function

说明:工具类型。 目前仅支持 function

类型:string

默认:

枚举名称:ChatCompletionToolType

枚举值:

说明
function 工具类型为 Function。

chatCompletionChoiceCommon

名称 Type 描述 需要 默认
index integer
finish_reason string

createTranslationRequest

翻译请求。

名称 Type 描述 需要 默认
文件 string 要翻译的音频文件。
prompt string 用于指导模型风格或继续之前的音频片段的可选文本。 提示应为英语。
response_format audioResponseFormat 定义输出的格式。
温度 数字 采样温度,介于 0 和 1 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性 如果设置为 0,则模型将使用对数概率自动升高温度,直到达到特定阈值。 0

audioResponse

response_format 为 json 时的翻译或听录响应

名称 Type 描述 需要 默认
text string 已翻译或转录的文本。

audioVerboseResponse

response_format 为 verbose_json 时的翻译或听录响应

名称 Type 描述 需要 默认
text string 已翻译或转录的文本。
task string 音频任务类型。
language string 语言。
duration 数字 持续时间。
数组

audioResponseFormat

定义输出的格式。

说明:定义输出的格式。

类型:string

默认:

枚举值:

  • json
  • text
  • srt
  • verbose_json
  • vtt

createTranscriptionRequest

听录请求。

名称 Type 描述 需要 默认
文件 string 要转录的音频文件对象。
prompt string 用于指导模型风格或继续之前的音频片段的可选文本。 提示应与音频语言匹配。
response_format audioResponseFormat 定义输出的格式。
温度 数字 采样温度,介于 0 和 1 之间。 较高的值(如 0.8)将使输出更随机,而较小的值(如 0.2)将使输出更集中且更具确定性 如果设置为 0,则模型将使用对数概率自动升高温度,直到达到特定阈值。 0
language string 输入音频的语言。 以 ISO-639-1 格式提供输入语言将提高准确性并减少延迟。

audioSegment

听录或翻译段。

名称 Type 描述 需要 默认
id integer 段标识符。
seek 数字 段偏移量。
start number 段初始偏移量。
end 数字 段结束偏移量。
text string 段文本。
tokens array 文本令牌。
温度 数字 温度。
avg_logprob 数字 平均对数概率。
compression_ratio 数字 压缩率。
no_speech_prob 数字 “无语音”的概率。

imageQuality

将生成的图像的质量。

说明:将生成的图像的质量。

类型:string

默认值:standard

枚举名称:Quality

枚举值:

说明
standard 标准质量创建具有标准质量的图像。
hd HD 质量会创建具有更精细的细节和更具一致性的图像。

imagesResponseFormat

返回生成图像的格式。

说明:返回生成图像的格式。

类型:string

默认值:URL

枚举名称:ImagesResponseFormat

枚举值:

说明
url 提供临时访问权限以下载生成的图像的 URL。
b64_json 生成的图像将作为 base64 编码字符串返回。

imageSize

生成的图像的大小。

说明:生成的图像的大小。

类型:string

默认值:1024x1024

枚举名称:Size

枚举值:

说明
1792x1024 生成的图像的所需大小为 1792x1024 像素。
1024x1792 生成的图像的所需大小为 1024x1792 像素。
1024x1024 生成的图像的所需大小为 1024x1024 像素。

imageStyle

生成的图像的样式。

说明:生成的图像的样式。

类型:string

默认值:vivid

枚举名称:Style

枚举值:

说明
vivid Vivid 创建超现实和戏剧性的图像。
natural Natural 会创建更自然、不那么超现实的图像。

imageGenerationsRequest

名称 Type 描述 需要 默认
prompt string 所需图像的文本说明。 最大长度为 4000 个字符。
n integer 要生成的图像数。 1
size imageSize 生成的图像的大小。 1024x1024
response_format imagesResponseFormat 返回生成图像的格式。 url
user string 表示最终用户的唯一标识符,可帮助监视和检测滥用行为。
质量 imageQuality 将生成的图像的质量。 standard
style imageStyle 生成的图像的样式。 vivid

generateImagesResponse

名称 Type 描述 需要 默认
created integer 创建操作时的 UNIX 时间戳。
data array 操作的结果数据(如果成功)

imageResult

如果成功,则返回图像 URL 或编码图像,否则返回错误。

名称 Type 描述 需要 默认
url string 图像 URL。
b64_json string base64 编码的图像
content_filter_results dalleContentFilterResults 有关内容筛选结果的信息。
revised_prompt string 用于生成图像的提示(如果有对提示的任何修订)。
prompt_filter_results dalleFilterResults 有关内容筛选类别(hate、sexual、violence、self_harm)的信息(如果检测到),及严重性级别(very_low、low、medium、high-scale,用于确定有害内容的强度和风险级别),以及内容是否已筛选。 有关越狱内容和亵渎内容的信息(如果检测到),以及是否已筛选。 以及有关客户阻止列表的信息(如果已筛选)及其 ID。

完成扩展

Azure OpenAI 数据平面推理规格的最新 GA 版本中不包含补全扩展。

Chatmessage

Azure OpenAI 数据平面推理规格的最新 GA 版本中不包含聊天消息对象。

文本到语音转换

目前不是 Azure OpenAI 数据平面推理规格的最新 Azure OpenAI 正式版的一部分。请参阅最新预览版,了解此功能。

后续步骤

了解模型和微调与 REST API。 详细了解为 Azure OpenAI 提供支持的基础模型