Ollama 部署 DeepSeek-R1 及Open-WebUI

Ollama 部署 DeepSeek-R1 及Open-WebUI

文章目录

  • Ollama 部署 DeepSeek-R1 及Open-WebUI
    • 〇、说明
      • 为什么使用本方案
    • 一、 安装Ollama
      • 1、主要特点:
      • 2、安装
      • 3、验证
    • 二、Ollama 部署 DeepSeek
      • 1、部署
      • 2、模型选用
      • 3、Ollama 常用命令
      • 4、Ollama模型默认存储路径
    • 安装open-webui
      • 1、通过Python pip 安装
        • 要求
        • 安装命令
      • 2、通过Docker 安装
        • 安装Docker(如已安装请忽略)
        • 使用Docker 部署 open-webui
      • 3、可能遇到的问题

〇、说明

为什么使用本方案

  1. 部署环境与资源

    • 本地部署需要用户自建硬件(如 GPU 集群)和配置环境,适合对数据隐私要求较高或离线处理场景;
    • 线上 API 则由服务商托管,用户通过网络调用,无需自行投资硬件资源。
  2. 数据安全与控制

    • 本地部署数据完全由用户掌握,更安全;
    • 线上 API 涉及数据传输和第三方服务器,存在一定隐患。
  3. 更新维护与扩展性

    • 线上 API 由提供商持续更新和维护,用户总能使用最新版本;
    • 本地部署需要用户自行管理更新和维护,工作量较大。
  4. 成本结构

    • 线上 API 通常按调用计费,初期投入较低;
    • 本地部署前期硬件投入较高,但对于大规模、长期应用可能更具成本优势。
  5. 最重要的

    • DeepSeek服务经常500

一、 安装Ollama

Ollama 是一个开源的 AI 模型,主要用于生成和理解图像。它由 Anthropic 开发并发布,这是一个专注于 AI 研究的公司。Ollama 的核心功能包括图像生成、图像分割和图像分类等任务。

1、主要特点:

  1. 开源:Ollama 的代码和模型都是公开的,允许研究人员和开发者自由使用和修改。
  2. 高质量的图像生成:模型能够生成逼真且多样化的图像,适用于游戏、艺术创作等领域。
  3. 实时性:Ollama 模型通常运行在本地设备上,可以快速生成结果,无需依赖云端服务。
  4. 多语言支持:模型能够理解和生成多种语言,适合自然语言处理任务。

2、安装

进入Ollama 官网 下载对应系统进行安装

3、验证

安装完成后,打开命令行工具,输入以下命令验证是否安装成功:
ollama --version
如果显示版本号,说明安装成功。

二、Ollama 部署 DeepSeek

1、部署

进入 Ollama 的 DeepSeek-R1 的官方下载地址 选择模型,点击复制按钮
在这里插入图片描述

打开终端,输入刚复制的命令
ollama run deepseek-r1:1.5b
下载时间取决于网络速度和模型大小
下载完成后运行
ollama run deepseek-r1:1.5b # 启动指定的 DeepSeek-R1 模型
在这里插入图片描述

2、模型选用

根据自己的显存选择对应的模型,2G显卡推荐选1.5b的。
我的电脑是21款 MacBookPro M1 Pro,运行内存16G,显卡是集成显卡,与内存共用同一内存,下载的模型是DeepSeek-R1 8B,后面内存开销很多,导致电脑变卡,可能需要重启,后面下载1.5b 版本,会好很多

3、Ollama 常用命令

ollama pull 模型名字        # 拉取模型
ollama run 模型名字     # 启动指定的 DeepSeek-R1 模型
ollama chat  模型名字       # 使用run 命令启动聊天模式
ollama stop         # 停止正在运行的模型与服务
ollama list     # 查看已下载的模型
ollama help     # 可用命令及简要说明
ollama version      # ollama版本号
ollama logs     # 查看模型运行时的日志输出
ollama update       # 更新 Ollama 工具到最新版本
ollama config       #查看或设置 Ollama 的配置信息(例如 API 密钥、缓存路径等)

4、Ollama模型默认存储路径

~/.ollama/models/

安装open-webui

进入open-webui GitHub 页面
可以看到 open-webui 有两种安装方式

1、通过Python pip 安装

要求

确保您使用的是Python 3.11

安装命令
pip install open-webui      # 安装 Open WebUI
open-webui serve    #运行 Open WebUI

启动后 通过 http://localhost:8080 来访问

2、通过Docker 安装

安装Docker(如已安装请忽略)

以下是 Mac OS 下安装 Docker 的简明步骤:

  1. 下载安装包
    访问 Docker 官网(https://www.docker.com/products/docker-desktop/)下载适用于 Mac 的 Docker Desktop 安装包。
  2. 安装 Docker Desktop
    双击下载的 .dmg 文件,将 Docker Desktop 拖拽到 Applications 文件夹中。
  3. 启动与初始配置
    从 Applications 中启动 Docker Desktop。首次启动时可能需要授权系统权限,按提示操作即可。等待 Docker 图标出现在菜单栏,表示 Docker Desktop 已启动并初始化完成。
  4. 验证安装
    打开终端,输入以下命令确认 Docker 版本:
    docker --version
    
    若显示版本信息,则表示安装成功。
使用Docker 部署 open-webui

因为本地已经安装了Ollama 所以可以使用以下命令安装

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

3、可能遇到的问题

如果您遇到连接问题,通常是由于 WebUI docker 容器无法访问容器内 127.0.0.1:11434 (host.docker.internal:11434) 处的 Ollama 服务器。使用–network=hostdocker 命令中的标志来解决此问题。请注意,端口从 3000 更改为 8080,从而导致链接:http://localhost:8080。
Docker 命令示例:

docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/14751.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于微信小程序的医院预约挂号系统的设计与实现

hello hello~ ,这里是 code袁~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 🦁作者简介:一名喜欢分享和记录学习的在校大学生…

redis项目

短信登录 这一块我们会使用redis共享session来实现 商户查询缓存 通过本章节,我们会理解缓存击穿,缓存穿透,缓存雪崩等问题,让小伙伴的对于这些概念的理解不仅仅是停留在概念上,更是能在代码中看到对应的内容 优惠…

【嵌入式 Linux 音视频+ AI 实战项目】瑞芯微 Rockchip 系列 RK3588-基于深度学习的人脸门禁+ IPC 智能安防监控系统

前言 本文主要介绍我最近开发的一个个人实战项目,“基于深度学习的人脸门禁 IPC 智能安防监控系统”,全程满帧流畅运行。这个项目我目前全网搜了一圈,还没发现有相关类型的开源项目。这个项目只要稍微改进下,就可以变成市面上目前…

RabbitMQ 从入门到精通:从工作模式到集群部署实战(四)

#作者:闫乾苓 系列前几篇: 《RabbitMQ 从入门到精通:从工作模式到集群部署实战(一)》:link 《RabbitMQ 从入门到精通:从工作模式到集群部署实战(二)》: lin…

RabbitMQ 从入门到精通:从工作模式到集群部署实战(五)

#作者:闫乾苓 系列前几篇: 《RabbitMQ 从入门到精通:从工作模式到集群部署实战(一)》:link 《RabbitMQ 从入门到精通:从工作模式到集群部署实战(二)》: lin…

mysql 学习11 事务,事务简介,事务操作,事务四大特性,并发事务问题,事务隔离级别

一 事务简介, 数据库准备: create table account(id int auto_increment primary key comment 主键ID,name varchar(128) not null comment 姓名,backaccountnumber char(18) unique comment 银行账号,money float comment 余额 )comment 银行账号表;…

C语言的灵魂——指针(3)

前言:上期我们介绍了const修饰指针,saaert断言都是针对指针本身的,文章后面我们用指针与数组建立了联系,这种联系或者是关系就是这篇文章所要介绍的。上一篇文章的传送门:指针2 指针3 一,数组名的含义及理解…

企业FTP替代升级,实现传输大文件提升100倍!

随着信息技术的飞速发展,网络安全环境也变得越来越复杂。在这种背景下,传统的FTP(文件传输协议)已经很难满足现代企业对文件传输的需求了。FTP虽然用起来简单,但它的局限性和安全漏洞让它在面对高效、安全的数据交换时…

树和二叉树_7

树和二叉树_7 一、leetcode-102二、题解1.引库2.代码 一、leetcode-102 二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 样例输入:root [3,9,20,null,nu…

2.8作业

作业 优化登录框: 当用户点击取消按钮,弹出问题对话框,询问是否要确定退出登录,并提供两个按钮,yes|No,如果用户点击的Yes,则关闭对话框,如果用户点击的No,则继续登录 当…

【WB 深度学习实验管理】使用 PyTorch Lightning 实现高效的图像分类实验跟踪

本文使用到的 Jupyter Notebook 可在GitHub仓库002文件夹找到,别忘了给仓库点个小心心~~~ https://github.com/LFF8888/FF-Studio-Resources 在机器学习项目中,实验跟踪和结果可视化是至关重要的环节。无论是调整超参数、优化模型架构,还是监…

人工智能入门 数学基础 线性代数 笔记

必备的数学知识是理解人工智能不可或缺的要素,今天的种种人工智能技术归根到底都建立在数学模型之上,而这些数学模型又都离不开线性代数(linear algebra)的理论框架。 线性代数的核心意义:世间万事万物都可以被抽象成某…

5 计算机网络

5 计算机网络 5.1 OSI/RM七层模型 5.2 TCP/IP协议簇 5.2.1:常见协议基础 一、 TCP是可靠的,效率低的; 1.HTTP协议端口默认80,HTTPSSL之后成为HTTPS协议默认端口443。 2.对于0~1023一般是默认的公共端口不需要注册,1024以后的则需…

unity碰撞的监测和监听

1.创建一个地面 2.去资源商店下载一个火焰素材 3.把procedural fire导入到自己的项目包管理器中 4.给magic fire 0 挂在碰撞组件Rigidbody , Sphere Collider 5.创建脚本test 并挂在magic fire 0 脚本代码 using System.Collections; using System.Collections.Generic; usi…

使用云效解决docker官方镜像拉取不到的问题

目录 前言原文地址测试jenkins构建结果:后续使用说明 前言 最近经常出现docker镜像进行拉取不了,流水线挂掉的问题,看到一个解决方案: 《借助阿里个人版镜像仓库云效实现全免费同步docker官方镜像到国内》 原文地址 https://developer.aliyun.com/artic…

element-plus+vue3前端如何根据name进行搜索查到符合条件的数据

界面如图&#xff0c;下面的区域是接口给的所有的&#xff0c;希望前端根据输入的内容自己去匹配。 我是使用的element-plusvue3ts的写法。 <el-input v-model"filters.region" placeholder"输入区域搜索" keyup"filterRegion(filters.region)&q…

电路研究9.3——合宙Air780EP中的AT开发指南(含TCP 示例)

根据合宙的AT研发推荐&#xff0c; AT指令基本上也简单看完了&#xff0c;这里开始转到AT的开发了。 AT 命令采用标准串口进行数据收发&#xff0c;将以前复杂的设备通讯方式转换成简单的串口编程&#xff0c; 大大简化了产品的硬件设计和软件开发成本&#xff0c;这使得几乎所…

cursor指令工具

Cursor 工具使用指南与实例 工具概览 Cursor 提供了一系列强大的工具来帮助开发者提高工作效率。本指南将通过具体实例来展示这些工具的使用方法。 1. 目录文件操作 1.1 查看目录内容 (list_dir) 使用 list_dir 命令可以查看指定目录下的文件结构: 示例: list_dir log…

AI安全最佳实践:AI应用开发安全评估矩阵(上)

生成式AI开发安全范围矩阵简介 生成式AI目前可以说是当下最热门的技术&#xff0c;吸引各大全球企业的关注&#xff0c;并在全球各行各业中带来浪潮般的编个。随时AI能力的飞跃&#xff0c;大语言模型LLM参数达到千亿级别&#xff0c;它和Transformer神经网络共同驱动了我们工…

Java继承简介

继承的本质&#xff1a;是代码的复用&#xff0c;重复使用已经定义好的方法和域&#xff08;即全局变量&#xff09; 要掌握继承首先要了解Java方法的重载和重写 方法的重载和重写 方法的重载 当前方法名相同&#xff0c;但是参数类型不同&#xff0c;发生重载 类比数学函…