POST https://ark.cn-beijing.volces.com/api/v3/batch/chat/completions
本文介绍方舟的批量推理API的输入输出参数,可通过该接口,向大模型发起批量推理的请求。通过这种方式您可以享受到更高的限流配额,适合进行大批量数据处理时使用。
BatchChatCompletions接口参数除了不支持流式调用外,字段与接口ChatCompletions-文本生成一致。
本接口支持 API Key 鉴权方式,详见鉴权认证方式。
如果您需要使用Access Key来调用,可以使用接口来获取临时API Key,然后使用临时API Key进行鉴权。接口说明请参见GetApiKey - 获取临时API 。
请参见参数说明及配置建议。
参数名称 | 类型 | 是否必填 | 默认值 | 描述 | 示例值 |
---|---|---|---|---|---|
model | String | 是 | - | 您创建的推理接入点(Endpoint)ID。 | ep-bi-202406040*****-***** |
messages | Array of MessageParam | 是 | - | 由目前为止的对话组成的消息列表,包含用户输入的最后一条消息。 | - |
stream | Boolean | 否 | false | 批量推理不支持流式返回。故该字段取值范围为:
| false |
max_tokens | Integer | 否 | 4096 | 配置模型最大回复的长度,超出长度的回复会进行截断。 注意
| 4096 |
stop | String or Array | 否 | - | 模型遇到 | ["你好", "天气"] |
frequency_penalty | Float | 否 | - | 频率惩罚系数。如果值为正,会根据新 token 在文本中的出现频率对其进行惩罚,从而降低模型逐字重复的可能性。取值范围为 [-2.0, 2.0]。
| |
presence_penalty | Float | 否 | - | 存在惩罚系数。如果值为正,会根据新 token 到目前为止是否出现在文本中对其进行惩罚,从而增加模型谈论新主题的可能性。取值范围为 [-2.0, 2.0]。
| |
temperature | Float | 否 | 1 | 采样温度。控制了生成文本时对每个候选词的概率分布进行平滑的程度。取值范围为 [0, 1]。 | 0.8 |
top_p | Float | 否 | 0.7 | 核采样概率阈值。模型会考虑概率质量在 | 0.8 |
logprobs | Boolean | 否 | false | 是否返回输出 token 的对数概率。
| false |
top_logprobs | Integer | 否 | 0 | 指定每个输出 token 位置最有可能返回的 token 数量,每个 token 都有关联的对数概率。仅当 | 2 |
logit_bias | Map<String, Integer> | 否 | - | 调整指定 token 在模型输出内容中出现的概率,使模型生成的内容更加符合特定的偏好。
| - |
tools | Array of ToolParam | 否 | - | 模型可以调用的工具列表。目前,仅函数作为工具被支持。用这个来提供模型可能为其生成 JSON 输入的函数列表。 | - |
tool_choice | String or ToolChoiceParam | 否 | 当没有工具时,默认为 | 控制模型调用哪个工具。
可以通过 | - |
参数名称 | 类型 | 是否必填 | 描述 |
---|---|---|---|
role | String | 是 | 发出该消息的对话参与者的角色,此处应设置为 |
content | String | 否 | 系统消息
|
参数名称 | 子字段 | 类型 | 是否必填 | 描述 |
---|---|---|---|---|
role | - | String | 是 | 发出该消息的对话参与者的角色,此处应设置为 |
content | - | String | 是 | 用户消息内容,文本生成模型仅支持 String 类型。 |
参数名称 | 类型 | 是否必填 | 描述 |
---|---|---|---|
role | String | 是 | 发出该消息的对话参与者的角色,此处应设置为 |
content | String | 是 | 模型的消息回复。
|
tool_calls | Array of MessageToolCallParam | 否 | 模型生成的工具调用。当 |
tool_call_id | String | 否 | 此消息所回应的工具调用 ID,当 |
参数名称 | 子字段 | 类型 | 是否必填 | 默认值 | 描述 | 示例值 |
---|---|---|---|---|---|---|
id | - | String | 是 | - | 当前工具调用 ID | call_5y********** |
type | - | String | 是 | - | 工具类型,当前仅支持 | function |
function | - | Object | 是 | - | 模型需要调用的函数 | - |
name | String | 是 | - | 模型需要调用的函数名称 | get_current_weather | |
arguments | String | 是 | - | 模型生成的用于调用函数的参数,JSON 格式。请注意,模型并不总是生成有效的 JSON,并且可能会虚构出一些您的函数参数规范中未定义的参数。在调用函数之前,请在您的代码中验证这些参数是否有效。 | {"location": "Boston, MA"} |
参数名称 | 子字段 | 类型 | 是否必填 | 默认值 | 描述 | 示例值 |
---|---|---|---|---|---|---|
type | - | String | 是 | - | 工具类型,当前仅支持 | function |
function | - | Array of Object | 是 | - | 模型可以调用的工具列表。 | - |
name | String | 是 | - | 函数的名称。 | get_current_weather | |
description | String | 否 | - | 对函数用途的描述,供模型判断何时以及如何调用该工具函数。 | 获取指定城市的天气信息 | |
parameters | Object of ToolChoiceParam | 否 | - | 函数请求参数,以 JSON Schema 格式描述。具体格式请参考 JSON Schema 文档。
| - |
参数名称 | 子字段 | 类型 | 是否必填 | 默认值 | 描述 | 示例值 |
---|---|---|---|---|---|---|
type | - | String | 是 | - | 指定工具的类型,当前仅允许取值为 |
|
function | - | Object | 是 | - | 当指定工具类型为 | - |
name | String | 是 | - | 想要调用的函数的名称。 | - |
只支持非流式调用,不支持流式调用。
参数名称 | 子字段 | 类型 | 描述 |
---|---|---|---|
id | - | String | 一次 chat completion 接口调用的唯一标识。 |
choices | - | Array | 本次 chat 结果列表。长度固定为 1。 |
index | Integer | 该元素在 choices 列表的索引。 | |
message | Object | 模型输出的消息内容。 | |
finish_reason | String | 模型生成结束原因:
| |
logprobs | Object | 该输出结果的概率信息,其只有一个
| |
moderation_hit_type | String | 模型输出文字含有敏感信息时,会返回该字段,表示模型输出文字命中的风险分类标签。
注意:只有在方舟控制台接入点配置页面或者 CreateEndpoint 接口中,将内容护栏方案(ModerationStrategy)设置为基础方案(Basic)时,才会返回风险分类标签。 | |
created | - | Integer | 本次对话生成的时间戳(秒)。 |
model | - | String | 实际使用的模型名称和版本。 |
object | - | String | 固定为 chat.completion。 |
usage | - | Object | 本次请求的 token 用量。 |
prompt_tokens | Integer | 本次请求中输入的 token 数量。 | |
completion_tokens | Integer | 模型生成的 token 数量。 | |
total_tokens | Integer | 总的 token 数量。 | |
prompt_tokens_details | Object |
prompt_tokens中命中上下文缓存的tokens数。需要模型支持,且开通上下文缓存功能,并创建缓存才会启用,详细见上下文缓存(Context API)概述。
|
curl https://ark.cn-beijing.volces.com/api/v3/batch/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <ARK_API_KEY>" \ -d '{ "model":"<YOUR_BATCH_ENDPOINT_ID>", "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": "Hello!" } ] }'
因为是批量推理,可能会花费较长时间响应。
{ "choices": [ { "finish_reason": "stop", "index": 0, "logprobs": null, "message": { "content": "Hi! How are you doing today? ", "role": "assistant" } } ], "created": 1737712400, "id": "02173771227233356c18c****", "model": "doubao-pro-32k-241215", "object": "chat.completion", "usage": { "completion_tokens": 10, "prompt_tokens": 20, "total_tokens": 30, "prompt_tokens_details": { "cached_tokens": 0 } } }
本接口调用失败的返回结构和参数释义请参见返回结构文档。
错误码请参见公共错误码。
调用批量推理接入点:使用Batch chat 接口实现批量推理教程,建议阅读。