Python - 深度学习系列32 - glm2接口部署实践

说明

前阵子,已经对glm2的接口部署做了镜像化。本次的目的是:

  • 1 测试在隔了一阵子(忘记)的情况下,快速部署时是否有障碍,是不是足够方便
  • 2 在算网机环境下,能否快速的实现部署。仅考虑文件方式。(大部分租用机租用的是容器,少部分是真的租宿主机)

为啥不用glm3: 因为出现中英文混杂情况的概率较高。

内容

1 镜像方式

首先,找到脑图
在这里插入图片描述
注释里面缺少了容器的启动命令,这点很不方便。通过镜像后可以看到,里面一个是项目文件,一个是量化后的,模型文件夹,这个还是比较清晰的。

将命令补充,放到我的streamlit 网页下
在这里插入图片描述
假设我要做让大模型做一个公司简介,在4060Ti16G上运行,大约需要8S,约12.5Token/S。
在这里插入图片描述
比较有意思的是,我发现单个chatglm2运行,只会占到50%的功耗,所以可以开两个服务,这不会减少单个任务的执行时间,但可以把吞吐翻一倍。

然后我又试了下llm_assemble,这个是我做的集成多个不同大模型,包括本地的和线上的接口。仍然是缺少了服务的启动命令和调用示例。
在这里插入图片描述

2 文件方式

大多数租用算力机不支持docker,这点上AnyGPU有点例外,更像是租了一个宿主机给你。但是也有个问题,sshd的配置不会生效,这意味着你可以通过秘钥登录,但是无法禁止使用密码。所以要删除可能被撞破的用户,如 userdel -f git

将文件通过rsync或者scp(有些不允许安装任何软件,如deepln)。
在这里插入图片描述
总体上也还好,不算复杂。

我在AndyGPU上租了一张2080Ti实验,模型占用的显存不大,但是单服务似乎就占满了显卡(功率不满)。可能是老显卡架构的问题?
在这里插入图片描述
然后我在DeepLn上租了一张3090实验。DeepLn的网络非常不稳定,走web服务行不通。但是注册送30元额度还是挺好的。
在这里插入图片描述
所以这个状态下作为服务肯定是行不通的,甚至后来我用jupyter的时候,也总是时断时续的。最后我还是用文件上传的方式,在机器上实验。实测速度大约是4060Ti的1.3~1.5倍吞吐,和理论值差不多。
在这里插入图片描述
3090如果按¥1/hour计算,那么每生成一千条数据花费1元钱。

3 使用消息队列

假设,任务为输出企业简介,prompt + input + output ~ 1KB数据,处理时间按4s/req计算:

(4s也可以认为是一次对话输出的可接受时间,worker的数量可以视为是并发数)

条数数据量计算时间传输时间计算传输比
11KB4s0.01s400
10001MB4000s ~ 1hour10s-
1百万1GB4百万秒 ~ 50 days4万秒-

可以看出来这种任务是非常适合广域网分布式处理的。百万量级是一个较平常的任务量级,50天显然是不可接受的时长,如果我们要在1天内完成,那么就需要50张卡(4060Ti),如果使用4090的话,大约是3倍的效率,也要16台机。单机配8卡的话,需要2台机。

关键是worker的数量,大约会是50,甚至是100个。这时候单独去管理的话,数据的分发就不能手动了。而且租用算力机随时可能出问题,必须假设worker是非常不稳定的。

所以,在这种高计算传输比,且需要多个worker尽力支持的场景,我觉得用消息队列最合适。

这部分后续再写吧,另一个话题了。

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

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

相关文章

「每日跟读」英语常用句型公式 第9篇

「每日跟读」英语常用句型公式 第9篇 1. Go-to ___ 第一选择___ What’s your go-to snack when you’re hungry? (你饿的时候第一选择的零食是什么?) Who’s your go-to friend for advice? (你第一选择的朋友是谁来寻求建议?) Which is your go-t…

Python实现BOA蝴蝶优化算法优化BP神经网络回归模型(BP神经网络回归算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 蝴蝶优化算法(butterfly optimization algorithm, BOA)是Arora 等人于2019年提出的一种元启发式智能算…

智慧矿山视频智能监控与安全监管方案

一、行业背景 随着全球能源需求的日益增长,矿业行业作为国民经济的重要支柱,其发展日益受到广泛关注。然而,传统矿山管理模式的局限性逐渐显现,如生产安全、人员监管、风险预警等方面的问题日益突出。因此,智慧矿山智…

降本增效,赋予利润弹性,李子园努力践行“以投资者为本”理念降本增效,业绩稳步提升

4月9日,李子园发布2023年年度报告,披露了2023年业绩及经营数据。 2023年,李子园实现营业收入约14.1亿元,同比增长0.6%;实现归属于上市公司股东的扣非净利润约2.19亿元,同比增长16.75%。 数据显示&#xff…

Dubbo 序列化

Dubbo 序列化 1、什么是序列化和反序列化 序列化(serialization)在计算机科学的资料处理中,是指将数据结构或对象状态转换成可取用格式(例如存成文件,存于缓冲,或经由网络中发送),…

内网穿透的应用-如何使用Docker本地部署Dify LLM结合内网穿透实现公网访问本地开发平台

文章目录 1. Docker部署Dify2. 本地访问Dify3. Ubuntu安装Cpolar4. 配置公网地址5. 远程访问6. 固定Cpolar公网地址7. 固定地址访问 本文主要介绍如何在Linux Ubuntu系统以Docker的方式快速部署Dify,并结合cpolar内网穿透工具实现公网远程访问本地Dify! Dify 是一款…

注意力机制篇 | YOLOv8改进之清华开源ACmix:自注意力和CNN的融合 | 性能速度全面提升

前言:Hello大家好,我是小哥谈。混合模型ACmix将自注意力机制和卷积神经网络进行整合,使其同时具有自注意力机制和卷积神经网络的优点。这是清华大学、华为和北京人工智能研究院共同发布在2022年CVPR中的论文。ACmix结合了自注意力机制和卷积神经网络的优势,以提高模型的性能…

记录Http访问服务接口出现 301 Moved Permanently

记录Http访问服务接口出现 301 Moved Permanently 一、项目背景 ​ 在A服务中 需要通过远程调用 B服务接口 获取数据。A项目与B项目部署在不同的服务接口中。 请求接口响应界面 ​ 在调用B项目的接口时,响应的数据一直为 301 Moved Permanently Html代码&#x…

Vue3 使用ElementUI 显示异常

element提供的样例不能正常显示,需要进行配置 1.npm install element-plus --save 2.main.js // main.ts import { createApp } from vue import ElementPlus from element-plus //全局引入 import element-plus/dist/index.css import App from ./App.vue const …

道可云文旅元宇宙平台:全面赋能文旅产业数字化转型

随着科技的迅猛发展,元宇宙、人工智能和虚拟数字人等技术逐渐成为推动社会进步的重要力量。在这一背景下,道可云文旅元宇宙平台以其独特的创新理念和前沿技术,为数字文博领域带来了革命性的变革。 道可云文旅元宇宙平台运用先进的元宇宙、人…

[2024年4月最新]Python安装教程

一、Python下载 1、进入Python官网 官网地址:https://www.python.org 2、点击【Downloads】展开后点击【Windows】跳转到下载python版本页面,选择"Stable Releases"稳定版本,我下载的是Python 3.10.10版本,所以找到【…

[xboard]real6410-6.1 移植kernel 5.4.272

文章目录 获取源码方法一方法二方法三了解S3C6410内核相关1 设备文件2 mach-文件3 plat-文件配置real6410编译镜像测试问题1获取源码 方法一 进入官网,如下界面,点击http, 再依次

IPV6的相关网络问题

问题 ​​​​​​​ 目录 问题 一.什么是NAT64转换 1.NAT64的工作原理 IPv6到IPv4转换 IPv4到IPv6的响应转换 2.NAT64的优点 3.NAT64的缺点 二.NAT64转换如何实现 1.工作原理 2.实现步骤 DNS查询转换(DNS64) 地址转换(NAT64&a…

BTI的启用与构建

BTI分支目标识别精讲与实践系列 思考 1、什么是代码重用攻击?什么是ROP攻击?区别与联系? 2、什么是JOP攻击?间接分支跳转指令? 3、JOP攻击的缓解技术?控制流完整性保护? 4、BTI下的JOP如何…

三行命令解决Ubuntu Linux联网问题

本博客中Ubuntu版本为23.10.1最新版本,后续发现了很多问题我无法解决,已经下载了另外一个版本22.04,此版本自带网络 一开始我找到官方文档描述可以通过命令行连接到 WiFi 网络:https://cn.linux-console.net/?p10334#google_vig…

Docker容器(六)网络配置与数据卷

一、高级网络配置 1.1概述 当 Docker 启动时,会自动在主机上创建一个 docker0 虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。 同时,Docker 随机分配一个本地未占用的私有…

构建第一个ArkTS之基本语法概述

在初步了解了ArkTS语言之后,我们以一个具体的示例来说明ArkTS的基本组成。如下图所示,当开发者点击按钮时,文本内容从“Hello World”变为“Hello ArkUI”。 图1 示例效果图 本示例中,ArkTS的基本组成如下所示。 图2 ArkTS的基本…

C++ 封装

1.封装 cpp认为万事万物都可以封装 封装将属性和行为作为一个整体,表现生活中的事物。 将属性和行为加以权限控制。 语法: class 类名{ 访问权限: 属性或者行为 } //学生类 class Student { public:void setName(string name) {m_name name;}vo…

人工智能技术创业机会有哪些?

💂 个人主页: 同学来啦🤟 版权: 本文由【同学来啦】原创、在CSDN首发、需要转载请联系博主 💬 如果文章对你有帮助,欢迎关注、点赞、收藏和订阅专栏哦 文章目录 🥭 一、城市治理🍎 二、社交创新&#x1f3…

如何申请苹果个人开发者账户

1、苹果手机下载Developer APP,登录后,账户-注册-支付688 2、查看邮箱,会有邮件提醒上传身份证正反面,上传成功后会有邮件回复 3、审核时间为2天,如果没回复,及时联系客服,秒回复 https://de…