【AIGC】一、本地docker启动私有大模型

news/2024/7/24 1:41:40 标签: docker, 容器, 运维

本地docker启动私有大模型

  • 一、最终效果
    • 中英文对话
    • 生成代码
  • 二、资源配置
  • 三、搭建步骤
    • 启动docker容器
    • 登录页面
      • 首次登录请注册
      • 登录后的效果
    • 配置模型
      • 尝试使用
      • 选择模型选项
      • 下载模型
      • 选择适合的模型开始下载
    • 试用效果
      • 返回首页选择模型
      • 中英文对话
      • 生成代码
  • 四、附录
    • 资源监控
  • 五、参考网站:

一、最终效果

中英文对话

在这里插入图片描述

生成代码

在这里插入图片描述

二、资源配置

本文选择的模型运行内存需要 4G,因此宿主机建议内存大于8G,CPU建议 6 核以上;
参考博主该mac配置可以相对流畅运行。只需要 CPU资源,不需要 GPU。
在这里插入图片描述

三、搭建步骤

docker_11">启动docker容器

采用open-webui启动一个大模型的交互页面

docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama

由于ghcr.io/open-webui/open-webui:ollama是托管在境外,速度较慢,因此博主把该镜像搬迁到了阿里云。

docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always registry.cn-beijing.aliyuncs.com/xihuanyuyee/xihuanyuye:open-webui-ollama

登录页面

输入地址

http://localhost:3000

首次登录请注册

在这里插入图片描述

登录后的效果

在这里插入图片描述
是不是非常酷炫,一个私有的大模型平台就似乎ok了。

配置模型

尝试使用

但是其实这时候系统还不能使用,例如我们尝试输入问题。
are u ok?
在这里插入图片描述
系统报错未选定模型。

选择模型选项

左上角选定模型的下拉菜单,发现为空。
在这里插入图片描述

下载模型

在这里插入图片描述
操作步骤

step1 点击用户名处,打开配置菜单
step2 点击admin panel,打开配置面板
step3 点击setting,打开配置页面tab
step4 点击 modle选项,打开模块下载页面
step5 输入模型参数版本
step6 点击下载按钮,开始下载

选择适合的模型开始下载

根据你的机器资源情况,你可以选择运行基础版的Meta Llama 3 8B或更大型的Meta Llama 3 70B,但请注意,你需要有足够的内存来在本地运行这些大语言模型。我在一台配备64 GB RAM的M1 Max上测试了Meta Llama 3 70B,性能表现非常好。

模型名称下载版本号需要内存
Meta Llama 3 8Bllama3:8b4.7 GB
Meta Llama 3 70Bllama3:70b40 GB

下载过程可能会根据你的网络速度耗时一些。
在这里插入图片描述
操作步骤

step1 输入模型版本参数llama3:8b
step2 点击下载按钮
step3 查看下载进度

亲测当前国内网络可以直接下载,如果下载失败,可以重试一下试试。

试用效果

返回首页选择模型

在这里插入图片描述

中英文对话

在这里插入图片描述

生成代码

在这里插入图片描述
是不是非常有成就感!大模型之路从此开启!

四、附录

资源监控

在这里插入图片描述
在输入交互信息hello后,监控后台资源。本机是采用了虚拟机启动,因此可以看到cpu已经满载了。响应也特别慢。
在这里插入图片描述

五、参考网站:

苹果Mac用户的福音:本地运行Meta Llama 3的终极指南
open-webui


http://www.niftyadmin.cn/n/5546891.html

相关文章

idea推送到gitee 401错误

在idea上推送时遇到这样的问题,解决方法如下: 在https://的后面加上 用户名:密码 然后再提交就ok啦!

负载均衡技术怎么实现的,负载均衡策略

目录 负载均衡技术怎么实现的 负载均衡技术的实现方式 举例说明 负载均衡策略 1. 轮询(Round Robin) 2. 加权轮询(Weighted Round Robin) 3. 最少连接数(Least Connections) 4. 响应时间(Response Time) 总结 负载均衡技术怎么实现的 负载均衡技术主要通过多种…

ADOQuery 查询MSSQL存储过程一个莫名其妙的错误;

在 SSMS 中执行完成正常的的存储过程。 也能正常的返回想要的数据,,然后通过 ADO 查询时,总是提法 某 字段不存在的问题; 此问题困扰了一天。 例如(当然,实际数据结构比下面举例的复杂)&…

C语言笔记28 •顺序表经典算法OJ题•

1.删除数组中指定的元素 //算法实现 int removeElement(int* nums, int numsSize, int val) { int src 0;//nums[src] val src int dst 0;///nums[src] ! val src dst while(src< numsSize) { if (nums[src] val) { src; …

网站更新改版了

✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a;Leo杂谈 ✨特色专栏&#xff1a;MySQL学…

禅道二次开发——禅道zentaoPHP框架扩展机制——对模型层(model)扩展

model为模型方法&#xff0c;主要用来处理各种数据的查询、更新。model的扩展分为三种方式&#xff0c;一种是直接新增或者覆盖方法&#xff0c;一种是通过钩子来实现&#xff0c;第三种则是完全定义一个新的类&#xff0c;下面分别来讲述下各自实现的机制。 一、直接新增或者…

【Go】函数的使用

目录 函数返回多个值 init函数和import init函数 main函数 函数的参数 值传递 引用传递&#xff08;指针&#xff09; 函数返回多个值 用法如下&#xff1a; package mainimport ("fmt""strconv" )// 返回多个返回值&#xff0c;无参数名 func Mu…

suricata7 rule格式

suricata 7.0.5 suricata rule由三部分组成&#xff0c; action, header, options action,决定当前规则匹配上后需要执行的动作header,定义当前规则的协议&#xff0c;IP地址&#xff0c;端口&#xff0c;方向options,定义了具体的规则 一、 action 合法的action值有&#x…