41 · 自建中央厨房——从阿明的“OpenAI 又被封 + 数据不能出云“,看 AI 私有化部署 —— **5 大部署形态 + 4 大推理框架 + 量化 / 微调 / GPU 利用率 + 成
系列定位本篇是「阿明餐厅」系列的续集十七。在续集十六 · 40 · AI 合规我们讲了数据出境的合规要求。在续集十二 · 36a 成本结构我们讲了 LLM API 的成本。本篇是AI 模型私有化部署专题—— 当你不能或不想用 OpenAI API 时怎么在自有环境部署 LLM。从单 GPU 到分布式从量化到微调从性能到成本。引言阿明的OpenAI 封号 数据出云双危机2026 年初阿明餐厅遇到两场危机危机 1OpenAI 封号 - 中国 IP 大量访问触发风控 - 账号被封 7 天 - 业务全停AI 客服、推荐、内容生成 - 损失日均 30 万 危机 2合规要求 - 中国《数据出境安全评估办法》生效 - 用户数据不能出云 - 必须私有化 - 法务部下达最后通牒老陈当机立断3 个月内完成核心 AI 系统的私有化部署。本篇就是这次私有化战役的完整复盘。第一章私有化 vs API 决策 —— 自建厨房还是叫外卖1.1 决策矩阵维度API公有云私有化自建数据合规❌ 数据出云✅ 数据不出域初期成本✅ 低0 投入❌ 高GPU 运维长期成本❌ 高按 token 计费✅ 低一次投入持续使用性能✅ 顶级模型⚠️ 取决于硬件可控性❌ 黑盒✅ 完全可控稳定性⚠️ 依赖供应商✅ 自主可控定制化⚠️ 仅 Fine-tuning✅ 深度定制运维✅ 零运维❌ 高运维1.2 何时选择私有化必须私有化 1. 数据合规要求金融 / 医疗 / 政府 2. 业务核心离了 AI 业务停摆 3. 大规模调用 1 亿 token/月私有化更便宜 4. 深度定制Fine-tuning 满足不了 5. 网络不稳定API 经常断 可继续用 API 1. 早期原型 100 万 token/月 2. 非核心功能辅助性 AI 3. 临时性需求一次性 / 短期 4. 缺乏 GPU 资源 5. 缺乏运维能力1.3 阿明的决策阿明的私有化策略4 阶段 阶段 1核心 高频 - 推荐系统每日 100 万次调用 - 客服系统每日 50 万次调用 - → 私有化Qwen 2.5-72B 阶段 2核心 中频 - 内容审核 - 文档摘要 - → 私有化Qwen 2.5-32B 阶段 3辅助 低频 - 数据分析 - 报表生成 - → 继续用 APIGPT-4o-mini 阶段 4兜底 - 复杂推理 - 创意内容 - → 继续用 APIClaude / GPT-4o第二章5 大部署形态 —— 从单灶小馆到中央厨房五种开店方案2.1 形态 1单 GPU 服务器硬件1-4 张 A100 / H100 适合 - 7B-13B 模型 - 中小规模日均 100 万次 - 早期验证 成本 - 一次性30-100 万 - 年运维10-20 万 - 单价约 0.0003 元/千 tokenQwen 7B 优势 - 简单单机部署 - 成本低 - 适合中小公司 劣势 - 单点故障 - 性能有限 - 难扩展2.2 形态 2多 GPU 服务器单机多卡硬件8-16 张 H100如 NVIDIA DGX H100 适合 - 70B 模型张量并行 - 中大规模 - 高吞吐 工具 - vLLM张量并行 - TensorRT-LLM - DeepSpeed 成本 - 一次性200-500 万 - 年运维30-50 万 - 单价约 0.0005 元/千 tokenQwen 72B2.3 形态 3GPU 集群硬件多台 GPU 服务器 高速网络InfiniBand 适合 - 100B 模型 - 大规模日均 1000 万次 - 高可用 部署 - Kubernetes GPU Operator - 多机张量并行 - Pipeline 并行 成本 - 一次性1000-5000 万 - 年运维200-500 万 - 单价约 0.0008 元/千 token2.4 形态 4私有云 公有云混合架构 - 私有化核心 敏感 - 公有云弹性 峰值 - API兜底 适合 - 业务波动大 - 突发流量 - 灾备需求 工具 - Kong / APISIXAPI 网关 - 自研流量调度 - 多云管理平台2.5 形态 5边缘部署硬件消费级 GPU / NPU / 端侧芯片 适合 - 小模型1B-7B - 离线场景 - 低延迟要求 部署 - OllamaMac / Linux - LM Studio桌面 - llama.cppCPU 推理 - MNN / NCNN移动端 应用 - 端侧智能助手 - 离线翻译 - 智能客服终端第三章4 大推理框架对比 —— 四大品牌灶台哪个炒菜最快3.1 总览对比表框架厂商强项弱项适合vLLMUC Berkeley吞吐高PagedAttention显存占用高通用首选TensorRT-LLMNVIDIA性能最强仅 NVIDIA高性能DeepSpeed-MIIMicrosoft易用 集成好性能略弱微软生态TGIHuggingFace易用 兼容性好性能中等快速起步3.2 vLLM推荐首选# 安装pipinstallvllm# 启动Qwen 2.5-72B4 卡 A100python-mvllm.entrypoints.openai.api_server\--modelQwen/Qwen2.5-72B-Instruct\--tensor-parallel-size4\--gpu-memory-utilization0.9\--max-model-len32768\--port8000# 调用OpenAI 兼容 APIcurlhttp://localhost:8000/v1/chat/completions\-HContent-Type: application/json\-d{ model: Qwen/Qwen2.5-72B-Instruct, messages: [{role: user, content: 你好}] }vLLM 优势PagedAttention显存利用率提升 4x连续批处理吞吐提升 10-20xOpenAI 兼容迁移成本低动态批处理高并发友好实测性能A100 80G ×4Qwen 2.5-72B约 50 tokens/秒/用户并发 100 用户吞吐 5000 tokens/秒3.3 TensorRT-LLM性能最强importtensorrt_llmfromtensorrt_llmimportLLM,SamplingParams# 编译首次需要llmLLM(modelQwen/Qwen2.5-72B-Instruct)# 推理sampling_paramsSamplingParams(temperature0.7,max_tokens512)outputllm.generate([你好请介绍阿明餐厅],sampling_params)print(output[0].outputs[0].text)TensorRT-LLM 优势性能最强NVIDIA 优化到极致支持 INT8 / FP8 量化内核融合优化劣势编译时间长首次 30 分钟仅支持 NVIDIA GPU配置复杂3.4 DeepSpeed-MII微软生态importmii# 部署mii.serve(Qwen/Qwen2.5-72B-Instruct,deployment_nameqwen_deploy)# 推理resultmii.inference(qwen_deploy,你好)print(result)优势与 DeepSpeed 训练无缝衔接支持多种优化ZeRO / Tensor Parallel微软生态集成3.5 TGIHuggingFace# Docker 部署dockerrun--gpusall-p8080:80\-v~/.cache/huggingface:/root/.cache/huggingface\ghcr.io/huggingface/text-generation-inference:latest\--model-id Qwen/Qwen2.5-72B-Instruct\--num-shard4优势易用一行命令启动HuggingFace 模型直接用文档好第四章模型量化与压缩 —— 大菜切小份小灶也能做大餐4.1 量化的必要性显存占用Qwen 2.5-72B 为例 - FP16原始144 GB - INT872 GB - INT436 GB - INT4 GPTQ30 GB - INT4 AWQ28 GB 实际部署 - 1 张 A100 80G → INT472B 模型勉强 - 4 张 A100 80G → FP1672B 模型 - 8 张 A100 80G → FP16 大 batch4.2 量化方法对比方法精度显存节省性能损失工具FP16原始1x0%-INT8 (GPTQ)中2x1-3%AutoGPTQINT4 (AWQ)中4x3-5%AutoAWQINT4 (GGUF)中4x3-5%llama.cppFP8中2x 1%TensorRT-LLM4.3 AWQ 量化实战# 安装 AutoAWQpipinstallautoawq# 量化 Qwen 2.5-72Bpython-mawq.entry--model_pathQwen/Qwen2.5-72B-Instruct\--w_bit4--q_group_size128\--run_awq--dump_awq\--output_dir./Qwen2.5-72B-Instruct-AWQ# 部署vLLM 自动识别 AWQpython-mvllm.entrypoints.openai.api_server\--model./Qwen2.5-72B-Instruct-AWQ\--quantizationawq\--tensor-parallel-size4实测Qwen 2.5-72B AWQ INT4显存72 GB4 张 A100 100% 满载性能与 FP16 相比P99 延迟 5%质量评测分数下降 2-3%4.4 GGUF 量化CPU 推理# 转换模型python convert.py Qwen/Qwen2.5-72B-Instruct\--outfileqwen2.5-72b.gguf\--outtypeq4_K_M# CPU 推理./main-mqwen2.5-72b.gguf\-p你好请介绍阿明餐厅\-n512-t8适合边缘设备离线推理极低成本第五章模型微调 —— 老汤底加新料调出阿明味5.1 微调方法对比方法显存训练速度数据量适合Full Fine-tuning100%慢多充足资源LoRA10%中中通用首选QLoRA5%中中资源紧张Prefix Tuning1%快少快速适配RLHF100%慢多对齐训练5.2 LoRA 微调实战frompeftimportLoraConfig,get_peft_modelfromtransformersimportAutoModelForCausalLM,AutoTokenizer# 加载基础模型modelAutoModelForCausalLM.from_pretrained(Qwen/Qwen2.5-7B-Instruct)tokenizerAutoTokenizer.from_pretrained(Qwen/Qwen2.5-7B-Instruct)# LoRA 配置lora_configLoraConfig(r16,# ranklora_alpha32,target_modules[q_proj,k_proj,v_proj,o_proj],lora_dropout0.05,biasnone,task_typeCAUSAL_LM)# 应用 LoRAmodelget_peft_model(model,lora_config)model.print_trainable_parameters()# trainable params: 8,388,608 || all params: 7,625,439,744 || trainable%: 0.11%# 训练fromtransformersimportTrainer,TrainingArguments training_argsTrainingArguments(output_dir./qwen-7b-lora-restaurant,num_train_epochs3,per_device_train_batch_size4,gradient_accumulation_steps4,learning_rate2e-4,fp16True,logging_steps10,save_steps100,)trainerTrainer(modelmodel,argstraining_args,train_datasettrain_dataset,# 阿明餐厅数据集tokenizertokenizer,)trainer.train()# 合并 LoRA 权重modelmodel.merge_and_unload()model.save_pretrained(./qwen-7b-restaurant)5.3 阿明的微调策略阿明的数据集5 万条 - 客服对话2 万条 - 推荐理由1 万条 - 菜单描述1 万条 - 投诉处理1 万条 微调参数 - 基础模型Qwen 2.5-7B中文 小巧 - 方法LoRAr16 - 数据5 万条 - 训练3 epoch / 8 A100 / 6 小时 - 成本300 元GPU 租用 微调效果 - 客服意图识别85% → 95% - 推荐理由质量4.2/5 → 4.6/5 - 投诉处理满意度70% → 88%第六章性能优化与 GPU 利用率 —— 灶台火力全开食材一点不浪费6.1 关键指标1. 吞吐Throughput - tokens/秒生成 - requests/秒请求 - batch 大小 / 并发数 2. 延迟Latency - TTFTTime To First Token首 token 时间 - TPOTTime Per Output Token每 token 间隔 - 总延迟 3. GPU 利用率 - GPU SM 利用率 70% 优秀 - 显存利用率 80% 优秀 - 通信开销多卡时 4. 成本 - $/百万 token - $/千次请求 - ROI6.2 6 大优化技巧1. 连续批处理Continuous Batching - 工具vLLM / TGI - 效果吞吐 10-20x 2. PagedAttention - 工具vLLM - 效果显存利用率提升 4x 3. KV Cache 优化 - 工具vLLM / TensorRT-LLM - 效果长上下文支持 2x 吞吐 4. 量化INT8 / INT4 - 效果吞吐 2-3x显存 2-4x 5. 预编译TensorRT / AOT - 效果首 token 时间 -50% 6. 推测解码Speculative Decoding - 工具vLLM - 效果吞吐 2-3x小模型 大模型组合6.3 GPU 利用率调优# 1. 监控 GPUnvidia-smi-l1# 2. 调整 batch sizepython-mvllm.entrypoints.openai.api_server\--max-num-seqs256\# 最大并发--max-num-batched-tokens8192# 最大 batch token# 3. 调整显存分配--gpu-memory-utilization0.95# 显存使用率0-1# 4. 启用 chunked prefill--enable-chunked-prefill# 5. 启用 prefix caching--enable-prefix-caching6.4 阿明的优化效果优化前 - 硬件8 × A100 80G - 模型Qwen 2.5-72B FP16 - 吞吐500 tokens/秒 - GPU 利用率45% - 延迟 P992 秒 优化后 - 硬件8 × A100 80G不变 - 模型Qwen 2.5-72B AWQ INT4 - 吞吐3000 tokens/秒500% - GPU 利用率85% - 延迟 P990.8 秒-60% 关键动作 1. FP16 → INT4吞吐 2x 2. vLLM PagedAttention吞吐 2.5x 3. 连续批处理吞吐 1.5x 4. Prefix caching首 token -50% 5. Speculative decoding生成 2x第七章成本对比 —— 五年账单一算自建还是外包一目了然7.1 私有化 vs API 长期成本场景每日 500 万 token 调用Qwen 2.5-72B 质量水平 API 方案GPT-4o - 单价$5/M input $15/M output - 日均成本500 万 × 0.6inputoutput 加权÷ 100 万 × $10 $30 - 年成本$30 × 365 $10,950 7.7 万 RMB - 5 年总成本38.5 万 RMB 私有化方案自建 GPU - 一次性300 万4 × A100 80G 服务器 - 年运维50 万电费 运维 机房 - 5 年总成本300 50 × 5 550 万 对比 - 5 年内 API 成本 私有化成本 - 但私有化后单 token 成本几乎为 0 - 6 年后开始私有化优势显现 阿明的决策 - 短期 1 年API - 中期1-3 年混合核心私有化 辅助 API - 长期 3 年全私有化7.2 阿明的成本优化路径第 1 年2026 - 私有化70%核心 4 个场景 - API30%辅助 兜底 - 总成本250 万 第 2 年2027 - 私有化85%再私有化 3 个场景 - API15% - 总成本300 万含扩容 第 3 年2028 - 私有化95% - API5% - 总成本280 万规模效应 总成本830 万 对比全 API1800 万 节省54%第八章高可用与灾备 —— 双厨房备灶一家停电照样上菜8.1 高可用架构1. 流量调度层 - API 网关Kong / APISIX - 健康检查 - 流量切换 2. 推理服务层 - 多个推理实例 - 负载均衡 - 自动重启 3. 模型层 - 模型版本管理 - A/B 测试 - 灰度发布 4. 监控层 - GPU 监控 - 推理延迟 - 业务指标8.2 灾备方案1. 同城双活 - 两个机房 - 流量分担 - 故障自动切换 2. 异地灾备 - 主机房 备份机房500 公里外 - 数据同步10 秒级 - RTO 5 分钟 3. 公有云兜底 - 私有化故障时切到 API - 成本高但保业务 - 自动切换 人工确认核心总结AI 私有化全景维度核心内容关键工具/方法决策何时私有化见第一章5 大形态单 GPU / 多卡 / 集群 / 混合 / 边缘见第二章4 大框架vLLM / TensorRT-LLM / DeepSpeed / TGI见第三章量化INT8 / INT4 / AWQ / GGUF见第四章微调LoRA / QLoRA / Full FT见第五章性能6 大优化 GPU 利用率见第六章成本5 年 TCO 对比见第七章高可用双活 / 灾备 / 兜底见第八章一句心法AI 私有化不是为了私有而私有而是为了业务可控合规 成本 可控的三方平衡。前期用 API 起步中期混合部署长期核心私有化是大多数企业的最佳路径。延伸阅读AI 成本结构 36a / 36b 成本优化 —— 续集十二私有化 vs API 成本对比AI 合规与监管 40 —— 续集十六数据出境的合规要求可观测性 37 —— 续集十三私有化部署的监控RAG 38 —— 续集十四私有化 RAG 系统向量数据库 39 —— 续集十五私有化向量库跨章节衔接11.ai/02-technology-stack/README.md —— AI 技术栈 —— 推理框架选型11.ai/03-engineering/ai-platforms/README.md —— AI 平台 —— 私有化部署11.ai/04-operation/ai-ops/README.md —— AI 运维 —— 私有化 GPU 运维结语阿明完成 4 阶段私有化部署后效果立竿见影6 个月成果 - 核心 4 个 AI 场景 100% 私有化 - 累计节省成本 50% - 数据零出境 - 推理延迟降低 60% - 业务连续性 99.99% 关键动作 6 条 1. 先核心后辅助推荐 客服先私有化 2. vLLM AWQ INT4 黄金组合 3. LoRA 微调提升业务效果 4. 连续批处理 Prefix caching 提升吞吐 5. 公有云 API 兜底 6. 双机房 异地灾备下次当你考虑私有化时不妨问自己我的数据合规要求是什么必须私有化吗我的调用量有多大月均 1 亿 token 是分水岭我的硬件预算是多少300 万是入门门槛我的运维能力如何需要 MLOps 团队我的模型选型是什么Qwen / Llama / GLM我的推理框架vLLM 首选我需要量化吗INT4 是平衡点我需要微调吗LoRA 是性价比首选我的灾备方案同城双活 API 兜底我的成本预期3 年回本好的 AI 私有化设计不是砸钱买 GPU而是业务驱动 渐进式 度量驱动。先量后建先测后上先核心后边缘先试点后规模。这是 AI 私有化的四先四后原则。← 返回系列导读