LOCAL LLM · 本地部署 / 私有推理
本地模型速查
从显存估算、量化等级取舍,到 Ollama 一条命令跑模、vLLM 高吞吐服务化,再到硬件选购、报错排障、模型选型与私有化合规要点,本地部署全流程的 47 条实操要点一张表收齐,照着跑就能用。
47条速查
8大板块
∞持续更新
📖 速查表
点击展开各小节
💻 硬件与量化
能不能跑起来先看显存:学会估算公式,看一眼模型参数量和量化等级就知道自己显卡行不行。
| 名称 | 说明 | 要点 |
|---|---|---|
| 显存估算经验 | 显存 ≈ 参数量 × 每权重字节数 + KV Cache + 运行开销;权重占大头,KV Cache 随上下文长度增长,长上下文场景必须单独预留 | 7B Q4 ≈ 4~5GB;Q4 每参数约 0.6 字节、FP16 约 2 字节 先估权重再留余量 |
| FP16 全精度 | 质量基准线,权重最占显存 | 7B 也要 14GB+,消费级显卡基本无缘 质量基准 |
| Q8 量化 | 近乎无损,显存约为 FP16 的一半 | 追求质量与显存平衡时的默认档位 均衡之选 |
| Q4 量化 | 显存约为 FP16 的 1/4,质量下降轻微 | 能跑进 8~12GB 显卡,个人用户主力档 个人主力 |
| Q2/Q3 低比特 | 显存进一步压缩,但复杂推理与代码任务退化明显 | 答非所问先查量化等级,别急着怪模型 质量明显受损 |
| GGUF | llama.cpp 生态格式,支持 CPU/GPU 混合推理 | Ollama、LM Studio 均以 GGUF 为主,个人部署首选 个人首选 |
| GPTQ / AWQ | 面向 GPU 的训练后量化格式,需显卡常驻推理 | AWQ 精度普遍更稳,配合 vLLM 做服务化 GPU 服务化 |
🦙 Ollama 速用
| 名称 | 说明 | 要点 |
|---|---|---|
| ollama pull | 拉取模型到本地,支持断点续传 | ollama pull qwen2.5:7b;先在模型页选对参数规模与量化标签 |
| ollama run | 下载 + 进入对话一条龙,缺啥补啥 | ollama run deepseek-r1:14b;首次运行后自动监听 11434 端口 |
| ollama show | 查看模型详情:参数量、量化等级、上下文长度、能力标签 | 排查「为什么慢 / 为什么答非所问」先看 show 输出 排障第一步 |
| ollama ps / stop | 查看已加载模型与显存占用;手动卸载常驻模型 | 多模型来回切换显存吃紧时,先 stop 再换 显存管理 |
| Modelfile 自定义 | 基于 FROM + SYSTEM 定制系统提示词与默认参数 | FROM qwen2.5:7b + PARAMETER temperature 0.3,ollama create 生成团队统一人设的专属模型 团队统一人设 |
| REST API | 原生 /api/chat、/api/generate 与 OpenAI 兼容 /v1/chat/completions 双端点 | 应用对接优先走 OpenAI 兼容端点,换网关零成本 对接首选 |
| keep_alive 与并发 | 默认模型常驻 5 分钟,keep_alive=-1 可常驻显存;请求串行排队 | 免重复加载秒回;高并发场景换 vLLM 或多实例负载均衡 并发是弱项 |
🚀 vLLM 与加速
| 名称 | 说明 | 要点 |
|---|---|---|
| vLLM 定位 | 高吞吐生产级推理引擎,面向多用户服务化场景 | 要稳定 QPS 用 vLLM;个人单机聊天 Ollama 更省事 服务化首选 |
| PagedAttention | 把 KV Cache 像操作系统分页一样按块管理,显存碎片大幅减少 | 显存利用率提升直接换来更高并发 核心黑科技 |
| 连续批处理 | 请求随到随进批、完成即退出,不等整批结束 | 吞吐量相比静态批处理成倍提升 高吞吐关键 |
| max-model-len | 最大上下文长度,直接决定 KV Cache 显存占用 | 按业务实际需要调小(如 4096),别默认拉满 显存大头 |
| gpu-memory-utilization | 允许 vLLM 占用的显存比例,默认 0.9 | 与其他服务共卡时下调,防止 OOM 连累邻座 |
| 与 TGI / llama.cpp 对比 | TGI 同为服务化引擎、生态成熟;llama.cpp 轻量、CPU 友好 | 极简单机用 llama.cpp,生产服务 vLLM / TGI 二选一 按场景选 |
🔌 接口与客户端
| 名称 | 说明 | 要点 |
|---|---|---|
| OpenAI 兼容端点对接 | 三要素:base-url、api-key(本地可任意串)、model 名称 | 各家 SDK 只改这三项即可在本地与云端模型间切换 一套代码多后端 |
| 流式输出 SSE | stream=true 逐 token 返回,首字延迟大幅降低 | 客户端按 chunk 拼接渲染,注意设置读超时与中断收尾 |
| Open WebUI | 自托管对话界面:多模型切换、知识库、RAG、权限管理内置 | Docker 一条命令拉起,团队内部共享入口首选 开箱即用 |
| ChatBox / LobeChat | 桌面 / 网页客户端,填好端点与密钥即用 | 个人快速试模型用 ChatBox,要插件与 Agent 生态选 LobeChat |
| 知识库联动 | Open WebUI 内置文档上传与向量检索,本地 RAG 零代码起步 | 小团队知识问答先用它验证需求,再考虑自建链路 低成本验证 |
🧭 模型选择
| 名称 | 说明 | 要点 |
|---|---|---|
| 7B 级 | 日常问答、摘要、简单代码补全够用 | 8GB 显存可用,量化后 CPU 也能跑;复杂推理与长代码吃力 入门够用 |
| 14B 级 | 代码生成、多步推理质量上一个台阶 | 12~16GB 显存,个人工作站甜点位 甜点规模 |
| 32B 级 | 复杂推理、代码重构、长文写作的主力档 | Q4 需 24GB+ 显存,接近云端中档模型水平 私有化主力 |
| 中文对话推荐 | Qwen 系列中文综合能力扎实;DeepSeek 蒸馏版推理强、体积小 | 同规模下看中文评测榜 + 拿真实任务试用,不迷信参数量 |
| Embedding 选型 | bge 系列(bge-m3 / bge-large-zh)中文检索效果好、可本地部署 | 向量维度与上下文长度要和下游向量库一起规划 RAG 标配 |
| 版本与更新 | 同名模型不同 tag 对应不同规模 / 量化,更新前后行为可能漂移 | 生产环境锁定具体 tag(如 qwen2.5:14b-instruct-q4_K_M) 禁用 latest |
🔐 场景与合规
| 名称 | 说明 | 要点 |
|---|---|---|
| 数据不出域适用 | 代码助手、合同审阅、医疗 / 金融内部问答等涉密场景的刚需方案 | 本地部署 ≠ 自动合规,仍需访问控制、脱敏与审计 合规底线 |
| 内网隔离部署 | 推理机不联外网,模型文件经审核后离线导入 | 拉模型走跳板机统一导入,运行时禁止外呼 |
| 并发与限速规划 | 按显存与上下文长度估算并发上限,网关层做排队与限流 | 并发 ≈ 显存 ÷ 单请求占用,留 20% 余量,先压测再上线 先压测再上线 |
| 磁盘规划 | 单个模型文件 4~40GB,多版本叠加极占空间 | 模型目录独立挂盘、定期清理无用 tag、监控盘容量 容量预警 |
| 备份与版本管理 | 模型文件以校验和登记版本;Modelfile 与配置进 Git | 模型本体不进 Git,维护「业务 ↔ 模型 tag」映射表备查 |
| 混合路由兜底 | 本地小模型答不好的任务,按数据分级路由到云端大模型 | 敏感数据走本地、公开任务上云,网关统一判定路由 混合路由 |
🖥 硬件选购速查
「硬件与量化」讲怎么省显存,这里讲怎么掏钱:按预算与目标模型规模对号入座,先卡再模,别反着来。
| 档位 | 说明 | 选购要点 |
|---|---|---|
| 8GB 显存 | 7B Q4 起步,问答 / 摘要 / 简单补全够用;跑模前关掉占显存的应用,浏览器硬件加速也是显存杀手 | 7B Q4 起步 入门之选 |
| 16~24GB 显存 | 14B~32B Q4 的甜点区间:24G 卡(3090 / 4090)可跑 32B Q4,二手 3090 是性价比之王 | 14B~32B Q4 个人工作站首选 |
| 多卡 / A100 级 | 32B 以上 FP16 或生产高并发才需要;多卡拆层推理受卡间互联带宽拖累,优先 NVLink / NVSwitch 整机 | 32B+ / 高并发 按业务预算上 |
| 内存带宽定速度 | 纯 CPU 推理与显存不足的拆层加载,瓶颈在内存带宽而非算力:双通道起步,带宽翻倍速度近翻倍 | 先看带宽再看算力 CPU 推理看带宽 |
| Mac 统一内存 | Apple Silicon 内存 CPU / GPU 共享,大内存 Mac 能装下 70B Q4;代价是推理速度低于同价 N 卡、CUDA 生态缺位 | 大内存 Mac 能跑大模 省心省电但偏慢 |
🔧 常见报错速查
本地跑模五大高频翻车点:先对症状,再按顺序处置,别一上来就重装系统。
| 报错 / 症状 | 处置方法 | 要点 |
|---|---|---|
| CUDA out of memory | 先 ollama stop 卸载常驻模型释放显存,再逐级退:降量化(Q8→Q4)、缩短上下文(num_ctx / max-model-len)、换更小模型 | 降量化 / 砍上下文 逐级退别硬扛 |
| 模型下载慢 / 失败 | 海外源限速是常态:HuggingFace 换 HF_ENDPOINT 镜像或去 ModelScope 下载,再离线导入本地运行时 | 镜像源 / 离线导入 先换源再等待 |
| 端口被占用 | 11434 冲突或需对外服务时改 OLLAMA_HOST=0.0.0.0:11435;systemd 部署要同步改 service 的 Environment | OLLAMA_HOST 改端口 服务配置别漏改 |
| GGUF 架构不支持 | 新模型架构发布常早于运行时支持:升级 ollama / llama.cpp 到最新版再加载,别急着换模型文件 | 先升级运行时 运行时追新架构 |
| 中文乱码 / 答非所问 | 多为模型中文能力或分词器问题:换原生中文模型(Qwen、DeepSeek 等),别拿英文社区微调模型硬跑中文 | 选中文原生模型 换模比调参管用 |