30秒快速回答
Ollama 是一个让你在个人电脑上运行大模型的开源工具。 装好 Ollama → 一条命令下载模型 → 本地对话或调 API,全程免费、数据不出本地。支持 DeepSeek、Llama、Qwen、Mistral 等主流开源模型,最低 8GB 内存的笔记本就能跑。
核心价值:不用云服务、不用 API Key、不用联网,在你自己电脑上拥有一个 ChatGPT 级别的私人 AI。
1. 什么是 Ollama?为什么选它?
Ollama 是 2024 年由前 Docker 团队成员创建的开源项目,底层基于 llama.cpp,把模型运行、内存管理、GPU 加速、API 服务全部打包成一个极简命令行工具。
与其他方案的对比:
| 方案 | 上手难度 | GPU 支持 | API 兼容 | 适合场景 |
|---|---|---|---|---|
| Ollama | 极低(一键安装) | 自动检测 | OpenAI 兼容 | 个人开发/自建助手 |
| llama.cpp | 中(需编译) | 手动配置 | 需自行封装 | 嵌入式/极致优化 |
| vLLM | 高(Python 环境) | 生产级 | OpenAI 兼容 | 高并发推理服务 |
| LM Studio | 低(GUI) | 图形化配置 | 内置服务 | 桌面用户/可视化 |
选 Ollama 的理由:安装一条命令,模型下载一条命令,API 调用完全兼容 OpenAI 格式——现有项目改一行 base_url 就能从 GPT-4 切到本地模型。如果你是开发者,几乎零迁移成本。
2. 第一步:安装 Ollama
macOS
# Homebrew 一键安装
brew install ollama
或者从 ollama.com 下载 DMG 安装包,拖入 Applications 即可。安装后 Ollama 会在后台以服务形式运行,菜单栏出现小羊驼图标表示已启动。
Windows / Linux
Windows 用户直接下载 .exe 安装包;Linux 用户用官方脚本:
curl -fsSL https://ollama.com/install.sh | sh
验证安装
ollama --version
# 输出: ollama version 0.x.x
3. 第二步:下载并运行你的第一个模型
模型怎么选?
关键因素是显存/内存和模型参数量。以下为实测推荐:
| 模型 | 参数量 | 最低配置 | 显存需求 | 适合用途 |
|---|---|---|---|---|
| DeepSeek-R1:1.5B | 1.5B | 8GB 内存 | 无 GPU 可跑 | 轻量问答/嵌入式 |
| Qwen2.5:7B | 7B | 16GB 内存 | 6GB VRAM | 通用对话/翻译 |
| Llama 3.1:8B | 8B | 16GB 内存 | 6GB VRAM | 英文对话/代码 |
| DeepSeek-R1:14B | 14B | 32GB 内存 | 12GB VRAM | 中文推理/长文 |
| Qwen2.5:32B | 32B | 64GB 内存 | 24GB VRAM | 复杂推理/Agent |
下载与启动
# 下载 DeepSeek-R1 蒸馏版(中文推理最强的小模型之一,仅 1.5B 参数)
ollama pull deepseek-r1:1.5b
# 下载完成后直接对话
ollama run deepseek-r1:1.5b
# 常用模型一行拉取
ollama pull qwen2.5:7b # 阿里通义千问
ollama pull llama3.1:8b # Meta LLaMA
ollama pull mistral:7b # Mistral AI
下载速度取决于模型大小,7B 模型约 4-5GB,首次拉取需 5-10 分钟。
常用管理命令
ollama list # 查看已下载的模型列表
ollama rm <model> # 删除指定模型释放空间
ollama show <model> # 查看模型详细信息(参数量、量化方式等)
4. 第三步:API 调用——对接你的项目
Ollama 启动后默认在 http://localhost:11434 提供 API,完全兼容 OpenAI 接口格式。
用 curl 测试
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-r1:1.5b",
"messages": [{"role": "user", "content": "用一句话解释 RAG 是什么"}]
}'
Python SDK(直接用 OpenAI 包)
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama" # 本地无需真实 key,填任意字符串
)
response = client.chat.completions.create(
model="deepseek-r1:1.5b",
messages=[{"role": "user", "content": "帮我写一个 Python 快速排序"}]
)
print(response.choices[0].message.content)
关键技巧:只需要把 base_url 从 api.openai.com 改成 localhost:11434/v1,你的 LangChain、LlamaIndex、Dify 等项目中所有 OpenAI 调用都会自动切到本地模型。零代码改动量。
流式输出
stream = client.chat.completions.create(
model="deepseek-r1:1.5b",
messages=[{"role": "user", "content": "讲个笑话"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
5. 第四步:搭建 Open WebUI——拥有图形界面
命令行用腻了?用 Open WebUI 搭一个本地的 ChatGPT 界面。
# Docker 一键部署(需提前装好 Docker)
docker run -d -p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
浏览器打开 http://localhost:3000,首次使用注册一个本地账号(数据全在本地),然后在设置里选择 Ollama 已下载的模型即可。
Open WebUI 支持:
- 多轮对话(自动保存历史)
- 文件上传(PDF、图片分析)
- 模型切换(一键换 Qwen / DeepSeek / Llama)
- RAG 知识库(上传文档做私有知识问答)
- 语音输入(浏览器端 TTS/STT)
6. 实战:用 Ollama + LangChain 做个本地 RAG 问答
完整跑通一个本地知识库问答系统,全程不联网:
from langchain_community.llms import Ollama
from langchain_community.embeddings import OllamaEmbeddings
from langchain_community.vectorstores import Chroma
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.chains import RetrievalQA
# 1. 加载本地文档
with open("./公司制度手册.txt", "r") as f:
text = f.read()
# 2. 文本切分
splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
chunks = splitter.split_text(text)
# 3. 向量化 & 存储(全部本地)
embeddings = OllamaEmbeddings(model="nomic-embed-text")
vectorstore = Chroma.from_texts(chunks, embeddings, persist_directory="./chroma_db")
# 4. 创建 RAG 链
llm = Ollama(model="qwen2.5:7b")
qa_chain = RetrievalQA.from_chain_type(
llm=llm,
retriever=vectorstore.as_retriever(),
chain_type="stuff"
)
# 5. 提问
print(qa_chain.run("公司年假政策是什么?"))
提示:
nomic-embed-text是 Ollama 内置的轻量嵌入模型,先用ollama pull nomic-embed-text下载。
总结
| 要点 | 一句话 |
|---|---|
| Ollama 是什么 | 本地运行大模型的极简工具 |
| 最低配置 | 8GB 内存即可跑 1.5B 模型 |
| API 兼容 | 完全兼容 OpenAI 格式,改一行 base_url 即可 |
| 图形界面 | Open WebUI 一键获得 ChatGPT 同款体验 |
| 进阶玩法 | 搭配 LangChain 做本地 RAG,数据不出门 |
延伸阅读:
- 什么是 RAG?一文搞懂检索增强生成 —— 理解 RAG 原理再看实战
- 什么是模型量化?把大模型变小的核心技术 —— 了解模型如何压缩适配本地
- Ollama 官方模型库 —— 2000+ 社区模型任选
- Open WebUI 文档 —— 更多高级功能配置