Ollama
是一个集成了多种大型语言模型的工具,它支持模型的部署、运行以及API的整合和调用。
Ollama为不同操作系统的用户提供了便捷的安装方式,并具备丰富的命令行界面(CLI)和API接口,使得用户可以轻松地管理和运行大型模型。
一、安装
Ollama的安装方式因操作系统而异,以下是主要操作系统的安装步骤:
1.1 macOS
【安装Homebrew
(如果尚未安装)】:
打开终端,输入以下命令安装
Homebrew:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
【安装Ollama
】:
在终端中输入命令进行安装:
brew install ollama
【验证安装】:
安装完成后,可以通过输入ollama --version
来验证Ollama是否安装成功。
1.2 Windows
【下载安装包】:
访问Ollama的官方网站,下载适用于Windows的安装包。
【运行安装包】:
双击下载的安装包,按照提示完成安装。默认安装路径通常为
C:\Users\{你的电脑账户名}\AppData\Local\Programs\Ollama
【配置环境变量】(如遇到ollama命令无法使用的情况):
控制面板 ⏩系统 ⏩ 高级系统设置 ⏩ 环境变量 ⏩ 在系统变量中找到Path ⏩ 编辑 ⏩ 新建,添加Ollama的安装路径。
【验证安装】:
打开命令提示符,输入ollama --version
来验证安装是否成功。
1.3 Linux
【更新包列表】(以Debian/Ubuntu为例):
打开终端,输入sudo apt-get update
命令。
【安装Ollama】:
输入命令进行安装
curl -fsSL https://ollama.com/install.sh | sh
【验证安装】:
输入ollama --version
来验证安装是否成功。
二、启动
Ollama的启动可以通过命令行完成,使用ollama serve或其别名serve、start命令即可启动Ollama服务。
Ollama将自动处理模型的加载和配置,无需用户手动干预。
也可以通过sudo systemctl start ollama
, 具体的启动service
# /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3[Install]
WantedBy=default.target
三、常用命令
Ollama提供了丰富的命令行工具,以下是一些常用命令:
启动Ollama服务:ollama serve
从模型文件创建模型:ollama create [模型名称] -f [模型文件路径]
显示模型信息:ollama show [模型名称]
运行模型:ollama run [模型名称] [输入文本]
从注册表中拉取模型:ollama pull [模型名称]
将模型推送到注册表:ollama push [模型名称]
列出所有模型:ollama list
复制模型:ollama cp [源模型名称] [目标模型名称]
删除模型:ollama rm [模型名称]
获取帮助信息:ollama help
特别的,可以通过ollama ps
查看模型运行负载情况
ollama psNAME ID SIZE PROCESSOR UNTIL
llama3:70b bcfb190ca3a7 42 GB 100% GPU 4 minutes from now
可以通过ollama run qwen2:70b 来下载模型和启动CLI
模型默认在
macOS
: ~/.ollama/models
Linux
: /usr/share/ollama/.ollama/models
Windows
: C:\Users%username%.ollama\models
四、接口API使用
ollama run模型后会启动一个http服务: localhost:11434,可以通过prompt和chat方式和大模型进行交互
curl http://localhost:11434/api/generate -d '{"model": "qwen2:70b","prompt":"Why is the sky blue?"
}'curl http://localhost:11434/api/chat -d '{"model": "llama3.1","messages": [{ "role": "user", "content": "why is the sky blue?" }]
}
ollama也提供了openai式的接口
from openai import OpenAIclient = OpenAI(base_url='http://localhost:11434/v1/',# required but ignoredapi_key='ollama',
)chat_completion = client.chat.completions.create(messages=[{'role': 'user','content': 'Say this is a test',}],model='llama3',
)response = client.chat.completions.create(model="llava",messages=[{"role": "user","content": [{"type": "text", "text": "What's in this image?"},{"type": "image_url","image_url": "",},],}],max_tokens=300,
)completion = client.completions.create(model="llama3",prompt="Say this is a test",
)list_completion = client.models.list()model = client.models.retrieve("llama3")embeddings = client.embeddings.create(model="all-minilm",input=["why is the sky blue?", "why is the grass green?"],
)
五、支持模型
ollama支持绝大多数开源大模型和一些多模态模型
更全的参考
https://ollama.com/library
个人观点,仅供参考
原创 WedO实验君 人工智能微客