本地大模型部署
下面按主流框架+完整可复现教程+选型建议,给你一份本地部署大模型的全流程详解,覆盖个人/开发/生产全场景。
一、框架总览与选型(2026最新)
先看核心框架对比,按场景直接选:
| 框架 | 定位 | 硬件要求 | 优势 | 适合人群 |
|---|---|---|---|---|
| Ollama | 一键式、全平台 | 4GB+显存/CPU | 零配置、自动API、模型库丰富 | 个人、快速原型、API集成 |
| llama.cpp | 极致轻量、C++推理 | CPU/低配GPU | 纯CPU流畅、GGUF量化、速度快 | 低配设备、嵌入式、边缘端 |
| vLLM | 高吞吐、GPU优化 | NVIDIA GPU | PagedAttention、高并发、快10–20倍 | 生产、高QPS、多GPU |
| TGI | Hugging Face官方服务 | 多GPU | 工程化、健康检查、容器友好 | 企业级、Hugging Face生态 |
| LM Studio | GUI可视化 | 6GB+显存 | 零命令行、对话界面、模型市场 | 普通用户、Mac、非技术 |
| Open WebUI | Web界面、多后端 | 任意 | 多用户、会话、插件、私有化 | 团队、私有化Web服务 |
二、Ollama 极速部署(最推荐,10分钟)
1. 安装(全平台)
# macOS / Linux 一键安装
curl -fsSL https://ollama.com/install.sh | sh
# Windows
# 1. 官网下载 OllamaSetup.exe:https://ollama.com/download
# 2. 安装时勾选「Add to PATH」
# 3. 重启终端,验证:ollama --version
2. 模型下载(中文首选:Qwen 2.5 7B)
# 下载7B中文模型(INT4量化,4GB显存可跑)
ollama pull qwen2.5:7b
# 其他常用模型
ollama pull llama3.1:8b # 国际通用
ollama pull deepseek-r1:7b # 代码/推理
3. 运行与交互
# 命令行对话
ollama run qwen2.5:7b
# API调用(自动开启,端口11434)
curl http://localhost:11434/api/chat -d '{
"model": "qwen2.5:7b",
"messages": [{"role": "user", "content": "你好"}]
}'
4. 模型管理
ollama list # 查看本地模型
ollama rm qwen2.5:7b # 删除模型
ollama create mymodel -f Modelfile # 自定义模型
三、llama.cpp 轻量化部署(纯CPU/低配GPU)
1. 编译(支持CUDA/Apple Silicon)
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
# CPU编译(通用)
make
# NVIDIA GPU加速(推荐)
make LLAMA_CUBLAS=1
# Apple Silicon(M系列)
make LLAMA_METAL=1
2. 模型转换与量化(关键)
# 1. 下载Hugging Face模型(如Qwen 2.5 7B)
git clone https://huggingface.co/Qwen/Qwen2.5-7B-Instruct
# 2. 转换为GGUF格式(llama.cpp专用)
python convert_hf_to_gguf.py Qwen2.5-7B-Instruct --outfile qwen2.5-7b.fp16.gguf
# 3. 量化为INT4(显存降75%,速度最快)
./llama-quantize qwen2.5-7b.fp16.gguf qwen2.5-7b.q4_k_m.gguf q4_k_m
3. 运行推理
# 命令行交互
./main -m qwen2.5-7b.q4_k_m.gguf -p "你好" -n 512
# 启动API服务(端口8080)
./server -m qwen2.5-7b.q4_k_m.gguf -c 2048
四、vLLM 高性能部署(生产级,NVIDIA GPU)
1. 环境准备
# 创建虚拟环境
conda create -n vllm python=3.12
conda activate vllm
# 安装vLLM(CUDA 11.8/12.1)
pip install vllm
2. 启动推理服务(OpenAI兼容API)
# 单GPU启动Qwen 2.5 7B(INT4量化)
python -m vllm.entrypoints.api_server \
--model Qwen/Qwen2.5-7B-Instruct \
--quantization gptq \
--tensor-parallel-size 1 \
--port 8000
# 多GPU(2卡)
python -m vllm.entrypoints.api_server \
--model Qwen/Qwen2.5-7B-Instruct \
--tensor-parallel-size 2 \
--port 8000
3. API调用
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen2.5-7B-Instruct",
"messages": [{"role": "user", "content": "你好"}]
}'
五、TGI 企业级部署(Hugging Face官方)
1. Docker部署(推荐)
# 拉取TGI镜像
docker pull ghcr.io/huggingface/text-generation-inference:latest
# 启动服务(挂载本地模型)
docker run --gpus all \
-p 8080:80 \
-v /path/to/Qwen2.5-7B-Instruct:/model \
ghcr.io/huggingface/text-generation-inference:latest \
--model-id /model \
--quantize bitsandbytes-nf4
2. 验证服务
curl http://localhost:8080/health
六、Open WebUI 可视化部署(团队/私有化)
1. 安装(Docker)
docker run -d -p 3000:3000 \
-e OPENAI_API_BASE=http://host.docker.internal:11434/v1 \
-e OPENAI_API_KEY=ollama \
ghcr.io/open-webui/open-webui:main
2. 访问
打开浏览器:http://localhost:3000
- 连接Ollama/vLLM/TGI后端
- 多用户、会话管理、插件扩展
七、关键优化技巧(必看)
- 量化(核心)
- 个人:INT4(q4_k_m),显存降75%,速度最快
- 生产:INT8/FP8,精度损失小,吞吐高
- 模型选择
- 中文:Qwen 2.5、DeepSeek、GLM-4
- 代码:DeepSeek-Coder、Llama 3.1 Code
- 硬件加速
- NVIDIA:vLLM、TensorRT-LLM
- Apple Silicon:llama.cpp(METAL)、MLX
- CPU:llama.cpp、Ollama CPU模式
- 服务优化
- 高并发:vLLM/TGI
- 可视化:Open WebUI
- 容器化:Docker + Kubernetes
八、框架选型决策树
- 个人/快速原型 → Ollama
- 纯CPU/低配GPU → llama.cpp
- NVIDIA GPU/高并发 → vLLM
- 企业级/Hugging Face生态 → TGI
- 非技术/可视化 → LM Studio
- 团队/私有化Web → Open WebUI
本文来自博客园,作者:蓝迷梦,转载请注明原文链接:https://www.cnblogs.com/hewei-blogs/articles/19799713

浙公网安备 33010602011771号