跳到主要内容Ollama 本地大语言模型安装与部署指南 | 极客日志编程语言AI算法
Ollama 本地大语言模型安装与部署指南
Ollama 本地大语言模型的下载安装、环境配置及模型管理方法。内容涵盖 Windows/Linux/MacOS 系统的安装步骤、环境变量设置、常用模型推荐(如 Qwen2、Llama3.1、DeepSeek-Coder 等)、CLI 交互方式以及通过 HTTP 和 Python SDK 调用 API 的高级用法。此外,还补充了 Docker 部署方案,帮助用户实现跨平台和服务端部署,适用于希望构建本地 AI 工作流、知识库或私有化大模型应用的开发者。
黑客帝国1 浏览 为了给以后的工作流和本地模型铺路,有必要说一下 Ollama 本地大语言后台的安装。
1. Ollama 简介
在安装之前,有必要先说明一下 Ollama 是什么。
Ollama 是一个大语言模型的服务后台,能够在零基础的前提下帮助用户轻松部署大语言模型。
特点
- Ollama 后台服务能够帮助用户轻松搭建大语言模型服务。
- 提供相应的 API 以扩展到其他如 Dify 等 Web 前台以及 Obsidian 等笔记软件,以最快的速度形成 AI 问答/AGENT/工作流等工作形式。
- 提供模型免费下载,用户可以直接下载多种主流的开源大语言模型。
- 支持不同系统,如 Windows、Linux、MacOS 等。
- 对于部分特殊的开源模型不支持或未收录,模型数量较大,用户需结合自己的需求自行分辨大语言模型的特点。
从多种角度来说,Ollama 是目前最为快速、最方便的本地化大语言模型后台。
2. Ollama 的安装
2.1 环境要求
- Windows 系统:需要在 Windows 10 以上系统。
- 硬件配置:如果想要跑 7B 以上模型,建议显存在 6G 以上,内存 16G 以上,以独立显卡为佳,显卡以 Nvidia 为佳。非独立显卡将会用 CPU 来跑,速度会慢一大截。
2.2 下载与安装
打开页面后出现官网,点击 Download 下载对应系统的安装包。
2.3 查看安装是否成功
如果安装成功,Ollama 会出现在右下角任务栏图标中。打开浏览器,并输入 http://127.0.0.1:11434 或 http://localhost:11434。如果显示出一行小字则代表 Ollama 服务运行成功。
2.4 模型下载路径设置
如果不想你的 C 盘因为下载大模型(很多都是几 G 到十几 G 甚至几十 G)被占用太多空间,那么可以做如下设置,如果无所谓可忽略本条操作。
Windows 环境变量设置
- 点击 Windows 开始按钮或者直接点开开始菜单,选择设置,或者直接按下 Windows 快捷键 win+i 打开设置。
- 在搜索中输入系统变量,在弹出的窗口中选择环境变量。
- 在新窗口中的用户变量中点新建,在弹出的小窗口中输入:
- 变量名:
OLLAMA_MODELS
- 变量值:你想要存放大语言模型的路径(例如:
E:\Github code\OLLAMAMODEL)
- 点击确定,这个新变量会出现在你的用户变量中。
至于 OLLAMA_HOST 这个变量,在某种程度上对于 Docker 部署前台是不利的,所以不建议设置。
3. 试运行 Ollama
提前说明:如果上述操作成功,但以下操作未成功,需要重启一下电脑。
3.1 服务检查
对电脑的 windows 按钮点右键,选择终端管理员/终端,当然 win+r 输入 cmd 启动命令提示符亦可,但是建议使用管理员权限。
在打开的黑色窗口中输入 ollama,然后回车,如果出现帮助信息则表示服务正常。
3.2 模型选择
- Qwen2:通义千问 2 大模型,对中文的支持能力非常不错,是通用型中文开源模型中做的相当好的。配置一般的电脑推荐使用 1.5B 模型(CPU 跑),7B 模型(独立显卡较好)。至于更大的 72B 模型如果显卡能力不佳不建议尝试。
- deepseek-coder-v2:如果你是程序员,那么 deepseekV2 一定是非常适合你的。deepseekV2 用的 MoE 架构,反应速度不错,支持多种编程语言,可以理解为一个非常好的编程助手模型。
- Phi3:微软的小模型,运行速度非常快,对空间占用很小,运行效果尚可,满足机器硬件不足的电脑本地跑模型。不过对于 Phi3 的中模型,我们可以收回以上的话,不过主语料是英文,所以中文能力一般。
- Llama3.1:目前最新的 Llama 模型,推荐使用 8b 模型,或者 8b 对应的量化模型(速度可以很快)。如果你的常用语言是中文,llama3.1 可能并不是最适合你的。
- Command-R 和 Command-R-Plus:Command-r 系列是大模型,模型非常规整,非常适合作为企业大模型使用。但是模型比较大,尤其是 command-r+,104b 的体量不是一般普通显卡能消受的,对硬件要求比较高。
- Llava:一个非常推荐的多模态大模型,可以识别图片并进行输出,但是对中文支持很差,所以推荐使用 llava 的变体 llava-llama3,对语言支持性更好。
- BGE-Large 和 BGE-M3:一个 embeddings 知识库压缩模型,并不是用于输出文字的,而是用于知识库压缩的,尤其是对中文文本支持能力较好,属于特殊的大模型。bge-m3 是 bge 最新的模型。
3.3 模型下载与运行
对于喜欢的大模型,选择对应的大模型,右边会自动出现运行的命令,点击右边的复制按钮,这里以 llama3.1 模型为例。
等待下载完成,有进度条,这个时间视网速而定。下载完成后会自动运行(已经下载的将会直接运行)。这里可以直接输入问题并回车,即可得到答案。
4. 高级用法:API 调用
Ollama 提供了 REST API,方便开发者集成到自己的应用中。
4.1 HTTP 请求示例
默认监听端口为 11434。可以使用 curl 进行简单测试:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1",
"prompt": "为什么天空是蓝色的?",
"stream": false
}'
4.2 Python SDK 集成
可以通过 Python 的 requests 库调用 Ollama API。
import requests
import json
def chat_with_ollama(prompt, model="llama3.1"):
url = "http://localhost:11434/api/chat"
payload = {
"model": model,
"messages": [
{"role": "user", "content": prompt}
],
"stream": False
}
response = requests.post(url, json=payload)
if response.status_code == 200:
return response.json()['message']['content']
else:
return f"Error: {response.status_code}"
if __name__ == "__main__":
user_input = "请解释什么是神经网络。"
result = chat_with_ollama(user_input)
print(result)
4.3 异步流式响应
如果需要流式输出(打字机效果),可以将 stream 设置为 true 并逐行读取响应。
import requests
def stream_chat(prompt):
url = "http://localhost:11434/api/chat"
payload = {
"model": "llama3.1",
"messages": [{"role": "user", "content": prompt}],
"stream": True
}
with requests.post(url, json=payload, stream=True) as r:
for line in r.iter_lines():
if line:
data = json.loads(line)
if 'message' in data and 'content' in data['message']:
print(data['message']['content'], end='', flush=True)
stream_chat("写一首关于春天的诗。")
5. 高级用法:Docker 部署
如果你希望在服务器或其他环境中部署 Ollama,可以使用 Docker。
5.1 拉取镜像
docker pull ollama/ollama
5.2 启动容器
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
5.3 验证 Docker 部署
访问 http://<服务器 IP>:11434 确认服务可用。
6. 结语
至此 Ollama 已经成功部署到你的电脑本地了。在后面的过程中将会介绍以 Ollama 作为核心展开个人知识库的建设。
由于开源大模型在持续更新,对语言大模型的需要用户根据自己的业务场景和需求进行判断。掌握本地大模型部署技术,能够让你更灵活地控制数据隐私,降低 API 成本,并为后续的 AI 应用开发打下坚实基础。
相关免费在线工具
- 加密/解密文本
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
- RSA密钥对生成器
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
- Mermaid 预览与可视化编辑
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
- Base64 字符串编码/解码
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
- Base64 文件转换器
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
- Markdown转HTML
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online