shibing624/MedicalGPT
MedicalGPT: Training Your Own Medical GPT Model with ChatGPT Training Pipeline. 训练医疗大模型,实现了包括增量预训练(PT)、有监督微调(SFT)、RLHF、DPO、ORPO、GRPO。
解决的问题
MedicalGPT 提供了一个全面的训练流水线,用于创建领域特定的大规模语言模型,特别针对医疗行业。它简化了将通用大语言模型转变为专业医疗助手的过程,为训练生命周期的每个阶段(从初始知识注入到人类偏好对齐)提供工具支持。
工作原理
该项目基于 ChatGPT 的训练方法,实现了一个多阶段训练流水线:
- 继续预训练(PT): 通过在海量医疗文档上训练,注入领域特定知识。
- 监督微调(SFT): 使用精心筛选的问答对,使模型具备遵循指令的行为。
- 对齐/偏好优化: 使用多种可用方法优化模型行为:
- RLHF: 两步过程,包括奖励建模(RM)和强化学习(PPO/RLOO)。
- DPO(直接偏好优化): 无需独立奖励模型,直接基于人类偏好优化模型。
- ORPO: 将 SFT 与对齐合并为一步,减少灾难性遗忘。
- GRPO: 使用基于规则的奖励训练推理链。
- OPD(在线策略蒸馏): 从更强的教师模型中蒸馏知识。
此外,该项目支持 Agent 微调,通过在对话模板中引入 function_call 和 observation 等特定角色,使模型能够学习函数调用(工具使用)。
适用人群
- 希望建立专业医疗 LLM 的 AI 研究人员和开发者。
- 希望在自有数据集上实现 DPO、GRPO 或 RLHF 等高级对齐技术的开发者。
- 需要能够通过函数调用与外部工具交互的医疗领域模型的组织。
亮点
- 全流程流水线: 覆盖 PT、SFT、RLHF、DPO、ORPO、GRPO 和 OPD。
- 广泛模型支持: 兼容 Llama-3、Qwen-2.5、Mixtral 等多种模型。
- Agent 能力: 内置支持训练模型执行函数调用。
- 灵活训练: 支持全参数微调、LoRA 和 QLoRA,适应不同硬件条件。
- RAG 集成: 包含 ChatPDF 演示,支持基于知识库文件的检索增强生成(RAG)。
相关
- 项目
- 项目
- 项目
- 项目