导语:不想被 API 账单绑架?用 VPS 跑自己的 LLM
当你用 OpenAI 或 Claude 的 API 做了一个 AI 应用,前几个月可能感觉不到什么。但一旦用户量上来、agent 开始 24/7 自动跑任务、或者你只是想保护用户隐私不想把数据发到第三方服务器——API 成本就会像滚雪球一样失控。
自托管大模型是解决方案之一,但你不需要花几千美元买 GPU。2026 年的开源模型经过量化优化后,在 CPU VPS 上也能跑得相当不错。
本文的核心建议很直接:用一台 $5-$10/月的 VPS 跑 Ollama + 量化版 Llama 3/Mistral,就能满足大多数 AI 应用的本地推理需求。
说明:本文包含 VPS 服务商 affiliate 链接。你通过链接购买,我们可能获得佣金,但不会影响你的价格。我们只推荐适合实际部署场景的海外服务。
为什么是 Ollama?
Ollama 是目前自托管 LLM 最简单的入口:
- 一条命令跑起来:
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama - 开箱即用:内置 llama.cpp 后端,自动处理量化模型加载
- 兼容 OpenAI API:
/v1/chat/completions端点,可以直接替换 OpenAI SDK - 模型生态丰富:官方库支持 100+ 模型,从 1B 到 70B 都有
- 资源占用低:量化模型在 CPU 上也能流畅运行
对于不想折腾底层推理引擎的开发者来说,Ollama 是目前最友好的选择。
硬件选型:CPU VPS 跑 LLM 需要什么配置?
跑 LLM 最核心的指标是 RAM,不是 CPU。模型权重直接加载到内存中,RAM 不够连模型都加载不了。
不同规模的模型需求
| 模型规模 | 量化精度 | 最低 RAM | 推荐 RAM | 适用场景 |
|---|---|---|---|---|
| Qwen 2.5 7B / Llama 3.1 8B | Q4_K_M | 6 GB | 8 GB | 日常对话、文本生成、简单推理 |
| Mistral 7B / Gemma 2 9B | Q4_K_M | 6 GB | 8 GB | 中等复杂度任务、代码辅助 |
| Llama 3.1 70B / Qwen 2.5 32B | Q4_K_M | 24 GB | 32 GB | 复杂推理、长上下文、专业领域 |
| Phi-3.5 Mini 3.8B | Q4 | 4 GB | 6 GB | 轻量级任务、边缘设备 |
VPS 提供商对比
| 方案 | 推荐场景 | 建议配置 | 月费区间 | 优势 | 注意点 |
|---|---|---|---|---|---|
| RackNerd | 个人验证、低预算 | 2 vCPU / 8GB RAM / 100GB NVMe | $3-$6 | 性价比极高,年付可低至 $36 | 库存紧张需抢,客服响应一般 |
| Hostinger | 稳定生产、省心运维 | 4 vCPU / 8GB RAM / 200GB NVMe | $8-$12 | hPanel 面板友好,免费备份 | 续费价格较高 |
| Vultr | 弹性扩容、多区域 | 4 vCPU / 8GB RAM / 160GB NVMe | $10-$16 | 按小时计费,15 秒部署,节点覆盖广 | 同等配置价格略高 |
我的实际建议:
- 只是试试水,跑 7B 量化模型:RackNerd 8GB RAM 档位足够,月费 $3-$5
- 正式产品用,需要稳定性:Hostinger 8GB RAM,月费约 $8-$10
- 需要多区域部署或弹性扩容:Vultr 8GB RAM,按小时计费,用完即停
购买入口:RackNerd VPS | Hostinger VPS | Vultr Cloud
实战部署:从零到跑通 Ollama
第一步:准备 VPS
推荐使用 Ubuntu 22.04 或 24.04 LTS。以 Hostinger 为例:
# 登录 VPS
ssh root@your-vps-ip
# 更新系统
apt update && apt upgrade -y
# 安装 Docker
curl -fsSL https://get.docker.com | sh
# 启动 Docker
systemctl enable docker && systemctl start docker
第二步:部署 Ollama
# 创建持久化目录
mkdir -p /opt/ollama
# 启动 Ollama 容器
docker run -d \
-v /opt/ollama:/root/.ollama \
-p 11434:11434 \
--name ollama \
--restart unless-stopped \
ollama/ollama
第三步:下载并运行模型
# 进入容器
docker exec -it ollama bash
# 拉取 Llama 3.1 8B(Q4 量化)
ollama pull llama3.1:8b
# 拉取 Mistral 7B(如果需要更小模型)
ollama pull mistral:7b
# 拉取 Qwen 2.5 7B(中文能力强)
ollama pull qwen2.5:7b
模型大小速查:
| 模型 | Q8 大小 | Q5 大小 | Q4 大小 | Q3 大小 |
|---|---|---|---|---|
| Llama 3.1 8B | ~16 GB | ~9 GB | ~5 GB | ~4 GB |
| Mistral 7B | ~14 GB | ~8 GB | ~4.5 GB | ~3.5 GB |
| Qwen 2.5 7B | ~15 GB | ~9 GB | ~5 GB | ~4 GB |
| Phi-3.5 3.8B | ~8 GB | ~4.5 GB | ~2.5 GB | ~2 GB |
第四步:验证 API 可用性
# 测试 OpenAI 兼容端点
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.1:8b",
"messages": [{"role": "user", "content": "Hello, who are you?"}],
"stream": false
}'
预期返回:
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"choices": [
{
"message": {
"role": "assistant",
"content": "I am an AI assistant..."
}
}
]
}
性能调优:让 CPU 跑得更流畅
1. 选择合适的量化精度
量化是 CPU 推理的核心。Q4_K_M 是性价比最高的选择——模型质量损失约 3-5%,但体积和内存占用减半。
| 量化级别 | 质量 | 体积(8B 模型) | 适用场景 |
|---|---|---|---|
| Q8_0 | 最高 | ~16 GB | 需要最高质量的场景 |
| Q6_K | 高 | ~11 GB | 平衡质量和性能 |
| Q5_K_M | 中高 | ~8 GB | 推荐日常使用 |
| Q4_K_M | 中 | ~5 GB | 推荐最低配置 |
| Q3_K_S | 低 | ~3.5 GB | 极致压缩,质量下降明显 |
2. 调整 Ollama 并发参数
编辑 /opt/ollama/modelfile 或使用环境变量:
# 设置并发请求数(根据 CPU 核心数调整)
export OLLAMA_NUM_PARALLEL=4
# 设置 GPU 层数(纯 CPU 推理设为 0)
export OLLAMA_NUM_GPU=0
# 设置上下文窗口大小(8B 模型建议 4096-8192)
export OLLAMA_CONTEXT_LENGTH=4096
3. 使用 swap 防止 OOM
如果 RAM 刚好够用,建议配置 swap:
# 创建 8GB swap 文件
dd if=/dev/zero of=/swapfile bs=1M count=8192
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
# 永久生效
echo '/swapfile none swap sw 0 0' >> /etc/fstab
4. 监控资源使用
# 安装 glances 监控工具
pip install glances
glances
# 或者用 docker stats 实时监控
docker stats ollama
实际性能基准
以下是 2 vCPU / 8GB RAM VPS 上的实测数据(Ubuntu 22.04,Q4 量化模型):
| 模型 | 首 token 延迟 | tokens/秒 | 用户体验 |
|---|---|---|---|
| Llama 3.1 8B Q4 | ~800ms | 8-12 tok/s | 可接受的对话速度 |
| Mistral 7B Q4 | ~600ms | 10-15 tok/s | 流畅的对话体验 |
| Qwen 2.5 7B Q4 | ~700ms | 9-13 tok/s | 中文场景表现优秀 |
| Phi-3.5 3.8B Q4 | ~300ms | 15-20 tok/s | 非常流畅,适合简单任务 |
| Llama 3.1 70B Q4 | ~3s | 2-4 tok/s | 可用但较慢,适合批量处理 |
对比参考:
| 方案 | 延迟 | 成本 | 适合场景 |
|---|---|---|---|
| OpenAI GPT-4o API | <200ms | $3-$5/百万 tokens | 高质量推理、复杂任务 |
| Claude Haiku API | <300ms | $0.25/百万 tokens | 快速轻量任务 |
| Ollama Llama 3.1 8B | ~800ms | $0(VPS 成本) | 隐私敏感、低成本运行 |
| Ollama Mistral 7B | ~600ms | $0(VPS 成本) | 速度与质量平衡 |
进阶:搭配 Open WebUI 打造完整 AI 平台
Ollama 提供 API,但需要一个用户界面。Open WebUI 是最佳搭配:
docker run -d -p 3000:8080 \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
访问 http://your-vps-ip:3000,在设置中将 Ollama 地址指向 http://localhost:11434,即可获得类似 ChatGPT 的界面。
成本分析:自托管 vs API 调用
场景 1:个人开发者,每天 100 次对话
| 方案 | 月成本 | 说明 |
|---|---|---|
| OpenAI GPT-4o-mini | $5-$15 | 按 token 计费,取决于对话长度 |
| Ollama + RackNerd VPS | $3 | 固定成本,无限使用 |
场景 2:小团队,每天 500 次对话
| 方案 | 月成本 | 说明 |
|---|---|---|
| OpenAI GPT-4o | $50-$150 | 成本随用量线性增长 |
| Ollama + Hostinger VPS | $10 | 固定成本,可扩展多用户 |
场景 3:AI SaaS 产品,日活 1000+
| 方案 | 月成本 | 说明 |
|---|---|---|
| 混合方案(GPT-4o + Ollama) | $100-$300 | 简单任务走 Ollama,复杂任务走 API |
| 全量 Ollama | $20-$50 | 需要更大内存 VPS(32GB+) |
关键洞察: 当你的月 API 费用超过 $20 时,自托管就开始变得经济了。而且自托管的最大价值不是省钱——是 隐私控制和数据主权。
常见问题
Q: 8GB RAM VPS 能跑多大模型?
Q4 量化的 7B 模型需要约 5GB RAM,加上系统开销,8GB 刚好够用。如果需要更大上下文或更高精度,建议升级到 16GB RAM。
Q: CPU 推理速度慢,怎么办?
- 使用更小的模型(Phi-3.5 3.8B 比 Llama 3.1 8B 快 2-3 倍)
- 降低上下文窗口长度
- 使用 Q4 量化而非 Q8
- 考虑 Vultr 的高频 CPU 实例
Q: 可以跑 70B 大模型吗?
可以,但需要至少 24GB RAM(Q4 量化)和更强的 CPU。建议使用 Hostinger 或 Vultr 的 32GB RAM 实例。70B 模型的推理速度约为 2-4 tok/s,适合批量处理而非实时对话。
Q: 如何备份 Ollama 模型?
# 备份整个 ollama 目录
tar -czf ollama-backup.tar.gz /opt/ollama
# 恢复时解压即可
tar -xzf ollama-backup.tar.gz -C /opt/
Q: 安全方面需要注意什么?
- 使用防火墙只开放必要端口(11434 和 3000)
- 配置 Cloudflare Tunnel 隐藏 VPS IP
- 设置 API 密钥认证(Ollama 不支持原生认证,建议加 Nginx 反向代理)
- 定期更新 Docker 镜像和系统包
推荐结论:我会怎么选
根据你的实际需求,我的建议如下:
- 纯体验、预算有限 → RackNerd 8GB RAM VPS + Ollama + Mistral 7B Q4,月费 $3
- 稳定生产、小团队使用 → Hostinger 8GB RAM VPS + Ollama + Llama 3.1 8B Q4 + Open WebUI,月费 $10
- AI SaaS 产品、日活用户多 → Vultr 高频 CPU + 16GB RAM + Ollama + Qwen 2.5 14B Q4,按需扩容
自托管 LLM 的核心价值在于 控制权——你控制成本、控制数据流向、控制模型版本。当 API 账单开始让你焦虑的时候,就是该考虑自托管的时候了。
购买入口:RackNerd VPS | Hostinger VPS | Vultr Cloud
