README.md 3.69 KB
Newer Older
wangsen's avatar
wangsen committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 介绍
通用领域的大语言模型 (LLM),例如 ChatGPT,在遵循指令和产生类似人类响应方面取得了显著的成功,这种成功间接促进了多模态大模型的研究和发展,如通用领域的多模态大模型MiniGPT-4、mPLUG-Owl、Multimodal-GPT和LLaVA ,然而,此类多模态大模型却很少出现在医学领域的研究中,阻碍了相关研究发展。visual-med-alpaca虽然在医学多模态大模型方面做出了一些很有成效的工作,然而其数据为英文诊断报告,不利于促进中文领域医学多模态大模型的研究发展。为此,我们开发了XrayGLM以解决上述问题。XrayGLM在医学影像诊断和多轮交互对话上显示出了非凡的潜力。


# 模型结构
借助ChatGPT以及公开的数据集,构造了一个X光影像-诊断报告对的医学多模态数据集;把数据集分为TP和FN。

![Alt text](./images/image2.png)



# 算法原理
诊断数据集在VisualGLM-6B进行微调训练, 最后输出对胸片的询问结果

![Alt text](./images/image1.png)



# 环境配置
Docker(方式一)
推荐使用docker方式运行,提供拉取的docker镜像:

```
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dtk24.04.1-py3.10
docker run -dit --shm-size 80g --network=host --name=xrayglm --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root -v /opt/hyhal/:/opt/hyhal/:ro image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dtk24.04.1-py3.10 /bin/bash
docker exec -it xrayglm  /bin/bash
```

安装docker中没有的依赖:

```
pip install -r requirements.txt  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
MPU王荣胜's avatar
MPU王荣胜 committed
33

MPU王荣胜's avatar
MPU王荣胜 committed
34
35
```

wangsen's avatar
wangsen committed
36
Dockerfile(方式二)
MPU王荣胜's avatar
MPU王荣胜 committed
37

wangsen's avatar
wangsen committed
38
39
40
41
```
docker build -t xrayglm:latest .
docker run -dit --shm-size 80g --network=host --name=xrayglm --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root -v /opt/hyhal/:/opt/hyhal/:ro geneformer:latest /bin/bash
docker exec -it xrayglm   /bin/bash
MPU王荣胜's avatar
MPU王荣胜 committed
42

MPU王荣胜's avatar
MPU王荣胜 committed
43
44
```

MPU王荣胜's avatar
MPU王荣胜 committed
45

wangsen's avatar
wangsen committed
46
Conda(方式三)
MPU王荣胜's avatar
MPU王荣胜 committed
47

wangsen's avatar
wangsen committed
48
49
50
51
52
1.创建conda虚拟环境:

```
conda create -n xrayglm python=3.10
conda activate xrayglm 
MPU王荣胜's avatar
MPU王荣胜 committed
53
54
```

wangsen's avatar
wangsen committed
55
56
57
58
2.关于本项目DCU显卡所需的工具包、深度学习库等均可从光合开发者社区下载安装。
- [DTK 24.04.1](https://cancon.hpccube.com:65024/directlink/1/DTK-24.04.1/Ubuntu20.04.1/DTK-24.04.1-Ubuntu20.04.1-x86_64.tar.gz)
- [Pytorch 2.1](https://cancon.hpccube.com:65024/directlink/4/pytorch/DAS1.2/torch-2.1.0+das.opt1.dtk24042-cp310-cp310-manylinux_2_28_x86_64.whl)
- [DeepSpeed 0.12.3](https://download.sourcefind.cn:65024/directlink/4/deepspeed/DAS1.1/deepspeed-0.12.3+gita724046.abi1.dtk2404.torch2.1.0-cp310-cp310-manylinux_2_31_x86_64.whl)
MPU王荣胜's avatar
MPU王荣胜 committed
59
60


wangsen's avatar
wangsen committed
61
Tips:以上dtk驱动、torch等工具版本需要严格一一对应。
MPU王荣胜's avatar
MPU王荣胜 committed
62
63


wangsen's avatar
wangsen committed
64
3. 其它依赖库参照requirements.txt安装:
MPU王荣胜's avatar
MPU王荣胜 committed
65
66

```
wangsen's avatar
wangsen committed
67
68
69
python setup.py install
pip install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
```
MPU王荣胜's avatar
MPU王荣胜 committed
70

wangsen's avatar
wangsen committed
71
# 数据集
MPU王荣胜's avatar
MPU王荣胜 committed
72

wangsen's avatar
wangsen committed
73
```
MPU王荣胜's avatar
MPU王荣胜 committed
74

MPU王荣胜's avatar
MPU王荣胜 committed
75

wangsen's avatar
wangsen committed
76
```
MPU王荣胜's avatar
MPU王荣胜 committed
77

wangsen's avatar
wangsen committed
78
# 测试
MPU王荣胜's avatar
MPU王荣胜 committed
79

wangsen's avatar
wangsen committed
80
## 模型推理
MPU王荣胜's avatar
MPU王荣胜 committed
81

wangsen's avatar
wangsen committed
82
83
84
- [checkpoints-XrayGLM-300](https://huggingface.co/wangrongsheng/XrayGLM-300/tree/main)
- [visualglm-6b](http://113.200.138.88:18080/aimodels/visualglm-6b)
## cli推理
MPU王荣胜's avatar
MPU王荣胜 committed
85
86


wangsen's avatar
wangsen committed
87
根据需要修改预训练模型以及cli_demo.py中48行visualglm-6b模型的位置
MPU王荣胜's avatar
MPU王荣胜 committed
88

wangsen's avatar
wangsen committed
89
90
```
python cli_demo.py --from_pretrained checkpoints/checkpoints-XrayGLM-300 --prompt_zh '详细描述这张胸部X光片的诊断结果'
MPU王荣胜's avatar
MPU王荣胜 committed
91
92
93

```

wangsen's avatar
wangsen committed
94
95
96
97
98
## 精度

![Alt text](./images/image3.png)


MPU王荣胜's avatar
MPU王荣胜 committed
99
100


MPU王荣胜's avatar
MPU王荣胜 committed
101

wangsen's avatar
wangsen committed
102
# 应用场景
MPU王荣胜's avatar
MPU王荣胜 committed
103

wangsen's avatar
wangsen committed
104
医学   科研   胸片
MPU王荣胜's avatar
MPU王荣胜 committed
105

MPU王荣胜's avatar
MPU王荣胜 committed
106

MPU王荣胜's avatar
MPU王荣胜 committed
107

wangsen's avatar
wangsen committed
108
# 热点应用行业
MPU王荣胜's avatar
MPU王荣胜 committed
109

MPU王荣胜's avatar
MPU王荣胜 committed
110

wangsen's avatar
wangsen committed
111
科研   医院 
MPU王荣胜's avatar
MPU王荣胜 committed
112

wangsen's avatar
wangsen committed
113
114
115
116
117
118
119
120
121
122
123
# 源码仓库及问题反馈

```

```


# 参考资料

```
https://github.com/WangRongsheng/XrayGLM.git
MPU王荣胜's avatar
MPU王荣胜 committed
124
125

```
MPU王荣胜's avatar
MPU王荣胜 committed
126

MPU王荣胜's avatar
MPU王荣胜 committed
127

MPU王荣胜's avatar
MPU王荣胜 committed
128

MPU王荣胜's avatar
MPU王荣胜 committed
129