亲测有效!使用Ollama本地部署DeepSeekR1模型,指定目录安装并实现可视化聊天与接口调用
文章目录
- 一、引言
- 二、准备工作(Ollama 工具介绍与下载)
- 2.1 Ollama介绍
- 2.2 Ollama安装
- 三、指定目录安装 DeepSeek R1
- 四、Chatbox 可视化聊天搭建
- 4.1 Chatbox下载安装
- 4.2 关联 DeepSeek R1 与 Chatbox 的步骤
- 五、使用 Ollama 调用 DeepSeek 接口
- 5.1 请求接口(无上下文记忆)
- 5.2 请求接口(有上下文记忆)
- 5.2 请求体参数解释
一、引言
在人工智能技术飞速发展的当下,本地部署语言模型为我们带来了隐私保护、快速响应以及自定义等诸多优势。DeepSeek R1 作为一款备受瞩目的模型,拥有强大的自然语言处理能力,可应用于聊天机器人、文本生成等多个领域 。
而 Ollama 则是一款优秀的 AI 模型管理工具,它能让我们在本地轻松运行大型语言模型。如果你想拥有一个完全掌控在自己手中,可指定目录安装,还能实现可视化聊天,并且可以灵活调用接口的 DeepSeek R1 模型,那这篇文章就是你的不二之选。
接下来,我将一步步带你完成利用 Ollama 本地部署 DeepSeek R1 的全过程,无论是调整模型的安装目录,还是通过 Chatbox 实现可视化聊天,又或是熟练运用 Ollama 调用 DeepSeek 接口,所有的操作步骤和细节都将毫无保留地呈现,助你快速搭建属于自己的高效 AI 环境。
二、准备工作(Ollama 工具介绍与下载)
2.1 Ollama介绍
Ollama 是一款专为本地运行 AI 模型设计的开源工具,它的出现极大地简化了模型部署流程,无论你是专业开发者还是 AI 爱好者,都能借助其轻松上手复杂的模型操作。其跨平台特性支持在 Windows、Mac 以及 Linux 系统上无缝运行,打破了系统壁垒。
2.2 Ollama安装
ollama官网:ollama
进入官网后点击Download下载

点击Download for Windows进行安装,这里以Windows系统示例

在Ollama官网中可以选择自己要安装的模型,复制右边的命令,后续我们要使用这个命令来进行安装DeepSeek R1模型

三、指定目录安装 DeepSeek R1
ollama默认将模型安装到C盘,这可能会导致C盘的磁盘不足从而影响到计算机的整体性能,在C盘频繁进行大文件的读写操作也会增加系统崩溃的几率。所以这个时候我们就需要将DeepSeek R1模型安装到其他容量足够的磁盘中,从而减轻系统的压力。
指定目录安装DeepSeek R1模型全步骤:
-
在指定盘符中创建
Ollama文件夹,这里我们以D盘示例 -
在
C:\Users目录下找到.ollama文件夹剪切复制到新建的D:\Ollama目录中(.ollama中存储的有配置文件,缓存数据,日志文件,机器学习模型资源) -
在
D:\Ollama中新建一个文件夹models用于存储安装的模型 -
在
D:\Ollama目录中打开终端DOS窗口,运行ollama --version查看ollama是否安装成功(如果显示版本号则证明安装成功) -
在系统变量中新增
OLLAMA_MODELS,变量值是存储模型的目录D:\Ollama\models

-
重启电脑后在终端输入
ollama --version查看环境变量是否生效 -
在
D:\Ollama\models目录中打开终端DOS窗口,输入命令ollama run deepseek-r1:1.5b进行安装DeepSeek R1模型

安装完成后提示success则证明安装成功,接下来就可以流畅使用DeepSeek啦!
四、Chatbox 可视化聊天搭建
4.1 Chatbox下载安装
Chatbox AI 是一款 AI 客户端应用和智能助手,支持众多先进的 AI 模型和 API,可在 Windows、MacOS、Android、iOS、Linux 和网页版上使用。
Chatbox官网:Chatbox
进入官网后点击免费下载(for Windows)进行下载安装

4.2 关联 DeepSeek R1 与 Chatbox 的步骤

选择刚刚安装的模型,然后点击保存


五、使用 Ollama 调用 DeepSeek 接口
5.1 请求接口(无上下文记忆)
这里我们使用ApiFox来简单给大家示例一下,后续大家可以在程序中调用接口
请求方式: POST
请求接口: http://localhost:11434/api/chat
请求内容:
{"model": "deepseek-r1:1.5b","messages": [{"role": "system","content": "你是一名高级Java程序员,擅长处理各种BUG以及编写高质量代码"},{"role": "user","content": "请帮我使用Java写一个HelloWorld示例"}],"stream": true,"options": {"temperature": 0.2}
}

5.2 请求接口(有上下文记忆)
请求内容:
{"model": "deepseek-r1:1.5b","messages": [{"role": "system","content": "你是一名高级Java程序员,擅长处理各种BUG以及编写高质量代码"},{"role": "user","content": "请帮我使用Java写一个HelloWorld示例"},{"role": "assistant","content": "\n\n好的!以下是一个基本的 `HelloWorld` 示例:\n\n```java\npublic class HelloWorld {\n public static void main(String[] args) {\n System.out.println(\"Hello World\");\n }\n}\n```\n\n这个示例展示了如何使用 Java 的 `main` 方法来执行一个简单的输出打印语句。你可以将 `Hello World` 替换为其他内容,比如:\n\n```java\nSystem.out.println(\"Hello and Me\");\n```\n\n如果你有其他需求或问题,请随时告诉我!"},{"role": "user","content": "刚刚我问你的是什么?"}],"stream": true,"options": {"temperature": 0.2}
}
5.2 请求体参数解释
在这个请求体中,每一个参数都有其特定的功能:
-
model:
- 值:
"deepseek-r1:1.5b" - 作用: 指定要使用的具体模型版本。在这里,它使用的是名为
deepseek-r1的版本,规模为1.5b,这可能意味着该模型有 1.5 billion (15 亿) 参数。
- 值:
-
messages:
- 作用: 这是一个对话历史的数组,描述了在当前请求中系统和用户之间的交流。
- 内容: 数组中的每一个对象代表一次交流,包括角色(role)和内容(content)。
- role: 指定交流的角色,可以是
"system"(系统)、"user"(用户)或"assistant"(助手)。 - content: 是该角色在该轮次中所说的话或指令。在对话管理中用于保持对话的上下文。
- role: 指定交流的角色,可以是
具体内容:
- 第一条消息由
system提供,描述助手在对话中应扮演的角色——在这里,是一名高级Java程序员。 - 第二条消息是用户的请求,要求助手写一个 HelloWorld 示例。
- 第三条消息是助手回应用户请求,提供了一个 Java 的 HelloWorld 示例代码。
- 第四条消息是用户再次提问,明确他们的问题。
-
stream:
- 值:
true - 作用: 一般用于指示助手是否应该进行流式响应。这通常用于实时传输数据或进行连续的对话流,以便用户能更快地接受到部分响应。
- 值:
-
options:
- 作用: 配置与模型交互的附加选项。
- temperature:
- 值:
0.2 - 作用: 控制生成文本输出的多样性。较低的温度(例如,0.2)会使输出更为确定和直接,而较高的温度会增加生成文本的随机性和多样性。0.2 的值意味着在生成时更倾向于确定性,且生成的回应会较为稳定且一致。
- 值:
相关文章:
亲测有效!使用Ollama本地部署DeepSeekR1模型,指定目录安装并实现可视化聊天与接口调用
文章目录 一、引言二、准备工作(Ollama 工具介绍与下载)2.1 Ollama介绍2.2 Ollama安装 三、指定目录安装 DeepSeek R1四、Chatbox 可视化聊天搭建4.1 Chatbox下载安装4.2 关联 DeepSeek R1 与 Chatbox 的步骤 五、使用 Ollama 调用 DeepSeek 接口5.1 请求…...
MySQL安装MySQL服务时提示Install-Remove of the Service Denied
文章目录 问题描述排查1.字面意思2.搜索引擎3.官方文档4.源码 处理方法相关扩展 问题描述 MySQL安装MySQL服务时提示Install-Remove of the Service Denied! 详细报错如下: C:\Users\荷塘月色>net start mysql 服务名无效。请键入 NET HELPMSG 2185 以获得更多…...
(Windows | Linux)ssh访问服务器报错:no matching key exchange method found
问题现象 ssh user1192.168.1X.XX Unable to negotiate with 192.168.1X.XX port 22: no matching key exchange method found. Their offer: gss-group1-sha1-toWM5Slw5Ew8Mqkayal2g,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-…...
Linux(centos)系统安装部署MySQL8.0数据库(GLIBC版本)
安装前检查服务器glibc版本,下载对应版本包 rpm -qa | grep glibc mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装 一、下载MySQL mysql安装包及依赖包已整理好,下载地址…...
有哪些滤波,原理是什么,分别在什么时候用
均值滤波(Average Filtering) 原理:通过计算像素点邻域内像素值的平均值来作为该像素点滤波后的新值。例如,对于一个 3x3 的邻域,将 9 个像素值相加然后除以 9 得到滤波后的像素值。优点:简单易实现&#x…...
深入解析与解决 Oracle 报错:ORA-29275 部分多字节字符20250213
🛠️ 深入解析与解决 Oracle 报错:ORA-29275 部分多字节字符 引言 🌟 在与 Oracle 数据库打交道的日常工作中,你是否遇到过 ORA-29275: partial multibyte character 这个令人头疼的错误?这个错误通常与字符编码、数…...
iOS 上自定义编译 FFmpeg
在 iOS 上自定义编译 FFmpeg 是一个复杂但非常灵活的过程。通过自定义编译,您可以选择启用或禁用特定的功能和编解码器,以满足项目的需求,同时减少二进制文件的大小。 1. 自定义编译 FFmpeg 1.1 准备工作 在开始编译之前,您需要以下工具和环境: macOS:运行编译的主机。…...
linux-带宽性能压测-全解iperfwgetspeedtest-cli
【摘要】本文介绍了iperf,wget,speedtest-cli 测速linux 服务器带宽,测速方法,和测速分析结果都有详解。同时也附带了windows的带宽测速已经这些软件的下载。快来测试下您的网速 1.iperf: iperf是一个开源网络带宽测试工具&…...
【前端学习笔记】Webpack
1.介绍 Webpack 是一个现代 JavaScript 应用程序的静态模块打包工具,它将 JavaScript、CSS、图片、字体等资源文件打包成一个或多个静态文件,以供浏览器使用。当 webpack 处理应用程序时,它会在内部从一个或多个入口点构建一个 依赖图(depend…...
Qt——连接MySQL数据库之编译数据库驱动的方法详细总结(各版本大同小异,看这一篇就够了)
【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C++语言开发基础总结》 《从0到1学习嵌入式Linux开发》 《QT开发实战》 《Android开发实战》 《实用硬件方案设计》 《结构建模设…...
【R语言】方差分析
方差分析的基本前提假设与t检验的前提假设类似,包括正态分布假设、观察独立性假设和方差齐性假设。 一、基本术语 在R语言以及更广泛的统计学领域中,方差分析(ANOVA,即Analysis of Variance)是一种用于比较两个或更多…...
深度学习机器学习:常用激活函数(activation function)详解
目录 Sigmoid Function ReLU(Rectified Linear Unit) LeakyReLU(Leaky Rectified Linear Unit) ClippedReLU(Clipped Rectified Linear Unit) PRelu(Parametric ReLU) Tanh&am…...
TCP协议(Transmission Control Protocol)
TCP协议,即传输控制协议,其最大的特征就是对传输的数据进行可靠、高效的控制,其段格式如下: 源端口和目的端口号表示数据从哪个进程来,到哪个进程去,四位报头长度表示的是TCP头部有多少个4字节,…...
django上传文件
1、settings.py配置 # 静态文件配置 STATIC_URL /static/ STATICFILES_DIRS [BASE_DIR /static, ]上传文件 # 定义一个视图函数,该函数接收一个 request 参数 from django.shortcuts import render # 必备引入 import json from django.views.decorators.http i…...
Web 后端 请求与响应
一 请求响应 1. 请求(Request) 客户端向服务器发送的HTTP请求,通常包含以下内容: 请求行:HTTP方法(GET/POST等)、请求的URL、协议版本。 请求头(Headers):…...
【深度解析】图解Deepseek-V3模型架构-混合专家模型(MoE)
一、引言 最近非常火爆的DeepSeek-V3模型,是一个包含6710亿总参数的强大混合专家模型(MoE),该模型在DeepSeek-V2验证有效的核心架构基础上,采用多头潜在注意力(MLA)机制和DeepSeekMoE架构&…...
全平台搭载旭日5!科沃斯GOAT智能割草机器人全新系列正式开售
要闻 近日,科沃斯全新发布的GOAT A Series 和 GOAT O Series割草机器人,将在多国市场正式上市发售。作为业界最强的割草机器人产品之一,GOAT致力为割草机带来基于机器人视觉的专业定位解决方案。科沃斯GOAT全新系列产品全平台搭载地瓜机器人…...
ORB-SLAM3的源码学习:TwoViewReconstruction通过两幅图像来实现重建
前言 TwoViewReconstruction和Initializer 在功能上实际是有重叠,但它们的设计目标和使用场景不同。TwoViewReconstruction专注于处理两幅图像之间的相对运动和三维点重建,而Initializer 负责整个 SLAM 系统的初始化,包括地图的构建和系统的…...
基于单片机ht7038 demo
单片机与ht7038 demo,三相电能表,电量数据包括电流电压功能,采用免校准方法 列表 ht7038模块/CORE/core_cm3.c , 17273 ht7038模块/CORE/core_cm3.h , 85714 ht7038模块/CORE/startup_stm32f10x_hd.s , 15503 ht7038模块/CORE/startup_stm32…...
【DeepSeek三部曲】DeepSeek-R1论文详细解读
这里写目录标题 摘要1. 引言1.1 贡献1.2 评估结果总结 2. 方法2.1 概述2.2 DeepSeek-R1-Zero:在base模型上进行强化学习2.2.1 强化学习算法2.2.2 奖励模型2.2.3 训练模版2.2.4 DeepSeek-R1-Zero的表现、自我进化过程以及顿悟时刻 2.3 DeepSeek-R1:带有冷…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
数据结构:递归的种类(Types of Recursion)
目录 尾递归(Tail Recursion) 什么是 Loop(循环)? 复杂度分析 头递归(Head Recursion) 树形递归(Tree Recursion) 线性递归(Linear Recursion)…...
FFmpeg avformat_open_input函数分析
函数内部的总体流程如下: avformat_open_input 精简后的代码如下: int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...
