用自己电脑部署大模型,私有化,很香!

这段时间一直在研究大语言模型私有部署的相关内容,相信大家也非常的感兴趣。

到目前为止,其实还是有很多的开源模型,其实大家去 GitHub Trending 上看看,就能够发现很多。

今天也是手把手地教大家怎么在自己的电脑上部署一个大语言模型。

当然这里我说下,我的电脑是一台 MacBook Pro ,M1 Pro 芯片,32G 内存+1TB 存储。

其实对于 m芯片或者 intel 芯片或者显卡,修改的地方并不多。所以这几个都大差不差。

这次部署的是什么模型呢?

https://github.com/THUDM/ChatGLM3

上面是他们的开源地址,现在也有 4.7k 的 star 了,非常适合小白用户来部署。

可以看到他们的简介:ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的新一代对话预训练模型。ChatGLM3-6B 是 ChatGLM3 系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上。

这里着重说了部署门槛低,确实是低,大家往下看就知道了。

首先,直接把他们代码拿下来:

git clone https://github.com/THUDM/ChatGLM3

然后进入到ChatGLM3

cd ChatGLM3

直接用 pip install

pip install -r requirements.txt

官方推荐:其中 transformers 库版本推荐为 4.30.2,torch 推荐使用 2.0 及以上的版本,以获得最佳的推理性能。

当然我们不需要管太多,先安装好这些。

另外在这里我的 Python 版本是 3.9 的,大家最好版本高一点。

除了把代码弄下来,我们还需要去下载模型。

在 GitHub 地址中,有提供ChatGLM3-6B、ChatGLM3-6B-Base、ChatGLM3-6B-32K三种。大家可以按需取。

但是这里需要注意,如果你的机器一般,最好先部署ChatGLM3-6B,别逞强,我也是部署的这个。

下载模型之前,先下载好 Git lFS,这玩意就是 git,只不过是支持大文件下载的。

下面是安装方法:

https://docs.github.com/zh/repositories/working-with-files/managing-large-files/installing-git-large-file-storage

安装完之后,我们在项目目录下建一个THUDM文件夹,然后进入THUDM文件夹。最后我们执行下面的命令:

git clone https://huggingface.co/THUDM/chatglm3-6b

此时就会开始下载了。

如果你觉得下载的慢,可以使用国内的 modelscope

git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git

准备好了之后,其实就基本上完成了。

ChatGLM3提供了很多种模式给我们使用,例如综合 Demo、代码调用、openai API部署

这里我们来讲下代码调用:

>>> from transformers import AutoTokenizer, AutoModel
>>> tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True)
>>> model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True, device='cuda')>>> model = model.eval()
>>> response, history = model.chat(tokenizer, "你好", history=[])
>>> print(response)
>你好👋!我是人工智能助手 ChatGLM3-6B,很高兴见到你,欢迎问我任何问题。
>>> response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)
>>> print(response)

其中“THUDM/chatglm3-6b”是模型文件的位置,我们只需要指向到下载的模型文件即可。

这执行之前你可能会遇到一些问题,例如你是 mac的M 芯片 的话,你执行上面的代码会报错。此时我们需要使用mps后端来实现,下面是官方的说明:

对于搭载了 Apple Silicon 或者 AMD GPU 的 Mac,可以使用 MPS 后端来在 GPU 上运行 ChatGLM3-6B。需要参考 Apple 的 官方说明 安装 PyTorch-Nightly(正确的版本号应该是2.x.x.dev2023xxxx,而不是 2.x.x)。

目前在 MacOS 上只支持从本地加载模型。将代码中的模型加载改为从本地加载,并使用 mps 后端:

model = AutoModel.from_pretrained("your local path", trust_remote_code=True).to('mps')

加载半精度的 ChatGLM3-6B 模型需要大概 13GB 内存。内存较小的机器(比如 16GB 内存的 MacBook Pro),在空余内存不足的情况下会使用硬盘上的虚拟内存,导致推理速度严重变慢。

除此之外还有好几种玩法,例如多张显卡部署,CPU部署等方法:https://github.com/THUDM/ChatGLM3#%E4%BD%8E%E6%88%90%E6%9C%AC%E9%83%A8%E7%BD%B2

图片

这里给大家提醒下,尽量在配置较高的机器上来执行,不然回答的速度会比较慢。

我的电脑是一台 MacBook Pro ,M1 Pro 芯片,32G 内存+1TB 存储。每次对话 1500 token,大概需要 10s 才能回复,这个速度我本身还算满意,当然如果你是用来大量使用,那么这个速度肯定不行。

需要去租用一些配置较高的显卡机器。

对了,如果你想要让部署的模型像 OpenAI 接口一样的,你可以执行下面的代码:

cd openai_api_demo
python openai_api.py

当然,你也是需要进入openai_api.py 去修改你运行大模型的方式。具体的参考上面发的链接。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Qt—贪吃蛇项目(由0到1实现贪吃蛇项目)

用Qt实现一个贪吃蛇项目 一、项目介绍二、游戏大厅界面实现2.1完成游戏大厅的背景图。2.2创建一个按钮,给它设置样式,并且可以跳转到别的页面 三、难度选择界面实现四、 游戏界面实现五、在文件中写入历史战绩5.1 从文件里提取分数5.2 把贪吃蛇的长度存入…

如何断点调试opencv源码

分几个步骤: 1、下载opencv-4.10.0-windows.exe https://opencv.org/releases/ 2、想要调试opencv的源码,只需要将这两个文件拷贝到我们自己项目的可执行文件的同级目录内即可。 完成拷贝后,直接在vs工程中打断点F11进行单步调试&#xff…

ASP.NET MVC-简单例子-配置日志文件-log4net

环境: win10,SQL Server 2008 R2 安装 使用NuGet 安装时发现报错并无法安装: 现有 packages.config 文件中检测到一个或多个未解析包依赖项约束。必须解析所有依赖项约束以添加或更新包。如果正在更新这些包,则可忽略此消息&am…

2024-6-28 石群电路-32

2024-6-28,星期五,20:05,天气:雨,心情:晴。今天没有什么事情发生,继续学习,加油!!!!! 1. 对称三相电路的计算&#xff08…

算法基础--------【图论】

图论(待完善) DFS:和回溯差不多 BFS:进while进行层序遍历 定义: 图论(Graph Theory)是研究图及其相关问题的数学理论。图由节点(顶点)和连接这些节点的边组成。图论的研究范围广泛,涉及路径、…

学习笔记——动态路由——OSPF(OSPF协议的工作原理)

八、OSPF协议的工作原理 1、原理概要 (1)相邻路由器之间周期性发送HELLO报文,以便建立和维护邻居关系 (2)建立邻居关系后,给邻居路由器发送数据库描述报文(DBD),也就是将自己链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器…

【PHP项目实战训练】——后台-RBAC权限管理原理

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

Minecraft玩家设计专用程序 让Google地球可以在游戏中探索

在 Minecraft 中以真实的比例建造真实的地方并不是什么新鲜事。不过,康奈尔理工学院的一名毕业生最近展示了一种方法,可以自动生成一个忠实的 Minecraft 地球,并定期更新。他将在 7 月底举行的 SIGGRAPH 2024 大会上公布该项目的成果。 在七月…

确认偏差:金融市场交易中的隐形障碍

确认偏差,作为一种深刻影响交易员决策与表现的心理现象,其核心在于个体倾向于寻求与既有信念相符的信息,而自动过滤或轻视与之相悖的资讯。这种认知偏见严重扭曲了交易者的决策过程,导致他们过分依赖符合既有观念的数据&#xff0…

鸿蒙开发设备管理:【@ohos.deviceInfo (设备信息)】

设备信息 说明: 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import deviceInfo from ohos.deviceInfo属性 系统能力:以下各项对应的系统能力均为SystemCapability.Startup.S…

构建一个让世界瞩目的海外短剧生态系统

构建一个让世界瞩目的海外短剧生态系统是一个复杂但富有挑战性的任务。旨在创建一个全球范围内具有影响力的海外短剧生态系统: 一、市场定位与战略规划 1、深入了解目标市场:研究海外观众的观看习惯、喜好和付费意愿,以制定有针对性的市场策…

3d模型里地毯的材质怎么赋予?---模大狮模型网

在进行3D建模时,赋予地毯逼真的材质是营造现实感和增强场景氛围的重要步骤。模大狮将介绍在常见的3D建模软件中,如何有效地为地毯赋予各种材质,以及一些实用的技巧和注意事项。 一、选择合适的地毯材质 在3D建模中,地毯的材质选择…

OOXML入门学习

进入-飞入 <par> <!-- 这是一个并行动画序列的开始。"par"代表并行&#xff0c;意味着在这个标签内的所有动画将同时开始。 --><cTn id"5" presetID"2" presetClass"entr" presetSubtype"4" fill"hold&…

MS5208T/MS5208N——2.7V 到 5.5V、 12Bit、8 通道轨到轨输出数模转换器

MS5208T/MS5208N 是一款 12Bit 、 8 通道输出的电压型 DAC &#xff0c;内部集成上电复位电路、轨到轨输出 Buffer 。接口采用 三线串口模式&#xff0c;最高工作频率可以到 40MHz &#xff0c;兼容 SPI 、 QSPI 、 DSP 接口和 Microwire 串口。输出接到一个轨到轨…

“AI+”时代,群核科技进化成了家居设计打工人理想的样子

6月&#xff0c;2024世界智能产业博览会上&#xff0c;人工智能大模型展团以“AI大模型驱动新质生产力”为主题&#xff0c;各家企业纷纷提到了基于不同行业场景的应用。 这透露出当前的行业发展趋势强调大模型落地核心行业&#xff0c;产生业务价值。其中&#xff0c;“AI图像…

餐饮点餐的简单MySQL集合

ER图 模型图&#xff08;没有进行排序&#xff0c;混乱&#xff09; DDL和DML /* Navicat MySQL Data TransferSource Server : Mylink Source Server Version : 50726 Source Host : localhost:3306 Source Database : schooldbTarget Server Type …

uniapp 使用cavans 生成海报

uniapp 使用cavans 生成海报 npm install qs-canvas1.创建 useCanvas.js /*** Shopro qs-canvas 绘制海报* version 1.0.0* author lidongtony* param {Object} options - 海报参数* param {Object} vm - 自定义组件实例*/ import QSCanvas from qs-canvas; import { getPos…

最小生成树拓展应用

文章目录 最小生成树拓展应用理论基础 题单1. [新的开始](https://www.acwing.com/problem/content/1148/)2. [北极通讯网络](https://www.acwing.com/problem/content/1147/)3. [走廊泼水节](https://www.acwing.com/problem/content/348/)4. [秘密的牛奶运输](https://www.ac…

Verystar费芮荣获腾讯游戏人生平台2023年度“最佳营销服务商”奖项

先导&#xff1a;Verystar费芮是电通旗下拥有领先的技术支持、数据驱动的客户体验管理 (CXM) 公司&#xff0c; 6月27日腾讯游戏人生合作伙伴大会&#xff0c;宣布 Verystar费芮连续四年荣获“最佳营销服务商”奖项。 6月27日&#xff0c;2024年腾讯游戏人生合作伙伴大会在深圳…

【知识图谱系列】Neo4j使用Py2neo与python进行链接

目录 一、安装py2neo 二、打开Neo4j 三、使用Python操作Neo4j 一、安装py2neo pip install --upgrade py2neo -i https://pypi.tuna.tsinghua.edu.cn/simple 可以先阅读下文档&#xff1a;https://py2neo.org/v4/index.html 这个文档里有好多关于这个工具包的API介绍&#x…