本地 AI 模型部署
在本地运行大语言模型,保护隐私、无需联网、免费使用。
这页适合作为“本地模型快速起步页”。本地部署真正要先想清楚的不是先下哪个模型,而是你的机器预算、目标任务、交互方式和是否需要 OpenAI 兼容 API。
先按目标选
- 想最快跑起来:优先 Ollama
- 想用图形界面试模型:优先 LM Studio
- 想做高性能 API 服务:优先 vLLM
- 想把模型接进本地工具链:优先带 API 的方案
- 想离线运行和保护隐私:优先本地部署路线
Ollama
最简单的本地模型运行方案。
安装
# Windows
winget install Ollama.Ollama
# macOS
brew install ollama
# Linux
curl -fsSL https://ollama.com/install.sh | sh
基础使用
如果你主要想找一个中文能力不错、资源占用相对友好的本地模型,qwen2.5:7b 往往是比超大模型更容易先跑起来的选择。它很适合先验证 Ollama、RAG、代码助手或本地问答这类基础链路,再决定是否切到更大的参数规模。
# 运行模型(首次会自动下载)
ollama run llama3.1
ollama run qwen2.5:7b
ollama run deepseek-r1:8b
ollama run codellama:13b
# 列出已下载的模型
ollama list
# 下载模型
ollama pull llama3.1:70b
# 删除模型
ollama rm llama3.1
# 查看模型信息
ollama show llama3.1
API 调用
Ollama 默认在 http://localhost:11434 提供 API。
# Chat API
curl http://localhost:11434/api/chat -d '{
"model": "llama3.1",
"messages": [{"role": "user", "content": "你好"}],
"stream": false
}'
# Generate API
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1",
"prompt": "解释什么是 MCP",
"stream": false
}'
Node.js 调用
pnpm add ollama
import { Ollama } from "ollama";
const ollama = new Ollama();
const response = await ollama.chat({
model: "llama3.1",
messages: [{ role: "user", content: "用 TypeScript 写一个快速排序" }],
});
console.log(response.message.content);
OpenAI 兼容 API
Ollama 兼容 OpenAI API 格式:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:11434/v1",
apiKey: "ollama", // 任意值
});
const response = await client.chat.completions.create({
model: "llama3.1",
messages: [{ role: "user", content: "你好" }],
});
自定义模型(Modelfile)
# Modelfile
FROM llama3.1
PARAMETER temperature 0.7
PARAMETER top_p 0.9
SYSTEM """
你是一位资深的 TypeScript 开发者。
回答要简洁直接,优先给代码示例。
使用中文回答。
"""
ollama create my-coder -f Modelfile
ollama run my-coder
LM Studio
图形界面的本地模型管理工具。
winget install LMStudio.LMStudio
特点:
- 可视化模型搜索和下载(Hugging Face)
- 内置聊天界面
- 兼容 OpenAI API(
http://localhost:1234/v1) - 支持 GGUF 格式模型
- 硬件检测和推荐配置
推荐模型
通用对话
| 模型 | 大小 | 说明 |
|---|---|---|
| Llama 3.1 8B | ~4.7 GB | Meta,综合能力强 |
| Qwen 2.5 7B | ~4.4 GB | 阿里,中文优秀 |
| DeepSeek R1 8B | ~4.9 GB | 推理能力强 |
| Gemma 2 9B | ~5.4 GB | Google,轻量高效 |
| Phi-3.5 Mini | ~2.2 GB | 微软,超小但聪明 |
代码生成
| 模型 | 大小 | 说明 |
|---|---|---|
| CodeLlama 13B | ~7.4 GB | Meta,代码专用 |
| DeepSeek Coder V2 | ~8.9 GB | 代码能力顶级 |
| Qwen 2.5 Coder 7B | ~4.4 GB | 代码补全优秀 |
| StarCoder2 7B | ~4.0 GB | BigCode,多语言 |
硬件要求
7B 模型:8GB+ 内存/显存
13B 模型:16GB+ 内存/显存
70B 模型:48GB+ 内存/显存(或量化后 32GB+)
- GPU 推理远快于 CPU
- Apple Silicon 的统一内存对大模型友好
- NVIDIA GPU 需要 CUDA 支持
Web UI
Open WebUI
docker run -d -p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
ghcr.io/open-webui/open-webui:main
访问 http://localhost:3000,自动连接本地 Ollama。
推荐落地顺序
建议按这个顺序开始:
- 先选一个入门运行器
- 先跑一个小模型验证速度和内存占用
- 再补更适合自己任务的模型
- 再接 Web UI、API 或代理工具
- 最后再考虑量化、批量调用和长期驻留服务
常见问题
模型能跑,但效果不理想
通常说明模型大小、量化级别或任务类型不匹配。先换模型,再考虑调提示词。
本地很慢
优先检查:
- 是否走了 CPU 推理
- 内存是否不足
- 模型是否过大
- 是否同时开了太多本地服务
应该先学本地模型还是直接用云 API
如果你更看重隐私、离线、零调用成本,本地模型值得先学;如果你更看重效果和省维护,云 API 往往更直接。
延伸阅读
参考链接
- Ollama — 官网与模型库
- LM Studio — 图形界面工具
- Open WebUI — Web 聊天界面
- Hugging Face — 模型仓库