一.ollama安装
1.安装Ollama:ollama是开源的本地大语言模型运行框架,简化在本地运行大型语言模型的过程,降低使用门槛
2.它通过简单的安装指令,使得用户可以通过一条命令在本地运行开源大型语言模型
3.Ollama保留类似Docker的操作习惯,支持上传和管理大语言模型仓库
二.ollama命令
1.启动与停止服务相关命令
1.1.ollama serve:启动Ollama服务器,以便运行模型和处理请求
首次启动可能会生成ssh私钥文件,并提示服务端口状态
1.2.systemctl daemon-reload和systemctl restart ollama(Ubuntu/Debian系统):重启Ollama服务
1.3.sudo yum update、sudo yum install lsof、stop ollama、lsof -i :11434、kill 和ollama serve(CentOS系统):一系列命令用于更新系统、安装工具、停止当前运行的Ollama服务、查找占用端口的进程、杀死该进程并重新启动Ollama服务
2.模型管理相关命令
2.1.ollama create [Modelfile路径]:使用包含模型信息的Modelfile来创建新模型
2.2.ollama show或ollama info [model_name]:显示特定模型的详细信息,如模型名称、版本等
2.3.ollama list:列出本地所有可用的模型
2.4.ollama pull [模型名称]:从模型注册表中拉取一个模型到本地使用
2.5.ollama push [模型名称]:将本地模型推送到模型注册表中,以便他人或其他系统使用
2.6.ollama cp [原模型名称] [新模型名称]:复制一个模型到另一个位置或给定名称的地方
2.7.ollama rm [模型名称] 或 ollama unload [model_name]:删除或卸载一个已安装的模型
3.模型运行与会话管理相关命令
3.1.ollama run [模型名称]:运行已安装的模型,执行某些任务
可以根据需要指定模型的参数和配置
3.2./load <model>:加载一个特定的模型或会话
可以指定一个模型的名称或路径来加载它
3.3./save <model>:保存当前的会话状态或模型
可以将当前会话或模型的配置保存为一个文件,以便以后使用
3.4./clear:清除会话上下文。这将删除当前会话中的所有历史记录或对话内容
3.5./bye:退出会话。这个命令将结束当前与模型的对话,并退出程序
4.其他命令
4.1.ollama help [命令名称] 或 ollama --help:获取有关Ollama任何命令的帮助信息
如果指定命令名称,则显示该命令的详细帮助信息
4.2.ollama version:显示当前Ollama工具的版本信息
4.3./set:用于设置会话参数和配置
例如,设置消息格式、启用或禁用历史记录等
具体参数包括/set system<string>、/set template<string>、/set history、/set nohistory等
4.3.shortcuts 或 /help shortcuts:显示键盘快捷键的帮助信息,帮助更快速地进行操作
4.4.ollama chat [model_name]:启动与指定模型的对话界面
4.5.ollama webui:启动Web用户界面以便更方便地与多个模型进行互动
5.6.ollama apikey set <api_key>:设置用于远程调用服务端口所需的API密钥
4.7.ollama python start和ollama java start:分别为Python或Java应用程序初始化SDK连接环境变量配置文件
三.ollama下载地址:https://ollama.com/
四.模型安装部署
1.下载安装ollama后,选择需要部署的模型,复制命令进行一键部署
2.打开命令行窗口进行命令运行,下载安装有点慢
3.部署完成后即可对模型进行交互式提问
五.可视化工具安装
1.可选择Chatbox或Cherry Studio作为可视化交互工具使用
2.Chatbox官网安装:https://chatboxai.app/zh
2.1.Chatbox配置
3.Cherry Studio官网地址:https://cherry-ai.com/
3.1.对话时支持模型的选择
六.本地api接口调用
import requests
ask = input('请输入你的问题:')
# Ollama中提供的chat功能的API地址
url = 'http://127.0.0.1:11434/api/chat'
# 要发送的数据
data = {
"model": "deepseek-r1:8b",
"messages": [{
"role": "user",
"content": ask}],
"stream": False
}
# 发送POST请求
response = requests.post(url, json=data)
# 打印模型的输出文本
print(response.json()["message"]["content"])