与星火接口调用方式一致,部分参数传参有差异,详见参数说明。
1 OpenAI_Chat
1.1 请求参数
model可选值:在api调用处获取的modelid,例如:xopglm53
本次请求使用的model。
user可选值:建议仅使用
a-z、A-Z、0-9、-、_,最大 512 字符业务侧自定义的终端用户标识,可用于区分不同用户。请勿传入用户隐私信息。
messages可选值:至少包含 1 条消息
对话消息列表,按时间顺序组成当前会话上下文。
role可选值:
system / user / assistant / tool消息的发起角色。
content可选值:字符串或 Content Part 数组
消息内容。字符串表示纯文本;数组形式当前仅支持
type=text 的文本内容。type可选值:
textContent Part 类型,当前仅支持文本。
temperature可选值:取值为 [0, 1]
默认值为 0.7
默认值为 0.7
核采样阈值。用于决定结果随机性,取值越高随机性越强,即相同的问题得到不同答案的可能性越高。
top_p可选值:取值为 [0, 1]
核采样阈值。值越小,候选词范围越集中,输出越稳定。
presence_penalty可选值:
[-2.0,2.0],默认 0根据某个词是否已经出现施加惩罚。正值鼓励模型讨论新内容,负值提高重复已有内容的倾向。
frequency_penalty可选值:
[-2.0,2.0],默认 0根据某个词已经出现的次数施加惩罚。正值减少重复表达,负值增加重复倾向。
stream可选值:
默认值:
true / false默认值:
false是否开启流式输出。设为
true 时,服务端通过 SSE 持续返回消息增量,并以 data: [DONE] 结束。max_tokens可选值:正整数,
< 256K该字段已废弃,仅用于兼容旧版调用,请改用
max_completion_tokens。max_completion_tokens可选值:正整数;实际上限受模型上下文长度和最大输出长度限制
单次 completion 可生成的 Token 数上限,包括最终可见输出 Token 和推理过程中使用的 reasoning tokens。
tool_choice可选值:
默认值:未提供
none / auto / required / 指定函数对象 / allowed_tools 对象默认值:未提供
tools 时为 none;提供 tools 时为 auto控制模型是否调用工具以及调用哪些工具。
tools可选值:最多 128 个工具;支持
function / web_search模型可调用的工具列表。
type可选值:
function / web_search工具类型。自定义函数使用
function;内置网络搜索使用 web_search。function可选值:Function 定义对象
Function Calling 的函数定义。
name可选值:仅允许字母、数字、
_、-,最大 64 字符要调用的 Function 名称。
description可选值:字符串
Function 的功能说明,用于帮助模型判断何时以及如何调用该函数。
parameters可选值:JSON Schema object
Function 的输入参数定义。省略时表示该 Function 不要求输入参数。
required可选值:JSON Schema 字段名数组
指定 Function 调用时必须生成的参数字段。
web_search可选值:object
当
tools[].type=web_search 时使用。enable可选值:
true / false网络搜索开关。
enable_thinking默认值:false
默认为 false。true 表示开启深度思考模式(仅部分模型支持)。注意:使用 OpenAI SDK 时,此参数需放在 extra_body 对象中。
reasoning_effort可选值:high / max
默认值:high
当前支持 GLM-5.3、GLM-5.2、DeepSeek-V4-Flash、DeepSeek-V4-Pro。
默认值:high
当前支持 GLM-5.3、GLM-5.2、DeepSeek-V4-Flash、DeepSeek-V4-Pro。
指导模型在响应前生成多少推理内容。思考模式下,普通请求默认 effort 为 high;兼容映射:low、medium 映射为 high,xhigh 映射为 max。
1.2 调用示例
bash
curl https://maas-api.cn-huabei-1.xf-yun.com/v2/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $APIKEY" \
-d '{
"model": "xopglm53",
"messages": [
{"role": "user", "content": "你好。"}
],
"stream": false
}'python
import requests
response = requests.post(
"https://maas-api.cn-huabei-1.xf-yun.com/v2/chat/completions",
headers={
"Authorization": "Bearer <你的 APIKEY>",
"Content-Type": "application/json",
},
json={
"model": "xopglm53",
"messages": [{"role": "user", "content": "你好。"}],
"stream": False,
},
)
print(response.json())go
package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
func main() {
body := map[string]any{
"model": "xopglm53",
"messages": []map[string]string{
{"role": "user", "content": "你好。"},
},
"stream": false,
}
data, err := json.Marshal(body)
if err != nil {
panic(err)
}
req, err := http.NewRequest(
http.MethodPost,
"https://maas-api.cn-huabei-1.xf-yun.com/v2/chat/completions",
bytes.NewReader(data),
)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer <你的 APIKEY>")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
result, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(result))
}javascript
const response = await fetch("https://maas-api.cn-huabei-1.xf-yun.com/v2/chat/completions", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.APIKEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "xopglm53",
messages: [{ role: "user", content: "你好。" }],
stream: false,
}),
});
console.log(await response.json());1.3 响应
1.3.1 非流式
code可选值:
0 表示成功,非 0 表示错误业务错误码;发生业务错误时使用。
message业务错误描述信息。
id本次 Chat Completion 的唯一标识。
object可选值:固定为
chat.completion响应对象类型。
created可选值:Unix 时间戳,单位为秒
Chat Completion 的创建时间。
model_id实际用于生成 completion 的模型 ID。
choices模型生成的 completion 结果列表。
index可选值:
>= 0当前 completion 在
choices 中的索引。finish_reason可选值:
stop / length / tool_calls模型停止生成的原因:自然结束、达到长度限制,或模型生成了工具调用。
message模型生成的 assistant 消息。
role可选值:固定为
assistant生成消息的角色。
content模型最终生成的正文内容。工具调用场景下可能为空。
reasoning_content思考模式下,在最终答案之前生成的推理内容。
tool_calls模型生成的工具调用列表。
id工具调用 ID。
type可选值:固定为
function工具调用类型。
functionname模型选择调用的 Function 名称。
arguments可选值:JSON 字符串
模型生成的 Function 调用参数。执行 Function 前应由调用方校验 JSON 和参数合法性。
usage本次请求的 Token 使用统计。
prompt_tokens可选值:
>= 0输入消息消耗的 Token 数。
prompt_tokens_details输入 Token 的详细统计。
cached_tokens可选值:
>= 0输入中命中缓存的 Token 数。
completion_tokens可选值:
>= 0模型生成 completion 消耗的 Token 数。
completion_tokens_detailscompletion Token 的详细统计。
reasoning_tokens可选值:
>= 0思考模式产生的推理 Token 数。
total_tokens可选值:
>= 0输入 Token 与输出 Token 的总和。
1.3.2 流式
code可选值:
0 表示成功,非 0 表示错误业务错误码;发生业务错误时使用。
message业务错误描述信息。
id本次 Chat Completion 的唯一标识,同一次流式请求中的 chunk 使用同一请求标识。
object可选值:固定为
chat.completion.chunk流式响应对象类型。
created可选值:Unix 时间戳,单位为秒
当前 chunk 的创建时间。
model_id实际用于生成 completion 的模型 ID。
choices当前流式 chunk 中的 completion 增量列表。
delta当前流式结果增量。
role可选值:
assistant / null生成消息的角色,通常在首个 chunk 中返回。
reasoning_content思考模式下的推理内容增量。
content最终正文内容增量。
index可选值:
>= 0当前 completion 在
choices 中的索引。finish_reason可选值:
stop / length / tool_calls / null生成过程中通常为
null;生成结束时支持 stop、length 或 tool_calls。usageToken 使用统计,通常在结束阶段返回。
prompt_tokens可选值:
>= 0输入 Token 数。
prompt_tokens_details输入 Token 详细统计。
cached_tokens可选值:
>= 0输入中命中缓存的 Token 数。
completion_tokens可选值:
>= 0输出 Token 数。
completion_tokens_detailscompletion Token 详细统计。
reasoning_tokens可选值:
>= 0思考模式产生的推理 Token 数。
total_tokens可选值:
>= 0输入 Token 与输出 Token 的总和。
2 OpenAI_Response
2.1 请求参数
model可选值:在api调用处获取的modelid,例如:xopglm53
指定用于生成响应的模型 ID。
input可选值:字符串或输入项数组
模型输入。字符串形式用于直接传入文本;数组形式用于传入结构化输入项。
instructions插入模型上下文中的系统级指令,用于约束模型整体行为。
stream可选值:
默认值:
true / false默认值:
false是否开启流式响应。设为
true 时,服务端通过 SSE 按事件持续返回响应增量。tools模型在生成响应过程中可以调用的工具集合。
type可选值:
function工具类型,当前仅支持
function。name工具函数名称。
description工具功能描述,帮助模型判断何时调用此工具。
parameters以 JSON Schema 格式定义工具参数。
tool_choice可选值:
auto / none / required / 指定函数对象控制模型是否以及如何调用工具。
reasoning思考模式配置,控制模型在生成最终回复前是否执行内部推理及推理深度。
effort可选值:
low / medium / high推理深度。
low 速度最快;high 推理最深入。text文本输出格式配置。
format输出格式定义。
type可选值:
text / json_object / json_schema输出格式类型。
max_output_tokens本次请求生成的最大输出 Token 数。
temperature可选值:
[0, 1],默认 0.7核采样阈值。取值越高随机性越强。
top_p可选值:
[0, 1]核采样阈值。值越小,候选词范围越集中,输出越稳定。
user业务侧自定义的终端用户标识。
2.2 请求示例
bash
curl https://maas-api.cn-huabei-1.xf-yun.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $MAAS_API_KEY" \
-d '{
"model": "your-model-id",
"input": "你好,请介绍一下自己。",
"stream": false
}'python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get("MAAS_API_KEY"),
base_url="https://maas-api.cn-huabei-1.xf-yun.com/v1"
)
response = client.responses.create(
model="your-model-id",
input="你好,请介绍一下自己。"
)
print(response.output_text)2.3 响应参数
2.3.1 非流式响应
idResponse 唯一标识。
object可选值:
response对象类型标识。
status可选值:
completed / failed / in_progress / incompleteResponse 状态。
model_id实际用于生成响应的模型 ID。
output模型生成的输出项列表。
type可选值:
message / function_call / reasoning输出项类型。
id输出项唯一标识。
role可选值:
assistant消息角色(type=message 时存在)。
content消息内容块列表(type=message 时存在)。
type可选值:
output_text内容块类型。
text模型生成的文本内容。
output_text所有输出文本内容的聚合便捷字段。
usage本次请求的 Token 使用情况。
input_tokens本次请求消耗的输入 Token 数。
output_tokens本次请求消耗的输出 Token 数。
total_tokens输入与输出 Token 的总和。
2.3.2 流式响应
流式响应以 SSE 事件形式返回,每条事件包含 event 字段和 data 字段。
event可选值:
response.created / response.in_progress / response.output_item.added / response.content_part.delta / response.completedSSE 事件类型,标识当前数据帧的语义。
response事件中携带的完整 Response 对象。
idResponse 唯一标识。
status可选值:
completed / failed / in_progress / incompleteResponse 状态。
model_id实际用于生成响应的模型 ID。
3 Anthropic
3.1 请求参数
model可选值:在api调用处获取的modelid,例如:xopglm53
指定本次请求用于生成下一条消息的模型 ID。
messages可选值:至少包含 1 条消息
输入消息序列,用于构成当前请求的会话上下文。
role可选值:
user / assistant消息角色。
content可选值:字符串或 Content Block 数组
消息内容。字符串写法表示普通文本;数组写法用于组合多个 Content Block。
type可选值:
text / thinking / tool_use / tool_resultContent Block 类型。
text文本内容(type=text 时使用)。
thinking历史思考内容(type=thinking 时使用)。
id工具调用 ID(type=tool_use 时使用)。
name工具名称(type=tool_use 时使用)。
input工具调用参数(type=tool_use 时使用)。
tool_use_id对应的工具调用 ID(type=tool_result 时使用)。
content工具执行结果(type=tool_result 时使用)。
max_tokens本次请求允许生成的最大 Token 数。
system系统级提示,用于设定模型行为、背景信息或角色设定。
temperature可选值:
[0, 1],默认 0.7核采样阈值。取值越高随机性越强。
top_p可选值:
[0, 1]核采样阈值。值越小,候选词范围越集中,输出越稳定。
stream可选值:
true / false是否开启流式响应。
tools模型可调用的工具列表。
name工具名称。
description工具功能描述,帮助模型判断何时调用。
input_schema以 JSON Schema 格式定义工具参数结构。
clear_thinking默认值:
false是否在响应中清除思考内容,设为
true 时响应不返回思考过程。stop_sequences自定义停止序列列表,模型在生成这些序列时会停止输出。
enable_thinking默认值:
false是否启用模型深度思考模式。启用后模型会先进行内部推理再输出回复。
reasoning_effort可选值:
low / medium / high思考深度,仅在
enable_thinking=true 时生效。low 速度最快,high 推理最深入。3.2 请求示例
bash
curl https://maas-api.cn-huabei-1.xf-yun.com/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: $MAAS_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "your-model-id",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "你好,请介绍一下自己。"}
]
}'python
import anthropic
client = anthropic.Anthropic(
api_key="your-api-key",
base_url="https://maas-api.cn-huabei-1.xf-yun.com"
)
message = client.messages.create(
model="your-model-id",
max_tokens=1024,
messages=[
{"role": "user", "content": "你好,请介绍一下自己。"}
]
)
print(message.content)3.3 响应参数
3.3.1 非流式响应
id响应唯一标识。
type可选值:
message对象类型标识。
role可选值:
assistant响应角色。
model_id实际用于生成响应的模型 ID。
stop_reason可选值:
end_turn / max_tokens / stop_sequence / tool_use模型停止生成的原因。
content响应内容块列表。
type可选值:
text / thinking / tool_use内容块类型。
text文本内容(type=text 时存在)。
thinking思考过程内容(type=thinking 时存在)。
id工具调用 ID(type=tool_use 时存在)。
name工具名称(type=tool_use 时存在)。
input工具调用参数(type=tool_use 时存在)。
usage本次请求的 Token 使用情况。
input_tokens本次请求消耗的输入 Token 数,不包含缓存命中部分。
output_tokens本次请求消耗的输出 Token 数。
cache_read_input_tokens缓存命中的输入 Token 数;未命中时可能返回
-1。3.3.2 流式响应
流式响应以 SSE 事件形式返回,按 message_start → content_block_* → message_delta → message_stop 顺序推送。
event可选值:
message_start / content_block_start / content_block_delta / content_block_stop / message_delta / message_stopSSE 事件类型,标识当前数据帧的语义。
indexContent Block 的索引,用于把同一内容块的 start、delta、stop 事件关联起来。
deltacontent_block_delta / message_delta 事件中携带的增量数据。type可选值:
thinking_delta / text_delta / input_json_delta增量类型,分别对应思考、正文和工具参数增量。
thinkingthinking_delta 时的思考文本增量,应按事件顺序拼接。texttext_delta 时的正文文本增量,应按事件顺序拼接为最终内容。stop_reason可选值:
end_turn / tool_use本轮最终停止原因,在
message_delta 事件中返回。