🚀 ChatTCM-7B-SFT模型介紹
ChatTCM-7B-SFT是一個基於中醫領域的文本生成模型,通過全參數量有監督微調,使模型在中醫知識處理、臨床診斷等方面具備了強大的能力,有助於中醫典籍的理解與臨床實踐的應用。
📦 模型信息
屬性 |
詳情 |
模型類型 |
文本生成 |
基礎模型 |
SylvanL/ChatTCM-7B-Pretrain |
訓練數據 |
SylvanL/Traditional-Chinese-Medicine-Dataset-SFT |
許可證 |
apache-2.0 |
🚀 快速開始
模型微調情況
在2張A800 - 80G上,基於SylvanL/ChatTCM-7B-Pretrain,在llamafactory框架上,使用SylvanL/Traditional-Chinese-Medicine-Dataset-SFT進行了1個epoch的全參數量有監督微調(full Supervised Fine - tuning)。
微調後模型能力
在不出現明顯指令丟失或災難性遺忘的前提下,模型具備以下能力:
- 文言文翻譯能力:具有將文言文/古文翻譯為現代文的能力,以加強對於中醫典籍的理解與使用。
- 臨床診斷與推方能力:具有向主流派別執業醫生靠攏的臨床診斷邏輯與推方能力,可以理解輸入的患者情況並進行判斷與分析。
- 中醫知識問答能力:具有良好的中醫知識問答能力,可以針對中醫領域的知識點進行全面且可靠的解答。
- 中醫術語NLP能力:加強模型面向中醫術語的基礎nlp能力,可以更好的賦能如中醫命名實體識別、關係抽取、關聯性分析、同義實體消岐、拼寫檢查與糾錯等通用功能。
注意:模型並沒有進行任何identify的植入。
💻 使用示例
可選Instruction
將輸入的古文翻譯成現代文。
請為輸入的現代文找到其對應的古文原文與出處。
基於輸入的患者醫案記錄,直接給出你的證型診斷,無需給出原因。
基於輸入的患者醫案記錄,直接給出你的疾病診斷,無需給出原因。
基於輸入的患者醫案記錄,直接給出你認為的方劑中藥組成。
基於輸入的患者醫案記錄,直接給出你認為的【治療方案】{可多選}∈["中藥", "成藥", "方劑"],和【診斷】{可多選}∈["證型", "治法", "西醫診斷", "中醫診斷"]:
第一個epoch訓練數據
epoch 1:
"num_input_tokens_seen": 1649269888,
"total_flos": 3298213988794368.0,
"train_loss": 1.0691444667014194,
"train_runtime": 587389.2072,
"train_samples_per_second": 3.483,
"train_steps_per_second": 0.016
第一個epoch訓練損失圖

訓練命令示例
llamafactory-cli train \
--stage sft \
--do_train True \
--model_name_or_path {SylvanL/ChatTCM-7B-Pretrain} \
--preprocessing_num_workers 16 \
--finetuning_type full \
--template default \
--flash_attn auto \
--dataset_dir {dataset_dir} \
--dataset SFT_medicalKnowledge_source1_548404,SFT_medicalKnowledge_source2_99334,SFT_medicalKnowledge_source3_556540,SFT_nlpDiseaseDiagnosed_61486,SFT_nlpSyndromeDiagnosed_48665,SFT_structGeneral_310860,SFT_structPrescription_92896,_SFT_traditionalTrans_1959542.json,{BAAI/COIG},{m-a-p/COIG-CQIA} \
--cutoff_len 1024 \
--learning_rate 5e-05 \
--num_train_epochs 1.0 \
--max_samples 1000000 \
--per_device_train_batch_size 28 \
--gradient_accumulation_steps 4 \
--lr_scheduler_type cosine \
--max_grad_norm 1.0 \
--logging_steps 1 \
--save_steps 1000 \
--warmup_steps 0 \
--optim adamw_torch \
--packing False \
--report_to none \
--output_dir {output_dir} \
--bf16 True \
--plot_loss True \
--ddp_timeout 180000000 \
--include_num_input_tokens_seen True \
--deepspeed cache/ds_z3_offload_config.json
後續計劃
測試評估結果正在路上... 第二個epoch的模型也正在路上...