跳转到主要内容
创建Message对话,并获取模型生成的响应数据。该接口兼容 Anthropic Messages API 格式,可直接复用 Anthropic SDK 或相同的 JSON 结构接入。
本文仅列出当前已确认支持的字段;未在本文出现的字段请不要传入。

请求地址

POST https://api.stepfun.com/v1/messages
Step Plan 场景请使用 POST https://api.stepfun.com/step_plan/v1/messages

请求参数

  • model string required
    模型名称,填写当前账号已开通的公开模型名称,例如 step-3.5-flash
  • messages object array required
    对话消息列表,至少一条
  • max_tokens int required
    最大生成 token 数,必须大于 0
  • system string or array optional
    系统提示词;可传字符串,或由文本块组成的数组
  • tools object array optional
    工具定义列表
  • output_config object optional
    结构化输出配置
  • stream boolean optional
    是否启用流式返回,默认非流式
  • temperature float optional
    采样温度,取值范围 0 到 2
  • top_p float optional
    nucleus sampling 参数,取值范围大于 0 且小于等于 1
  • top_k int optional
    top-k 参数,取值范围 0 到 500
  • stop_sequences string array optional
    停止序列列表,生成内容中遇到任意一个停止序列时停止生成

请求响应

非流式响应

Content-Type: application/json
{
    "id": "msg_xxx",
    "type": "message",
    "role": "assistant",
    "stop_reason": "end_turn",
    "usage": {
        "input_tokens": 20,
        "output_tokens": 12
    },
    "content": [
        {
            "type": "text",
            "text": "我是一个 AI 助手。"
        }
    ]
}
响应字段说明
  • id string
    消息的唯一标识
  • type string
    对象类型,总是为 message
  • role string
    角色名称,总是为 assistant
  • content object array
    返回内容块列表;常见为 text,工具调用场景下也可能返回 tool_use
  • stop_reason string
    生成停止原因,可选值为 end_turntool_usemax_tokens
  • usage object
    token 用量统计,至少包含 input_tokensoutput_tokens

流式响应

Content-Type: text/event-stream 流式返回采用标准 SSE 格式,每个事件包含 event:data: 两部分,data: 的内容为 JSON。 常见事件类型:message_startcontent_block_startcontent_block_deltacontent_block_stopmessage_deltamessage_stopping 当返回工具调用参数时,content_block_delta.delta.type 可能为 input_json_delta
event: message_start
data: {"type":"message_start","message":{"id":"msg_xxx","type":"message","role":"assistant","model":"step-3.5-flash"}}

event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}

event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"你"}}

event: message_delta
data: {"type":"message_delta","stop_reason":"end_turn","usage":{"input_tokens":20,"output_tokens":12}}

event: message_stop
data: {"type":"message_stop"}

示例

from anthropic import Anthropic

client = Anthropic(api_key="STEP_API_KEY", base_url="https://api.stepfun.com/v1")

message = client.messages.create(
    model="step-3.5-flash",
    max_tokens=1024,
    system="你是由阶跃星辰提供的AI聊天助手,你擅长中文、英文及多种语言。在保证用户数据安全的前提下,快速精准地回答用户问题。",
    messages=[
        {
            "role": "user",
            "content": "请用一句话介绍你自己。"
        }
    ],
)

print(message)
{
    "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
    "type": "message",
    "role": "assistant",
    "stop_reason": "end_turn",
    "usage": {
        "input_tokens": 35,
        "output_tokens": 20
    },
    "content": [
        {
            "type": "text",
            "text": "我是阶跃星辰提供的AI聊天助手,能够用中文、英文等多种语言快速精准地回答您的问题。"
        }
    ]
}