H3C平台部署chatGLM2-6B 且通过两块GPU调用

2023-11-08

H3C平台部署chatGLM2-6B 且通过两块GPU调用

文件上传

首先在github上下载chatGLM2-6B的参数文件和模型文件,简单来说是在github上搜索chatGLM2-6B,如下图所示。
图1
点击右侧CODE,下载ZIP,然后解压到新建文件夹:ChatGLM2。然后前往HuggingFace,同上述搜索方法搜索,下载模型文件,需注意,需要一个个点击下载,下载时不要缺项。然后将从HuggingFace上下载的文件,存入新建文件夹:model。然后将model文件夹存放在ChatGLM2目录下,最终文件目录如下图所示。
在这里插入图片描述
然后前往cli_demo.py文件中,将读取模型路径修改为model,修改区域如下图标红所示。
在这里插入图片描述
然后就做好了前期准备工作。然后将ChatGLM2上传至H3C平台。文件上传请参考《H3C高性能计算平台——Notebook容器使用实例》。

快速使用

在H3C平台打开已创建好的环境,如下图所示:
在这里插入图片描述
当我们打开后,进入notebook容器内部,点击Terminal。如下图所示。
在这里插入图片描述
然后进入如下页面。
在这里插入图片描述
敲入一个回车,页面产生#提示符,然后敲入bash,再回车。如下图所示。
在这里插入图片描述
在该命令行输入:conda activate chatGLMEnv
之后输入:python cli_demo.py即可运行chatGLM2-6B大模型,如下图所示。
在这里插入图片描述

详细部署

在将文件上传至H3C平台后,先打开Terminal,输入回车,bash回车。进入如下图所示页面。
在这里插入图片描述
在此页面输入:vim /etc/resolv.conf
在打开的文件中输入nameserver 8.8.8.8,nameserver 114.114.114.114。之后保存退出即可在H3C平台上使用网络服务。如下图所示。
在这里插入图片描述
然后即可安装anaconda3。建议换源。anaconda3部署教程:https://blog.csdn.net/weixin_44121966/article/details/122388365
在安装完anaconda3后,确保可以正常使用conda命令后,在root下执行:
conda create -n=chatGLMEnv python=3.10
创建完成该虚拟环境后,cd至上传文件夹的目录下,如下图所示:
 
上图可以看到,以及切换环境至chatGLMEnv。
在安装依赖前,需要先安装pytorch。输入以下命令:
conda install pytorch1.12.1 torchvision0.13.1 torchaudio==0.12.1 cudatoolkit=10.2 -c pytorch
然后输入命令:pip install -r requirements.txt
等待安装完毕。这一安装过程在pip没有换源的情况下很慢,笔者就等了很久,可能是笔者conda换源没有换到位导致等很久。但其实我们在安装requirements的时候,提示chatGLM2-6B需要2.0以上版本torch,所以他会把你下载的1.12卸载,然后安装2.0,但是你不安装1.12版本,transformer就无法安装。所以只能这样来。
安装完毕后调用如下命令前往cli_demo.py调用两块GPU:
vim cli_demo.py
然后添加如下图标红内容。
在这里插入图片描述
退出vim编辑器后,在命令行输入:python cli_demo.py
正常启动。
在这里插入图片描述

至此部署完毕。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

H3C平台部署chatGLM2-6B 且通过两块GPU调用 的相关文章

  • 如何在python中读取多个文件中的文本

    我的文件夹中有许多文本文件 大约有 3000 个文件 每个文件中第 193 行是唯一包含重要信息的行 我如何使用 python 将所有这些文件读入 1 个文本文件 os 模块中有一个名为 list dir 的函数 该函数返回给定目录中所有文
  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 如何使用包含代码的“asyncio.sleep()”进行单元测试?

    我在编写 asyncio sleep 包含的单元测试时遇到问题 我要等待实际的睡眠时间吗 I used freezegun到嘲笑时间 当我尝试使用普通可调用对象运行测试时 这个库非常有用 但我找不到运行包含 asyncio sleep 的测
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • 在循环中每次迭代开始时将变量重新分配给原始值(在循环之前定义)

    在Python中 你使用 在每次迭代开始时将变量重新分配给原始值 在循环之前定义 时 也就是说 original 1D o o o for i in range 0 3 new original 1D revert back to orig
  • IRichBolt 在storm-1.0.0 和 pyleus-0.3.0 上运行拓扑时出错

    我正在运行风暴拓扑 pyleus verbose local xyz topology jar using storm 1 0 0 pyleus 0 3 0 centos 6 6并得到错误 线程 main java lang NoClass
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • Abaqus 将曲面转化为集合

    我一直试图在模型中找到两个表面的中心 参见照片 但未能成功 它们是元素表面 面 查询中没有选项可以查找元素表面的中心 只能查找元素集的中心 找到节点集的中心也很好 但是我的节点集没有出现在工具 gt 查询 gt 质量属性选项中 而且我找不到
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • ExpectedFailure 被计为错误而不是通过

    我在用着expectedFailure因为有一个我想记录的错误 我现在无法修复 但想将来再回来解决 我的理解expectedFailure是它会将测试计为通过 但在摘要中表示预期失败的数量为 x 类似于它如何处理跳过的 tets 但是 当我
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • Nuitka 未使用 nuitka --recurse-all hello.py [错误] 编译 exe

    我正在尝试通过 nuitka 创建一个简单的 exe 这样我就可以在我的笔记本电脑上运行它 而无需安装 Python 我在 Windows 10 上并使用 Anaconda Python 3 我输入 nuitka recurse all h
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql

随机推荐

  • php curl 发起get和post网络请求.note

    curl介绍 curl是一个开源的网络链接库 支持http https ftp gopher telnet dict file and ldap 协议 之前均益介绍了python版本的pycurl http junyiseo com pyt
  • ClickHouse替换MySQL作为数仓APP层

    一 ClickHouse 是什么 二 业务问题 三 ClickHouse实践 四 遇到的坑 五 总结 一 ClickHouse 是什么 ClickHouse 是一个用于联机分析 OLAP 的列式数据库管理系统 DBMS 我们首先理清一些基础
  • 【转载】CNN模型复杂度(FLOPs、MAC)、参数量与运行速度

    备忘 作者写错了 1次乘加运算等于2次浮点运算 但在数值上正好反过来 即1 FLOPs 2 MACs 例如对于卷积运算的计算是 其MACs 参数m 输出尺寸 n 而FLOPs 2 MACs Nvidia团队论文里面写的是对的 2倍 CNN模
  • SQLServer导入导出excel及常见问题

    前几天考试系统导入导出学生信息 初次接触导入导出 为sqlserver和excel的数据传递方法之简和MS产品的高效兼容所震惊 但也遇到各种各样问题 在此介绍SQLServer导入导出excel方法及遇到的问题 SQLServer导出Exc
  • java 中Date日期类型

    4 日期相关 把1970年1月1日当做了时间原点 以毫秒值为单位 4 1 获得当前时间 System currentTimeMillis public class DateTest public static void main Strin
  • ifstream 和 ofstream 文件中读取和写入操作

    导读 ofstream是从内存到硬盘 ifstream是从硬盘到内存 其实所谓的流缓冲就是内存空间 在C 中 有一个stream这个类 所有的I O都以这个 流 类为基础的 包括我们要认识的文件I O stream这个类有两个重要的运算符
  • XGBoost和LightGBM的比较

    目录 1 XGBoost sgboost中树节点分裂时所采用的公式 xgboost的分裂步骤 xgboost总结 LightGBM 基于决策树算法的分布式梯度提升框架 LightGBM在模型的训练速度和内存方面的优化 LightGBM的le
  • arima模型 p q d 确定_【干货】时间预测之 ARIMA模型

    ARIMA 是 AutoRegressive Integrated Moving Average的简称 看起来很复杂 其实这个模型本身是多个模型的叠加或者说混合 AR 自相关模型 AutoRegressive MA 移动平均模型 Movin
  • Python显示目录的树形结构

    转自 http blog chinaunix net uid 21374062 id 5198995 html Python显示目录的树形结构 coding utf 8 仿Linux命令tree生成树形目录结构 并汇总当前目录下文件总算 A
  • pes2017服务器维护时间,PES2017授权详情与球场数据包发布时间

    East Dorsetshire AFC Bournemouth BOU Lancashire Claret Burnley BRN London FC Chelsea CHE South Norwood Crystal Palace CR
  • python:多维数组变一维数组

    python 多维数组变一维数组 b a flatten 将多维数组变为1维数组 具体代码如下 import numpy as np 1 随机生成一个4行3列的多维数组a a np random randn 4 3 print a prin
  • selenium自动化,更新到最新的chrome驱动

    很久没有做自动化了 最近想要熟悉下 发现之前的chrome驱动器与现在的chrome浏览器版本不匹配了导致报错 提示如下 raise exception class message screen stacktrace selenium co
  • (已解决)显卡(N卡)设置独显后,指定程序依旧使用集显渲染

    显卡 N卡 设置独显后 指定程序依旧使用集显渲染 设置流程如下 设置流程如下 1 打开 nvdia 控制面板 2 设置全局为独显 3 修改指定程序为独显 4 以上几步若无效 则按如下修改 选择对应的程序
  • Linux安装nginx

    Linux安装nginx 1 下载 2 准备目录 3 上传 解压 5 设置安装路径 如果 报错 gcc pcre 6 编译 7 安装 8 启动 9 其他命令 10 判断Nginx配置是否正确命令 11 开放nginx默认端口号80 12 访
  • 02_02_广度优先搜索(Breadth-First Search,BFS)

    广度优先搜索 Breadth First Search BFS 广度优先搜索 Breadth First Search BFS 介绍 是一种图遍历算法 其原理是逐层遍历图的节点 BFS从起始节点开始 先访问起始节点的所有邻居节点 然后再逐层
  • 【知识分享】关于建立GitHub个人博客的问题和解决办法

    前言 GitHub是可以共享 存储的平台 我们可以用它 1 管管自己代码 类似一个程序员专版的Onedrive 当然也不仅仅是代码 任何文件都支持 不少人用GitHub来写博客 也就是使用Github Pages服务 它会自动帮你记录代码的
  • Qt扫盲-QWidget理论使用总结

    QWidget理论使用总结 一 概述 二 顶层 控件 和子 控件 三 复合控件 四 自定义控件和绘制 五 大小提示和大小策略 六 事件 七 一组函数和属性 八 QWidget样式表 九 透明度和双缓冲 十 创建半透明窗口 一 概述 widg
  • Java中同一个文件里类和方法的引用

    Java中同一个文件里类和方法的引用 在项目开发时往往需要在同一个文件里创建几个类 并互相引用 但小白们搞不懂 所以我给大家讲解一下 目录 Java中同一个文件里类和方法的引用 1 权限修饰符 2 类的引用 1 注意修饰符 2 同文件引用
  • windows 各种消息

    win32 消息
  • H3C平台部署chatGLM2-6B 且通过两块GPU调用

    H3C平台部署chatGLM2 6B 且通过两块 调用 文件上传 首先在github上下载chatGLM2 6B的参数文件和模型文件 简单来说是在github上搜索chatGLM2 6B 如下图所示 点击右侧 下载 然后解压到新建文件夹 C