ChatGLM3-6b大模型在 ModelWhale 平台的部署推理教程

项目介绍

本教程主要针对最新的ChatGLM3-6b模型进行部署和测试,该模型相较于2代模型有了全方位的提升,值得一提的是支持自定义工具的能力。后续会持续更新ChatGLM3-6b微调的教程、ChatGLM3-6b与工具的联动教程。

环境介绍

计算资源:V100 Tensor Core GPU
镜像:Pytorch 2.0.1 Cuda11.7 Python3.10

官方注:ModelWhale GPU机型需要从云厂商拉取算力资源,耗时5~10min,且会预扣半小时资源价格的鲸币。如果资源未启动成功,预扣费用会在关闭编程页面后五分钟内退回,无需紧张,如遇问题欢迎提报工单,客服会及时处理。

一、环境准备

# 确认GPU型号与显存大小
!nvidia-smi
Fri Nov  3 09:51:06 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.129.06   Driver Version: 470.129.06   CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla V100-SXM2...  Off  | 00000000:00:09.0 Off |                    0 |
| N/A   46C    P0    26W / 300W |      0MiB / 32510MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
# 检查模型文件正确挂载
!ls -lh /home/mw/input/chatglm3_6b6338
total 12G
-rw-r--r-- 1 mw root  1.3K Nov  3 09:09 config.json
-rw-r--r-- 1 mw root  2.3K Nov  3 09:09 configuration_chatglm.py
-rw-r--r-- 1 mw root  1.5K Nov  3 09:09 gitattributes.txt
-rw-r--r-- 1 mw root   55K Nov  3 09:09 modeling_chatglm.py
-rw-r--r-- 1 mw root  4.1K Nov  3 09:09 MODEL_LICENSE.txt
-rw-r--r-- 1 mw root  1.8G Nov  3 09:09 pytorch_model-00001-of-00007.bin
-rw-r--r-- 1 mw root  1.9G Nov  3 09:09 pytorch_model-00002-of-00007.bin
-rw-r--r-- 1 mw root  1.8G Nov  3 09:09 pytorch_model-00003-of-00007.bin
-rw-r--r-- 1 mw root  1.7G Nov  3 09:09 pytorch_model-00004-of-00007.bin
-rw-r--r-- 1 mw root  1.9G Nov  3 09:09 pytorch_model-00005-of-00007.bin
-rw-r--r-- 1 mw root  1.8G Nov  3 09:09 pytorch_model-00006-of-00007.bin
-rw-r--r-- 1 mw root 1005M Nov  3 09:09 pytorch_model-00007-of-00007.bin
-rw-r--r-- 1 mw root   20K Nov  3 09:09 pytorch_model.bin.index.json
-rw-r--r-- 1 mw root   15K Nov  3 09:09 quantization.py
-rw-r--r-- 1 mw root  7.3K Nov  3 09:09 README.md
-rw-r--r-- 1 mw root   12K Nov  3 09:09 tokenization_chatglm.py
-rw-r--r-- 1 mw root   244 Nov  3 09:09 tokenizer_config.json
-rw-r--r-- 1 mw root  995K Nov  3 09:09 tokenizer.model
# 安装环境依赖
!pip install protobuf transformers==4.30.2 cpm_kernels torch>=2.0 gradio mdtex2html sentencepiece accelerate -i https://mirrors.cloud.tencent.com/pypi/simple

二、模型部署和推理

测试任务:测试ChatGLM3-6b对长文本的理解能力
任务场景:智能问诊

Prompt1:

疾病描述:一个月前在浙江大学第一附属医院测得血压150/110,做了彩超等检查排除肾上腺疾病,但生长因子和结合蛋白偏高,高血压未用药后恢复正常。之后复查,结合蛋白临界,生长因子略高,但是人生长激素明显升高11.7,曾做过垂体核磁 无异常。  
身高体重:162cm,49.4kg  
疾病:发现血压高、类胰岛素样生长因子偏高1个月,发现人生长激素偏高1天  
患病时长: 一个月已就诊医院科室:浙江大学第一附属医院  
用药情况:无  
过敏史:无  
既往病史:  
手术:无  
重大疾病:  
放化疗:无  
慢性疾病:浅表胃炎,今年2月查出回肠末端溃疡  
希望获得的帮助:曾做过垂体核磁,结果无异常。请问生长激素为何一个月会波动这么大?有没有其他可能原因?  

根据以上病例信息给出初步诊断和用药建议  
from transformers import AutoTokenizer, AutoModel
# 从加载的模型路径中导入模型
tokenizer = AutoTokenizer.from_pretrained("/home/mw/input/chatglm3_6b6338", trust_remote_code=True)
model = AutoModel.from_pretrained("/home/mw/input/chatglm3_6b6338", trust_remote_code=True).half().cuda()
# 进入评估模式
model = model.eval()
# 传入prompt
prompt = '疾病描述:一个月前在浙江大学第一附属医院测得血压150/110,做了彩超等检查排除肾上腺疾病,但生长因子和结合蛋白偏高,高血压未用药后恢复正常。之后复查,结合蛋白临界,生长因子略高,但是人生长激素明显升高11.7,曾做过垂体核磁 无异常。身高体重:162cm,49.4kg疾病:发现血压高、类胰岛素样生长因子偏高1个月,发现人生长激素偏高1天患病时长: 一个月已就诊医院科室:浙江大学第一附属医院用药情况:无过敏史:无既往病史:手术:无重大疾病:放化疗:无慢性疾病:浅表胃炎 今年2月查出回肠末端溃疡 (2023-08-22填写)希望获得的帮助:曾做过垂体核磁,结果无异常。请问生长激素为何一个月会波动这么大?有没有其他可能原因?根据以上病例信息给出初步诊断和用药建议'
response, history = model.chat(tokenizer, prompt, history=[])
print(response)
Loading checkpoint shards:   0%|          | 0/7 [00:00<?, ?it/s]


根据您提供的病例信息,患者在一个月前首次发现血压升高,并经过检查排除肾上腺疾病。之后复查时,结合蛋白处于临界水平,生长因子略高,但人生长激素明显升高11.7。结合病史和检查结果,我们可以做出以下初步诊断:

1. 高血压:患者发现血压高,且血压未用药后恢复正常,可能存在持续性高血压的情况。
2. 生长激素升高:患者人生长激素偏高,可能存在生长激素分泌过多或分泌异常的情况。
3. 回肠末端溃疡:患者今年2月查出回肠末端溃疡。

根据以上病史和检查结果,可能的病因包括:

1. 生长激素分泌过多:可能由于垂体肿瘤、甲状腺功能亢进等原因引起。
2. 分泌异常:可能由于生长激素分泌的调节因子异常,如生长激素受体异常、生长激素受体的基因变异等。
3. 回肠末端溃疡:可能与胃酸分泌过多、胃黏膜的保护作用减弱等因素有关。

针对您的病情,建议您到专业医院进行进一步检查,明确诊断,并根据检查结果制定相应的治疗方案。在治疗期间,应注意观察血压、生长激素水平等指标的变化,及时调整治疗方案。同时,应保持良好的生活习惯,低盐、低脂饮食,保持良好的心理状态,以促进病情恢复。

Prompt2:

疾病描述:性生活之后有的炎症,会不会是什么病原体引起的  
身高体重:168cm,57.1kg  
疾病:小腹不舒服尿完尿还是有尿意  
怀孕情况: 未怀孕  
过敏史:无  
希望获得的帮助:可不可以开一点口服药  

根据以上病例信息给出初步诊断和用药建议  
# 传入prompt
prompt = '疾病描述:性生活之后有的炎症,会不会是什么病原体引起的\n身高体重:168cm,57.1kg\n疾病:小腹不舒服尿完尿还是有尿意\n怀孕情况:未怀孕\n过敏史:无\n希望获得的帮助:可不可以开一点口服药\n根据以上病例信息给出初步诊断和用药建议'
response, history = model.chat(tokenizer, prompt, history=[])
print(response)
初步诊断:根据病史,症状主要表现为性生活后的小腹不适和尿频,可能是由生殖器官感染(如性传播疾病)引起的。

用药建议:建议您先去医院进行相关检查,如分泌物检查、尿常规等,以明确病原体。如果检查结果显示病原体感染,根据感染的具体类型和严重程度,医生会为您开具相应的口服药物治疗。常见的治疗药物包括抗生素、抗病毒药物等。

如果检查结果显示无病原体感染,可能是因为生殖器官炎症引起的,此时需要针对炎症进行治疗。一般会开具口服药物,如止痛药、抗生素等。

请您根据医生的建议进行治疗,并在治疗期间注意保持生殖器官的清洁,避免再次感染。同时,也建议您在性生活中注意使用安全套,以预防性传播疾病的发生。

Prompt3:

疾病描述:  
昨天下午放学回家后低烧,直至目前体温一直在37.4-38之间。今天下午去的社区医院,化验了血,做了胸片,显示白细胞高,c反应蛋白高,支原体感染弱阳性,目前在药店自己购买了希舒美阿奇霉素混悬剂,还没有吃  
身高体重:123cm,23kg  
疾病:支原体感染  
患病时长: 一周内  
已就诊医院科室:北京市朝阳区和平街社区卫生服务中心 全科  
过敏史:无  
既往病史:无  
希望获得的帮助:为什么白细胞和c反应蛋白同时高?只吃阿奇霉素可以么?具体怎么吃?  

根据以上病例信息给出初步诊断和用药建议  
# 传入prompt
prompt = '疾病描述:\n昨天下午放学回家后低烧,直至目前体温一直在37.4-38之间。今天下午去的社区医院,化验了血,做了胸片,显示白细胞高,c反应蛋白高,支原体感染弱阳性,目前在药店自己购买了希舒美阿奇霉素混悬剂,还没有吃\n身高体重:123cm,23kg  \n疾病:支原体感染 \n患病时长: 一周内  \n已就诊医院科室:北京市朝阳区和平街社区卫生服务中心 全科  \n过敏史:无\n既往病史:无 \n希望获得的帮助:为什么白细胞和c反应蛋白同时高?只吃阿奇霉素可以么?具体怎么吃?\n根据以上病例信息给出初步诊断和用药建议'
response, history = model.chat(tokenizer, prompt, history=[])
print(response)
初步诊断:根据您的病史、体征和化验结果,可能存在一种细菌感染,如肺炎球菌或金黄色葡萄球菌,这些细菌可能会导致白细胞和C反应蛋白升高。此外,支原体感染也是可能的。需要进一步的检查来确定具体的病原体。

用药建议:阿奇霉素是一种常用的抗生素,对于支原体感染有较好的治疗效果。但是,您在使用阿奇霉素之前,需要咨询医生,因为对于某些人,如肝肾功能不全的患者,阿奇霉素可能会有不良反应。同时,您也应该按照医生的建议,完成整个疗程的治疗。

此外,您也可以通过一些非药物的方法来缓解症状,如保持充足的休息,多喝水,保持良好的空气流通等。

建议您尽快就医,以便进行更详细的检查和治疗。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了部署chatglm2-6b模型,您需要按照以下步骤进行操作: 1. 首先,您需要安装一些必要的工具,如Python和Git。确保您已经正确安装了这些工具。 2. 接下来,您需要从HuggingFace下载chatglm2-6b的所有模型文件和配置文件。将这些文件放入一个名为"chatglm2-6b"的文件夹中。建议您手动下载并放入该文件夹。 3. 进入web_demo.py所在的文件夹。您可以使用终端或命令提示符进入该文件夹。 4. 激活chatglm2-6b环境。根据您的操作系统和环境设置,您可能需要运行相应的命令来激活chatglm2-6b环境。例如,对于conda环境,您可以使用"conda activate chatglm2-6b"命令。 5. 最后,执行"python web_demo.py"命令来运行模型。这将启动一个Web演示界面,您可以在其中测试和使用chatglm2-6b模型。 请注意,这只是部署chatglm2-6b模型的基本过程。具体的步骤可能会因您的操作系统、环境设置和个人偏好而有所不同。确保您按照相关文档或指南进行操作,并遇到问题时,可以参考相应的解决办法或寻求帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ChatGLM2-6B安装详解(Windows/Linux)及遇到的问题解决办法](https://blog.csdn.net/weixin_41529012/article/details/131456645)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [手把手带你linux部署清华大学大模型最新版 chaglm2-6b](https://blog.csdn.net/stay_foolish12/article/details/131437090)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值