跳到主要内容

Fireworks AI API 配置指南(inference/v1 OpenAI 兼容端点)

Fireworks AI 注册获取 Key、api.fireworks.ai/inference/v1 Base URL 说明、accounts 三段式模型标识规则,附 curl / Python / Node.js 示例与错误码排查表。

一、简介与适用场景

Fireworks AI 是海外做开源模型高速推理的聚合平台,主打低延迟与高吞吐,Llama、Qwen、DeepSeek 等主流开源权重都能在上面找到托管版本。它的协议完全兼容 OpenAI,换个 base_url 就能跑起来。

额度上它没有长期免费档,只有新账号的一次性体验额度,用完转按 token 计费。适合的场景是:本地跑不动大参数开源模型,又不想被闭源厂商锁定,需要一个稳定、快、可随时切换模型的托管入口。

二、注册与获取 Key

  1. 打开 Fireworks 登录页,用 Google / GitHub 账号注册。
  2. 进入控制台后打开「API Keys」页面,点 Create API Key。
  3. 复制生成的密钥并保存,页面刷新后不再完整显示。
  4. 在「Models」页面浏览可用模型,记下你要用的那个模型的完整路径(下一节会讲为什么必须是完整路径)。

三、Base URL 与鉴权

  • Base URL:https://api.fireworks.ai/inference/v1
  • 鉴权方式:Authorization: Bearer fw_xxxxxxxx
  • 对话端点:/chat/completions

两个必须注意的点:

第一,Base URL 里的 /inference 段不能省。只填 https://api.fireworks.ai/v1 会直接 404。

第二,Fireworks 的模型标识是三段式完整路径,形如 accounts/fireworks/models/llama-v3p1-8b-instruct。这和绝大多数平台只填模型短名的习惯不同,是新手最常见的失败原因。你自己微调部署的模型则是 accounts/<你的账号>/models/<模型名>。

官方文档:docs.fireworks.ai

四、客户端接入示例

Cherry Studio 等客户端用「自定义 OpenAI 供应商」接入:

  1. 「设置 → 模型服务 → 添加供应商」,类型选 OpenAI。
  2. API 地址填 https://api.fireworks.ai/inference/v1。
  3. API 密钥填 fw_ 字符串。
  4. 手动添加模型,名称原样粘贴 accounts/fireworks/models/... 全路径。
  5. 若客户端会自动在地址后补 /v1,请把地址改填到 /inference 为止,避免出现双 /v1。

五、代码示例

curl:

curl https://api.fireworks.ai/inference/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREWORKS_API_KEY" \
  -d '{
    "model": "accounts/fireworks/models/llama-v3p1-8b-instruct",
    "messages": [{"role": "user", "content": "用一句话解释什么是 API"}]
  }'

Python:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["FIREWORKS_API_KEY"],
    base_url="https://api.fireworks.ai/inference/v1",
)

resp = client.chat.completions.create(
    model="accounts/fireworks/models/llama-v3p1-8b-instruct",
    messages=[{"role": "user", "content": "用一句话解释什么是 API"}],
)
print(resp.choices[0].message.content)

Node.js:

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.FIREWORKS_API_KEY,
  baseURL: 'https://api.fireworks.ai/inference/v1',
});

const resp = await client.chat.completions.create({
  model: 'accounts/fireworks/models/llama-v3p1-8b-instruct',
  messages: [{ role: 'user', content: '用一句话解释什么是 API' }],
  stream: false,
});
console.log(resp.choices[0].message.content);

六、常见错误排查

错误码现象原因解决方案
404端点或模型找不到Base URL 漏了 /inference,或模型没写三段式全路径补全路径后重试
401UnauthorizedKey 无效或已被删除到控制台重新生成
402余额不足体验额度用尽绑卡充值或改用其他平台
429限流未付费账号并发上限低降低并发并加退避重试
400context length exceeded输入超出模型上下文裁剪输入或换长上下文模型
503上游不可用模型正在扩容或维护稍后重试或临时切换模型