GPU 与模型部署 · D 选型与运维
0 / 8 章 ← 首页
贯穿案例 · 一个 14B 模型的一生 序幕 · 在个人电脑跑起来 第二幕 · 变成代码助手 第三幕 · 微调成知识助手 第四幕 · 上线 50 人服务
01

钱都花哪了 —— 自建、租卡、调 API 的三本账

先抛一个真实决策:同样是「每天 10 万次问答」,自建、云租卡、商业 API 三条路的月账单能差出两个数量级。选错的代价通常不是「贵了」,而是买回来一台 90% 时间在睡觉的机器——以及没人敢提的折旧。

三条路,三本账本结构

路径账单构成藏在水面下的成本适合谁
自建(买卡)购机一次性投入 + 电费 + 机器折旧(3 年左右归零)运维人力、机房/噪音、闲置浪费、卡价跳水7×24 满负载、数据不能出门、用满 3 年
云租卡(按小时)时价 × 卡数 × 730 小时/月;spot 可省 50~70% 但会被抢占数据出境合规、镜像与环境维护、长期算比买贵波峰波谷明显、快速验证、季节性业务
商业 API(按 token)输入价 × 输入量 + 输出价 × 输出量供应商锁定、限速、隐私合规、账单随业务线性涨低量、快速验证、流量不可预测的起步期
决策第一问永远是利用率利用率 = 实际在产出 token 的时间 ÷ 付费时间。满负载 7×24 → 自建/包月最划算;白天忙夜里闲 → 云的弹性赢;一天几百次请求、还在验证需求 → 别碰硬件,直接 API。买卡之前没算利用率,是「显卡烟花」的第一大引信(章 6 有反面案例)。

交互 D1 · TCO 三路对比器

拖动下面的业务参数,三条累计成本曲线会随时间画出来;自建曲线被某条租用曲线「追上」的那个月,就是回本点。显存与成本全部调用四页共享的 GPU_CALC 公式库(卡型规格、costPerMTok)。

D1 · TCO 三路对比器业务规模 → 三本账 + 回本点
API 月账单—
云租卡月账单—
自建月固定(电+维)—
自建前期投入—
自托管 $/1M 输出—
API 折合 $/1M 输出—
需要卡数—
—
—
自托管 $/1M = GPU_CALC.costPerMTok(卡时价, 聚合吞吐, 利用率);聚合吞吐为 14B 级模型 vLLM 量级估算(查证 2026-09)。硬件购价与电价为市场量级假设,页面内已标注。
怎么读回本点回本点只对「自建 vs 租用」有意义:自建先付一大笔,之后每月只掏电费,租用方每月全额付。曲线交叉得越早,越值得买卡;36 个月都不交叉,就老老实实租或调 API。把利用率滑条从 80% 拉到 10%,你会亲眼看着回本点飞出图表——这就是「买卡前先算利用率」的数学版。
自测:公司业务每天只有 3000 次请求(利用率约 8%),有人提议「买两张 H100,两年就回本了」。漏洞在哪?
回本点的分母是「租用月成本 − 自建月固定成本」,利用率 8% 意味着需要的卡数其实只要 1 张甚至更少——买两张本身就已经算错容量;且低利用率下 API 月账单可能只有几百美元,自建几十万的投入绝大多数月份在还电费。先用 D1 拉一遍参数再谈「回本」。
✦ 本章通关条件
✓
能说出三条路各自的钱花在哪,并被「决策第一问是利用率」说服
02

GPU 档位速查 —— 一张表,一堆坑

打开购物车之前,先把这张表存下来。它是本手册全部硬件数字的唯一出处:下面这张表和三个交互组件的每一个显存、带宽、时价,都从四页共享的 GPU_CALC.GPUS 现场读出——a/b/c 页说你该信谁,d 页说你去哪查。

规格总表(数字截至 2026-09)

卡显存带宽BF16 算力TDP云租参考一句话定位
正在从 calc.js 读取…

云租为 on-demand 常见量级(社区云/市场价低档、大厂溢价高档)。查证 2026-09 的实拍区间:RTX 4090 $0.32~0.69/hr(Vast ~ RunPod)、RTX 5090 约 $0.5~0.9/hr(各平台差异大)、A100 80G $1.0~1.8/hr、H100 $2.1~4.0/hr(Vast 中位 ~$2.1、RunPod $2.7~3.2、Lambda $3.3~4.0)、H200 $3.1~4.4/hr、B200 $3.5~5.9/hr。GPU 价格波动剧烈,下单前务必看当日价目页(章 8 给了链接)。

避坑清单:三种最常见的「以为能跑」

  • 游戏卡当数据中心卡用:RTX 4090/5090 没有 ECC、没有 NVLink(多卡走 PCIe,张量并行通信是心梗高发区)、驱动 EULA 不允许数据中心部署;FP8 精度与稳定性也不如数据中心卡。单人/小团队推理无妨,认真做多卡训练别选它。
  • Mac 训练吞吐的坑:M4 Max 统一内存 128GB「装得下 70B」,但带宽 ≈546GB/s 且 MLX 训练生态吞吐远低于 CUDA——跑得动推理、微调 7B 勉强、更大就只是「能等」。拿它当推理终端可以,当训练机是煎熬。
  • 「云上 4090」超售:市场价 $0.3/hr 档的 4090 常见超售与限功率(锁 300W 以下、显存被宿主分走)。跑批前先跑 10 分钟压力测试看吞吐是否对得上标称;低于预期立刻换实例。
  • B200 显存的两种口径:官方标称 192GB HBM3e,部分云商标「180GB」是可用显存口径——量级一致,对比参数表时注意是标称还是可用。

交互 D2 · GPU 选型对比器

选一个任务,组件会用与 a/c 页完全一致的公式反推显存需求区间(推理走 inferenceGB,训练走 trainBreakdownGB),再从档位表里挑出装得下的最小卡,给理由和避坑提示。

D2 · GPU 选型对比器任务 → 显存区间 → 档位推荐
权重/主干KV 或 增量+梯度开销/优化器/激活剩余
—
—
—
显存公式与 a 页估算器、c 页沙盘同源(GPU_CALC);吞吐口径:14B 级 vLLM 单卡聚合 tok/s 量级(查证 2026-09,2×4090 实测 939 tok/s 折算)。
✓
拿到任务会先用公式反推显存区间,再对档位表选卡,而不是看博主推荐
03

每 100 万 token 的成本账 —— 自托管什么时候反超 API

「每月账单」会随业务量起伏,「每 100 万 token 多少钱」才是把自托管和 API 放上同一把尺子的口径。这一章只讲一条公式链和一个对照表。

$/1M 输出 token = 卡每小时价 ÷(聚合吞吐 tok/s × 3600 × 利用率)× 1,000,000

三个变量各管一件事:卡时价是你付出多少钱(对应章 2 的表)、聚合吞吐是这张卡一小时能吐多少 token(对应 b 页的连续批处理——单流 decode 只有百来 tok/s,批起来才能翻几倍)、利用率是这些吞吐有多少真的在卖(对应章 1 的第一问)。

算例:14B 级模型,vLLM,利用率 50%(现算)

吞吐取公开实测的量级:2×RTX 4090 跑 Qwen2.5-14B 聚合吞吐 939 tok/s(databasemart 基准,查证 2026-09),按卡折算出下表的单卡口径。下表由页面调用 GPU_CALC.costPerMTok 现场计算。

卡云时价聚合吞吐(量级)利用率 50%利用率 20%
正在计算…

读法:利用率从 50% 掉到 20%,每 token 成本直接 ×2.5——同一张卡,「值不值」完全由利用率决定。另注意:消费卡每 token 成本常常低于 H100,前提是你只需要 14B 量级的模型;模型再往上,单卡放不下,账就另算了。此口径只含卡钱,不含冗余副本、流量与运维。

对照:商业 API 定价(查证 2026-09,随时会变)

档位输入 $/1M输出 $/1M备注
OpenAI GPT-5 mini$0.25$2.00缓存命中输入 $0.025;Batch 再半价(官网)
DeepSeek V4 Flash$0.14(缓存未命中)$0.28 非高峰 ~ $1.32 高峰2026-08 起分峰谷计价(官网)
Qwen-Flash(阿里云)$0.05 ~ 0.15≈$0.40按时段/上下文分档(官网)
结论往往是:低利用率时 API 便宜,满负载时自托管反超——但注意 API 档位自身就差 10~20 倍:拿旗舰模型的价格对比自托管小模型没有意义。真正的临界点让 D1 的曲线给你;另外三件事 API 折不进价格:数据的隐私边界、你微调过的行为(通用 API 给不了你的 LoRA)、以及被限速锁死的吞吐上限。

容量规划:从峰值 QPS 到卡数的一条线

把 a/b 页的公式串起来就是一条链:峰值 QPS × 平均响应时长 ≈ 峰值并发(比如 0.16 QPS × 50s ≈ 8 路)→ 并发 × 上下文 × 每 token KV 字节 = KV 显存(a 页第 5~6 章的乘法,用 a 页显存估算器现场验一遍)→ 总显存需求 ÷ 单卡可用显存 = 卡数下限 → 再用日 token 量 ÷ (86400 × 利用率) ÷ 单卡聚合吞吐验一遍吞吐卡数,取两个下限的较大者。吞吐与排队的行为,见 b 页第 4 章并发模拟器。

✓
会用 $/1M 公式把自托管和 API 放在同一把尺子上,并说出利用率在公式里的位置
04

14B 案例四幕收官 —— 从个人电脑到 50 人在线服务

四页书讲完,回到主角:Qwen2.5-14B。同一个模型,在公司里过完了一生——每一幕撞上的墙,恰好是每一页讲的知识点。这一章把四幕的状态快照摊在一张表里,然后给第四幕一个能落地的部署形态。

四幕状态快照

幕精度硬件显存占用成本量级撞上的墙
序幕个人电脑跑起来BF16 装不下 → INT4RTX 4090 / M4 Max权重 ≈7.4GB,合计 ≈10GB≈$0(已有设备)28GB 权重 vs 24GB 显存 → 量化(a 页)
第二幕变成代码助手Q4_K_M(GGUF)本机 Ollama≈10GB电费几块钱8 个朋友同时用就崩 → KV×并发(b 页)
第三幕微调成知识助手QLoRA(NF4 主干)1×RTX 4090 过夜≈10~14GB一夜电费 ≈$0.5全量要 224GB → LoRA/QLoRA(c 页)
第四幕上线 50 人服务INT4 + vLLM2×24GB(云或自建)单副本 ≈13GB(下行现场算)云租 ≈$580/月并发、冗余、监控、兜底(本页)

第四幕:目标形态的账,现场算一遍

目标:50 人内部使用,每天约 5000 次请求,峰值并发 ~8 路,平均 4K 输入 / 500 输出。把数字交给公式(调用 GPU_CALC.inferenceGB,KV 字节按 14B 的 GQA 配置 48 层 × kvDim 1024):

权重(INT4)—
KV Cache(8 路 × 4.5K)—
运行开销—
单副本合计—
—

结论:单张 24GB 就装得下峰值负载(KV 是大户但 8 路还咬不动 22.8GB 可用显存),但生产形态仍取 2×24GB(或 1×48GB 档):第二张卡不是为了显存,是为了冗余(一张卡挂了服务还在)和吞吐余量(聚合 ~940 tok/s,对照章 3 的公式,868 tok/s 的容量需求在 30% 利用率下刚好要两张)。流量入口加 least-loaded 路由,两副本互为热备——这就是下一章的 L2。

为什么第四幕不一定选自托管按 D1 默认参数,这套 2×24GB 云租 ≈$580/月,而「中杯 API」跑同样的量只要 ≈$300/月——这个规模下 API 更便宜。第四幕仍然成立的三个理由:知识助手带公司私有数据(不出域)、模型带着第三幕微调的行为(通用 API 复制不了)、以及把数据留自己在合规上睡得着觉。钱不是唯一变量,但必须先算清楚再谈其他。
✓
能复述 14B 四幕每一幕的精度、硬件、显存、成本,并说出第四幕「2 张卡不是为了显存」
05

部署架构搭建器 —— 四级演进,亲手升级(压轴)

b/c 页的所有零件在这里拼成一台完整的「机器」。点「升级」,看架构图逐节点生长;每一级右侧都会告诉你:能力涨了多少、钱涨了多少、新引入了什么风险,以及「出现什么现象说明你该升级了」。每升一级用到的知识点,恰好是前面某一章——全手册在这里闭环。

D3 · 部署架构搭建器L0 个人本地 → L3 生产级
客户端 50 人 · Web / CLI 网关 限流 + API Key 自动扩缩 负载路由 least-loaded · 队列+超时 Ollama 单机 本机 · 1~2 人 KV 显存水位 90% vLLM 副本 ×2 各 1×24GB GPU 前缀缓存复用 监控告警 TTFT · 显存 · 错误率 商业 API 兜底 降级链最后一环

—

—

能力

—

月成本量级

—

复杂度

—

新引入的风险

—

该升级了,当:—

这一级用到的知识

成本量级基于章 2 云价表(查证 2026-09);架构只画到「该上多副本、该有监控」的决策层,Kubernetes 编排不在本手册范围。

L4 · 知道即可:再往上的两件事

生产级再往上还有两层,本手册不展开,你只需要在别人提起来时知道它们解决什么:prefill/decode 分离——b 页讲过 prefill 吃算力、decode 吃带宽,规模大到两种负载互相打架时,把两幕拆到不同的机器池、中间传 KV;多区容灾——同一个服务在两个可用区各跑一套,全局路由兜单区故障。

可用区 A Prefill 节点池 吃算力 · 批大 传 KV Decode 节点池 吃带宽 · 逐 token 可用区 B(镜像一套) 同样的 Prefill + Decode 全局路由 · 健康检查 · 单区故障自动切换
Fig · L4 —— Prefill/Decode 分离与多区容灾(知道即可,规模不到不折腾)
✓
能画出 L0→L3 的架构演进,说出每级的能力、成本和升级信号
06

运维与降级 —— 监控什么、什么时候慌、怎么兜底

上线只是开始。这一章回答三个值班问题:盯哪几个数?什么数值该慌?慌了按什么顺序动手?全部内容围绕一个原则:与其全链路一起崩,不如主动拒绝一部分、降级一部分。

监控四件套与「该慌阈值」

vLLM 自带 Prometheus 指标端点(/metrics),四个关键旋钮的官方默认值:`gpu_memory_utilization` 默认 0.9(模型 + KV + 激活的显存上限),`max_num_seqs` 默认 256(并发上限,不是实际并发——实际批量由 KV 剩余空间动态决定)。查证 2026-09,出处见章 8。

指标看什么该慌阈值(14B 级参考)慌了先查
TTFT p95用户体验的下限> 5s,或持续 30 分钟上涨队列是否堆积(并发 > 单副本容量)、前缀缓存命中率是否下跌
tokens/s(吞吐/TPOT)产能是否缩水单流 decode < 10 tok/s是否被超售/限功率、批处理是否退化、卡温是否降频
显存水位容量余量> 90%(vLLM 0.9 上限附近)KV 占比:该限流、缩 max_model_len,还是加卡
错误率健康底线5xx/OOM > 1%最近一次变更、OOM 日志、上游依赖

告警分级

级别触发动作
P1服务不可用:错误率 > 10% 或全部超时电话叫醒;先执行降级链(下方),再查根因
P2体验劣化:TTFT p95 超阈值 30 分钟 / 显存水位 > 90%工作时间告警;限流或扩一个副本
P3趋势预警:利用率/账单/缓存命中率周环比异常日报里出现,排期处理

三个故障剧本 · 处置卡

剧本 1 · 拔卡(GPU 掉线)

现象nvidia-smi 少卡;dmesg 刷 Xid 错误;vLLM 崩溃重启
处置网关摘掉该副本流量 → 重启机器 → 跑 10 分钟压力测试再放回
预防不超频、控温度;多副本本来就是为此准备的

剧本 2 · OOM

现象CUDA out of memory;vLLM 反复重启;长上下文请求集中出现
处置调低 gpu_memory_utilization 或 max_num_seqs / 缩 max_model_len → 重启
预防显存水位 90% 告警(P2);长上下文单独限流

剧本 3 · 流量洪峰

现象队列堆积、TTFT 飙升,但 GPU 利用率早已打满
处置立刻限流保住已接入请求 → 有余量就扩副本 → 不够就进降级链
预防压测知道单副本容量天花板;告警阈值设在天花板 70%

降级决策树:五步,从限流到 API

1
限流

并发上限 / 排队 + 超时 / 按用户配额。先保证「已接入的人被服务好」,拒绝是止损不是失败(b 页章 5)。

2
缩上下文

长输入直接拒或引导截断——KV 显存最大的杠杆,往往一步就缓过来(a 页章 5)。

3
降精度档

FP8/INT8 副本顶上:权重减半,KV 字节也减,吞吐与容量同时改善(b 页章 2)。

4
切小模型

14B → 7B:质量降级但服务活着;用户侧通常对「慢」比对「略笨」敏感得多。

5
兜底商业 API

最后防线。提前接好、提前测过,并给兜底账单设独立预算告警——别让救火动作烧出第二场火灾。

反面案例集 · 把钱烧成显卡烟花

烟花 1 · 买卡前没算利用率团队日请求几千次(利用率 ~8%),拍板买 4×A100「三年 ownership 划算」。实际每月产出 token 用 API 只要几百美元,机器在工位下替公司保值的方式只有散热。D1 拉一遍参数就能避免。
烟花 2 · 长上下文没算 KV16K 上下文全量放开,8 个并发就把 80GB 的卡吃穿——KV = 并发 × 上下文 × 每 token 字节,乘法不会因为「模型才 14B」而手下留情。a 页章 5 的生长器玩五分钟就能记住这个教训。
烟花 3 · 微调用全量上 4×A100只是想教模型「用我们的格式回答」,却按全量 SFT 租了一周 4×A100:224GB 的权重账单(c 页章 2)。同样的活 QLoRA 一张 4090 一夜搞定,成本差两个数量级。买卡之前先定训练方法。
自测:显存水位 93%、TTFT p95 缓慢上涨、错误率 0%。按本章的顺序,第一个动作是什么?
限流(第一步)。显存已越过 90% 该慌线而错误率还没起来,正是「主动拒绝一部分好过全部一起 OOM」的窗口期;同时查 KV 占比决定是缩 max_model_len 还是扩副本。直接重启或换模型都是越级动作。
✓
背得出监控四件套的该慌阈值,以及降级链「限流→缩上下文→降精度→小模型→API」的顺序
07

决策速查卡 + 终极测验

整部手册压缩成五问。以后每一次「要不要买卡 / 租卡 / 上线」,都从这张表开始。

五问速查卡

问题看什么公式 / 阈值出处
能不能跑?显存三件套 vs 可用显存权重 + KV + 开销 ≤ 标称 × 0.9(再留 10~20% 余量)A 页章 3~6
快不快?带宽 vs 权重量tokens/s ≈ 带宽 ÷ 权重 GB(打 5~7 折);TTFT 看 prefill 算力A 页章 7 · B 页章 1
训得动吗?方法 × 字节账单全量 16 B/参数;LoRA 主干 2 B;QLoRA 主干 0.5 B + 激活C 页章 2~5
值不值?利用率与 $/1M tok卡时价 ÷(聚合吞吐 × 3600 × 利用率)× 1e6,对照 API 价本页章 1~3
稳不稳?限流 + 监控 + 降级链四件套阈值;限流→缩上下文→降精度→小模型→APIB 页章 5 · 本页章 5~6

终极测验 · 5 题

全手册毕业考。答对 4 题以上,你已经有资格在采购会上拍桌子了。

FINAL EXAM · GPU & DEPLOYMENT历史最佳 — · 本轮 0 / 5
✓
五问速查卡能脱稿回答,终测拿到 4/5 以上
08

参考资料 · References

价格与规格的时效性最强,全部原始出处集中在这里。每条都标注了核对日期;引用数字前先点开看现价。

云 GPU 时价(查证 2026-09,波动剧烈)

推理引擎与部署文档(查证 2026-09)

硬件规格与 API 定价(查证 2026-09)

系列回顾

四页书到此收线:A 页回答「能不能跑」——显存里的住户与三档判定;B 页回答「快不快、多人用崩不崩」——两幕戏、量化与并发;C 页回答「训得动吗」——16 字节账单与并行切法;本页回答「值不值、稳不稳」——三条路的账本与降级链。

如果只带走一句话:所有部署决策的第一问都是利用率,所有崩溃的第一现场都是显存,所有兜底的第一动作都是限流。建议隔段时间回 A 页再走一遍——带着这次上线踩过的坑重读,公式会变成直觉。

✓
收藏了参考资料,知道下次查现价该去哪几个页面