云计算百科
云计算领域专业知识百科平台

本地部署大模型实战:Ollama、llama.cpp、vLLM 怎么选(附完整命令)

本地部署大模型实战:Ollama、llama.cpp、vLLM 怎么选(附完整命令)

LLM 系列又一篇。之前讲过模型科普(开源阵营能自己部署)和 Jev(闭源托管 API)——这篇补上另一半:怎么把开源模型跑在自己机器上。最近阅读榜上「本地推理」「AI Agent 托管家里电脑」这类主题一直在涨,这篇把完整路线走一遍。

一、什么时候本地部署

先说本地部署不是免费的:你的显存就是你的模型上限。它换来的三样东西是 API 给不了的:

  • 数据不出门:私有文档、客户数据、内部代码,不经过任何第三方
  • 离线可用:断网也能跑,边缘设备和内网环境的唯一选项
  • 边际成本为零:跑多少次都不按 token 计费(成本篇的账,本地版直接归零)
  • 判断口诀:数据敏感或高频调用,本地;要最强效果,API。 两者可以混着来——成本篇讲的分级路由,本地小模型正好当那个「便宜的分诊层」。

    二、三条路线怎么选

    工具定位适合
    Ollama 一行命令跑模型 大多数人的默认选择,最省心
    llama.cpp 纯 C++ 推理,资源占用最小 低配机器、CPU 推理、端侧设备
    vLLM 生产级推理服务,高吞吐 并发场景、服务器部署、团队共享

    一句话:个人玩选 Ollama,旧电脑选 llama.cpp,真要服务多人选 vLLM。 本文用 Ollama 走全流程,另外两个思路完全一样(拉模型 → 起服务 → 调 API)。

    三、先看硬件:显存决定你能跑多大

    选模型前先看显存,粗略对照(量化后):

    模型规模Q4 量化显存体验
    7B ~5GB 轻量任务:分类、摘要、简单代码
    14B ~9GB 日常够用:写作、中等代码
    32B ~20GB 接近小旗舰
    70B ~45GB 需要多卡或高端卡

    经验法则:显存比模型参数量的量化文件大 1~2GB(留给上下文)。显卡不够怎么办:上更狠的量化(Q3/Q2,质量有损)、或直接用小一档的模型——跑得动的 14B 好过硬撑的 70B。

    量化(GGUF 格式的 Q4/Q8)一句话理解:把权重的精度压低(16 位浮点压到 4 位整数),文件小 4 倍、速度快 2~3 倍,质量掉一点点——本地部署 90% 的场景 Q4 就够。

    四、Ollama 全流程

    1. 安装

    # Windows / macOS:官网下载安装包
    # Linux:一行命令
    curl -fsSL https://ollama.com/install.sh | sh

    # 验证
    ollama –version

    2. 拉模型、跑起来

    # 拉一个 14B 的开源模型(自动选 Q4 量化)
    ollama pull qwen3:14b

    # 直接聊天
    ollama run qwen3:14b "用一句话解释 KV Cache"

    # 看本地已有哪些模型
    ollama list

    3. OpenAI 兼容 API:现有代码零改动

    Ollama 起着的时候自带 OpenAI 兼容端点(http://localhost:11434/v1)——系列前面所有代码换个 base_url 就能用:

    from openai import OpenAI

    client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama") # key 随便填

    resp = client.chat.completions.create(
    model="qwen3:14b",
    messages=[{"role": "user", "content": "用一句话解释 RAG"}],
    )
    print(resp.choices[0].message.content)

    这一步的意义比看起来大:成本篇的分级路由、评测篇的 runner、第一篇的 60 行 Agent——全部原样指到本地模型上,零改动。

    4. 验证闭环

    装完先验证再继续(老规矩):

    # API 层验证:curl 打一发,看返回结构
    curl -s http://localhost:11434/v1/chat/completions \\
    -H "Content-Type: application/json" \\
    -d '{"model":"qwen3:14b","messages":[{"role":"user","content":"说 OK"}]}'

    # 质量层验证:问一个你领域内的具体问题,人肉判断它行不行

    页面能打开、curl 有返回、回答像人话,三关都过才算部署完成——只验证第一关不算。

    五、远程访问:分清链路,加好授权

    本地跑通后想在外面用(手机、公司电脑连家里的机器),链路是两层,别混为一谈:

    外部设备 → 内网穿透隧道 → 家里机器的 11434 端口 → Ollama

  • 先本地后远程:本地 curl 验证通了再配隧道,出问题才能分清是服务还是网络
  • 内网穿透:frp / cpolar 这类工具把 11434 映射出去,公网地址约 24 小时变一次,长期用要预留固定域名
  • 必须加授权:Ollama 的 API 没有登录机制,裸露到公网等于把算力白送——隧道层开 basic auth(用户名密码),或者只绑固定 IP 白名单
  • 这一步的提醒和参考原文里声音克隆那篇一致:服务背后的算力和数据都是你的,公网入口不设防就是裸奔。

    六、踩坑提醒

  • 模型文件别放含中文/空格的路径:启动报错先查路径,Ollama 默认目录无所谓,手动指定模型路径时尤其注意
  • 首次拉模型要等:几 GB 的文件,网络慢就先拉小模型(7B)跑通全流程再换大的
  • 上下文长度吃显存:模型能跑 ≠ 长上下文能跑,32k 上下文的显存开销比 4k 大得多——按实际需要设 num_ctx
  • 别拿本地模型直接上生产:先过一遍评测篇的评测集,本地部署的模型也是要评测的,跑得动和答得好是两回事
  • 总结

    步骤一句话
    选型 个人 Ollama,低配 llama.cpp,并发 vLLM
    显存 7B 约 5GB、14B 约 9GB,跑得动的 14B 优于硬撑的 70B
    量化 Q4 是默认答案:文件小 4 倍,质量掉一点
    API Ollama 自带 OpenAI 兼容端点,系列代码零改动接上
    远程 先本地后隧道,公网入口必加授权

    到这里模型这条线闭环了:怎么来的(模型科普)→ 怎么调(微调篇)→ 怎么选(Jev 篇的闭源 vs 开源)→ 怎么自己跑(本篇)。数据敏感的场景,从此不再依赖任何第三方 API。觉得有用点个关注。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 本地部署大模型实战:Ollama、llama.cpp、vLLM 怎么选(附完整命令)
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!