私有化部署:内网跑模型

私有化部署指把大模型运行在自有服务器或内网,数据不出域。对金融、医疗、政企等敏感场景,它是满足合规与数据安全要求的前提,也让 License 与审计更可控。但”私有化”不是把模型文件丢进内网就完事,而是一整套”算力选型—运行时—运维—安全”的工程闭环。

是什么

与调用公有云 API 不同,私有化部署把模型权重与推理服务部署到本地机器、机房或私有云,全程不依赖外部网络,数据与企业系统封闭在同一信任域。典型形态包括:单机用 Ollama 跑量化后的开源模型做轻量推理;用 vLLM 起高吞吐的 OpenAI 兼容服务支撑多并发;用 llama.cpp 在 CPU/低显存设备上跑 GGUF 格式模型;在更小规模团队里,LM Studio 也提供图形界面快速试用本地模型。

模型通常以”权重 + 推理运行时”交付。开源权重(如 Qwen2.5、Llama 3 系列)以 safetensors / GGUF 等格式分发;推理运行时负责把权重加载进显存、调度请求、做采样与流式输出。两者之间通过标准协议(如 OpenAI 兼容的 /v1/chat/completions)对接,使上层应用无需关心模型跑在哪台机器上、是 7B 还是 70B——换模型往往只是改一个端点或模型名。

为什么有用

敏感数据不能外传、对延迟与可用性有强要求、需深度定制模型时,私有化是必选项。它避免了把提示词与业务数据送到第三方,满足数据驻留与审计要求;也摆脱按 token 计费的波动,调用量大时成本更可预测。对需要微调、接入内网知识库、或长期稳定服务的系统,本地部署还能规避云 API 的版本变更与限流风险——这一点在依赖链路较长的生产系统里尤为关键。

代价是要自担算力与运维:显存、电力、冷却、补丁、鉴权、扩容都得自己管。因此是否私有化,本质是一道”数据敏感度 × 调用量 × 合规要求”对”硬件与人力成本”的权衡题。经验上,若数据可合规上云、调用量小且无需定制,公有云 API 通常更省心;若数据必须留内网、或调用量足够大,本地部署的总拥有成本才会反超。

怎么用

轻量起步可用 Ollama 在单机快速拉起开源模型:

ollama pull qwen2.5:7b
ollama run qwen2.5:7b

生产环境常用 vLLM 启动 OpenAI 兼容服务,利用 PagedAttention 提升吞吐、支持连续批处理:

vllm serve Qwen/Qwen2.5-7B-Instruct --port 8000

若设备显存有限,llama.cpp 的 GGUF 量化模型可在 CPU 或集显上跑;量化是把权重从 FP16 压缩到 4-bit / 8-bit(如 GPTQ、AWQ、GGUF Q4 等方案)以换显存,代价是推理质量略有折损,需按场景选档位——对话闲聊可接受更低比特,专业抽取/代码则建议保留更高精度。用 Docker 封装可固定依赖、便于迁移与回滚:

# docker-compose 片段:vLLM 服务
services:
  vllm:
    image: vllm/vllm-openai:latest
    ports: ["8000:8000"]
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
    command: --model Qwen/Qwen2.5-7B-Instruct --port 8000

上层应用按 OpenAI 兼容协议调用即可,无需改动业务代码就能从云端切到本地。需要并发更高时,可在 vLLM 前加一层反向代理做负载均衡,或多副本部署后由网关分发;张量并行(tensor-parallel-size)用于把单模型切到多张卡以容纳更大尺寸。

注意点

  • 显存与算力:7B 模型量化后约需数 GB 显存,13B–34B 需单卡高端,70B+ 通常要多卡张量并行;先按”参数量 × 每参数字节数”粗估权重占用,再加上激活值与 KV 缓存的余量,再留 20% 以上 headroom 给峰值并发。
  • 鉴权与网络:内网服务也要加 API Key 与网关,避免被内网横向移动利用;镜像来源走可信渠道并校验哈希,定期打安全补丁,防止依赖投毒。
  • 量化取舍:低比特省显存但可能掉精度,关键任务先用 FP16 基线对比输出质量再决定档位;不要为了”能跑”而无视正确性。
  • 备份与回滚:模型文件与配置文件纳入版本管理与备份,升级权重前保留旧版以便回滚;权重体积大,备份策略要与小文件区分。
  • 监控与容量:记录吞吐、首 token 延迟、显存占用与错误率;容量不足时提前扩容而非雪崩,尤其注意 KV 缓存随并发增长而吃显存。
  • 合规留痕:谁在何时用模型做了什么,建议保留调用日志,满足审计与追溯要求。
落地清单:
- 显存是否满足峰值并发(含 KV 缓存余量)
- 是否加 API Key 与访问网关
- 量化档位是否经质量验证
- 日志、备份、回滚是否就绪
- 依赖镜像是否校验来源与哈希

小结

私有化部署让模型在内网运行,满足数据合规与可控性,代价是自担算力与运维。落地要权衡数据敏感度、调用量与合规要求对硬件人力成本,并选对 Ollama(轻量单机)、vLLM(高吞吐服务)、llama.cpp(低显存/CPU)等工具,再用 Docker 固化交付、用鉴权与监控守住边界。先从小模型验证链路,再按质量与并发需求升级尺寸与量化档位,是更稳的演进路径。

参考与延伸阅读

本文累计阅读