当前位置: 首页 > news >正文

如何使用 Ollama 在本地设置和运行 DeepSeek R1

概述

了解如何使用 Ollama 在本地安装、设置和运行 DeepSeek-R1 并构建一个简单的 RAG 应用程序

在本教程中,我将逐步介绍如何在本地运行 DeepSeek-R1 以及如何使用 Ollama 进行设置。我们还将探索使用 R1 模型、LangChain 和 Gradio 构建一个简单的 RAG 应用程序,该应用程序可在您的笔记本电脑上运行

为什么要在本地运行 DeepSeek-R1?

在本地运行 DeepSeek-R1 可以让您完全控制模型执行,而无需依赖外部服务器。以下是在本地运行 DeepSeek-R1 的一些优势:

  1. 隐私和安全:没有数据离开您的系统。
  1. 不间断访问:避免速率限制、停机或服务中断。
  1. 性能:通过本地推理获得更快的响应,避免 API 延迟。
  1. 自定义:修改参数、微调提示并将模型集成到本地应用程序中。
  1. 成本效益:通过在本地运行模型来消除 API 费用。
  1. 离线可用性:下载模型后,在没有 Internet 连接的情况下工作。

使用 Ollama 在本地设置 DeepSeek-R1

Ollama 通过无缝处理模型下载、量化和执行来简化本地运行LLMs。

第 1 步:安装 Ollama

首先,从官网下载并安装 Ollama

下载完成后,像安装任何其他应用程序一样安装 Ollama 应用程序。

第 2 步:下载并运行 DeepSeek-R1

让我们测试设置并下载我们的模型。启动终端并键入以下命令。

Ollama 提供一系列 DeepSeek R1 模型,从 1.5B 参数到完整的 671B 参数模型。671B 模型是原始的 DeepSeek-R1,而较小的模型是基于 Qwen 和 Llama 架构的提炼版本。如果您的硬件不支持 671B 型号,您可以使用以下命令并将下面的 X 替换为您想要的参数大小(1.5b、7b、8b、14b、32b、70b、671b),轻松运行较小的版本:

ollama run deepseek-r1:Xb

凭借这种灵活性,即使您没有超级计算机,也可以使用 DeepSeek-R1 的功能。

第 3 步:在后台运行 DeepSeek-R1

要持续运行 DeepSeek-R1 并通过 API 提供它,请启动 Ollama 服务器:

ollama serve

这将使模型可用于与其他应用程序集成。

在本地使用 DeepSeek-R1

第 1 步:通过 CLI 运行推理

下载模型后,您可以直接在终端中与 DeepSeek-R1 进行交互。

第 2 步:通过 API 访问 DeepSeek-R1

要将 DeepSeek-R1 集成到应用程序中,请使用 curl 的 Ollama API

curl http://localhost:11434/api/chat -d '{
  "model": "deepseek-r1",
  "messages": [{ "role": "user", "content": "Solve: 25 * 25" }],
  "stream": false
}’

curl 是 Linux 原生的命令行工具,但也适用于 macOS。它允许用户直接从终端发出 HTTP 请求,使其成为与 API 交互的绝佳工具

第 3 步:通过 Python 访问 DeepSeek-R1

我们可以在选择的任何集成开发环境 (IDE) 中运行 Ollama。您可以使用以下代码安装 Ollama Python 包:

安装 Ollama 后,使用以下脚本与模型交互:

import ollama
response = ollama.chat(
    model="deepseek-r1",
    messages=[
        {"role": "user", "content": "Explain Newton's second law of motion"},
    ],
)
print(response["message"]["content"])

ollama.chat() 函数获取模型名称和用户提示,并将其作为对话交换进行处理。然后,该脚本提取并打印模型的响应


系列阅读

如何使用DeepSeek-R1处理PDF

什么是堆外内存-CSDN博客

相关文章:

  • 如何使用 Docker 搭建 FastAPI 环境, 本地仅编辑代码
  • 力扣LeetCode: 931 下降路径最小和
  • 【小白学AI系列】NLP 核心知识点(七)Embedding概念介绍
  • 【Elasticsearch】`nested`字段
  • 巨控GRM530系列的远程模块用于PLC远程上下载方案
  • 9.综合调试|输入不能存在空格|desc存在None|输出权值和ID|函数重名|修改文件名|权值和实际关键词出现次数(C++)
  • 网工项目理论1.10 路由结构设计
  • 999感冒灵抖音KOL内容营销案例拆解
  • 2.17日学习总结
  • javacv将视频切分为m3u8视频并播放
  • 三级等保项目设备清单及高风险项整改方向
  • 嵌入式 lwip http server makefsdata
  • Node.js 异步并发控制:`p-map` 和 `p-limit` 的使用与对比
  • ubuntu在线安装PostgreSQL(pgsql)
  • 大幂计算和大阶乘计算【C语言】
  • idea 2023.3.7常用插件
  • Redis基本数据结构
  • 使用EasyExcel和多线程实现高效数据导出
  • 机器学习_11 线性回归知识点总结
  • Linux top 命令
  • 开门红背后的韧性密码:上海八大企业的“反脆弱”与“真功夫”
  • 王毅会见俄罗斯外长拉夫罗夫
  • 日中友好议员联盟代表团访问中国人民对外友好协会
  • 中消协发布“五一”消费提示:践行“光盘行动”,抵制餐饮浪费
  • 上海第三家“胖永辉”在浦东开业,设立了外贸产品专区
  • 坚守刑事检察一线13年,“在我心中每次庭审都是一次大考”