Ollama是一个强大的工具,可以帮助你在本地轻松部署和管理大语言模型,如qwen。以下是在Windows系统上使用Ollama安装和部署qwen的详细步骤。
一、安装Ollama
(一)下载Ollama(或者用我的网盘链接下载)
通过网盘分享的文件:OllamaSetup0.5.7.exe
链接: https://pan.baidu.com/s/1fE1dad4UBCQsUDZ7c_abVw 提取码: 15gg
-
打开浏览器,访问 Ollama官网。
-
在下载页面中,选择“Windows”选项卡,点击“Download for Windows ”按钮,开始下载Ollama的安装包。
(二)安装Ollama
-
下载完成后,双击下载的
.exe
安装包文件,启动安装程序。
-
按照安装向导的提示完成安装过程。Ollama默认安装路径为
C:\Users\<username>\AppData\Local\Programs\Ollama
。 -
安装完成后,
提升完成安装后,有了默认的安装命令,
但我们要安装qwen,其实方法通用,只有ollama上有的都可以安装。
(三)验证Ollama安装
-
打开命令提示符或PowerShell,输入以下命令:
ollama -h
-
如果看到Ollama的版本信息和帮助文档,说明安装成功。
常用命令
ollama serve 启动ollama
ollama create 从模型文件创建模型
ollama show 显示模型信息
ollama run 运行模型
ollama pull 从注册表中拉取模型
ollama push 将模型推送到注册表
ollama list 列出模型
ollama cp 复制模型
ollama rm 删除模型
ollama help 获取有关任何命令的帮助信息
二、配置Ollama(可选)
更改模型存储路径
-
如果需要更改Ollama存储下载模型的位置,可以在用户账户中设置环境变量
OLLAMA_MODELS
。 -
启动设置(Windows 11)或控制面板(Windows 10),搜索“环境变量”。
-
点击“编辑账户环境变量”,编辑或创建一个新的用户账户或者系统变量
OLLAMA_MODELS
,设置为你希望存储模型的路径。
三、安装大模型
执行命令
ollama run qwen2.5:1.5b
可以根据自己的需求来下载不同参数的模型
发送消息
四、API调用
1、编写 Python 代码(非流式)
以下是一个简单的 Python 脚本示例,用于调用 Ollama 运行的 qwen2.5:1.5b
模型:
import requests
import json
# Ollama API 的地址
url = "http://localhost:11434/api/generate"
# 定义请求的数据
data = {
"model": "qwen2.5:1.5b", # 模型名称
"prompt": "请编写一个关于少年努力的对联", # 输入的提示信息
"stream": False # 是否使用流式响应
}
# 将数据转换为 JSON 格式
data_json = json.dumps(data)
# 设置请求头
headers = {
"Content-Type": "application/json"
}
# 发送 POST 请求
try:
response = requests.post(url, headers=headers, data=data_json)
response.raise_for_status() # 检查响应状态码
result = response.json()
print(result["response"]) # 打印模型的回复
except requests.exceptions.RequestException as e:
print(f"请求出错: {e}")
except (KeyError, json.JSONDecodeError):
print("解析响应数据出错")
D:\AiPro\wechat\pythonProject\.venv\Scripts\python.exe D:\AiPro\wechat\pythonProject\zimeiti\t2.py
好的,以下是一副关于少年努力的对联:
上联:
日月光华耀九州,少年志气冲霄汉。
下联:
风霜雨雪砺筋骨,青春汗水润乾坤。
横批:
壮志凌云
这个对联寓意着年轻人要有远大的理想和雄心壮志,即使是在逆境中也要努力奋斗。"日月光华耀九州"代表了国家的繁荣和民族的梦想;"少年志气冲霄汉"体现了年轻人的理想与抱负;"风霜雨雪砺筋骨"强调了在艰难困苦中锤炼意志的重要性;最后"青春汗水润乾坤"表达了通过不懈努力实现梦想的过程。
Process finished with exit code 0
2、编写 Python 代码( 流式 输出)
如果你希望使用流式响应,可以将 stream
参数设置为 True
,并对响应进行逐行处理:
import requests
import json
url = "http://localhost:11434/api/generate"
data = {
"model": "qwen2.5:1.5b",
"prompt": "请编写一个关于少年努力的对联",
"stream": True
}
data_json = json.dumps(data)
headers = {
"Content-Type": "application/json"
}
try:
response = requests.post(url, headers=headers, data=data_json, stream=True)
response.raise_for_status()
for line in response.iter_lines():
if line:
result = json.loads(line)
if 'response' in result:
print(result["response"], end='', flush=True)
except requests.exceptions.RequestException as e:
print(f"请求出错: {e}")
except (KeyError, json.JSONDecodeError):
print("解析响应数据出错")
五、代码解释
-
请求地址:
http://localhost:11434/api/generate
是 Ollama 默认的生成 API 地址,你可以根据实际情况进行调整。 -
请求数据:
-
model
:指定要使用的模型名称,这里是qwen2.5:1.5b
。 -
prompt
:输入给模型的提示信息,即你想要询问的问题。 -
stream
:设置是否使用流式响应。如果设置为True
,模型会逐步返回结果;如果设置为False
,则会等待模型生成完整的结果后一次性返回。
-
-
请求头:设置
Content-Type
为application/json
,表示请求数据是 JSON 格式。 -
发送请求:使用
requests.post
方法发送 POST 请求,并将响应结果解析为 JSON 格式。 -
处理响应:打印模型的回复,如果请求或解析过程中出现错误,会捕获相应的异常并输出错误信息。