你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文详细介绍了 Azure OpenAI 的推理 REST API 端点。
API specs
管理和交互 Azure OpenAI 模型及资源分为三个主要的 API 表面:
- Control plane
- 数据平面 - 创作
- 数据平面 - 推理
每个API表面/规范都封装了一套不同的Azure OpenAI能力。 每个 API 都有其独特的预览版和稳定/普遍可用(GA)API 版本。 预览版目前通常按月发布。
Important
现在有一个新的预览推理API。 在我们的 API生命周期指南中了解更多。
| API | 最新预览发布 | 最新GA发布 | Specifications | Description |
|---|---|---|---|---|
| Control plane | 2025-07-01-preview |
2025-06-01 |
Spec files | 控制平面 API 用于 创建资源、 模型部署及其他高级资源管理任务等操作。 控制平面还管理了像 Azure 资源管理器、Bicep、Terraform 和 Azure CLI 等功能所能做的事情。 |
| Data plane | v1 preview |
v1 |
Spec files | 数据平面 API 控制推理和创作操作。 |
Authentication
Azure OpenAI 提供两种认证方法。 你可以使用API密钥或Microsoft Entra ID。
API 密钥认证:对于这种类型的认证,所有 API 请求必须在
api-keyHTTP 头部包含 API 密钥。 快速入门指南提供了如何使用此类认证拨打电话的指导。Microsoft Entra ID 认证:你可以用Microsoft Entra令牌来认证API调用。 认证令牌作为请求的头部包含在请求
Authorization中。 所提供的标记必须前加Bearer,例如Bearer YOUR_AUTH_TOKEN。 你可以阅读我们关于认证的Microsoft Entra ID操作指南。
REST API 版本管理
服务API通过 api-version 查询参数进行版本控制。 所有版本均遵循YYYY-MM-DD 日期结构。 For example:
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2024-06-01
数据平面推断
文章其余部分将介绍 Azure OpenAI 数据平面推断规范 2024-10-21 的 GA 版本。
如果你想查找最新预览API版本的文档,请参考 最新的预览数据平面推理API
Completions
POST https://{endpoint}/openai/deployments/{deployment-id}/completions?api-version=2024-10-21
为所提供的提示词、参数和所选模型创建补全。
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | 已部署型号的部署ID。 |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: application/json
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 提示 | 字符串或数组 | 生成完备的提示,编码为字符串、字符串数组、token数组或token数组数组。 注意, <|endoftext|> 是模型在训练时看到的文档分隔符,因此如果没有指定提示,模型会像从新文档开头一样生成。 |
Yes | |
| best_of | 整数 | 在 best_of 服务器端生成完成任务,并返回“最佳”(每个代币日志概率最高的那个)。 结果无法直播。当与 一起使用 n时, best_of 控制候选完成数,并 n 指定返回的数量—— best_of “必须大于 n。注: 由于该参数会产生大量完成任务,它可能迅速消耗你的代币配额。 谨慎使用,并确保你对和 stop的设置max_tokens合理。 |
No | 1 |
| echo | boolean | 除了完成,还要回应提示 |
No | False |
| frequency_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新标记在文本中已有的频率进行惩罚,降低模型逐字重复同一行的可能性。 |
No | 0 |
| logit_bias | 对象 | 修改完成中出现指定标记的可能性。 接受一个 JSON 对象,将 GPT 分词器中由令牌 ID 指定的令牌映射到从 -100 到 100 的偏置值。 数学上,偏差会在抽样前加到模型生成的对数中。 具体效果因模型而异,但 -1 到1之间的数值应降低或增加被选中的概率;像 -100 或100这样的数值应导致封禁或对相关代币的独占选择。 举个例子,你可以通过 来 {"50256": -100} 阻止 <|endoftext|> 令牌的生成。 |
No | None |
| logprobs | 整数 | 包括最可能输出代币的对数概 logprobs 率,以及所选代币。 例如,如果 logprobs 是5,API会返回五个最可能的令牌列表。 API 始终返回 logprob 被采样的标记,因此响应中可能包含多达 logprobs+1 多个元素。最大 logprobs 值为5。 |
No | None |
| max_tokens | 整数 | 完成过程中最多可生成的代币数。 你的提示 max_tokens 词的token数不能超过模型的上下文长度。 |
No | 16 |
| n | 整数 | 每个提示需要生成多少个完成任务。 注: 由于该参数会产生大量完成任务,它可能迅速消耗你的代币配额。 谨慎使用,并确保你对和 stop的设置max_tokens合理。 |
No | 1 |
| presence_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新代币是否出现在文本中来惩罚它们,从而提高模型讨论新话题的可能性。 |
No | 0 |
| seed | 整数 | 如果有指定,我们的系统会尽最大努力采样确定性采样,使得重复请求且参数相同 seed 时应返回相同结果。确定性并不保证,你应该参考 system_fingerprint 响应参数来监控后端的变化。 |
No | |
| stop | 字符串或数组 | 最多有四个序列,API 会停止生成更多令牌。 返回的文本不会包含停止序列。 |
No | |
| 数据流 | boolean | 是否要回溯部分进度。 如果设置好,令牌将作为仅数据 服务器发送的事件 发送,随着事件的出现而发送,流会 data: [DONE] 以消息结束。 |
No | False |
| suffix | 字符串 | 插入文本完成后出现的后缀。 该参数仅支持。 gpt-3.5-turbo-instruct |
No | None |
| temperature | number | 采样温度应该在0到2之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 我们通常建议修改这一点,但 top_p 不要两者兼做。 |
No | 1 |
| top_p | number | 一种与温度抽样不同的替代方案,称为核抽样,模型考虑以top_p概率质量计算的符号结果。 因此,0.1 意味着只考虑构成前10个概率质量的代币%。 我们通常建议修改这一点,但 temperature 不要两者兼做。 |
No | 1 |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 |
No |
Responses
状态代码: 200
Description: OK
| Content-Type | Type | Description |
|---|---|---|
| application/json | createCompletionResponse | 表示API的补全响应。 注意:流式和非流式响应对象共享相同的形状(与聊天端点不同)。 |
状态代码: 默认
描述:服务不可用
| Content-Type | Type | Description |
|---|---|---|
| application/json | errorResponse |
Examples
Example
为所提供的提示词、参数和所选模型创建补全。
POST https://{endpoint}/openai/deployments/{deployment-id}/completions?api-version=2024-10-21
{
"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
}
}
}
Embeddings
POST https://{endpoint}/openai/deployments/{deployment-id}/embeddings?api-version=2024-10-21
获得一个能够被机器学习模型和算法轻松利用的给定输入的向量表示。
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: application/json
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 输入 | 字符串或数组 | 输入文本嵌入,编码为字符串或数组标记。 要在单一请求中嵌入多个输入,可以传递字符串数组或令牌数组。 输入不得超过模型的最大输入标记数(8,192个标记 text-embedding-ada-002),不能是空字符串,且任何数组的维度必须不超过2,048维或更小。 |
Yes | |
| 用户 | 字符串 | 代表终端用户的唯一标识符,有助于监控和检测滥用行为。 | No | |
| input_type | 字符串 | 输入嵌入搜索类型 | No | |
| encoding_format | 字符串 | 格式是如何返回嵌入的。 可以是 float 或 base64。 默认为 float。 |
No | |
| dimensions | 整数 | 输出嵌入应有的维数。 仅支持及 text-embedding-3 后续型号。 |
No |
Responses
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 对象 | 字符串 | Yes | ||
| 模型 | 字符串 | Yes | ||
| 数据 | 数组 | Yes | ||
| 使用情况 | 对象 | Yes |
用途性质
prompt_tokens
| Name | 类型 | Description | Default |
|---|---|---|---|
| prompt_tokens | 整数 |
total_tokens
| Name | 类型 | Description | Default |
|---|---|---|---|
| total_tokens | 整数 |
状态代码: 200
Description: OK
| Content-Type | Type | Description |
|---|---|---|
| application/json | 对象 |
Examples
Example
返回给定提示词的嵌入。
POST https://{endpoint}/openai/deployments/{deployment-id}/embeddings?api-version=2024-10-21
{
"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,
-0.00535031,
0.008968075,
0.014351576,
-0.014086051,
0.015055214,
-0.022211088,
-0.025198232,
0.0065186154,
-0.036350243,
0.009180495,
-0.009698266,
0.009446018,
-0.008463579,
-0.0040426035,
-0.03443847,
-0.00091273896,
-0.0019217303,
0.002349888,
-0.021560553,
0.016515596,
-0.015572986,
0.0038666942,
-8.432463e-05
]
}
],
"usage": {
"prompt_tokens": 4,
"total_tokens": 4
}
}
}
Chat completions
POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-10-21
为聊天消息创建一个补全
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | 已部署型号的部署ID。 |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: application/json
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| temperature | number | 采样温度应该在0到2之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 我们通常建议修改这一点,但 top_p 不要两者兼做。 |
No | 1 |
| top_p | number | 一种与温度抽样不同的替代方案,称为核抽样,模型考虑以top_p概率质量计算的符号结果。 因此,0.1 意味着只考虑构成前10个概率质量的代币%。 我们通常建议修改这一点,但 temperature 不要两者兼做。 |
No | 1 |
| 数据流 | boolean | 如果设置好,会像ChatGPT一样发送部分消息delta。 代币将作为仅数据服务器 发送的事件 发送,届时会以消息结束 data: [DONE] 。 |
No | False |
| stop | 字符串或数组 | 最多有四个序列,API 会停止生成更多令牌。 |
No | |
| max_tokens | 整数 | 聊天完成时能生成的最大代币数。 输入标记和生成标记的总长度受模型上下文长度限制。 |
No | |
| max_completion_tokens | 整数 | 完成化可生成的代币数量的上限,包括可见的输出代币和推理代币。 | No | |
| presence_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新代币是否出现在文本中来惩罚它们,从而提高模型讨论新话题的可能性。 |
No | 0 |
| frequency_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新标记在文本中已有的频率进行惩罚,降低模型逐字重复同一行的可能性。 |
No | 0 |
| logit_bias | 对象 | 修改完成中出现指定标记的可能性。 接受一个 JSON 对象,将令牌(通过分词器中由令牌 ID 指定)映射到从 -100 到 100 的对应偏置值。 数学上,偏差会在抽样前加到模型生成的对数中。 具体效果因模型而异,但 -1 到1之间的数值应降低或增加被选中的概率;像 -100 或100这样的数值应导致封禁或对相关代币的独占选择。 |
No | None |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 |
No | |
| messages | 数组 | 这是迄今为止对话内容的列表。 | Yes | |
| data_sources | 数组 | 使用它们的 Azure OpenAI 聊天扩展的配置条目。 该附加规范仅兼容 Azure OpenAI。 |
No | |
| logprobs | boolean | 是否返回输出令牌的对数概率。 如果为真,返回每个输出令牌contentmessage的对数概率。 |
No | False |
| top_logprobs | 整数 | 一个介于0到20之间的整数,表示每个标记位置最可能返回的标记数量,每个标记对应对数概率。
logprobs 如果使用该参数,必须设置为 true 。 |
No | |
| n | 整数 | 每个输入消息需要生成多少聊天完成选项。 请注意,你将根据所有选项中生成的代币数量收费。 保持 n 最低 1 成本。 |
No | 1 |
| parallel_tool_calls | ParallelToolCalls | 是否在工具使用时启用并行函数调用。 | No | True |
| response_format | ResponseFormatText 或 ResponseFormatJsonObject 或 ResponseFormatJsonSchema | 一个对象,指定模型必须输出的格式。 兼容GPT-4o、GPT-4o mini、GPT-4 Turbo及所有更新于gpt-3.5-turbo-1106此之前的GPT-3.5 Turbo模型。设置为 { "type": "json_schema", "json_schema": {...} } 启用结构化输出,保证模型与你提供的JSON模式匹配。设置启用 { "type": "json_object" } JSON模式,保证模型生成的消息是有效的JSON。重要提示: 使用JSON模式时, 你还必须 通过系统或用户消息指示模型自行生成JSON。 如果没有这一点,模型可能会不断生成空白流,直到生成达到令牌上限,导致请求运行时间长且看似“卡住”。 还需注意,如果 finish_reason="length",消息内容可能部分中断,表示生成次数或 max_tokens 对话超过了最大上下文长度。 |
No | |
| seed | 整数 | 此功能目前处于测试阶段。 如果有指定,我们的系统会尽最大努力采样确定性采样,使得重复请求且参数相同 seed 时应返回相同结果。确定性并不保证,你应该参考 system_fingerprint 响应参数来监控后端的变化。 |
No | |
| tools | 数组 | 模型可能调用的工具列表。 目前,仅支持函数作为工具。 利用该列表提供模型可能生成 JSON 输入的函数列表。 最多支持128个功能。 |
No | |
| tool_choice | chatCompletionToolChoiceOption | 控制模型调用的(如果有)工具。
none 意味着模型不会调用任何工具,而是生成一条消息。
auto 这意味着模型可以选择生成消息或调用一个或多个工具。
required 意味着模型必须调用一个或多个工具。 通过指定特定工具 {"type": "function", "function": {"name": "my_function"}} 会强制模型调用该工具。
none 当没有工具时,是默认的。
auto 如果有工具,则是默认设置。 |
No | |
| function_call | 字符串或 chatCompletionFunctionCallOption | 已被弃用,取而代之。tool_choice控制模型调用的函数(如果有的话)。 none 意味着模型不会调用函数,而是生成消息。auto 意味着模型可以在生成消息或调用函数之间选择。指定某个特定函数 会 {"name": "my_function"} 强制模型调用该函数。none 当没有函数存在时,是默认的。
auto 如果函数存在,则是默认的。 |
No | |
| functions | 数组 | 已被弃用,取而代之。tools模型可能生成的 JSON 输入函数列表。 |
No |
Responses
状态代码: 200
Description: OK
| Content-Type | Type | Description |
|---|---|---|
| application/json | createChatCompletionResponse 或 createChatCompletionStreamResponse |
状态代码: 默认
描述:服务不可用
| Content-Type | Type | Description |
|---|---|---|
| application/json | errorResponse |
Examples
Example
为所提供的提示词、参数和所选模型创建补全。
POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-10-21
{
"messages": [
{
"role": "system",
"content": "you are 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
}
}
}
Example
基于 Azure 搜索数据和系统分配的托管身份创建完成文件。
POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-10-21
{
"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
}
}
}
Example
基于 Azure 搜索向量数据、之前的助手消息和用户指定的管理身份创建完成文件。
POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-10-21
{
"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 are 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
}
}
}
Example
为提供的 Azure Cosmos DB 创建一个补全。
POST https://{endpoint}/openai/deployments/{deployment-id}/chat/completions?api-version=2024-10-21
{
"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-10-21
将音频转录成输入语言。
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | 语音转文本模型的部署ID。 有关支持模型的信息,请参见 [/azure/ai-foundry/openai/concepts/models#audio-models]。 |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: multipart/form-data
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文件 | 字符串 | 音频文件对象要转录。 | Yes | |
| 提示 | 字符串 | 可选文本,用于指导模型风格或延续之前的音频片段。 提示应与音频语言相匹配。 | No | |
| response_format | audioResponseFormat | 定义输出格式。 | No | |
| temperature | number | 采样温度在0到1之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 如果设置为0,模型会利用对数概率自动升高温度,直到达到某些阈值。 | No | 0 |
| 语言 | 字符串 | 输入音频的语言。 以 ISO-639-1 格式提供输入语言将提升准确性和延迟。 | No |
Responses
状态代码: 200
Description: OK
| Content-Type | Type | Description |
|---|---|---|
| application/json | audioResponse 或 audioVerboseResponse | |
| text/plain | 字符串 | 以输出格式转录文本(当response_format为文本、vtt或srt时)。 |
Examples
Example
从提供的语音音频数据中获取转录文本及相关元数据。
POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-10-21
回复:状态代码:200
{
"body": {
"text": "A structured object when requesting json or verbose_json"
}
}
Example
从提供的语音音频数据中获取转录文本及相关元数据。
POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-10-21
"---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-10-21
将输入音频转录并翻译成英文文本。
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | 已部署的 whisper 型号的部署ID。 有关支持模型的信息,请参见 [/azure/ai-foundry/openai/concepts/models#audio-models]。 |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: multipart/form-data
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文件 | 字符串 | 音频文件需要翻译。 | Yes | |
| 提示 | 字符串 | 可选文本,用于指导模型风格或延续之前的音频片段。 提示应为英文。 | No | |
| response_format | audioResponseFormat | 定义输出格式。 | No | |
| temperature | number | 采样温度在0到1之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 如果设置为0,模型会利用对数概率自动升高温度,直到达到某些阈值。 | No | 0 |
Responses
状态代码: 200
Description: OK
| Content-Type | Type | Description |
|---|---|---|
| application/json | audioResponse 或 audioVerboseResponse | |
| text/plain | 字符串 | 以输出格式转录文本(当response_format为文本、vtt或srt时)。 |
Examples
Example
从提供的语音音频数据中获取英文转录文本及相关元数据。
POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-10-21
"---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"
}
}
Example
从提供的语音音频数据中获取英文转录文本及相关元数据。
POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-10-21
"---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"
}
Image generation
POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-10-21
在给定的 dall-e 模型部署中,从文本说明生成一批图像
URI Parameters
| Name | In | Required | 类型 | Description |
|---|---|---|---|---|
| 终结点 | 路径 | Yes | 字符串 url |
支持Azure OpenAI 端点(协议和主机名,例如:https://aoairesource.openai.azure.com。将“aoairesource”替换为你的Azure OpenAI资源名称)。 https://{your-resource-name}.openai.azure.com |
| deployment-id | 路径 | Yes | 字符串 | 已部署的dall-e型号的部署ID。 |
| api-version | 查询 | Yes | 字符串 | API version |
Request Header
| Name | Required | 类型 | Description |
|---|---|---|---|
| api-key | True | 字符串 | Provide Azure OpenAI API key here |
Request Body
Content-Type: application/json
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 提示 | 字符串 | 对所需图片的文字描述。 最大长度为4000字符。 | Yes | |
| n | 整数 | 需要生成的图片数量。 | No | 1 |
| size | imageSize | 生成图像的大小。 | No | 1024x1024 |
| response_format | imagesResponseFormat | 生成图像返回的格式。 | No | url |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 | No | |
| quality | imageQuality | 生成图像的质量。 | No | 标准 |
| 样式 | imageStyle | 生成图像的风格。 | No | vivid |
Responses
状态代码: 200
Description: Ok
| Content-Type | Type | Description |
|---|---|---|
| application/json | generateImagesResponse |
状态代码: 默认
描述:发生了错误。
| Content-Type | Type | Description |
|---|---|---|
| application/json | dalleErrorResponse |
Examples
Example
根据提示生成图片。
POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-10-21
{
"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
}
}
}
]
}
}
Components
errorResponse
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 错误 | error | No |
errorBase
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 代码 | 字符串 | No | ||
| 消息 | 字符串 | No |
错误
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| param | 字符串 | No | ||
| 类型 | 字符串 | No | ||
| inner_error | innerError | 内部错误,附加细节。 | No |
innerError
内部错误,附加细节。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 代码 | innerErrorCode | 内部错误对象的错误代码。 | No | |
| content_filter_results | contentFilterPromptResults | 关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。 | No |
innerErrorCode
内部错误对象的错误代码。
描述:内部错误对象的错误代码。
Type: string
Default:
枚举名称:InnerErrorCode
Enum Values:
| Value | Description |
|---|---|
| ResponsibleAIPolicyViolation | 该提示违反了其中一条内容过滤规则。 |
dalleErrorResponse
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 错误 | dalleError | No |
dalleError
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| param | 字符串 | No | ||
| 类型 | 字符串 | No | ||
| inner_error | dalleInnerError | 内部错误,附加细节。 | No |
dalleInnerError
内部错误,附加细节。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 代码 | innerErrorCode | 内部错误对象的错误代码。 | No | |
| content_filter_results | dalleFilterResults | 关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。 | No | |
| revised_prompt | 字符串 | 如果提示词有任何修改,那就是用来生成图片的提示词。 | No |
contentFilterResultBase
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| filtered | boolean | Yes |
contentFilterSeverityResult
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| filtered | boolean | Yes | ||
| severity | 字符串 | No |
contentFilterDetectedResult
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| filtered | boolean | Yes | ||
| detected | boolean | No |
contentFilterDetectedWithCitationResult
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| citation | 对象 | No |
引用性质
URL
| Name | 类型 | Description | Default |
|---|---|---|---|
| URL | 字符串 |
许可
| Name | 类型 | Description | Default |
|---|---|---|---|
| 许可 | 字符串 |
contentFilterResultsBase
关于内容过滤结果的信息。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| sexual | contentFilterSeverityResult | No | ||
| violence | contentFilterSeverityResult | No | ||
| hate | contentFilterSeverityResult | No | ||
| self_harm | contentFilterSeverityResult | No | ||
| profanity | contentFilterDetectedResult | No | ||
| 错误 | errorBase | No |
contentFilterPromptResults
关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| sexual | contentFilterSeverityResult | No | ||
| violence | contentFilterSeverityResult | No | ||
| hate | contentFilterSeverityResult | No | ||
| self_harm | contentFilterSeverityResult | No | ||
| profanity | contentFilterDetectedResult | No | ||
| 错误 | errorBase | No | ||
| jailbreak | contentFilterDetectedResult | No |
contentFilterChoiceResults
关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于第三方文本和脏话的信息,是否检测到,以及是否被过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| sexual | contentFilterSeverityResult | No | ||
| violence | contentFilterSeverityResult | No | ||
| hate | contentFilterSeverityResult | No | ||
| self_harm | contentFilterSeverityResult | No | ||
| profanity | contentFilterDetectedResult | No | ||
| 错误 | errorBase | No | ||
| protected_material_text | contentFilterDetectedResult | No | ||
| protected_material_code | contentFilterDetectedWithCitationResult | No |
promptFilterResult
请求中单个提示的内容过滤结果。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| prompt_index | 整数 | No | ||
| content_filter_results | contentFilterPromptResults | 关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。 | No |
promptFilterResults
请求中零个或多个提示的内容过滤结果。 在流媒体请求中,不同提示的结果可能在不同时间或顺序出现。
该组件没有定义属性。
dalleContentFilterResults
关于内容过滤结果的信息。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| sexual | contentFilterSeverityResult | No | ||
| violence | contentFilterSeverityResult | No | ||
| hate | contentFilterSeverityResult | No | ||
| self_harm | contentFilterSeverityResult | No |
dalleFilterResults
关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| sexual | contentFilterSeverityResult | No | ||
| violence | contentFilterSeverityResult | No | ||
| hate | contentFilterSeverityResult | No | ||
| self_harm | contentFilterSeverityResult | No | ||
| profanity | contentFilterDetectedResult | No | ||
| jailbreak | contentFilterDetectedResult | No |
chatCompletionsRequestCommon
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| temperature | number | 采样温度应该在0到2之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 我们通常建议修改这一点,但 top_p 不要两者兼做。 |
No | 1 |
| top_p | number | 一种与温度抽样不同的替代方案,称为核抽样,模型考虑以top_p概率质量计算的符号结果。 因此,0.1 意味着只考虑构成前10个概率质量的代币%。 我们通常建议修改这一点,但 temperature 不要两者兼做。 |
No | 1 |
| 数据流 | boolean | 如果设置好,会像ChatGPT一样发送部分消息delta。 代币将作为仅数据服务器发送的事件发送,届时会以消息结束 data: [DONE] 。 |
No | False |
| stop | 字符串或数组 | 最多有四个序列,API 会停止生成更多令牌。 | No | |
| max_tokens | 整数 | 生成答案允许的最大代币数。 默认情况下,模型可返回的标记数量为(4096 - 提示令牌)。 该值现已被弃用,取而代 max_completion_tokens之的是 ,且与 o1 系列型号不兼容。 |
No | 4096 |
| max_completion_tokens | 整数 | 完成化可生成的代币数量的上限,包括可见的输出代币和推理代币。 | No | |
| presence_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新代币是否出现在文本中来惩罚它们,从而提高模型讨论新话题的可能性。 | No | 0 |
| frequency_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新标记在文本中已有的频率进行惩罚,降低模型逐字重复同一行的可能性。 | No | 0 |
| logit_bias | 对象 | 修改完成中出现指定标记的可能性。 接受一个json对象,将令牌(由分词器中其令牌ID指定)映射到从 -100 到100的相关偏置值。 数学上,偏差会在抽样前加到模型生成的对数中。 具体效果因模型而异,但 -1 到1之间的数值应降低或增加被选中的概率;像 -100 或100这样的数值应导致封禁或对相关代币的独占选择。 | No | |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,可以帮助 Azure OpenAI 监控和检测滥用行为。 | No |
createCompletionRequest
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 提示 | 字符串或数组 | 生成完备的提示,编码为字符串、字符串数组、token数组或token数组数组。 注意, <|endoftext|> 是模型在训练时看到的文档分隔符,因此如果没有指定提示,模型会像从新文档开头一样生成。 |
Yes | |
| best_of | 整数 | 在 best_of 服务器端生成完成任务,并返回“最佳”(每个代币日志概率最高的那个)。 结果无法直播。当与 一起使用 n时, best_of 控制候选完成数,并 n 指定返回的数量—— best_of “必须大于 n。注: 由于该参数会产生大量完成任务,它可能迅速消耗你的代币配额。 谨慎使用,并确保你对和 stop的设置max_tokens合理。 |
No | 1 |
| echo | boolean | 除了完成,还要回应提示 |
No | False |
| frequency_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新标记在文本中已有的频率进行惩罚,降低模型逐字重复同一行的可能性。 |
No | 0 |
| logit_bias | 对象 | 修改完成中出现指定标记的可能性。 接受一个 JSON 对象,将 GPT 分词器中由令牌 ID 指定的令牌映射到从 -100 到 100 的偏置值。 数学上,偏差会在抽样前加到模型生成的对数中。 具体效果因模型而异,但 -1 到1之间的数值应降低或增加被选中的概率;像 -100 或100这样的数值应导致封禁或对相关代币的独占选择。 举个例子,你可以通过 来 {"50256": -100} 阻止 <|endoftext|> 令牌的生成。 |
No | None |
| logprobs | 整数 | 包括最可能输出代币的对数概 logprobs 率,以及所选代币。 例如,如果 logprobs 是5,API会返回五个最可能的令牌列表。 API 始终返回 logprob 被采样的标记,因此响应中可能包含多达 logprobs+1 多个元素。最大 logprobs 值为5。 |
No | None |
| max_tokens | 整数 | 完成过程中最多可生成的代币数。 你的提示 max_tokens 词的token数不能超过模型的上下文长度。 |
No | 16 |
| n | 整数 | 每个提示需要生成多少个完成任务。 注: 由于该参数会产生大量完成任务,它可能迅速消耗你的代币配额。 谨慎使用,并确保你对和 stop的设置max_tokens合理。 |
No | 1 |
| presence_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新代币是否出现在文本中来惩罚它们,从而提高模型讨论新话题的可能性。 |
No | 0 |
| seed | 整数 | 如果有指定,我们的系统会尽最大努力采样确定性采样,使得重复请求且参数相同 seed 时应返回相同结果。确定性并不保证,你应该参考 system_fingerprint 响应参数来监控后端的变化。 |
No | |
| stop | 字符串或数组 | 最多有四个序列,API 会停止生成更多令牌。 返回的文本不会包含停止序列。 |
No | |
| 数据流 | boolean | 是否要回溯部分进度。 如果设置好,令牌将作为仅数据 服务器发送的事件 发送,随着事件的出现而发送,流会 data: [DONE] 以消息结束。 |
No | False |
| suffix | 字符串 | 插入文本完成后出现的后缀。 该参数仅支持。 gpt-3.5-turbo-instruct |
No | None |
| temperature | number | 采样温度应该在0到2之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 我们通常建议修改这一点,但 top_p 不要两者兼做。 |
No | 1 |
| top_p | number | 一种与温度抽样不同的替代方案,称为核抽样,模型考虑以top_p概率质量计算的符号结果。 因此,0.1 意味着只考虑构成前10个概率质量的代币%。 我们通常建议修改这一点,但 temperature 不要两者兼做。 |
No | 1 |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 |
No |
createCompletionResponse
表示API的补全响应。 注意:流式和非流式响应对象共享相同的形状(与聊天端点不同)。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| id | 字符串 | 完成的唯一标识符。 | Yes | |
| choices | 数组 | 模型为输入提示生成的完成选项列表。 | Yes | |
| created | 整数 | 完成文件创建时间的Unix时间戳(以秒计)。 | Yes | |
| 模型 | 字符串 | 用于完成的模型。 | Yes | |
| prompt_filter_results | promptFilterResults | 请求中零个或多个提示的内容过滤结果。 在流媒体请求中,不同提示的结果可能在不同时间或顺序出现。 | No | |
| system_fingerprint | 字符串 | 该指纹代表模型运行的后端配置。 可以与 seed 请求参数结合使用,以了解何时后端发生了可能影响确定性的更改。 |
No | |
| 对象 | 枚举 | 对象类型,始终为“text_completion” 可能的数值:text_completion |
Yes | |
| 使用情况 | completionUsage | 完成请求的使用统计数据。 | No |
createChatCompletionRequest
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| temperature | number | 采样温度应该在0到2之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 我们通常建议修改这一点,但 top_p 不要两者兼做。 |
No | 1 |
| top_p | number | 一种与温度抽样不同的替代方案,称为核抽样,模型考虑以top_p概率质量计算的符号结果。 因此,0.1 意味着只考虑构成前10个概率质量的代币%。 我们通常建议修改这一点,但 temperature 不要两者兼做。 |
No | 1 |
| 数据流 | boolean | 如果设置好,会像ChatGPT一样发送部分消息delta。 代币将作为仅数据服务器 发送的事件 发送,届时会以消息结束 data: [DONE] 。 |
No | False |
| stop | 字符串或数组 | 最多有四个序列,API 会停止生成更多令牌。 |
No | |
| max_tokens | 整数 | 聊天完成时能生成的最大代币数。 输入标记和生成标记的总长度受模型上下文长度限制。 |
No | |
| max_completion_tokens | 整数 | 完成化可生成的代币数量的上限,包括可见的输出代币和推理代币。 | No | |
| presence_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新代币是否出现在文本中来惩罚它们,从而提高模型讨论新话题的可能性。 |
No | 0 |
| frequency_penalty | number | 数字介于-2.0到2.0之间。 正值会根据新标记在文本中已有的频率进行惩罚,降低模型逐字重复同一行的可能性。 |
No | 0 |
| logit_bias | 对象 | 修改完成中出现指定标记的可能性。 接受一个 JSON 对象,将令牌(通过分词器中由令牌 ID 指定)映射到从 -100 到 100 的对应偏置值。 数学上,偏差会在抽样前加到模型生成的对数中。 具体效果因模型而异,但 -1 到1之间的数值应降低或增加被选中的概率;像 -100 或100这样的数值应导致封禁或对相关代币的独占选择。 |
No | None |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 |
No | |
| messages | 数组 | 这是迄今为止对话内容的列表。 | Yes | |
| data_sources | 数组 | 使用它们的 Azure OpenAI 聊天扩展的配置条目。 该附加规范仅兼容 Azure OpenAI。 |
No | |
| logprobs | boolean | 是否返回输出令牌的对数概率。 如果为真,返回每个输出令牌contentmessage的对数概率。 |
No | False |
| top_logprobs | 整数 | 一个介于0到20之间的整数,表示每个标记位置最可能返回的标记数量,每个标记对应对数概率。
logprobs 如果使用该参数,必须设置为 true 。 |
No | |
| n | 整数 | 每个输入消息需要生成多少聊天完成选项。 请注意,你将根据所有选项中生成的代币数量收费。 保持 n 最低 1 成本。 |
No | 1 |
| parallel_tool_calls | ParallelToolCalls | 是否在工具使用时启用并行函数调用。 | No | True |
| response_format | ResponseFormatText 或 ResponseFormatJsonObject 或 ResponseFormatJsonSchema | 一个对象,指定模型必须输出的格式。 兼容GPT-4o、GPT-4o mini、GPT-4 Turbo及所有更新于gpt-3.5-turbo-1106此之前的GPT-3.5 Turbo模型。设置为 { "type": "json_schema", "json_schema": {...} } 启用结构化输出,保证模型与你提供的JSON模式匹配。设置启用 { "type": "json_object" } JSON模式,保证模型生成的消息是有效的JSON。重要提示: 使用JSON模式时, 你还必须 通过系统或用户消息指示模型自行生成JSON。 如果没有这一点,模型可能会不断生成空白流,直到生成达到令牌上限,导致请求运行时间长且看似“卡住”。 还需注意,如果 finish_reason="length",消息内容可能部分中断,表示生成次数或 max_tokens 对话超过了最大上下文长度。 |
No | |
| seed | 整数 | 此功能目前处于测试阶段。 如果有指定,我们的系统会尽最大努力采样确定性采样,使得重复请求且参数相同 seed 时应返回相同结果。确定性并不保证,你应该参考 system_fingerprint 响应参数来监控后端的变化。 |
No | |
| tools | 数组 | 模型可能调用的工具列表。 目前,仅支持函数作为工具。 利用该列表提供模型可能生成 JSON 输入的函数列表。 最多支持128个功能。 |
No | |
| tool_choice | chatCompletionToolChoiceOption | 控制模型调用的(如果有)工具。
none 意味着模型不会调用任何工具,而是生成一条消息。
auto 这意味着模型可以选择生成消息或调用一个或多个工具。
required 意味着模型必须调用一个或多个工具。 通过指定特定工具 {"type": "function", "function": {"name": "my_function"}} 会强制模型调用该工具。
none 当没有工具时,是默认的。
auto 如果有工具,则是默认设置。 |
No | |
| function_call | 字符串或 chatCompletionFunctionCallOption | 已被弃用,取而代之。tool_choice控制模型调用的函数(如果有的话)。 none 意味着模型不会调用函数,而是生成消息。auto 意味着模型可以在生成消息或调用函数之间选择。指定某个特定函数 会 {"name": "my_function"} 强制模型调用该函数。none 当没有函数存在时,是默认的。
auto 如果函数存在,则是默认的。 |
No | |
| functions | 数组 | 已被弃用,取而代之。tools模型可能生成的 JSON 输入函数列表。 |
No |
chatCompletionFunctions
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| description | 字符串 | 函数的功能描述,模型用来决定何时以及如何调用该函数。 | No | |
| name | 字符串 | 要调用的函数名称。 必须为 a-z、A-Z、0-9,或包含划线和破折号,长度最多为 64。 | Yes | |
| parameters | FunctionParameters | 函数接受的参数,描述为 JSON Schema 对象。
示例请参见指南 ,以及关于格式的文档参考 JSON Schema 。 省略 parameters 定义了一个参数列表为空的函数。 |
No |
chatCompletionFunctionCallOption
指定某个特定函数 会 {"name": "my_function"} 强制模型调用该函数。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| name | 字符串 | 调用函数的名称。 | Yes |
chatCompletionRequestMessage
该组成部分可以是以下之一:
chatCompletionRequestSystemMessage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 字符串或数组 | 系统消息的内容。 | Yes | |
| 角色 | 枚举 | 消息作者的角色,在这里 system。可能的值:系统 |
Yes | |
| name | 字符串 | 参与者的可选名称。 提供模型信息,以区分同一角色的参与者。 | No |
chatCompletionRequestUserMessage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 字符串或数组 | 用户消息的内容。 |
Yes | |
| 角色 | 枚举 | 消息作者的角色,在这里 user。可能的值:用户 |
Yes | |
| name | 字符串 | 参与者的可选名称。 提供模型信息,以区分同一角色的参与者。 | No |
chatCompletionRequestAssistantMessage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 字符串或数组 | 助理信息的内容。 除非 tool_calls 或 function_call 另有说明,否则为必需。 |
No | |
| refusal | 字符串 | 助理的拒绝信息。 | No | |
| 角色 | 枚举 | 消息作者的角色,在这里 assistant。可能的值:助手 |
Yes | |
| name | 字符串 | 参与者的可选名称。 提供模型信息,以区分同一角色的参与者。 | No | |
| tool_calls | chatCompletionMessageToolCalls | 模型生成的工具调用,如函数调用。 | No | |
| function_call | 对象 | 已被弃用并被 tool_calls取代。 应调用的函数名称和参数,由模型生成。 |
No |
function_call的性质
arguments
| Name | 类型 | Description | Default |
|---|---|---|---|
| arguments | 字符串 | 调用函数的参数,由模型以 JSON 格式生成。 注意,模型并不总是生成有效的 JSON,而且可能会生成你的函数模式中没有定义的参数。 在调用函数之前,先验证代码中的参数。 |
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 调用函数的名称。 |
chatCompletionRequestToolMessage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 角色 | 枚举 | 消息作者的角色,在这里 tool。可能的值:工具 |
Yes | |
| 内容 | 字符串或数组 | 工具信息的内容。 | Yes | |
| tool_call_id | 字符串 | 该消息响应的工具调用。 | Yes |
chatCompletionRequestFunctionMessage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 角色 | 枚举 | 消息作者的角色,在这里 function。可能的值:函数 |
Yes | |
| 内容 | 字符串 | 函数消息的内容。 | Yes | |
| name | 字符串 | 调用函数的名称。 | Yes |
chatCompletionRequestSystemMessageContentPart
该组成部分可以是以下之一:
chatCompletionRequestUserMessageContentPart
该组成部分可以是以下之一:
chatCompletionRequestAssistantMessageContentPart
该组成部分可以是以下之一:
chatCompletionRequestToolMessageContentPart
该组成部分可以是以下之一:
chatCompletionRequestMessageContentPartText
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 内容的类型。 可能的值:文本 |
Yes | |
| 文本消息 | 字符串 | 文本内容。 | Yes |
chatCompletionRequestMessageContentPartImage
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 内容的类型。 可能的数值:image_url |
Yes | |
| image_url | 对象 | Yes |
image_url性质
url
| Name | 类型 | Description | Default |
|---|---|---|---|
| url | 字符串 | 要么是图片的URL,要么是base64编码的图像数据。 |
detail
| Name | 类型 | Description | Default |
|---|---|---|---|
| detail | 字符串 | 指定图像的细节级别。 更多信息请参阅 愿景指南。 | auto |
chatCompletionRequestMessageContentPartRefusal
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 内容的类型。 可能的价值观:拒绝 |
Yes | |
| refusal | 字符串 | 模型生成的拒绝信息。 | Yes |
azureChatExtensionConfiguration
一个针对单个 Azure OpenAI 聊天扩展的配置数据表示。 这将被聊天完成请求使用,该请求应通过 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | azureChatExtensionType | 一个针对单个 Azure OpenAI 聊天扩展的配置数据表示。 这将被聊天使用。 完成请求应使用 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。 |
Yes |
azureChatExtensionType
一个针对单个 Azure OpenAI 聊天扩展的配置数据表示。 这将被聊天完成请求使用,该请求应通过 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。
Description:单Azure OpenAI聊天扩展的配置数据表示。 这将被聊天完成请求使用,该请求应通过 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。
Type: string
Default:
Enum name: AzureChatExtensionType
Enum Values:
| Value | Description |
|---|---|
| azure_search | 表示将 Azure Search 作为 Azure OpenAI 聊天扩展的使用。 |
| azure_cosmos_db | 表示使用 Azure Cosmos DB 作为 Azure OpenAI 聊天扩展。 |
azureSearchChatExtensionConfiguration
这是使用 Azure 搜索作为 Azure OpenAI 聊天扩展时可配置选项的具体表示。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | azureChatExtensionType | 一个针对单个 Azure OpenAI 聊天扩展的配置数据表示。 这将被聊天使用。 完成请求应使用 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。 |
Yes | |
| parameters | azureSearchChatExtensionParameters | 作为 Azure OpenAI 聊天扩展使用时的 Azure 搜索参数。 | No |
azureSearchChatExtensionParameters
作为 Azure OpenAI 聊天扩展使用时的 Azure 搜索参数。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 身份验证 | 在 yourDataApiKeyAuthenticationOptions 或 on yourDataSystemAssignedManagedIdentity AuthenticationOptions 或 onYourDataUserAssignedManagedIdentityAuthenticationAuthenticationOptions。 | Yes | ||
| top_n_documents | 整数 | 配置的最高文档数量以供查询。 | No | |
| in_scope | boolean | 查询是否应限制使用索引数据。 | No | |
| strictness | 整数 | 搜索相关性过滤的配置严格性。 严格度越高,答案的准确度越高但回忆力越低。 | No | |
| role_information | 字符串 | 给模型说明它应该如何行为,以及生成响应时应引用的上下文。 你可以描述助理的性格,并告诉它如何格式化回答。 它有100个代币的上限,并且计入总代币的上限。 | No | |
| 终结点 | 字符串 | Azure 搜索资源的绝对端点路径。 | Yes | |
| index_name | 字符串 | 在参考的Azure搜索资源中,使用该索引的名称。 | Yes | |
| fields_mapping | azureSearchIndexFieldMappingOptions | 可选设置用于控制使用配置Azure搜索资源时字段的处理方式。 | No | |
| query_type | azureSearchQueryType | 当它作为 Azure OpenAI 聊天扩展使用时,应该执行的 Azure 搜索检索查询类型。 | No | |
| semantic_configuration | 字符串 | 查询的额外语义配置。 | No | |
| 筛选器 | 字符串 | Search filter. | No | |
| embedding_dependency | onYourDataEndpointVectorizationSource 或 onYourDataDeploymentNameVectorizationSource | No |
azureSearchIndexFieldMappingOptions
可选设置用于控制使用配置Azure搜索资源时字段的处理方式。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| title_field | 字符串 | 用作标题的索引字段名称。 | No | |
| url_field | 字符串 | 用作URL的索引字段名称。 | No | |
| filepath_field | 字符串 | 用于文件路径的索引字段名称。 | No | |
| content_fields | 数组 | 应当被视为内容的索引字段名称。 | No | |
| content_fields_separator | 字符串 | 内容字段应使用的分隔符模式。 | No | |
| vector_fields | 数组 | 表示向量数据的字段名称。 | No |
azureSearchQueryType
当它作为 Azure OpenAI 聊天扩展使用时,应该执行的 Azure 搜索检索查询类型。
Description:作为Azure OpenAI聊天扩展使用时应执行的Azure搜索检索查询类型。
Type: string
Default:
Enum name: AzureSearchQueryType
Enum Values:
| Value | Description |
|---|---|
| simple | 代表默认的简单查询解析器。 |
| semantic | 表示用于高级语义建模的语义查询解析器。 |
| 向量 | 表示对计算数据的向量搜索。 |
| vector_simple_hybrid | 表示简单查询策略与向量数据的结合。 |
| vector_semantic_hybrid | 表示语义搜索和向量数据查询的结合。 |
azureCosmosDBChatExtensionConfiguration
这是使用 Azure Cosmos DB 作为 Azure OpenAI 聊天扩展时可配置选项的具体表示。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | azureChatExtensionType | 一个针对单个 Azure OpenAI 聊天扩展的配置数据表示。 这将被聊天使用。 完成请求应使用 Azure OpenAI 聊天扩展来增强响应行为。 该配置仅兼容 Azure OpenAI。 |
Yes | |
| parameters | azureCosmosDBChatExtensionParameters | 配置 Azure OpenAI On Your Data 聊天扩展时使用的参数 使用 Azure Cosmos DB for MongoDB vCore. |
No |
azureCosmosDBChatExtensionParameters
配置 Azure OpenAI On Your Data 聊天扩展时使用的参数,使用 Azure Cosmos DB for MongoDB vCore。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 身份验证 | onYourDataConnectionStringAuthenticationOptions | 使用 连接字符串 时,Azure OpenAI On Your Data 的认证选项。 | Yes | |
| top_n_documents | 整数 | 配置的最高文档数量以供查询。 | No | |
| in_scope | boolean | 查询是否应限制使用索引数据。 | No | |
| strictness | 整数 | 搜索相关性过滤的配置严格性。 严格度越高,答案的准确度越高但回忆力越低。 | No | |
| role_information | 字符串 | 给模型说明它应该如何行为,以及生成响应时应引用的上下文。 你可以描述助理的性格,并告诉它如何格式化回答。 它有100个代币的上限,并且计入总代币的上限。 | No | |
| database_name | 字符串 | MongoDB vCore 数据库名称,用于 Azure Cosmos DB。 | Yes | |
| container_name | 字符串 | Azure Cosmos DB 资源容器的名称。 | Yes | |
| index_name | 字符串 | MongoDB vCore 索引名称,用于 Azure Cosmos DB。 | Yes | |
| fields_mapping | azureCosmosDBFieldMappingOptions | 可选设置用于控制使用配置好的 Azure Cosmos DB 资源时字段的处理方式。 | Yes | |
| embedding_dependency | onYourDataEndpointVectorizationSource 或 onYourDataDeploymentNameVectorizationSource | Yes |
azureCosmosDBFieldMappingOptions
可选设置用于控制使用配置好的 Azure Cosmos DB 资源时字段的处理方式。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| title_field | 字符串 | 用作标题的索引字段名称。 | No | |
| url_field | 字符串 | 用作URL的索引字段名称。 | No | |
| filepath_field | 字符串 | 用于文件路径的索引字段名称。 | No | |
| content_fields | 数组 | 应当被视为内容的索引字段名称。 | Yes | |
| content_fields_separator | 字符串 | 内容字段应使用的分隔符模式。 | No | |
| vector_fields | 数组 | 表示向量数据的字段名称。 | Yes |
onYourDataAuthenticationOptions
关于Azure OpenAI在你数据上的认证选项。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataAuthenticationType | Azure OpenAI 在你的数据上支持的认证类型。 | Yes |
onYourDataAuthenticationType
Azure OpenAI 在你的数据上支持的认证类型。
Description:OpenAI 对您的数据支持Azure认证类型。
Type: string
Default:
枚举名称:OnYourDataAuthenticationType
Enum Values:
| Value | Description |
|---|---|
| api_key | 通过API密钥进行认证。 |
| connection_string | 通过连接字符串进行认证。 |
| system_assigned_managed_identity | 通过系统分配的托管身份进行认证。 |
| user_assigned_managed_identity | 通过用户分配的托管身份进行认证。 |
onYourDataApiKeyAuthenticationOptions
使用 API 密钥时,Azure OpenAI 在你的数据上的认证选项。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataAuthenticationType | Azure OpenAI 在你的数据上支持的认证类型。 | Yes | |
| 关键值 | 字符串 | 用于认证的API密钥。 | No |
onYourDataConnectionStringAuthenticationOptions
使用 连接字符串 时,Azure OpenAI On Your Data 的认证选项。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataAuthenticationType | Azure OpenAI 在你的数据上支持的认证类型。 | Yes | |
| connection_string | 字符串 | 用于认证的连接字符串。 | No |
onYourDataSystemAssignedManagedIdentityAuthenticationOptions
使用系统分配的管理身份时,针对 Azure OpenAI On Your Data 的认证选项。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataAuthenticationType | Azure OpenAI 在你的数据上支持的认证类型。 | Yes |
onYourDataUserAssignedManagedIdentityAuthenticationOptions
使用用户分配的管理身份时,Azure OpenAI 对你的数据的认证选项。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataAuthenticationType | Azure OpenAI 在你的数据上支持的认证类型。 | Yes | |
| managed_identity_resource_id | 字符串 | 用户分配的托管身份用于认证的资源ID。 | No |
onYourDataVectorizationSource
Azure OpenAI 在你的数据上提供向量搜索的向量化源的抽象表示。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataVectorizationSourceType | 表示 Azure OpenAI 对你的数据可用来配置数据矢量化的可用来源 vector search. |
Yes |
onYourDataVectorizationSourceType
代表 Azure OpenAI On Your Data 可用来配置数据矢量化以配合矢量搜索的来源。
Description:表示 OpenAI 在你的数据上可用Azure配置数据矢量化以用于
vector search.
Type: string
Default:
枚举名:OnYourDataVectorizationSourceType
Enum Values:
| Value | Description |
|---|---|
| 终结点 | 表示通过公共服务调用对 Azure OpenAI 嵌入模型进行的矢量化。 |
| deployment_name | 表示用于使用的Ada模型部署名称。 该模型部署必须在同一Azure OpenAI资源中,但 On Your Data 将通过内部调用而非公开调用来部署该模型,从而实现向量 即使是在私有网络中搜索也一样。 |
onYourDataDeploymentNameVectorizationSource
Azure OpenAI 在应用向量搜索时使用的矢量化源的详细信息,基于同一 Azure OpenAI 资源中的内部嵌入模型部署名称。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataVectorizationSourceType | 表示 Azure OpenAI 对你的数据可用来配置数据矢量化的可用来源 vector search. |
Yes | |
| deployment_name | 字符串 | 指定用于向量化的模型部署名称。 该模型部署必须在同一Azure OpenAI资源中,但“你的数据”将通过内部调用而非公开调用使用该模型部署,从而即使在私有网络中也能实现向量搜索。 | No |
onYourDataEndpointVectorizationSource
Azure OpenAI 在应用向量搜索时使用的矢量化源的详细信息,基于公开的 Azure OpenAI 端点嵌入调用。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | onYourDataVectorizationSourceType | 表示 Azure OpenAI 对你的数据可用来配置数据矢量化的可用来源 vector search. |
Yes | |
| 身份验证 | onYourDataApiKeyAuthenticationOptions | 使用 API 密钥时,Azure OpenAI 在你的数据上的认证选项。 | No | |
| 终结点 | 字符串 | 指定用于向量化的端点。 该端点必须在同一Azure OpenAI资源中,但“On Your Data”将通过内部调用而非公开调用使用该端点,这使得即使在私有网络中也能进行矢量搜索。 | No |
azureChatExtensionsMessageContext
这是当Azure OpenAI聊天扩展参与生成对应聊天完成响应时,可用额外上下文信息的表示。 这些上下文信息只有在使用 Azure OpenAI 请求并配置为匹配扩展时才会被填充。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| citations | 数组 | 数据源检索结果,用于生成响应中的助手消息。 | No | |
| 意向 | 字符串 | 从聊天历史中检测到的意图,会传递到下一回合以传递上下文。 | No |
citation
聊天完成回复消息的引用信息。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 字符串 | 引用内容。 | Yes | |
| title | 字符串 | 表彰词标题。 | No | |
| url | 字符串 | 引用的网址。 | No | |
| filepath | 字符串 | 引用的文件路径。 | No | |
| chunk_id | 字符串 | 引用的块编号。 | No |
chatCompletionMessageToolCall
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| id | 字符串 | 工具调用的ID。 | Yes | |
| 类型 | toolCallType | 工具调用的类型,在此例 function中为 。 |
Yes | |
| 函数 | 对象 | 模型调用的函数。 | Yes |
函数性质
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 调用函数的名称。 |
arguments
| Name | 类型 | Description | Default |
|---|---|---|---|
| arguments | 字符串 | 调用函数的参数,由模型以 JSON 格式生成。 注意,模型并不总是生成有效的 JSON,而且可能会生成你的函数模式中没有定义的参数。 在调用函数之前,先验证代码中的参数。 |
toolCallType
工具调用的类型,在此例 function中为 。
描述:工具调用的类型,在此例 function中为 。
Type: string
Default:
枚举名称:ToolCallType
Enum Values:
| Value | Description |
|---|---|
| 函数 | 工具调用类型是函数。 |
chatCompletionRequestMessageTool
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| tool_call_id | 字符串 | 该消息响应的工具调用。 | No | |
| 内容 | 字符串 | 信息内容。 | No |
chatCompletionRequestMessageFunction
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 角色 | 枚举 | 消息作者的角色,在这里 function。可能的值:函数 |
No | |
| name | 字符串 | 信息内容。 | No | |
| 内容 | 字符串 | 信息内容。 | No |
createChatCompletionResponse
表示模型基于所提供输入返回的聊天完成响应。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| id | 字符串 | 聊天完成的唯一标识符。 | Yes | |
| prompt_filter_results | promptFilterResults | 请求中零个或多个提示的内容过滤结果。 在流媒体请求中,不同提示的结果可能在不同时间或顺序出现。 | No | |
| choices | 数组 | 聊天完成选项列表。 如果 大于 1, n 则可以多于 1。 |
Yes | |
| created | 整数 | Unix 时间戳(以秒计)显示聊天完成的时间。 | Yes | |
| 模型 | 字符串 | 用于聊天完成的模型。 | Yes | |
| system_fingerprint | 字符串 | 该指纹代表模型运行的后端配置。 可以与 seed 请求参数结合使用,以了解何时后端发生了可能影响确定性的更改。 |
No | |
| 对象 | 枚举 | 对象类型,始终 chat.completion为 。可能的值:chat.completion |
Yes | |
| 使用情况 | completionUsage | 完成请求的使用统计数据。 | No |
createChatCompletionStreamResponse
表示模型根据提供的输入返回的聊天完成响应的流式片段。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| id | 字符串 | 聊天完成的唯一标识符。 每个区块的ID相同。 | Yes | |
| choices | 数组 | 聊天完成选项列表。 如果 大于 1, n 则可以包含多个元素。 |
Yes | |
| created | 整数 | Unix 时间戳(以秒计)显示聊天完成的时间。 每个区块的时间戳相同。 | Yes | |
| 模型 | 字符串 | 生成完备化的模型。 | Yes | |
| system_fingerprint | 字符串 | 该指纹代表模型运行的后端配置。 可以与 seed 请求参数结合使用,以了解何时后端发生了可能影响确定性的更改。 |
No | |
| 对象 | 枚举 | 对象类型,始终 chat.completion.chunk为 。可能的值:chat.completion.chunk |
Yes |
chatCompletionStreamResponseDelta
由流式模型响应生成的聊天完成差异。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 字符串 | 区块消息的内容。 | No | |
| function_call | 对象 | 已被弃用并被 tool_calls取代。 应调用的函数名称和参数,由模型生成。 |
No | |
| tool_calls | 数组 | No | ||
| 角色 | 枚举 | 这条信息的作者的角色。 可能的值:系统、用户、助手、工具 |
No | |
| refusal | 字符串 | 模型生成的拒绝信息。 | No |
function_call的性质
arguments
| Name | 类型 | Description | Default |
|---|---|---|---|
| arguments | 字符串 | 调用函数的参数,由模型以 JSON 格式生成。 注意,模型并不总是生成有效的 JSON,而且可能会生成你的函数模式中没有定义的参数。 在调用函数之前,先验证代码中的参数。 |
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 调用函数的名称。 |
chatCompletionMessageToolCallChunk
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 索引 | 整数 | Yes | ||
| id | 字符串 | 工具调用的ID。 | No | |
| 类型 | 枚举 | 工具的类型。 目前,只有 function 支持。可能的值:函数 |
No | |
| 函数 | 对象 | No |
函数性质
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 调用函数的名称。 |
arguments
| Name | 类型 | Description | Default |
|---|---|---|---|
| arguments | 字符串 | 调用函数的参数,由模型以 JSON 格式生成。 注意,模型并不总是生成有效的 JSON,而且可能会生成你的函数模式中没有定义的参数。 在调用函数之前,先验证代码中的参数。 |
chatCompletionStreamOptions
流式响应选项。 只有在你设置 stream: true时才会设置这个。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| include_usage | boolean | 如果设置为,消息发出前 data: [DONE] 会再流一个额外的区块。
usage该块上的字段显示整个请求的令牌使用统计数据,字段choices始终为空数组。 所有其他区块也会包含 usage 字段,但字段为空值。 |
No |
chatCompletionChoiceLogProbs
记录选择的概率信息。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 内容 | 数组 | 一份包含日志概率信息的消息内容令牌列表。 | Yes | |
| refusal | 数组 | 一份带有日志概率信息的消息拒绝令牌列表。 | No |
chatCompletionTokenLogprob
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 代币 | 字符串 | The token. | Yes | |
| logprob | number | 该标记的对数概率。 | Yes | |
| bytes | 数组 | 一组整数表示 UTF-8 字节的令牌表示。 在字符由多个标记表示且必须组合其字节表示以生成正确文本表示的情况下非常有用。 如果代币没有字节表示,可能会是 null 。 |
Yes | |
| top_logprobs | 数组 | 该标记位置上最可能出现的标记及其对数概率列表。 极少数情况下,退回的数量可能少于请求 top_logprobs 的数量。 |
Yes |
chatCompletionResponseMessage
模型生成的聊天完成消息。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 角色 | chatCompletionResponseMessageRole | 回复信息作者的角色。 | Yes | |
| refusal | 字符串 | 模型生成的拒绝信息。 | Yes | |
| 内容 | 字符串 | 信息内容。 | Yes | |
| tool_calls | 数组 | 模型生成的工具调用,如函数调用。 | No | |
| function_call | chatCompletionFunctionCall | 已被弃用并被 tool_calls取代。 应调用的函数名称和参数,由模型生成。 |
No | |
| 上下文 | azureChatExtensionsMessageContext | 这是涉及Azure OpenAI聊天扩展时可用的额外上下文信息的表示 在生成对应的聊天完成回复时。 这些上下文信息只有在 使用配置为匹配扩展的 Azure OpenAI 请求。 |
No |
chatCompletionResponseMessageRole
回复信息作者的角色。
描述:回复消息作者的角色。
Type: string
Default:
Enum Values:
- 助手
chatCompletionToolChoiceOption
控制模型调用的(如果有)工具。
none 意味着模型不会调用任何工具,而是生成一条消息。
auto 这意味着模型可以选择生成消息或调用一个或多个工具。
required 意味着模型必须调用一个或多个工具。 通过指定特定工具 {"type": "function", "function": {"name": "my_function"}} 会强制模型调用该工具。
none 当没有工具时,是默认的。
auto 如果有工具,则是默认设置。
该组成部分可以是以下之一:
chatCompletionNamedToolChoice
指定模型应使用的工具。 用于强制模型调用特定函数。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 工具的类型。 目前,只有 function 支持。可能的值:函数 |
Yes | |
| 函数 | 对象 | Yes |
函数性质
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 调用函数的名称。 |
ParallelToolCalls
是否在工具使用时启用并行函数调用。
该组件没有定义属性。
chatCompletionMessageToolCalls
模型生成的工具调用,如函数调用。
该组件没有定义属性。
chatCompletionFunctionCall
已被弃用并被 tool_calls取代。 应调用的函数名称和参数,由模型生成。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| name | 字符串 | 调用函数的名称。 | Yes | |
| arguments | 字符串 | 调用函数的参数,由模型以 JSON 格式生成。 注意,模型并不总是生成有效的 JSON,而且可能会生成你的函数模式中没有定义的参数。 在调用函数之前,先验证代码中的参数。 | Yes |
completionUsage
完成请求的使用统计数据。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| prompt_tokens | 整数 | 提示词中的代币数量。 | Yes | |
| completion_tokens | 整数 | 生成完备中的标记数量。 | Yes | |
| total_tokens | 整数 | 请求中使用的总令牌数(提示 + 完成)。 | Yes | |
| completion_tokens_details | 对象 | 完成过程中使用的代币分解。 | No |
completion_tokens_details的性质
reasoning_tokens
| Name | 类型 | Description | Default |
|---|---|---|---|
| reasoning_tokens | 整数 | 模型为推理生成的代币。 |
chatCompletionTool
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 工具的类型。 目前,只有 function 支持。可能的值:函数 |
Yes | |
| 函数 | FunctionObject | Yes |
FunctionParameters
函数接受的参数,描述为 JSON Schema 对象。 示例请参见指南 ,以及关于格式的文档参考 JSON Schema 。
省略 parameters 定义了一个参数列表为空的函数。
该组件没有定义属性。
FunctionObject
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| description | 字符串 | 函数的功能描述,模型用来决定何时以及如何调用该函数。 | No | |
| name | 字符串 | 要调用的函数名称。 必须为 a-z、A-Z、0-9,或包含划线和破折号,长度最多为 64。 | Yes | |
| parameters | FunctionParameters | 函数接受的参数,描述为 JSON Schema 对象。
示例请参见指南 ,以及关于格式的文档参考 JSON Schema 。 省略 parameters 定义了一个参数列表为空的函数。 |
No | |
| strict | boolean | 在生成函数调用时是否启用严格的模式遵循。 如果设置为 true,模型将遵循字段中 parameters 定义的完全模式。 当 strict 是 true时,仅支持部分 JSON 模式。 |
No | False |
ResponseFormatText
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 定义的响应格式类型: text可能的值:文本 |
Yes |
ResponseFormatJsonObject
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 定义的响应格式类型: json_object可能的数值:json_object |
Yes |
ResponseFormatJsonSchemaSchema
响应格式的模式,描述为 JSON 模式对象。
该组件没有定义属性。
ResponseFormatJsonSchema
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 类型 | 枚举 | 定义的响应格式类型: json_schema可能的数值:json_schema |
Yes | |
| json_schema | 对象 | Yes |
json_schema的性质
description
| Name | 类型 | Description | Default |
|---|---|---|---|
| description | 字符串 | 对响应格式的描述,模型用以确定该格式的响应方式。 |
name
| Name | 类型 | Description | Default |
|---|---|---|---|
| name | 字符串 | 回答格式的名称。 必须为 a-z、A-Z、0-9,或包含划线和破折号,长度最多为 64。 |
架构
| Name | 类型 | Description | Default |
|---|---|---|---|
| 架构 | ResponseFormatJsonSchemaSchema | 响应格式的模式,描述为 JSON 模式对象。 |
strict
| Name | 类型 | Description | Default |
|---|---|---|---|
| strict | boolean | 在生成输出时是否启用严格的模式遵循。 如果设置为 true,模型始终遵循字段中 schema 定义的完全模式。 当 strict 是 true时,仅支持部分 JSON 模式。 |
False |
chatCompletionChoiceCommon
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 索引 | 整数 | No | ||
| finish_reason | 字符串 | No |
createTranslationRequest
Translation request.
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文件 | 字符串 | 音频文件需要翻译。 | Yes | |
| 提示 | 字符串 | 可选文本,用于指导模型风格或延续之前的音频片段。 提示应为英文。 | No | |
| response_format | audioResponseFormat | 定义输出格式。 | No | |
| temperature | number | 采样温度在0到1之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 如果设置为0,模型会利用对数概率自动升高温度,直到达到某些阈值。 | No | 0 |
audioResponse
当response_format为json时,翻译或转录响应
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文本消息 | 字符串 | 翻译或转录文本。 | Yes |
audioVerboseResponse
response_format verbose_json翻译或转录反应
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文本消息 | 字符串 | 翻译或转录文本。 | Yes | |
| 任务 | 字符串 | 音频任务类型。 | No | |
| 语言 | 字符串 | Language. | No | |
| duration | number | Duration. | No | |
| segments | 数组 | No |
audioResponseFormat
定义输出格式。
描述:定义输出格式。
Type: string
Default:
Enum Values:
- json
- 文本消息
- srt
- verbose_json
- vtt
createTranscriptionRequest
Transcription request.
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 文件 | 字符串 | 音频文件对象要转录。 | Yes | |
| 提示 | 字符串 | 可选文本,用于指导模型风格或延续之前的音频片段。 提示应与音频语言相匹配。 | No | |
| response_format | audioResponseFormat | 定义输出格式。 | No | |
| temperature | number | 采样温度在0到1之间。 像0.8这样的高值会让输出更随机,而像0.2这样的低值则会让输出更聚焦和确定性强。 如果设置为0,模型会利用对数概率自动升高温度,直到达到某些阈值。 | No | 0 |
| 语言 | 字符串 | 输入音频的语言。 以 ISO-639-1 格式提供输入语言将提升准确性和延迟。 | No |
audioSegment
转录或翻译片段。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| id | 整数 | Segment identifier. | No | |
| seek | number | 偏移分段。 | No | |
| start | number | 分段起始偏移。 | No | |
| end | number | 段端偏移。 | No | |
| 文本消息 | 字符串 | Segment text. | No | |
| tokens | 数组 | 文本的标记。 | No | |
| temperature | number | Temperature. | No | |
| avg_logprob | number | 平均对数概率。 | No | |
| compression_ratio | number | Compression ratio. | No | |
| no_speech_prob | number | 的 no speech概率。 |
No |
imageQuality
生成图像的质量。
描述:将生成的图像质量。
Type: string
Default: standard
枚举名称:质量
Enum Values:
| Value | Description |
|---|---|
| 标准 | 标准质量生成标准质量的图像。 |
| hd | 高清质量能创造出细节更细腻、图像一致性更高的图像。 |
imagesResponseFormat
生成图像返回的格式。
描述:生成图像返回的格式。
Type: string
Default: url
枚举名称:ImagesResponseFormat
Enum Values:
| Value | Description |
|---|---|
| url | 提供临时访问以下载生成图片的URL。 |
| b64_json | 生成的图像以base64编码字符串的形式返回。 |
imageSize
生成图像的大小。
描述:生成图像的大小。
Type: string
Default: 1024x1024
枚库名称:大小
Enum Values:
| Value | Description |
|---|---|
| 1792x1024 | 生成图像的期望尺寸为1792x1024像素。 |
| 1024x1792 | 生成图像的期望尺寸为1024x1792像素。 |
| 1024x1024 | 生成图像的期望尺寸为1024x1024像素。 |
imageStyle
生成图像的风格。
描述:生成图像的风格。
Type: string
Default: vivid
枚举名称:样式
Enum Values:
| Value | Description |
|---|---|
| vivid | Vivid 创造出极其真实且戏剧化的图像。 |
| natural | 自然则创造出更自然、不那么过于写实的图像。 |
imageGenerationsRequest
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| 提示 | 字符串 | 对所需图片的文字描述。 最大长度为4000字符。 | Yes | |
| n | 整数 | 需要生成的图片数量。 | No | 1 |
| size | imageSize | 生成图像的大小。 | No | 1024x1024 |
| response_format | imagesResponseFormat | 生成图像返回的格式。 | No | url |
| 用户 | 字符串 | 一个代表终端用户的唯一标识符,有助于监控和检测滥用行为。 | No | |
| quality | imageQuality | 生成图像的质量。 | No | 标准 |
| 样式 | imageStyle | 生成图像的风格。 | No | vivid |
generateImagesResponse
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| created | 整数 | 操作创建时的Unix时间戳。 | Yes | |
| 数据 | 数组 | 如果操作成功,则为该操作的结果数据 | Yes |
imageResult
如果成功,则显示图片网址或编码图像,否则为错误。
| Name | 类型 | Description | Required | Default |
|---|---|---|---|---|
| url | 字符串 | 图片网址。 | No | |
| b64_json | 字符串 | base64编码图像 | No | |
| content_filter_results | dalleContentFilterResults | 关于内容过滤结果的信息。 | No | |
| revised_prompt | 字符串 | 如果提示词有任何修改,那就是用来生成图片的提示词。 | No | |
| prompt_filter_results | dalleFilterResults | 关于内容过滤类别(仇恨、性、暴力、self_harm)、是否检测到,以及严重程度(very_low、低、中、高,决定有害内容的强度和风险等级),以及是否被过滤。 关于越狱内容和脏话的信息,是否被检测到,以及是否经过过滤。 还有客户黑名单的信息(如果被过滤过的话)和它的ID。 | No |
Completions extensions
完成扩展不包含在最新GA版本的Azure OpenAI数据平面推理规范中。
Chatmessage
聊天消息对象不属于最新 GA 版本的 Azure OpenAI 数据平面推理规范。
文本转语音(预览)
目前不包含在最新的Azure OpenAI GA版本Azure OpenAI数据平面推断规范中。请参阅最新的preview版本以了解此功能。
Next steps
学习模型 知识,以及用REST API进行微调。 详细了解支持 OpenAI 的Azure模型。