shibing624/MedicalGPT
MedicalGPT: Training Your Own Medical GPT Model with ChatGPT Training Pipeline. 训练医疗大模型,实现了包括增量预训练(PT)、有监督微调(SFT)、RLHF、DPO、ORPO、GRPO。
解決的問題
MedicalGPT 提供一個全面的訓練流程,用於建立領域特定的大規模語言模型,特別針對醫療產業。它簡化了將通用型 LLM 轉換為專業醫療助理的過程,為訓練生命週期的每個階段(從初始知識注入到人類偏好對齊)提供工具支援。
工作原理
本專案基於 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)。
相關
- 專案
- 專案
- 專案
- 專案