02 路线B 卖Token
Plan B · v1 · 部署开源模型卖 Token MVP
Plan B · v1 · 部署开源模型卖 Token MVP
目标:1-2 个月内跑通 OpenAI 兼容 API,让第一批 AI 开发者用起来、能付款。
场景:3-5 个主流开源模型,单区域,按 token 计费。
1. 目标 & 非目标
做:
- 3-5 个主流开源模型(对话 + 代码 + 嵌入)
- OpenAI 兼容 API(
/v1/chat/completions、/v1/embeddings) - Token 计费(input / output 分开)
- 限流、鉴权、日报
- 开发者能自助注册拿 API key
不做:
- 微调托管
- 多模态生成(文/图/视频)
- 模型市场、社区
- 私有部署交付
- 多区域
SLA:
- P50 首 token 延迟 ≤ 300ms
- P99 首 token 延迟 ≤ 800ms
- 单模型可用性 ≥ 99.9%
- 突发扩容 ≤ 5 分钟
2. 模型清单(v1 精选)
| 类别 | 模型 | 卡数 | 定价参考 |
|---|---|---|---|
| 对话 | DeepSeek-V3.2 / Qwen3 235B | 8 × H800 | in ¥2 / out ¥8 每百万 token |
| 对话 | GLM-4.6 32B | 2 × H800 | in ¥1 / out ¥4 每百万 token |
| 代码 | DeepSeek-Coder-V2 | 4 × H800 | in ¥1.5 / out ¥6 每百万 token |
| 嵌入 | BGE-M3 / Qwen3-Embedding | 1 × L40S | ¥0.5 每百万 token |
| 视觉 | Qwen3-VL 72B | 4 × H800 | in ¥3 / out ¥10 每百万 token |
选型逻辑:
- 至少 1 个"性价比之王"(DeepSeek-V3 系)
- 至少 1 个"性能对标 GPT-4o"(Qwen3 235B)
- 至少 1 个"代码专用"(客户粘性高)
- 至少 1 个"嵌入模型"(吐 token 少但 QPS 高)
- v1 不做 Llama(除非目标客户明确要,国内合规风险)
3. 推理架构
客户 API 请求
│
┌─────────────▼──────────────┐
│ API 网关 (Nginx) │
│ OpenAI 兼容协议 │
└─────────────┬──────────────┘
│
┌─────────────▼──────────────┐
│ 鉴权 + 限流 + 计费预扣 │
│ Redis + Lua 脚本 │
└─────────────┬──────────────┘
│
┌─────────────▼──────────────┐
│ 路由层(按模型选实例) │
│ 一致性 hash + 健康检查 │
└─────────────┬──────────────┘
│
┌─────────────▼──────────────┐
│ 推理实例池 │
│ vLLM × N │
│ 每个模型 2-3 副本冗余 │
└─────────────┬──────────────┘
│
┌─────────────▼──────────────┐
│ 计费结算(异步) │
│ Kafka → 计费引擎 → DB │
└────────────────────────────┘4. 关键组件选型
| 组件 | 选型 | 备选 | 决策理由 |
|---|---|---|---|
| 推理引擎 | vLLM 0.6+ | SGLang / TRT-LLM / TGI | v1 只跑 vLLM,社区活跃、覆盖场景最全 |
| 量化 | AWQ / FP8 | GPTQ / GGUF | AWQ 精度损失小,FP8 H800 原生支持 |
| KV Cache | vLLM 内建 PagedAttention | 默认 | |
| 前缀缓存 | vLLM --enable-prefix-caching | SGLang RadixAttention | v1 用 vLLM 内置版即可 |
| API 网关 | APISIX / Nginx + OpenResty | Kong | APISIX 有官方 AI 插件 |
| 鉴权 | JWT + API Key + Redis | 标准做法 | |
| 限流 | Redis + 令牌桶 | 云厂商 WAF | 自建足够 |
| 计费 | Kafka → Flink → Postgres | 自研 | 异步保 API 响应速度 |
| 模型仓库 | HF Hub + 本地 NVMe 缓存 | ModelScope | HF 优先,国内客户加 ModelScope 镜像 |
| 监控 | Prometheus + Grafana | Datadog | 同 Plan A |
| 日志 | Loki + Promtail | ELK | 轻量 |
5. Token 计费口径
核心原则:以推理引擎实际生成的 token 为准,不以客户 prompt 长度为准。
流程:
请求进入 → 预扣 max_tokens × 单价(拦截余额不足)
↓
推理引擎完成 → 上报真实 input_tokens / output_tokens
↓
异步扣费(真实值 - 预扣值 = 差额,退还或补扣)
↓
写入账单流水(保 30 天)幂等:每次请求生成 request_id,计费引擎按 request_id 去重。
定价档位:
- 免费额度:每月 100 万 token(新用户)
- 标准:按官网价
- 企业:合约价,通常 5-7 折
- 突发:拥堵时段计 1.5×
6. 关键性能指标
| 指标 | 目标 | 监控口径 |
|---|---|---|
| TTFT(首 token 时延) | P50 ≤ 300ms, P99 ≤ 800ms | vLLM time_to_first_token |
| TPOT(后续 token 时延) | ≤ 50ms | vLLM time_per_output_token |
| 单卡 TPS | ≥ 60 tok/s(32B FP8) | 自采样 |
| KV Cache 命中率 | ≥ 40%(多轮对话) | vLLM prefix cache stats |
| GPU 利用率 | ≥ 70%(batch size 稳定后) | DCGM |
| 单请求 GPU 成本 | ≤ 0.02 元 | 自算 |
7. 关键难点
| 难点 | 应对 |
|---|---|
| 冷启动慢 | 模型权重预加载在本地 NVMe,服务常驻 |
| 长/短请求混跑 | 用 vLLM --max-num-batched-tokens 分组 |
| 突发流量 | 每模型预留 30% 容量冗余,Kubernetes HPA |
| 上下文超限 | API 层拦截 max_context_length 溢出 |
| 首次并发估算 | 内测期只放 10 个开发者,采集真实分布 |
| NSFW / 合规 | 输入输出接内容审核(自建 or 调用云厂商) |
8. 里程碑(6 周)
| 周次 | 交付物 |
|---|---|
| W1 | vLLM 单模型部署 + OpenAI 兼容 API 打通 |
| W2 | 剩余 4 个模型部署 + 路由层 |
| W3 | 鉴权 + 限流 + Token 计费闭环 |
| W4 | 开发者门户(注册、Key、账单) |
| W5 | 10 个内测开发者 + 采集数据 |
| W6 | 正式上线,全网可注册 |
9. 单模型经济模型(示例:DeepSeek-V3 235B)
假设:8×H800 单机,跑 FP8 vLLM,实测吞吐 ≈ 每卡 60 tok/s,8 卡合计 480 tok/s。
满载理论:
- 每秒 480 tok → 每月 ≈ 12.4 亿 output tokens
- 混合价(in+out 加权)≈ ¥5/M tok
- 月理论营收 ≈ 62,000 元
成本对比 Plan A:
- 同一台机器 Plan A 满租 20 万/月
- 但 MaaS 不需要满载:一台机器可支撑 100+ 开发者共享
- 规模化后:一台机器月营收目标 15-30 万,毛利 40-60%
关键杠杆:
- KV Cache 命中率提升 30% → 有效吞吐 +40%
- 量化从 BF16 → FP8 → 显存降 50%,可跑更大 batch
- 前缀缓存对多轮对话客户尤其显著(客服/助手场景可达 60%)
10. 上市定价策略(v1 别硬拼 DeepSeek 官方价)
| 策略 | 说明 |
|---|---|
| 官方价 -20% | 客户切换有理由 |
| 免费额度 | 每月 100 万 tok,拉新 |
| 企业合约 | ≥ 1 亿 tok/月 → 5 折 |
| 抢占实例 | 客户容忍 30s 中断 → 3 折(Plan C 才有) |
| 地区差价 | 边缘节点更便宜(v3 才做) |
11. 差异化(v1 靠这些)
- 速度:优化 vLLM + FP8,TTFT 比官方低 30%
- 模型时效:新模型 24 小时内上线
- 中文优化:Qwen / GLM / DeepSeek 都吃透
- 免费额度大方:拉新期烧钱换用户
- 企业支持:合约客户 1v1 SLA 保障
12. v1 之后往 v2 演进的钩子
- 引擎从纯 vLLM 拓展到 SGLang(长上下文)+ TRT-LLM(低延迟)
- 加多引擎路由:按请求特征选最优引擎
- 加"抢占实例"层:把闲置容量以 3 折卖给容忍中断的客户
- 加"函数调用 / 结构化输出"(SGLang RadixAttention 助力)
- 加"批量推理 API"(异步任务,价格更低)