欢迎来到涛涛聊AI。
Ollama是一个强大的工具,可以帮助你在本地轻松部署和管理大语言模型,如deepseek-r1。
DeepSeek-R1是由DeepSeek团队开发的第一代高性能推理模型,旨在通过强化学习提升大语言模型的推理能力。该模型采用大规模专家混合(MoE)架构,参数规模高达6710亿,是许多开源大模型的10倍。DeepSeek-R1在数学、代码和推理任务上表现出色,尤其在长链推理(CoT)方面表现优异。此外,它还支持模型蒸馏,能够将推理能力迁移到小型模型上,提升其性能。DeepSeek-R1遵循MIT License开源,允许用户基于其进行进一步开发和商用。
以下是在Windows系统上使用Ollama安装和部署deepseek-r1的详细步骤。
一、安装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
。
- 安装完成后,
提升完成安装后,有了默认的安装命令,
但我们要安装deepseek-r1,其实方法通用,只有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 deepseek-r1
可以根据自己的需求来下载不同参数的模型
发送消息
四、API调用
1、编写 Python 代码(非流式)
以下是一个简单的 Python 脚本示例,用于调用 Ollama 运行的 deepseek-r1:7b
模型:
import requests
import json
# Ollama API 的地址
url = "http://localhost:11434/api/generate"
# 定义请求的数据
data = {
"model": "deepseek-r1:7b", # 模型名称
"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
<think>
好的,用户让我写一个关于少年努力的对联。首先,我得理解对联的基本结构,上下联要相对称,内容上要相呼应。
上联方面,我想突出少年的活力和他们在逆境中的坚韧。所以用了“少男意气自凌云”来表现他们的雄心壮志,“在风风雨雨试身手”则描绘了他们在困难中锻炼自己的情景。
下联需要与上联对仗,同时表达出他们通过努力实现目标的决心。“少年志向须如水”强调了内心的坚定和持久,“润干功业总关情”则是希望他们的努力能带来长远的成功,并且过程中充满情怀。
整体来看,这个对联不仅押韵对仗工整,还紧扣主题,既表现了少年的奋斗精神,也寄托了对他们未来成功的美好祝愿。这样应该能满足用户的需求了。
</think>
上联:少男意气自凌云,在风风雨雨试身手
下联:少年志向须如水,润干功业总关情
赏析:这幅对联上联以“少男意气”起句,形容少年的雄心壮志;通过“凌云”、“在风风雨雨试身手”展现了他们不畏艰难、勇往直前的精神。下联则以“少年志向须如水”喻指少年的志向深沉持久,最后“润干功业总关情”表达了对少年未来事业的美好祝愿和期望。
Process finished with exit code 0
- 代码解释
- 请求地址:
http://localhost:11434/api/generate
是 Ollama 默认的生成 API 地址,你可以根据实际情况进行调整。 - 请求数据:
-
model
:指定要使用的模型名称,这里是 deepseek-r1:7b。prompt
:输入给模型的提示信息,即你想要询问的问题。stream
:设置是否使用流式响应。如果设置为True
,模型会逐步返回结果;如果设置为False
,则会等待模型生成完整的结果后一次性返回。
- 请求头:设置
Content-Type
为application/json
,表示请求数据是 JSON 格式。 - 发送请求:使用
requests.post
方法发送 POST 请求,并将响应结果解析为 JSON 格式。 - 处理响应:打印模型的回复,如果请求或解析过程中出现错误,会捕获相应的异常并输出错误信息。
- 流式响应示例
2、编写 Python 代码( 流式 输出)
如果你希望使用流式响应,可以将 stream
参数设置为 True
,并对响应进行逐行处理:
import requests
import json
url = "http://localhost:11434/api/generate"
data = {
"model": "deepseek-r1:7b",
"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("解析响应数据出错")