创建聊天
BazaarLink 返回标准化响应并移除上游专属字段。usage.cost 是本次请求向客户收取的美元金额。 使用响应 id 或 x-request-id 标头中的不透明 BazaarLink 请求 ID 调用 GET /v1/generation;非流式响应也会在 x-generation-id 中提供该 ID。统计数据可能延迟几秒;若收到 404,请短暂重试。 较长的非流式 Chat、Messages 和 Responses 请求(约 12 秒以上)可能在 JSON 正文前包含空白 keep-alive 填充;标准 JSON 解析器可处理开头空白。 Audio chat 使用此端点;以 modalities:["text","audio"] 和 audio:{voice,format} 请求音频输出。GET /v1/models?output_modalities=audio 仅筛选音频输出能力,不包含所有音频输入模型;仅输入音频、输出文字的模型仍在 text 列表。能力标记不保证模型已有可用路由;请按公开列表与模型支持的参数选择。纯音频输出、TTS、STT 与其他非 token 生成模式不属于此约定。
/v1/chat/completions验证
Authorization必填在 Authorization 标头以 Bearer token 传入 API 密钥。
Body
model必填要使用的模型,供应商前缀格式,例如 "openai/gpt-4o"。 GET /v1/models 列出“claude-sonnet-4.6”等 id,以及“anthropic/claude-sonnet-4.6”等 canonical alias。请求接受两种格式;请使用列表中的 id 或 alias。
"openai/gpt-4o"messages必填对话消息数组,至少一条。每条含 role(system/user/assistant/tool)与 content。
content音频输入放在 messages[].content[]:{"type":"input_audio","input_audio":{"data":"<raw base64>","format":"wav"}}。data 使用原始 base64,不使用 data URI;格式因模型而异。不要使用顶层 input_audio:它没有独立的验证与额度预留约定。
[{"type":"input_audio","input_audio":{"data":"<raw base64>","format":"wav"}}]models备用模型列表——依序尝试,主要模型的候选组全部失败时才会用到。
streamtrue 时以 SSE 串流回应;省略或 false 为一次性 JSON 回应。 音频串流在 choices[].delta.audio 分段返回 data(base64 音频)与 transcript;非串流在 choices[].message.audio 返回。模型也可能提供 id、expires_at。请累积片段后依 audio.format 解码,串流格式因模型而异。
temperature采样温度,越高越随机、越低越确定。采样值不做范围验证;模型可能会截断或忽略超出支持范围的值。
max_tokens响应可生成的最大 token 数。
max_completion_tokensmax_tokens 的别名,语义相同。
top_p核采样(nucleus sampling)阈值。
top_k限制采样时只从概率最高的 K 个 token 中选。
frequency_penalty依 token 已出现的频率惩罚重复。
presence_penalty依 token 是否曾出现过(不论次数)惩罚重复。
repetition_penalty重复 token 的惩罚系数,独立于 frequency/presence penalty 的另一种机制。
min_p相对于最高概率 token 的最小概率门槛。
top_a另一种动态调整采样范围的机制,依最高概率的平方缩放门槛。
seed确定性采样种子;非所有供应商都保证可重现。
n要生成的回应数量。
stop遇到即停止生成的字符串,最多 4 个。
tools模型可调用的工具/函数定义列表。
tool_choice控制模型是否/如何被强制调用工具。
parallel_tool_calls有提供 tools 时,是否允许并行工具调用。默认 true。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。
response_format限制输出格式,例如 {type:"json_object"} 或带 JSON Schema 的 {type:"json_schema"}。
logit_bias把 token ID 对映到 [-100, 100] 的偏差值,在采样前加上。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。
logprobs返回每个输出 token 的对数概率。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。
top_logprobs每个位置返回概率最高的候选 token 数(需搭配 logprobs: true)。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。
user终端使用者识别码,用于监控与滥用侦测。对计费无影响。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。
reasoning推理模型的思考控制对象(例如 {effort, max_tokens})。
reasoning_effortreasoning.effort 的简写平面字段。
lowmediumhighinclude_reasoningtrue 时在 message.reasoning(流式为 delta.reasoning)返回思考内容;false 则为默认会思考的模型关闭思考(见推理章节),因此不会计思考费用。没有带 reasoning_effort、reasoning 或 thinking 时,只有这些模型会默认思考并返回;其他模型要带参数才会返回。
image_config图片生成/图生图选项(当 modalities 含 image 时使用)。
modalities要求的输出模态。含 image 时走图片生成派工路径。 Audio chat 使用 ["text","audio"] 搭配 audio 对象,并要求模型同时支持文字与音频输出。
textimageaudio["text","audio"]audioAudio 输出选项,需搭配 modalities:["text","audio"];voice 与 format 因模型而异,并非所有模型都接受相同的值。
{"voice":"alloy","format":"wav"}voice模型支持的音色,例如 alloy。
"alloy"format模型支持的输出格式,例如 wav;串流常用 pcm16,请确认模型支持。
"wav"plugins插件数组(例如 {id:"web"} 启用网页搜索)。仅部分模型路由支持,其他情况无效;:online 会在支持的路由上启用网页搜索。通过 plugins、:online 或 web_search_options 请求的搜索可能产生上游附加费用,由请求使用的密钥承担:平台密钥由 BazaarLink 支付上游费用,BYOK 则由你的供应商密钥支付。