什么是 Ollama?

Ollama是一个开源的 LLM(大型语言模型)服务工具,用于简化在本地运行大语言模型、降低使用大语言模型的门槛,使得大模型的开发者、研究人员和爱好者能够在本地环境快速实验、管理和部署最新开源的大型语言模型。

硬件加速

Ollama 使用 NVIDIA GPU 以及现代 CPU 指令集(如 AVX 和 AVX2,如果可用)来加速运行模型。无需配置或虚拟化!

始终开启 Ollama API

Ollama 的 API 自动在后台运行,服务于http://localhost:11434。工具和应用程序无需任何额外设置即可连接到它。

ollama 支持的大语言模型列表

https://ollama.com/library

[LLM]大模型管理器Ollama的部署与使用_qwen2

Ollama 安装

直接下载Ollama安装程序(支持 Windows/MacOS/Linux):Download Ollama

下载后直接运行安装,默认安装位置为C:\Users\用户名\.ollama

Ollama 常用系统参数设置

1.OLLAMA_MODELS:模型文件存放目录,默认目录为当前用户目录(Windows 目录:C:\Users%username%.ollama\models,MacOS 目录:~/.ollama/models,Linux 目录:/usr/share/ollama/.ollama/models),如果是 Windows 系统建议修改(如:D:\OllamaModels),避免 C 盘空间不足(如果你C盘1TB,那也没问题)。

[LLM]大模型管理器Ollama的部署与使用_LLM_02

2.OLLAMA_HOST:Ollama 服务监听的网络地址,默认为127.0.0.1,如果允许其他电脑访问 Ollama(如:局域网中的其他电脑),建议设置0.0.0.0,从而允许其他设备访问。

3.OLLAMA_PORT:Ollama 服务监听的默认端口,默认为11434,如果端口有冲突,可以修改设置成其他端口(如:8111等)。

4.OLLAMA_KEEP_ALIVE:大模型加载到内存中后的存活时间,默认为5m即 5 分钟(如:纯数字如 300 代表 300 秒,0 代表处理请求响应后立即卸载模型,任何负数则表示一直存活);我们可设置成24h,即模型在内存中保持 24 小时,提高访问速度。

5.OLLAMA_MAX_LOADED_MODELS:最多同时加载到内存中模型的数量,默认为1,即只能有 1 个模型在内存中。


Ollama 安装大模型数据

运行大模型:ollama run 大模型名称,如果不存在,则自动下载文件。

ollama run qwen2:7b

查看本地运行中模型列表:ollama ps 

ollama ps

[LLM]大模型管理器Ollama的部署与使用_qwen2_03

展示本地大模型列表:ollama list

ollama list

[LLM]大模型管理器Ollama的部署与使用_Windows_04

Ollama 从远程仓库下载大模型到本地

下载或者更新本地大模型:ollama pull 本地/远程仓库模型名称

ollama pull 本地/远程仓库模型名称

pull命令从 Ollama 远程仓库完整下载或增量更新模型文件,模型名称格式为:模型名称:参数规格;如ollama pull qwen2:1.5b 则代表从 Ollama 仓库下载qwen2大模型的1.5b参数规格大模型文件到本地磁盘:

[LLM]大模型管理器Ollama的部署与使用_Ollama_05

ollama pull qwen2:1.5b

[LLM]大模型管理器Ollama的部署与使用_LLM_06

Ollama 运行大模型问答

[LLM]大模型管理器Ollama的部署与使用_qwen2_07

运行参数

/show info 显示大模型版本信息

/clear 清除上下文内容

/bye 退出对话界面

[LLM]大模型管理器Ollama的部署与使用_qwen2_08

Ollama API访问

Windows powershell

(Invoke-WebRequest -method POST -Body '{"model":"qwen2", "prompt":"Why is the sky blue?", "stream": false}' -uri http://localhost:8000/api/generate ).Content | ConvertFrom-json

[LLM]大模型管理器Ollama的部署与使用_qwen2_09

本文到此,已完成ollama基础安装,基础加载大数据模型,基础运行大数据模型。

备注:在大模型中,b 指的是 10 亿的参数量,8b就是 80 亿的参数,70b 就是 700 亿的参数,文中的1.5b就是15亿的参数。