shibing624/MedicalGPT

MedicalGPT: Training Your Own Medical GPT Model with ChatGPT Training Pipeline. 训练医疗大模型,实现了包括增量预训练(PT)、有监督微调(SFT)、RLHF、DPO、ORPO、GRPO。

解决的问题

MedicalGPT 提供了一个全面的训练流水线,用于创建领域特定的大规模语言模型,特别针对医疗行业。它简化了将通用大语言模型转变为专业医疗助手的过程,为训练生命周期的每个阶段(从初始知识注入到人类偏好对齐)提供工具支持。

工作原理

该项目基于 ChatGPT 的训练方法,实现了一个多阶段训练流水线:

  1. 继续预训练(PT): 通过在海量医疗文档上训练,注入领域特定知识。
  2. 监督微调(SFT): 使用精心筛选的问答对,使模型具备遵循指令的行为。
  3. 对齐/偏好优化: 使用多种可用方法优化模型行为:
    • RLHF: 两步过程,包括奖励建模(RM)和强化学习(PPO/RLOO)。
    • DPO(直接偏好优化): 无需独立奖励模型,直接基于人类偏好优化模型。
    • ORPO: 将 SFT 与对齐合并为一步,减少灾难性遗忘。
    • GRPO: 使用基于规则的奖励训练推理链。
    • OPD(在线策略蒸馏): 从更强的教师模型中蒸馏知识。

此外,该项目支持 Agent 微调,通过在对话模板中引入 function_callobservation 等特定角色,使模型能够学习函数调用(工具使用)。

适用人群

  • 希望建立专业医疗 LLM 的 AI 研究人员和开发者。
  • 希望在自有数据集上实现 DPO、GRPO 或 RLHF 等高级对齐技术的开发者。
  • 需要能够通过函数调用与外部工具交互的医疗领域模型的组织。

亮点

  • 全流程流水线: 覆盖 PT、SFT、RLHF、DPO、ORPO、GRPO 和 OPD。
  • 广泛模型支持: 兼容 Llama-3、Qwen-2.5、Mixtral 等多种模型。
  • Agent 能力: 内置支持训练模型执行函数调用。
  • 灵活训练: 支持全参数微调、LoRA 和 QLoRA,适应不同硬件条件。
  • RAG 集成: 包含 ChatPDF 演示,支持基于知识库文件的检索增强生成(RAG)。

相关

  • 项目
  • 项目
  • 项目
  • 项目