大模型怎么接到自己的网站:地址、model 和扣费

青渚2026/8/21520

大模型不是商城里另一张按次的接口卡。打开 大模型目录,点进某一个,页上的 版本 / ID输入 / 输出单价、右边的调用示例,就是要带进自己项目的三样东西。

模型目录:版本 ID 和输入输出单价
模型目录:版本 ID 和输入输出单价

表里「版本 / ID」那一列(例如 deepseek-v4-flash)就是请求体里的 model。输入、输出分开标,单位都是 元 / 百万 tokens。有的行写「按量计费」,到详情页看具体数字。

先拿到地址和 model

打开任意模型详情,例如 DeepSeek V4 Flash。标题下面那一串等宽文字,和目录里的 ID 是同一个。

详情页:单价、限制和调用示例
详情页:单价、限制和调用示例

对外就记这两条:

  • OpenAI SDK、第三方客户端的 Base URL:https://v1.apizero.cn/v1
  • curl、自己拼 HTTP:POST https://v1.apizero.cn/v1/chat/completions

POST https://v1.apizero.cn/api/ai-chat 是同一条网关,日常用上面这套 OpenAI 路径就行。详情页若还标了 /v1/responses 或 Anthropic,当能力说明看;自己接 App 先走 Chat Completions,不要换路径碰运气。

密钥在 API Key 新建。请求头:

Authorization: Bearer 你的密钥
Content-Type: application/json

页面上的「在线体验」只用来试对话,不代替你自己的接口。正式流量一律带 Key 打 v1.apizero.cn

最小请求

把 Key 放到环境变量里,不要写进仓库:

export APIZERO_API_KEY="你的密钥"

curl https://v1.apizero.cn/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $APIZERO_API_KEY" \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "用一句话说明你是谁"}
    ]
  }'

成功时 HTTP 200,JSON 里有 choices[0].message.content,以及 usage.prompt_tokens / usage.completion_tokens。后面扣费就看这两段 token,不是看你写了多少汉字。

temperaturemax_tokenstop_p 可以带。stream 现在不会按 SSE 往外推,不要在生产里开 stream: true 等流式。

详情页右侧:Python 把 Base URL 换成 v1.apizero.cn/v1
详情页右侧:Python 把 Base URL 换成 v1.apizero.cn/v1

接到自己的网站

Key 只能放在 你的服务器。浏览器、小程序前端、公开仓库里出现完整 Key,等于谁都能用你的余额。

网站常见接法:浏览器 → 你自己的后端 → ApiZero。用户聊天内容由你的接口收,服务器用 Key 再转出去。

Node(Next.js Route Handler / 普通 Express 同理):

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.APIZERO_API_KEY,
  baseURL: "https://v1.apizero.cn/v1",
});

export async function POST(req) {
  const { messages } = await req.json();
  const resp = await client.chat.completions.create({
    model: "deepseek-v4-flash",
    messages,
  });
  return Response.json({
    text: resp.choices[0].message.content,
    usage: resp.usage,
  });
}

Python:

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["APIZERO_API_KEY"],
    base_url="https://v1.apizero.cn/v1",
)

resp = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "你好"}],
)
print(resp.choices[0].message.content)

换模型只改 model 字符串,Base URL 不用换。要上 Pro、通义、GLM,到目录抄对应 ID。

页面上的「试用」可以先对一下回包长什么样;接到网站之后,用同一条 curl 在服务器上再打一遍,确认不是浏览器直连。

接到自己的 App / 客户端

已经兼容 OpenAI 的桌面端、Bot、知识库,把三处改掉即可:

  1. API Base / Endpoint:https://v1.apizero.cn/v1。有的软件要填完整 https://v1.apizero.cn/v1/chat/completions,看它要的是根路径还是 completions 地址。填完用它自带的测试按钮。
  2. API Key:控制台那一把
  3. Model:目录里的 ID,不要填展示名「DeepSeek V4 Flash」

Open WebUI、LobeChat、Chatbox、Continue、自建 GPT 风格前端,都是这个改法。手机 App 同样把请求放在你的服务端,不要把 Key 写死在安装包。

扣费怎么算

先到 充值 留一点余额,再调。详情页那句「对话按实际用量扣费,先充值再调用」就是规则:余额为 0 时付费通道过不去。

费用只看 这一次成功回包 里的 token:

费用(元)= 输入token × 输入单价(元/百万) / 1_000_000
         + 输出token × 输出单价(元/百万) / 1_000_000

输入、输出单价以该模型详情页 当时 标的为准。改价以页上数字为准,不要把这篇里的例图当年价表。

用现网 Flash 页上的 0.14 / 0.28 举一次:

  • 输入 800 token:800 × 0.14 / 1_000_000 = 0.000112 元
  • 输出 200 token:200 × 0.28 / 1_000_000 = 0.000056 元
  • 合计约 0.000168 元

一次闲聊通常是几厘到几分。长上下文、让模型大段写代码,输出 token 会涨得很快,输出单价又高于输入,费用主要堆在回复长度上。max_tokens 可以先卡住上限。

还要知道这几条:

  • 成功才扣。 网关没给出结果(超时、5xx、模型拒绝)不按这次 token 收钱。
  • 按回包里的 usage 收,不预估、不先冻一笔。 有余额就放行,回来再减。
  • 输入、输出分开计价。 系统提示词、历史消息都算输入;模型吐出来的字算输出。
  • 页上的「缓存命中」 是该模型自己的能力说明,不是另一张价目。有优惠以当时结算为准。
  • 对账大模型用量:时间、模型、输入/输出 token、实扣金额。可以只看收费记录。

同一把 Key 也用于天气、OCR 那些按次接口。大模型这条按 token 从余额扣;和会员档的 QPS 是两件事,QPS 以公告和你的套餐为准。

常见卡住

  • 401 / missing_token:头不是 Bearer,或 Key 复制多了空格
  • 余额不足:到 充值,不要换一把空 Key 重试
  • model 报错:填了中文名或旧 ID,回到详情页抄等宽那一串
  • 浏览器 Failed to fetch / CORS:页面直连了 v1.apizero.cn。改成打你自己的后端
  • 等了半天没有流式字:不要开 stream,等整段 JSON
  • 第三方客户端连不上:Base URL 少了或多了 /v1。SDK 用 https://v1.apizero.cn/v1,整段 URL 用 https://v1.apizero.cn/v1/chat/completions

第一请求通了,把 usage 和用量页对一行,再接到网站或 App。模型换了只改 model,地址不用改。