如果说 LangChain 是构建 AI 应用的“大脑框架”,那么 Ollama 就是让这个大脑在你的本地电脑上跑起来的“发动机”。
一、 什么是 Ollama?
Ollama 是一个开源的本地大模型运行框架,旨在让用户能够像使用 Docker 一样,通过简单的命令行,在自己的个人电脑(macOS, Windows, Linux)上本地部署、运行和管理大语言模型(LLM)。
核心定位:本地化、轻量化、开箱即用。
二、 为什么 Ollama 这么火?(核心优势)
在 Ollama 出现之前,本地运行大模型(如 Llama 2/3)通常需要复杂的环境配置(Python 环境、CUDA 驱动、C++ 编译等)。Ollama 解决了这些痛点:
- 极致简单:安装包一键安装,运行模型只需一条命令
ollama run llama3.1。 - Docker 化的体验:它借鉴了 Docker 的逻辑,你可以
pull模型镜像,通过Modelfile自定义模型。 - 资源利用率高:底层基于
llama.cpp,针对不同架构(尤其是 Apple Silicon M 芯片和 NVIDIA GPU)进行了深度优化,运行速度极快。 - 隐私安全:模型完全在本地运行,数据不上传云端,适合处理敏感数据。
- 内置 API:它启动后会自动在后台运行一个 API 服务(默认端口 11434),方便像 LangChain 这样的框架直接调用。
三、 支持的模型
Ollama 有一个官方模型库(Ollama Library),涵盖了目前市面上几乎所有的主流开源模型:
- Llama 3.1 / 3.2 (Meta)
- Gemma 2 (Google)
- Mistral / Mixtral (Mistral AI)
- Phi-3 (Microsoft)
- Qwen2.5 / DeepSeek (阿里/深度求索)
- LLaVA (多模态模型,支持图片识别)
四、 快速上手指南
1. 安装
前往 ollama.com 下载对应系统的安装包即可。
2. 运行模型
打开终端,输入以下命令(以 Meta 的 Llama 3 8B 为例):
ollama run llama3
第一次运行会自动下载模型文件(约 4.7GB)。下载完成后,你直接就可以在终端里和它聊天了。
3. 常用命令
ollama list:查看本地已下载的模型。ollama pull [model]:只下载模型不运行。ollama rm [model]:删除本地模型。ollama serve:手动启动本地服务器。
五、 进阶:Modelfile (自定义模型)
类似于 Dockerfile,你可以创建一个 Modelfile 来定义模型的性格、系统提示词(System Prompt)和参数。
例如,创建一个名为 mario.Modelfile 的文件:
FROM llama3
# 设置系统提示词
SYSTEM "你现在是超级马里奥,说话要带有马里奥的口吻,经常说 Mamma Mia!"
# 设置随机度
PARAMETER temperature 1
然后运行:
ollama create mario -f mario.Modelfile
ollama run mario
六、 与 LangChain 的联动
这是开发者最关心的部分。由于 Ollama 启动后会自动开启本地 API,LangChain 可以非常容易地调用它。
代码示例:
首先安装集成库:
pip install langchain-ollama
在 Python 中调用:
from langchain_ollama import ChatOllama
from langchain_core.messages import HumanMessage
# 1. 初始化 Ollama 模型
# 指定你本地已经 pull 过的模型名称
llm = ChatOllama(
model="llama3",
temperature=0,
)
# 2. 发送消息
messages = [
("system", "你是一位幽默的助手。"),
("human", "为什么程序员喜欢冷笑话?"),
]
response = llm.invoke(messages)
print(response.content)
七、 总结
- 如果你是普通用户:Ollama 是在本地体验最强 AI 模型最简单的方法,无需科学上网,无需支付订阅费。
- 如果你是开发者:Ollama 是你开发 AI 应用的最佳“测试环境”。你可以在本地调试 LangChain 逻辑,确认无误后再将模型切换为云端的 OpenAI 或 Anthropic,大大节省开发成本。
一句话总结:Ollama 把复杂的本地大模型部署变成了像点外卖一样简单。