Home/AI Infrastructure/Renting GPU for Inference
中文English

Renting GPU for Inference

关于在租用 GPU 而非托管 API 上运行开源权重模型推理的思考方式。

"开源权重 + 租用 GPU"路径如今已是介于调用托管 API(openroutertogether-ai)与自有硬件之间的可行中间地带。本模块是一个决策框架:何时有意义、运行什么服务栈、选什么 GPU、如何对比 provider。

1. 何时租 GPU 而非调用 API

托管推理(按 token 计费)在小到中等 token 量、突发流量和前沿闭源模型上占优。租用 GPU 在 至少一个 以下条件成立时开始占优:

  • token 量足够高,GPU 小时数学击败按 token 数学。 粗略估算:单卡 A100 在 FP8/INT8 下运行调优良好的 14–32B 模型,持续聚合吞吐 1–3k tokens/秒。在 ~$1.5/小时下,GPU 成本每百万 token 远低于 $0.01,而托管 API 每百万 token $0.10–$2。流量稳定时,break-even 比人们想得更快到来。
  • 你需要一个无人托管的模型 —— 一个 fine-tune、一个利基开源权重、一个 provider 加入前的最新发布,或一个自定义 LoRA 栈。
  • 延迟 / 隐私 / 数据本地化 排除第三方 API。
  • 你想控制采样 / logits / 推测解码 / 自定义 KV 缓存复用,而托管端点不暴露这些。

如果以上都不适用,留在 openrouter 或直连 provider 上。租用 GPU 有真实运维成本(镜像构建、自动伸缩、冷启动处理、spot 档位上的驱逐恢复),按 token API 隐藏了这些。

2. Pods vs Serverless:核心权衡

大多数 GPU 租赁 provider 暴露两种产品形态。理解你用的是哪个是第一个决策。

Pods(长运行 VM/容器)

  • 你按分钟/小时租 GPU。在你停止之前它是你的。
  • 优点:零冷启动、完整 SSH/root、持久磁盘,适合批量作业、一次加载模型、持续流量。
  • 缺点:即使空闲也支付 100% 的时间。扩展是手动的或你脚本它。
  • 用于:流量稳定、批处理、开发/eval、fine-tuning。

Serverless / 按请求 GPU

  • provider 维护一个 warm worker 池;你按请求秒付费。
  • 优点:缩到零、无空闲成本、突发流量上自动伸缩。
  • 缺点:14B 模型冷启动可能 30s–2min(权重从磁盘加载),按秒定价相对原始 pod 定价有加价,运行时控制更少。
  • 用于:突发 / 不可预测负载,长尾或低 QPS 端点,demo。

经验法则: 如果预期利用率超过 ~30–40%,pods 更便宜。低于此,serverless 即使有按秒加价也胜出。

3. 服务栈:vLLM、SGLang、TGI、TensorRT-LLM

租用的 GPU 只是 VM —— 你仍需要推理引擎。完整对比见 ai-inference-engines;快速指南:

  • vLLM —— 默认选择。PagedAttention、连续 batching、广泛模型覆盖、好的 Python 人体工程学、开箱即用的 OpenAI 兼容服务器。除非有理由不,从这里开始。
  • SGLang —— 有竞争力的吞吐,特别在结构化生成(JSON / regex 约束)和 RadixAttention 前缀缓存上强。适合共享系统 prompt 的代理工作负载。
  • TGI(Hugging Face) —— 稳健,在最新模型支持和吞吐技巧上略落后。如果你住在 HF 生态里就容易。
  • TensorRT-LLM —— NVIDIA 硬件上最快,如果你愿意按模型编译引擎。运维成本重;只在挤出延迟很重要时选这个。

量化(H100 上 FP8、A100 上 INT8/AWQ/GPTQ)通常在 7B–70B 模型上给 1.5–2× 吞吐,质量损失可忽略。生产几乎总是值得开启。

4. A100 vs H100:如何选

A100 80GB H100 80GB
价格(租赁,公开) ~$1–2/小时 ~$2.5–4/小时
FP16 吞吐 1× 基线 ~2–3×
FP8 支持 无(仅 BF16/FP16/INT8) 是(原生)
最适合 7–32B FP16,70B AWQ/GPTQ 70B+ FP8,长上下文,低延迟

选 A100 当: 模型在 80GB 内 INT8/AWQ 装下,你受吞吐约束而非延迟约束,预算比 P99 更重要。大多数 7–32B 生产推理在这里没问题。

选 H100 当: 运行 70B+ 在 FP8,额外吞吐为价格差买单;序列长度长(SRAM/HBM 带宽帮助);或你需要最低单请求延迟(聊天 UX)。

对多 GPU:H100 NVLink 对张量并行 70B+ 工作负载的扩展明显优于 A100 NVLink。

更新的部件(H200、B200)开始出现在租赁市场上 —— 一般只在内存带宽是瓶颈的非常长上下文或非常大模型上值得。

5. 突发推理成本经济学

陷阱:人们对比托管 API 每 token 价格与 峰值 GPU 吞吐每 token 价格,得出租用 GPU 便宜 10×。那只在持续高利用率下为真。真实成本是:

有效 $/Mtok = (gpu_$_每小时) / (平均_tokens_每秒 * 利用率 * 3600 / 1e6)

10% 利用率的 pod 每 token 比 100% 利用率的同一 pod 贵 10×。对突发工作负载,serverless 或托管 API 几乎总是赢。

可行模式: 基线流量在长运行 pod 上(覆盖稳态),突发溢出路由到托管 API 或 serverless 档位。这类似经典云中的 spot+on-demand 模式 —— 在便宜档位保持高利用率,只在边际突发上吃加价。

6. Provider 对比

公开市场和专用 GPU 云,大致按 运维 vs 价格 谱排序:

  • runpod —— 个人和小团队常用。Pods + Serverless 产品,社区模板,众多 GPU 类型,体面 UX。有 spot 定价。单开发者实验的好默认。
  • vast-ai —— 点对点市场。绝对价格最便宜,但可靠性、网络和主机质量方差最大。适合批 / 非生产。
  • lambda-labs —— 聚焦 ML,定价简单,声誉好。比 RunPod 产品表面少(主要是直 VM / 集群)。
  • coreweave —— 企业档。预留容量、大型集群、承诺底线更高。严肃训练和大规模服务最终落在这里。
  • nebius —— 较新的欧洲 anchored GPU 云,H100/H200 预留容量上定价激进。
  • together-ai —— 作为 API 的托管推理,但值得在此列出,因为对许多"我想要开源权重快速服务"的情况,他们的每 token 端点比自托管低利用率 pod 更便宜。

选择启发式:

  • 单开发者,实验,< $500/月支出 → RunPod 或 Vast.ai。
  • 生产工作负载,想要 SSH 但不要企业合同 → RunPod(pods + serverless)、Lambda。
  • 每天数百万 token、有运维团队 → CoreWeave / Nebius 预留容量。
  • "我只想模型在 HTTP 端点后" → Together.ai 或 openrouter,不是租用 GPU。

7. 运营踩坑

  • 镜像冷启动主导 serverless 成本 对 >7B 模型。把权重 bake 进镜像或使用网络挂载权重缓存;不要在每次冷启动从 HF 拉。
  • Spot / 可中断档 便宜 50–70%,但你需要 checkpoint/重启逻辑。对推理(无状态),这通常值得;对 fine-tuning,只有当你的训练框架频繁 checkpoint 时。
  • Egress 在这些 GPU 云上常常不计费(不像 AWS/GCP),但要核实 —— 大型模型下载或视频输出可能给你惊喜。
  • GPU 可用性是突发的。 H100 在面向消费者的 provider 上经常售罄;如果你需要发布的有保障访问就预留容量。
  • 注意沙盒/网络策略。 某些 provider 阻挡某些端口的出站,这会破坏模型下载或 wandb 日志。

8. 何时这成为错误的抽象

Pod 级租用 GPU 仍让你拥有服务、自动伸缩、可观测性、模型更新和事故响应。如果这些成本超过你 vs 托管 API 节省的钱,你在为无理由付运维税。值得每季度问的诚实问题:如果我删除我的自托管栈,把一切路由到 openrouter / together-ai / 直连 provider API,我会节省比推理价差更值钱的工程时间吗?

对许多每天 <10M token 的团队,答案是肯定的。

Last compiled: 2026-05-10