跳到主要内容

本地推理运行时选型

本地部署架构通常包含四个相对独立的层级:

任何一层的变动都可能影响输出质量、内存占用、延迟或工具调用行为。收到 HTTP 200 响应仅表示请求已返回,并不保证结果正确或符合预期。

运行时全景图​

运行时/产品核心优势主要运维风险
llama.cppGGUF 格式支持、CPU/GPU 混合卸载、底层控制力强需手动管理参数、模板、转换来源及后端调优
Ollama管理本地模型包并提供 API产物/模板可能漂移;选用云模型时,即使请求发往 localhost API,推理也会交给 Ollama 云端
LM Studio桌面端模型发现、交互式对比、兼容 APIGUI 默认配置与下载变体需手动记录以确保可复现
vLLMCUDA/Python 服务、连续批处理(Continuous Batching)、高吞吐环境依赖较重,需关注产物兼容性及调度器/显存调优

SGLang、Transformers、MLX、TensorRT-LLM 或特定厂商运行时可能在特定场景下更优。上表并非完整排名,仅列出常见选项。

兼容性检查清单​

在开始评估前,必须固定以下变量:

  • 模型细节:确切的模型仓库、Revision、文件名及量化方式;
  • 文本处理:Tokenizer、Chat Template、推理格式/解析器及停止 Token;
  • 工具调用:Tool-call 格式及结构化输出行为;
  • 运行参数:原生/扩展上下文长度、KV Cache 类型、Batch/并发数、GPU 卸载策略;
  • 环境版本:运行时及驱动版本,并核对 Ollama、LM Studio 或 vLLM 的官方硬件要求。

OpenAI 兼容 API 仅标准化了请求结构的一部分。它不保证以下字段的一致性:推理字段、Token 计数、工具 ID、流式分块、Logprobs、取消机制或错误码。

选型实战案例​

场景一:单张 16 GB 消费级 GPU,单用户交互

  1. 从支持的量化产物和原生上下文长度开始;
  2. 若需精确控制 GGUF 卸载,选 llama.cpp;若追求最快上手进行手动对比,选 Ollama 或 LM Studio;
  3. 在并发为 1 的情况下,测量首 Token 时间(TTFT)和解码速度;
  4. 在评估模型智能之前,先验证 Chat 格式和工具调用格式是否正确;
  5. 仅当明确的批量/服务需求且产物受支持时,才迁移至 vLLM。

场景二:24 GB 显存,常驻多客户端服务

此时吞吐量、排队机制、取消能力、监控指标及隔离性比桌面端的便利性更重要。这是负载类型的差异,而非证明某引擎生成的 Token 质量更高。

交给统一评测协议​

本页负责运行时兼容性、服务方式和运维风险。本地模型评测统一管理 run card、单变量实验、延迟与吞吐、内存测量、可接受结果率和重复任务结果。

安全与运维​

对数据位置有要求时,要区分本地服务器和模型实际运行的位置。Ollama 云模型可以通过 localhost:11434 调用。要求纯本地推理时,应使用已下载的本地模型,设置 OLLAMA_NO_CLOUD=1 关闭云功能,然后重启 Ollama。这个开关关闭的是 Ollama 云模型和网页搜索,不会限制其他 Harness 的外部工具,也不是网络沙箱。

  • 网络绑定:默认绑定 Loopback,暴露网络前必须添加认证;
  • 凭据隔离:隔离模型服务凭据;
  • 遥测审查:审查遥测数据;
  • 资源限制:限制请求、上下文及输出大小;
  • 取消测试:测试取消机制;
  • 供应链安全:将模型文件和模板视为供应链输入进行审计。

切勿让兼容端点变成未经审计的内网代理。

偏差声明​

本文偏向 Linux 类开发工作流及主流开源生态。 Apple Silicon、AMD、Windows、移动 NPU、能耗、无障碍及大规模生产集群运维需单独测量。 官方文档仅确立支持的特性;性能声明必须在实际硬件和负载下验证。

探索关联打开关联网络