创建Chat Completion
创建AI聊天对话,并获取模型生成的聊天响应数据
请求地址
POST https://api.stepfun.com/v1/chat/completions
请求参数
-
modelstringrequired
需要使用的模型名称 -
messagesobject arrayrequired
迄今为止用户输入或模型生成的不同类别消息列表展开/收起
-
系统消息
object展开/收起
rolestring
系统类别名称,总是为
systemcontentstring
系统消息的文本内容
- 用户消息
object
展开/收起
rolestring
用户类别名称,总是usercontentstring or object array
用户消息内容,类型为multipart消息列表或者普通文本消息字符串
展开/收起
普通文本消息stringmultipart消息列表object array
结构化的图、视频、音频、文字混合消息
展开/收起
- 文本消息
object
展开/收起
typestring
总为texttextstring
消息文本内容
- 图片消息
object
展开/收起
typestring
总为image_urlimage_urlobject
展开/收起
urlstring图片地址或base64编码的图片,图片格式:jpg/jpeg、png、webp、静态gif,仅支持http和https协议。
base64格式举例:data:image/jpeg;base64,${base64_string},请更换图片格式(jpeg)及对应的base64编码后字符串detailstringoptional是否开启detail模式:
low/high可选,默认为low模式low模式下,图片会被缩放到固定尺寸,token数量固定在400左右high模式下,模型会提供更详细、更丰富的信息,在大图、OCR、极端长宽比的场景会有比较好的表现,token数会根据图片的实际情况而变化
- 视频消息
object
展开/收起
typestring
总为video_urlvideo_urlobject
展开/收起
urlstring视频的URL地址,视频格式:video/mp4,仅支持http和https协议,视频内容要小于128M,时长建议小于5分钟。
- 音频消息
object
展开/收起
typestring
总为input_audioinput_audioobject
展开/收起
datastring音频内容,为音频的base64编码。
base64格式举例:data:audio/mpeg;base64,${base64_string},请更换音频格式(当前仅支持 mp3 和wav)及对应的base64编码后字符串
- 工具函数消息
object
展开/收起
rolestring
系统类别名称,总是为toolcontentstring
函数执行得到的内容tool_call_idstring
执行函数的ID,由assistant在上一轮对话中返回。
- 聊天助手消息
object
展开/收起
rolestring
聊天助手类别名称,总是为assistantcontentstring | null
聊天助手消息的文本内容
-
-
toolsobject arrayoptional
Toolcall支持的函数列表展开/收起
typestring
工具类型,总是为
function*functionobject函数内容的描述
展开/收起
namestring
函数名称,要求纯英文、数字和_-符号,建议不要超过64个字符长度。 -
descriptionstring函数描述,支持中英文,它用于告诉模型函数实现何种功能和目的,方便模型来判断和选择。 -
parametersobject函数的参数
展开/收起
typeobject
参数描述,一般为object -
propertiesobject函数参数内容,以key为参数的名称,然后通过
type和description描述参数的类型和介绍。展开/收起
typestring|number|integer|object|array|boolean
参数类型,可以参考json-schema 介绍 -
descriptionstring
函数参数描述,支持中英文,它用于告诉模型函数参数的含义。 -
audioobjectoptional
用于控制音频输出的参数,只在支持端到端模型场景的模型下生效(step-1o-audio/step-audio-2/step-audio-2-mini/step-audio-r1.1)展开/收起
voicestringrequired
指定生成音频的声音ID,对于 step-1o-audio 可通过获取声音列表接口查询可用的声音ID,对于 step-audio-2 系列模型,可用wenrounansheng(温柔男声)、qingchunshaonv(青春少女)、livelybreezy-female(活力少女)、elegantgentle-female(高雅女声)四种声音ID。formatstringrequired
指定生成音频的格式,支持pcm和wav两种格式,在非流式场景下(stream=false)支持 wav 输出;在流式场景下(stream=true)时,只支持 pcm 输出(24khz, 单声道, 16bit)。
-
modalitiesstring arrayoptional
指定输出的模态类型,支持text、audio两种模态类型,只在端到端模型场景下必填。如果需要模型输出音频,则需要将audio添加到该参数中,建议设置为["text", "audio"]。 -
max_tokensintoptional
聊天需要生成的标记最大数量,默认值为INF(不作限制,由模型自动决定)。输入标记和生成标记的总数量受限于指定模型的最大上下文长度。 -
temperaturefloatoptional
采样温度,介于0.0和2.0之间的数字。较高值(如0.8)会使生成更随机,较低值(如0.2)会使其生成结果更集中且确定。默认值为0.5 -
top_pfloatoptional
核心采样,该值会使模型生成具有top_p概率质量的标记并输出到结果。默认值为0.9 -
nintoptional
控制模型为每个输入消息生成的响应消息结果条数,默认值为1,最大不限,建议不超过5。 -
streambooloptional
是否流式生成响应消息,默认值为false -
stopstring | string arrayoptional
用于指导模型生成聊天响应过程中,是否遇到stop中的内容,进行生成中断,默认为空 -
frequency_penaltyfloatoptional
默认为0。介于0.0和1.0之间的数字。值较高会使模型生成某token时,根据其过往在生成文本中出现的频度,进行后续降频惩罚,从而降低模型重复生成相同内容的可能性 -
response_formatobjectoptional
用于指导模型输出特定格式的内容。默认为{"type":"text"},表示输出文本。设置为{ "type": "json_object" }可以开启 JSON Mode,输出可解析的 JSON 结构。 -
reasoning_formatobjectoptional
用于指导模型输出时使用的 reasoning 字段;默认为general,表示通用推理,使用reasoning字段返回结果;可选项为 [general,deepseek-style]。当设置为deepseek-style时,可使用 DeepSeek 兼容的的reasoning_content字段获取到 reasoning 内容。
请求响应
返回Chat Completion响应对象,或者Chat Completion流式响应对象块
示例
from openai import OpenAI
client = OpenAI(api_key = "STEP_API_KEY", base_url = "https://api.stepfun.com/v1")
completion = client.chat.completions.create(
model = "step-3.5-flash",
messages = [
{
"role": "system",
"content": "你是由阶跃星辰提供的AI聊天助手,你擅长中文,英文,以及多种其他语言的对话。在保证用户数据安全的前提下,你能对用户的问题和请求,作出快速和精准的回答。同时,你的回答和建议应该拒绝黄赌毒,暴力恐怖主义的内容",
},
{
"role": "user",
"content": "你好,请介绍一下阶跃星辰的人工智能!"
}
],
)
print(completion)
{
"id": "e2eb4b00d2c226517de3882f17d9664b.ffead889783a0bcd8d2bd17ea4d4c2af",
"object": "chat.completion",
"created": 1772624997,
"model": "step-3.5-flash",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "阶跃星辰(StepFun)是一家专注于**多模态人工智能技术研发与应用**的科技公司,致力于推动大模型(LLM)在文本、图像、逻辑推理等多领域的融合创新。其核心产品 **Step AI**(又称Step模型)具备以下特点:\n\n---\n\n### 🔍 **核心能力**\n1. **多模态融合** \n - 不仅能处理文本,还可理解图片、图表等视觉信息,实现跨模态推理(例如根据图片描述内容、解答视觉逻辑题)。\n2. **强大的逻辑与知识能力** \n - 在数理逻辑、代码生成、专业知识问答等场景表现突出,支持复杂任务拆解与精准分析。\n3. **多语言支持** \n - 覆盖中、英及多语种交流,适应全球化场景。\n4. **安全与合规** \n - 严格遵循内容安全规范,拒绝生成暴力、仇恨、虚假信息等有害内容,注重用户隐私保护。\n\n---\n\n### 🌟 **技术亮点**\n- **自主研发大模型架构**:针对多模态任务优化,提升视觉-语言对齐能力。\n- **高效推理与低能耗设计**:在保证性能的同时,兼顾部署效率。\n- **持续迭代能力**:通过数据与算法优化,动态提升模型的理解与生成质量。\n\n---\n\n### 🚀 **应用场景**\n- **教育科研**:辅助解题、文献分析、多学科知识问答。\n- **办公创作**:文档总结、代码辅助、创意文案生成。\n- **工业与商业**:数据分析报告生成、多模态信息检索、智能客服升级。\n- **日常生活**:跨语言交流、图像内容解读、个性化知识助手。\n\n---\n\n### 🌍 **价值观与愿景**\n阶跃星辰强调 **“技术向善”**,推动AI在安全、可靠、有益的方向发展,致力于成为多模态智能时代的引领者,让技术服务于社会创新与人类福祉。\n\n---\n\n如需了解具体技术细节或应用案例,可进一步探讨! 🌟"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 85,
"completion_tokens": 701,
"total_tokens": 786
}
}