诸神缄默不语-个人技术博文与视频目录

本地部署LLM的优势:

  1. 一次性消费,不用按token用量付费
    (网费和电费当然也能算钱,但是跟某些大模型的报价比起来就可以不算钱了;显卡也其实会损耗的,但是我们先假设显卡是只用买一次的吧……)
  2. 安全,你的数据不会上传到别人的服务器里。这对很多保密要求严格的公司和行业很重要
  3. 断网也可以使用大模型。
    比如说如果你在笔记本电脑上部署了一个LLM的话(虽然一般消费级显卡能部署的模型不会太大),那你就可以在坐飞机的时候也用LLM来进行学习和工作了,在坐火车的时候也不用担心信号不好了。
    (我之前看好像东航还是南航出了机上WiFi。但是要额外花钱买,好,我们公司不会报销这个的,我们领导不会让我在飞机上突然开始参会的!)
  4. 你可以部署一些神奇的大模型,输出不会因为企业的风控机制而说到一半突然撤回。
  5. 也不用在乎API厂商的速率限制了,现在推理的速度完全取决于你自己的硬件和网络了。
  6. 也不用在乎某些公司一夜之间突然把你一直在用的模型版本换了……
    对于某些聊出感情的用户来说,这样能保证你的赛博老友一直装在你自己的电脑里;对于学术研究人员来说,这也意味着你的可复现性会更强。(虽然大模型本身的随机性,即使temperature为0时也仍然不能保证绝对可复现)
  7. 也不用担心某些公司突然把你的号封了

本地部署LLM的劣势:

  1. 需要有硬件和网络、安全防护和电力支持,普通用户可能没有所需的资源。
    这里的硬件主要指的就是AI显卡,即用于神经网络计算的处理器(主要是GPU,也有用TPU、NPU或者CPU的)。大家都知道现在国际上GPU还是比较贵的。而国产显卡在能力上还是需要追赶国际先进水平的。而且现在的大模型基本上都是默认支持NVIDIA系的cuda工具,如果换成别的显卡,一方面是需要重新适配,另一方面可能会出现效果的下降。而且国产显卡也贵。当然国产显卡也在努力,让我们期待吧!
    你能够部署的大模型的尺寸,也受限于你的硬件配置。如果你的GPU太小了,你就不能部署很大的模型。
    网络和安全防护支持主要是考虑到一般人家里不会专门组服务器,对外暴露公网很危险,如果是内网环境要做内网穿透的话也很麻烦,所以如果你想在外面访问你家里部署的大模型还是比较麻烦的,如果不麻烦就要冒一点安全风险。
  2. 一般人只有消费级显卡,就无法部署各种“满血版”大模型,即使通过量化、压缩、优化,效果依然很可能不如云端大模型。
  3. 很多大模型厂商的前沿最强模型依然没有开源,只能通过API调用来使用。

本文主要考虑的是在你自己的电脑上运行LLM推理服务,但是下文会介绍的llama.cpp、vllm等工具事实上在企业级生产服务中也很常用。功能不仅局限于个人消费级使用。

另外本文介绍的是从“别人发布的开源大模型”到“在本地部署起LLM推理服务并进行调用”的这个过程。
文中除了用GUI界面的LM Studio和Jan之外都主要通过命令行来部署服务。
事实上还有很多像cherry studio、ChatBot乃至于OpenClaw之类的工具,可以用来将你在本地部署的LLM服务(当然也可以调用云端的大模型API)来放到一个对话框中,让你能够通过图形界面(比如一个像ChatGPT官网那样的)来与LLM对话,甚至访问你的知识库、文件系统,帮你完成工作。
类似这样的更多任务请待后续博文分解。

本系列不会更新微调、预训练、强化学习相关内容,因为 (1) 我觉得需要这些内容的读者应该不太算是小白了吧。(2) 问就是无脑建议选llama-factory

(本篇也会持续更新的)

@[toc]

一、工具速查表

工具一句话定位最佳场景上手难度
Ollama一行命令部署LLM开发者快速集成与原型开发⭐ 极低
llama.cpp低配设备的LLM极致压缩极致性能调优与边缘设备部署⭐⭐⭐ 中等
vLLM生产级服务引擎高并发 API 服务⭐⭐⭐ 中等
LM Studio开箱即用的桌面 GUI模型探索与可视化交互⭐ 极低
TensorRT-LLMNVIDIA 官方的极致性能推理库大规模生产环境 + 纯 NVIDIA 集群⭐⭐⭐⭐ 较难
TGIHugging Face 生产级服务工具包企业级部署(但官方建议转向 vLLM/SGLang)⭐⭐⭐ 中等
SGLang高性能服务框架,擅长多轮对话与复杂推理多轮对话、结构化生成、长上下文场景⭐⭐⭐ 中等
Jan跨平台桌面应用日常使用与简单对话⭐ 极低
LocalAI容器化 OpenAI 替代Docker 环境集成⭐⭐ 较低
GPT4All轻量桌面聊天应用普通用户的本地聊天需求⭐ 极低
MLXApple 官方框架Mac 极致优化⭐⭐⭐ 中等

vLLM文档:docs.vllm.ai/en/stable/g…

二、选型必读:工具优劣势深度对比

Ollama——开发者最爱的“LLM 版 Docker”

核心定位: 以最少的配置成本跑起来。Ollama 把模型管理抽象成了极简的 CLI,一条命令就能完成下载、运行、API 暴露全过程。

优点:

  • 体验极致简单ollama pull llama3 即可拉取模型,ollama run 直接对话,几乎没有学习曲线。
  • 内置 OpenAI 兼容 API:原生提供 端点,LangChain、Semantic Kernel 等框架开箱即用。
  • 跨平台 + Apple Silicon 加速:在 Mac、Windows、Linux 上都能跑,且对 M 系列芯片做了深度优化。
  • 生态活跃:GitHub 超 12 万 star,内置模型市场支持 200+ 预量化模型。

缺点:

  • 生产级性能不足:学术测评显示,Ollama 在吞吐量和首 token 时延(TTFT)上明显落后于 vLLM 等专用推理引擎。
  • 高级功能受限:多 GPU 支持和微调选项比较基础,不适合需要精细调优的场景。
  • 模型库局限:主要支持 Ollama 官方模型库,不如直接浏览 Hugging Face 丰富。

llama.cpp——低配设备的“性能魔法师”

核心定位: 一个纯 C/C++ 实现的 LLM 推理引擎,通过量化技术把大模型“压缩”到可以在普通 CPU 上运行的程度。

优点:

  • 资源占用极致低:量化后 7B 模型仅需 4GB 内存,树莓派 5 都能跑 Mistral-7B。
  • 多后端加速:支持 AVX2/NEON 指令集(CPU 提速 3-5 倍)、CUDA、Metal、OpenCL 等多种加速后端。
  • 极高自由度:命令行参数精细可控,可以灵活分配 CPU/GPU 负载,支持 20+ 种模型架构。
  • 生态基石地位:GitHub 近 7.5 万 star,Ollama、LM Studio 等工具底层都依赖它。

缺点:

  • 纯命令行操作:没有 GUI,需要熟悉 CLI 和编译流程,对非技术用户不友好。
  • 上手成本高:从源码编译到模型格式转换,需要一定的技术功底。
  • 文档较分散:官方文档偏技术性,很多最佳实践需要从社区摸索。

vLLM——生产环境吞吐王者

核心定位: 专为高并发 LLM 服务设计的企业级推理引擎,由 UC Berkeley 开发,Anyscale、IBM、Databricks 等公司在生产环境使用。

优点:

  • 吞吐量惊人:通过独创的 PagedAttention 技术减少 60-80% 显存浪费,相比传统框架吞吐量提升 14-24 倍。
  • 连续批处理:动态混合新旧请求,GPU 利用率可达 90%+,不留闲置周期。
  • OpenAI 兼容 API:应用代码无需改动即可切换后端。
  • 企业级特性:支持张量并行、流水线并行、推测解码和多种量化方案。

缺点:

  • 只支持Linux系统
  • 显存消耗大:vLLM 本身需要较多的 GPU 显存开销,在边缘设备上部署有压力。
  • 不支持苹果M系显卡
  • 非交互场景优化:学术研究显示,vLLM 更擅长高吞吐批处理,但在单用户低延迟场景下,吞吐表现反而可能不如 TGI 等竞品。

LM Studio——非技术用户的“可视化助手”

核心定位: 一款带有精美 GUI 的桌面应用,让你像使用普通软件一样浏览、下载、运行本地 LLM。

优点:

  • 零命令行:全部操作通过图形界面完成,非技术人员也能轻松上手。
  • 模型发现友好:内置 Hugging Face 模型浏览,清晰展示模型大小、量化级别和性能预估,不用猜哪个 GGUF 文件该下。
  • 实时参数调优:对话过程中可以随时调整 temperature、top-p 等参数,立即看到效果。
  • 内置 API 服务:提供 OpenAI 兼容的本地 API,可被 LangChain 等框架调用。

缺点:

  • 闭源:代码不开放,对需要审计合规的团队是个隐患。
  • 资源占用偏高:GUI 本身占用约 500MB 内存,且一次只能运行一个模型。
  • 自动化集成弱:纯 GUI 操作很难融入 CI/CD 或自动化脚本。

其他值得关注的工具

  • TensorRT-LLM:NVIDIA 官方极致性能引擎,缺点是上手门槛较高,且仅支持 NVIDIA GPU。适合追求极致性能、有专业运维团队且完全基于 NVIDIA 基础设施的大规模生产场景。
  • TGI:Hugging Face 开发的生产级服务工具包,在生产环境为 Hugging Chat 和 Inference API 提供后端支撑。重要提醒:TGI 目前已进入维护模式,Hugging Face 官方推荐新项目转向 vLLM 和 SGLang,本地场景则推荐 llama.cpp 或 MLX。如果你的项目已基于 TGI 稳定运行,可以继续使用;如果是新项目,建议优先评估 vLLM 或 SGLang。
  • SGLang:综合吞吐量表现属于第一梯队,特别适合多轮对话、复杂推理和长上下文生成任务。
  • Jan:跨平台桌面应用,开源且界面简洁,类似 LM Studio 的开源替代版。
  • LocalAI:容器优先的设计哲学,通过 Docker 提供 OpenAI 兼容 API,适合与现有容器化基础设施集成。
  • GPT4All:轻量桌面聊天应用,主打普通用户日常使用,对硬件要求极低。
  • MLX:Apple 官方为 M 系列芯片设计的机器学习框架,学术研究显示其在 Apple Silicon 上持续生成吞吐量最高,但生态成熟度仍有待提升。

三、实战操作指南

场景一:用 Ollama 快速启动一个本地 API 服务

这是“从零到 ChatGPT”最快的方式。

安装(macOS):

brew install ollama

Windows/Linux 用户请前往 ollama.com 下载安装包。

拉取并运行模型:

# 拉取模型(自动下载最新版本)
ollama pull llama4

# 直接对话
ollama run llama4 "用 Python 实现一个快速排序"
# 如果运行`ollama run llama4`将开始交互式对话

# 启动 API 服务(默认后台运行)
ollama serve

通过 API 调用:

curl  -d '{
  "model": "llama4",
  "prompt": "为什么本地运行 LLM 更安全?",
  "stream": false
}'

Ollama 默认暴露 OpenAI 兼容端点 ,你的 LangChain 或 AutoGen 代码可以直接对接。

这里的参数格式就跟OpenAI的接口一致。

模型管理:

ollama list          # 查看已下载模型
ollama show llama4  # 查看模型的参数、格式、尺寸
ollama rm llama4   # 删除模型

可以通过Modelfile自定义模型行为,就像LLM版的Dockerfile:

# Save as Modelfile.codereview
FROM llama4

SYSTEM """
You are an expert code reviewer. Analyze code for bugs, security issues, and performance problems.
Be concise and actionable. Format your response as a numbered list of findings.
"""

PARAMETER temperature 0.2
PARAMETER num_ctx 8192
PARAMETER top_p 0.9
# Create a named model from the Modelfile
ollama create codereview -f Modelfile.codereview

# Run it
ollama run codereview

️ 场景二:在低配设备上通过 llama.cpp 运行模型

即便你手头只有一台老旧笔记本,llama.cpp 也能让它跑起大模型。

编译安装:

git clone 
cd llama.cpp
make -j  # CPU 版本,简单粗暴
# 如果有 NVIDIA GPU,启用 CUDA:
make LLAMA_CUDA=1 -j

获取量化模型(GGUF 格式):

# 从 Hugging Face 下载预量化模型
# 以 Qwen2.5-7B 的 Q4_K_M 量化版本为例
huggingface-cli download Qwen/Qwen2.5-7B-Instruct-GGUF qwen2.5-7b-instruct-q4_k_m.gguf 
  --local-dir ./models/

运行推理:

# 基础推理
./main -m ./models/qwen2.5-7b-instruct-q4_k_m.gguf 
  -p "解释一下量子计算的基本原理" 
  -n 256

# 启用 GPU 加速(假设有 NVIDIA 显卡)
./main -m ./models/model.Q4_K_M.gguf 
  -ngl 32        # 将 32 层加载到 GPU
  -p "写一首关于编程的短诗" 
  -n 512 
  -t 8            # 使用 8 个 CPU 线程

# 启动一个简易聊天服务器
./server -m ./models/model.Q4_K_M.gguf --host 0.0.0.0 --port 8080

量化等级选择建议:Q2(极致省内存,质量损失大)→ Q4(平衡选择,推荐)→ Q8(质量高,内存占用翻倍)。通常 Q4_K_M 是最佳权衡点。

场景三:用 vLLM 搭建高并发生产级推理服务

当你需要服务成百上千用户时,vLLM 是最靠谱的选择。

vLLM官方推荐用uv安装,可以参考:docs.vllm.ai/en/stable/g…

离线批处理推理:

from vllm import LLM, SamplingParams

prompts = [
    "Hello, my name is",
    "The president of the United States is",
    "The capital of France is",
    "The future of AI is",
]
sampling_params = SamplingParams(temperature=0.8, top_p=0.95)

llm = LLM(model="facebook/opt-125m")

outputs = llm.generate(prompts, sampling_params)

for output in outputs:
    prompt = output.prompt
    generated_text = output.outputs[0].text
    print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")

(需要注意llm.generate()函数不会自动应用LLM本身的提示词模版。但是你可以用llm.ch@t()函数然后传OpenAI格式的参数)

命令行方式启动 OpenAI 兼容 API 服务: huggingface模型:

vllm serve meta-llama/Llama-4-Scout-17B-16E-Instruct 
  --quantization awq 
  --max-model-len 8192 
  --port 8000

启动后,你的应用可以直接用 OpenAI SDK 访问本地服务:

from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="your-api-key")
response = client.ch@t.completions.create(
    model="meta-llama/Llama-2-7b-ch@t-hf",
    messages=[{"role": "user", "content": "你好!"}]
)
print(response.choices[0].message.content)

️ 场景四:通过 LM Studio 零代码体验本地模型

这是最简单的方式,全程不需要敲任何代码。

步骤 1:安装 访问 lmstudio.ai,下载对应平台的安装包并安装。

步骤 2:搜索模型 打开 LM Studio,点击左侧的“Search”标签页,在 Hugging Face 模型库中搜索你感兴趣的模型(如 Llama-3.2-3B),LM Studio 会自动显示模型大小和量化选项,一目了然。

步骤 3:下载并加载 选择好量化版本后点击“Download”,下载完成后回到“Chat”界面,从下拉菜单选择模型并点击“Load Model”。

步骤 4:开始对话 在聊天框输入文字即可,右侧可以实时调整 temperature、top_p 等参数。

步骤 5:暴露 API 服务 如果需要让其他程序调用这个模型,在 LM Studio 中点击“Local Inference Server”选项卡,启动服务,然后用 OpenAI SDK 指向 即可。

四、选型决策树

根据你的实际需求,这里有一条清晰的决策路径:

开始
  │
  ├─ 你是开发者,想快速集成到自己的应用?
  │   └─  Ollama(最简单,原型首选)
  │
  ├─ 你需要服务大量并发用户(50+ 同时请求)?
  │   └─  vLLM(生产级吞吐之王)
  │
  └─ 你需要处理多轮对话、结构化输出或复杂推理任务?
  │   └─  SGLang(兼顾性能和灵活性)
  │
  ├─ 你的设备很老旧(树莓派/老旧PC/无独显)?
  │   └─  llama.cpp(极致的资源优化)
  │
  ├─ 你是非技术用户,想直观体验各种模型?
  │   └─  LM Studio 或 Jan
  │
  ├─ 你用 Mac,且追求极致性能?
  │   └─  MLX(Apple 官方优化)
  │
  └─ 你的项目已经在用 Docker,希望无缝集成?
  │   └─  LocalAI(容器优先)
  │
  └─ 你的业务完全依赖 NVIDIA GPU 且追求极致吞吐量?
  │   └─  TensorRT‑LLM(但需要专门的工程团队支持)
  │

五、性能基准参考

根据 2026 年的公开评测数据(在 A100/H100 上测试 Llama-70B 类模型):

引擎吞吐量 (token/s)上手难度适用场景
vLLM1000-2000中等高并发生产服务
TensorRT-LLM2500-4000+困难NVIDIA 极致优化
TGI800-1500中等企业级部署
SGLang很高中等长文本生成
llama.cpp80-100*中等通用本地推理
Ollama较低极低开发与原型

*注:llama.cpp 数据来自 7B 模型在 M2 Ultra 上的测试(CPU/Metal),与 GPU 服务器数据不可直接比较。

数据来源:EVAL #001: The Great LLM Inference Engine Showdown — vLLM vs TGI vs TensorRT-LLM vs SGLang vs llama.cpp vs Ollama • Buttondown

写在最后

本地运行 LLM 已经从“能不能跑”进化到了“怎么跑更好”。今天的工具生态已经足够成熟,无论你的技术背景如何、硬件条件怎样,都能找到适合自己的解决方案。

不过,一个务实的提醒:本地 8B 参数模型在复杂推理任务上依然无法匹敌 GPT-4o 或 Claude 3.5 Sonnet。如果你的业务依赖顶级的推理能力,云服务仍然不可替代。反之,如果你注重数据隐私、希望控制长期成本、或者需要离线运行能力,本地部署就是当前的最优解。

选择合适的工具,让你的数据留在你的机器上,让 AI 能力为你所用,而不是成为另一笔持续的支出。

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:alixiixcom@163.com