BazaarLinkBazaarLink
登入
文件API 参考SDK 参考Agent 应用AI Skills
聊天

创建聊天

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 生成模式不属于此约定。

POST/v1/chat/completions

验证

Authorization必填
string · header

在 Authorization 标头以 Bearer token 传入 API 密钥。

Body

model必填
string

要使用的模型,供应商前缀格式,例如 "openai/gpt-4o"。 GET /v1/models 列出“claude-sonnet-4.6”等 id,以及“anthropic/claude-sonnet-4.6”等 canonical alias。请求接受两种格式;请使用列表中的 id 或 alias。

minLength: 1
Example: "openai/gpt-4o"
messages必填
Message[]

对话消息数组,至少一条。每条含 role(system/user/assistant/tool)与 content。

minLength: 1
content
string | ContentPart[]

音频输入放在 messages[].content[]:{"type":"input_audio","input_audio":{"data":"<raw base64>","format":"wav"}}。data 使用原始 base64,不使用 data URI;格式因模型而异。不要使用顶层 input_audio:它没有独立的验证与额度预留约定。

Example: [{"type":"input_audio","input_audio":{"data":"<raw base64>","format":"wav"}}]
models
string[]

备用模型列表——依序尝试,主要模型的候选组全部失败时才会用到。

stream
boolean

true 时以 SSE 串流回应;省略或 false 为一次性 JSON 回应。 音频串流在 choices[].delta.audio 分段返回 data(base64 音频)与 transcript;非串流在 choices[].message.audio 返回。模型也可能提供 id、expires_at。请累积片段后依 audio.format 解码,串流格式因模型而异。

temperature
number

采样温度,越高越随机、越低越确定。采样值不做范围验证;模型可能会截断或忽略超出支持范围的值。

max_tokens
integer

响应可生成的最大 token 数。

max_completion_tokens
integer

max_tokens 的别名,语义相同。

top_p
number

核采样(nucleus sampling)阈值。

top_k
integer

限制采样时只从概率最高的 K 个 token 中选。

frequency_penalty
number

依 token 已出现的频率惩罚重复。

presence_penalty
number

依 token 是否曾出现过(不论次数)惩罚重复。

repetition_penalty
number

重复 token 的惩罚系数,独立于 frequency/presence penalty 的另一种机制。

min_p
number

相对于最高概率 token 的最小概率门槛。

top_a
number

另一种动态调整采样范围的机制,依最高概率的平方缩放门槛。

seed
integer

确定性采样种子;非所有供应商都保证可重现。

n
integer

要生成的回应数量。

stop
string | string[]

遇到即停止生成的字符串,最多 4 个。

tools
Tool[]

模型可调用的工具/函数定义列表。

tool_choice
string | object

控制模型是否/如何被强制调用工具。

parallel_tool_calls
boolean

有提供 tools 时,是否允许并行工具调用。默认 true。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。

response_format
object

限制输出格式,例如 {type:"json_object"} 或带 JSON Schema 的 {type:"json_schema"}。

logit_bias
object

把 token ID 对映到 [-100, 100] 的偏差值,在采样前加上。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。

logprobs
boolean

返回每个输出 token 的对数概率。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。

top_logprobs
integer

每个位置返回概率最高的候选 token 数(需搭配 logprobs: true)。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。

0–20
user
string

终端使用者识别码,用于监控与滥用侦测。对计费无影响。 仅限 OpenAI 系列模型——目标模型不是 OpenAI 自家的时,此字段会被静默拿掉,不会报错。

reasoning
object

推理模型的思考控制对象(例如 {effort, max_tokens})。

reasoning_effort
string

reasoning.effort 的简写平面字段。

lowmediumhigh
include_reasoning
boolean

true 时在 message.reasoning(流式为 delta.reasoning)返回思考内容;false 则为默认会思考的模型关闭思考(见推理章节),因此不会计思考费用。没有带 reasoning_effort、reasoning 或 thinking 时,只有这些模型会默认思考并返回;其他模型要带参数才会返回。

image_config
object

图片生成/图生图选项(当 modalities 含 image 时使用)。

modalities
string[]

要求的输出模态。含 image 时走图片生成派工路径。 Audio chat 使用 ["text","audio"] 搭配 audio 对象,并要求模型同时支持文字与音频输出。

textimageaudio
Example: ["text","audio"]
audio
object

Audio 输出选项,需搭配 modalities:["text","audio"];voice 与 format 因模型而异,并非所有模型都接受相同的值。

Example: {"voice":"alloy","format":"wav"}
voice
string

模型支持的音色,例如 alloy。

Example: "alloy"
format
string

模型支持的输出格式,例如 wav;串流常用 pcm16,请确认模型支持。

Example: "wav"
plugins
object[]

插件数组(例如 {id:"web"} 启用网页搜索)。仅部分模型路由支持,其他情况无效;:online 会在支持的路由上启用网页搜索。通过 plugins、:online 或 web_search_options 请求的搜索可能产生上游附加费用,由请求使用的密钥承担:平台密钥由 BazaarLink 支付上游费用,BYOK 则由你的供应商密钥支付。

POST /v1/chat/completions
curl https://api.bazaarlink.ai/v1/chat/completions \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [{"role": "user", "content": "Explain quantum computing in one paragraph."}]
  }'
响应示例

成功。BazaarLink 只返回公开响应白名单中的字段,例如 BazaarLink 自行生成的响应 id、model、choices 和 usage。model 按 BazaarLink 的公开回报规则显示:别名解析后可能保留您指定的名称;自动路由时则显示实际处理请求的模型。provider 字段及其他上游专属元数据会被移除。usage.cost 始终是 BazaarLink 自行结算的金额。

{
  "id": "85e6f35c71a31f19-SJC",
  "object": "chat.completion",
  "created": 1740000000,
  "model": "openai/gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Quantum computing leverages quantum mechanics..."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 28,
    "completion_tokens": 74,
    "total_tokens": 102,
    "cost": 0.000648
  }
}
客服
客服
您好!有什么可以协助?
请留下消息,我们会尽快回复。
创建聊天 — BazaarLink API