2026 年自架 LLM 真的可行。一张 4090 跑量化过的 70B。一张 H100 跑同一个未量化版。硬件是简单的部分 — 你挑的软件 stack 决定自架是好玩、生产力工具、还是全职工作。
Hobby 等级:Ollama
晚上玩跟学习,Ollama 是对的起点。一个指令(ollama run llama3.1)就下载并跑任何热门模型。GGUF 量化、GPU 检测、模型存储、OpenAI 兼容 API 全部自动处理。DX 真的好。
什么时候用 Ollama:在学习、做原型、side project 不需要超出自己机器的 scale、想试多个模型不想 commit。
弱点:不是为高吞吐建的。并发请求会序列化、没有 batching、OpenAI 兼容 API 不完整。不要放在真实用户前面。
Hobby 等级加 GUI:LM Studio
LM Studio 是 Ollama 的 GUI 表亲 — Mac/Windows/Linux 桌面 app,Ollama 能做的它都能做,加上模型搜索、chat UI、可以给 script 打的 server。对非工程师更好用,工程师会觉得比 Ollama 略不可骇一点。
什么时候用 LM Studio:想在本地模型上有 chat UI、想下模型不用跟 Hugging Face 角力、想让朋友或非工程师协作者用本地模型。
Side-project 等级:text-generation-webui、KoboldCpp、llama.cpp 直用
比 Ollama 多控制,没那么精致。text-generation-webui(oobabooga)是杂货店 — 支持更多模型格式、更细采样控制、roleplay 优化。KoboldCpp 是著重故事 / RP 的分支。llama.cpp 自己就是这些东西包的核心。
什么时候用这些:想调采样参数、把 RP 角色聊天当兴趣、特别需要 GGUF 支援、想找项目学习。
Production 等级:vLLM
认真部署都用 vLLM。连续 batching、paged attention、跨多 GPU 的 tensor 并行、FP16 / INT8 / INT4 量化、OpenAI 兼容 API。吞吐量比 Ollama 或 text-gen-webui 高很多。
什么时候用 vLLM:把模型放在真产品后面、有多并发用户、需要可预期延迟、至少一个能仔细读文件的工程师。
弱点:不是即插即用。第一次会跟 GPU 内存配置、模型载入、config 角力。回报是一个 server 能轻松处理 100+ 并发请求。
Production 等级替代品:TGI、llama.cpp server、Modal
- HuggingFace TGI — vLLM 主要对手,也好。优化选择略不同。看你用的特定模型谁支援得好就选谁。
- llama.cpp server — CPU only 或中等 GPU 部署。比 vLLM 慢,但能在 vLLM 拒绝的硬件上 work。
- Modal / RunPod / Together — 受管自架。你不跑 GPU,你跑 code,在他们的 GPU 上执行。想要自架灵活但不拥有硬件的中庸选项。
- SGLang — vLLM 较新对手,某些 workload 上有时更快。如果你被吞吐量绑住,值得比较。
硬件:实际该买什么
2026 年单机配置:
- RTX 4090(24GB) — 跑 70B Q4 量化舒服、13B 未量化、所有 7B 都自由。二手约 $1800。
- RTX 5090(32GB) — 比 4090 好,70B Q5/Q6 量化能跑。零售约 $2500-3000。
- 2× RTX 4090 — 两张卡用 tensor 并行跑 70B 更高品质。二手约 $3600 + 不错的 PSU。
- A100 / H100 — 个人用过头,小团队有意义。二手 A100 80GB 约 $8-12k。
- Mac Studio M3 Ultra — 因为统一内存出乎意料能打。192GB 共享内存能跑 70B 未量化。每 token 慢,但没有其他 2026 桌面消费级硬件能跑这 size 的模型。
云端 GPU(不买硬件):Lambda Labs、RunPod、Together、Modal 都稳。按小时付费代表你只在用的时候付,但 24/7 server 大概 6 个月后自有硬件比较划算。
量化选择
GGUF 格式(Q4_K_M、Q5_K_M、Q6_K、Q8_0)用品质换 size。粗略法则:
- Q8_0:几乎无损、size 减 50%
- Q6_K:极小品质损失、size 减 60%
- Q5_K_M:可察觉但轻微品质损失、减 65%
- Q4_K_M:实质但可接受品质损失、减 70%
- Q4 以下:严重退化,只给绝望的资源限制用
Production 自架,Q5_K_M 或 Q6_K 是甜蜜点。AWQ 跟 GPTQ 是 vLLM 支持的替代量化格式 — trade-off 不同但结果类似。
什么时候不适合自架
每月在 Anthropic API 上花 $300,在考虑自架?不要。硬件 $2000+、电费是真的、你的时间是真的。留在 API。
你有 ops 能力吗?团队只有一个工程师同时对产品负责,不要再加自架 GPU server。半夜两点挂掉的那天,不是学 vLLM 内部的时候。
模型适合你的场景吗?先在 API 上跑实验。如果 Claude 或 GPT 在产品上 work,换自架 Llama 代表接受一些品质下降,常常超过你预期。不要把自架当第一个成本优化。
实用配置 recipe
小型 production 部署:
- 硬件:1× H100(租或自有)、64GB 系统 RAM、NVMe SSD
- OS:Ubuntu 22.04 LTS
- 推论:vLLM 加
--enable-prefix-caching跟--max-model-len 16384 - 模型:Llama 3.1 70B Instruct,FP8 量化
- 反向 proxy:Caddy 或 nginx 处理 TLS
- 监控:Prometheus + Grafana 看 token 吞吐跟 GPU 使用率
- 日志:结构化 JSON 送到你既有的工具
- 认证:简单 API key 或 OAuth — 不要无认证 expose
这个 stack 在典型聊天 workload 下能轻松处理 50-100 并发用户。
决策树
- 兴趣、单用户:Ollama 或 LM Studio
- side project、想 tinker:text-gen-webui 或 llama.cpp
- 真产品、真用户、自有硬件:vLLM + 自有 GPU
- 真产品、没硬件预算:Modal、Together、RunPod
- 只有 Mac、大模型:Ollama + Mac Studio M3 Ultra
- 只有 CPU:llama.cpp server
下一步
- 读一下特定量化格式:GGUF Q4 vs Q5 vs Q6
- 看 LoRA 推论,服务基底模型的微调变体
- 读 vLLM 特定调校:max_num_seqs、gpu_memory_utilization
- 早点设好监控 — 出事前你就会想要它