项目介绍:MedicalGPT
MedicalGPT是一个专注于医疗领域的大型语言模型(GPT)项目,旨在通过ChatGPT的训练管道实现包括增量预训练、有监督微调、基于人类反馈的强化学习(RLHF)和直接偏好优化(DPO)等多个阶段的训练。该项目的目标是开发适用于医疗行业的先进自然语言处理能力,提升医疗问答、诊断辅助等场景的智能化程度。
项目背景
在医疗行业中,信息的准确传递和理解至关重要。借助语言模型的强大能力,MedicalGPT希望提供一种自动化解决方案,帮助医生、病人及相关从业人员获取和传递关键信息,提高医疗工作效率。
项目特色
训练流程
MedicalGPT的训练流程分为多个阶段:
-
增量预训练(Continue PreTraining):通过在海量的医疗文本上执行二次预训练,使模型能够更好地适应医学语言和术语。
-
有监督微调(Supervised Fine-tuning):使用构建的指令微调数据集,对模型进行精细调整,以便更准确地理解和响应用户输入。
-
强化学习与偏好优化:
- RLHF(Reinforcement Learning from Human Feedback):模型通过人类反馈进行强化学习,主要依靠奖励模型对生成的文本进行评估和优化。
- DPO(Direct Preference Optimization):直接优化语言模型行为,简化了RLHF的复杂性,使模型更易于训练。
-
ORPO:一种无需参考模型的优化方法,通过同时学习指令遵循和满足人类偏好的能力来进一步提升模型性能。
已发布模型
- Ziya-LLAMA 13B 医疗版:在大规模中英文医疗数据集上进行微调,提升了医疗问答效果。
- Vicuna-Baichuan 13B Chat:基于多语言数据集进行多轮对话的微调,改进了日常及医疗问答能力。
使用与安装
使用者可以通过以下步骤安装和使用MedicalGPT:
-
克隆代码库并安装依赖:
git clone https://github.com/shibing624/MedicalGPT cd MedicalGPT pip install -r requirements.txt --upgrade
-
启动交互式界面,提供基于Gradio的Web服务,方便用户输入问题并获取模型回答。
硬件需求
MedicalGPT的训练和推理需要一定的硬件资源,根据不同的模型和训练方法,显存需求有所不同。对于LoRA等模块,显存要求显著降低,适合在更广泛的设备上运行。
未来展望
MedicalGPT计划持续优化其模型架构和训练流程,以更好地满足医疗行业的需求。未来的版本将继续提高模型的准确性、运行效率和可解释性,为医疗智能化发展贡献一份力量。
MedicalGPT期待与更多研究者和开发者进行合作,共同推动医疗领域的技术革新。