このプロジェクトのオープンソースChatGlm-6Bモデルは、微調整/命令微調整(指示調整)でした。医療知識グラフとGPT3.5 APIを使用して中国の医療指導データセットを作成し、これに基づいてChatGlm-6Bに微調整された指示を作成し、医療分野でのChATGLMのQ&A効果を改善しました。
同じデータに基づいて、Llamaモデルの医療版:Huatuoもトレーニングしました
更新:ChatGlmは非常に迅速に更新されるため、ChatGlmの公式微調整ソリューションを使用することをお勧めします:https://github.com/thudm/chatglm-6b/blob/main/ptuning/readme.md
最初に依存関係パッケージをインストールすると、Python Environmentは3.9+をお勧めします
pip install -r requirements.txt
訓練されたモデルパラメーターは、次のようにダウンロードできます。
| モデル名 | サイズ | モデルダウンロードアドレス |
|---|---|---|
| chatglm-6b-med | 約13.4GB | [baidu netdisk] [googledrive] |
環境がインストールされた後、インタラクティブテストを実行できます。
python infer.py
私たちは、主にCMEKGを指す、オープンで自立した中国の医療知識ベースを採用しました。医学知識ベースは、疾患、薬物、検査指標などを中心に構築されており、フィールドには合併症、高リスク因子、組織学的検査、臨床症状、薬物治療、補助治療などが含まれます。知識ベースの例は次のとおりです。
{"中心词": "偏头痛", "相关疾病": ["妊娠合并偏头痛", "恶寒发热"], "相关症状": ["皮肤变硬", "头部及眼后部疼痛并能听到连续不断的隆隆声", "晨起头痛加重"], "所属科室": ["中西医结合科", "内科"], "发病部位": ["头部"]}
GPT3.5インターフェイスを使用して、医療知識ベースを中心にQ&Aデータを構築し、知識を最大限に活用するためにさまざまな迅速なフォームを設定しました。
微調整命令のトレーニングセットデータの例は次のとおりです。
"问题:一位年轻男性长期使用可卡因,突然出现胸痛、呕吐、出汗等症状,经检查发现心电图反映心肌急性损伤,请问可能患的是什么疾病?治疗方式是什么?"
回答: 可能患的是心肌梗塞,需要进行维拉帕米、依普利酮、硝酸甘油、ß阻滞剂、吗啡等药物治疗,并进行溶栓治疗、低分子量肝素、钙通道阻滞剂等辅助治疗。此外需要及时停用可卡因等药物,以防止病情加重。"
命令の微調整データセットの品質は依然として限られており、将来的には反復が実行されます。同時に、医療知識ベースとデータセットの構築コードはまだ整理されており、ソートが完了した後にリリースされます。
https://github.com/thudm/chatglm-6bを参照し、ダウンロードしたモデルをmodelディレクトリに配置してください。
sh scripts/sft_medchat.sh
実際の状況に応じてバッチサイズとその他のハイパーパラメーターを調整してください。デフォルトは使用するパラメーターです。
独自のデータセットを使用して、命令調整/命令チューニングChatglmを続行したい場合は、 dataディレクトリのトレーニングセットと同様のファイル形式を作成できます。または、ChatGlm-Instruct-Tuningリポジトリを参照してください。
A100-SXM-80GBグラフィックスカードのトレーニングを行いました。経験によると、ビデオメモリをトレーニングするために32g以上を選択することをお勧めします。
| テスト入力 | chatglm-6b出力 | chatglm-6b-med出力 |
|---|---|---|
| 薬物使用またはアルコール消費により、グルタミルトランスペプチダーゼレベルは増加しますか? | 薬物の使用とアルコール消費は、肝臓や心臓への影響など、体の健康に悪影響を与える可能性があります。 アルコールは肝臓と心臓の機能を破壊する可能性があるため、アルコール飲料は肝臓の損傷や心臓病を引き起こす可能性があります。長期飲酒は、脂肪肝臓、肝硬変、心臓病などの健康上の問題にもつながる可能性があります。 薬物の使用は、肝臓と心臓に深刻な損傷を引き起こす可能性があり、肝臓線維症、肝硬変、心血管疾患などをもたらします。薬物使用は、精神障害、社会的撤退、暴力、犯罪にもつながる可能性があります。 したがって、それがアルコールであろうと薬物の使用であろうと、それは健康と過剰使用に悪影響を及ぼします。 | 感染、消化性潰瘍、感染、薬物副作用など、グルタミルトランスペプチダーゼの上昇には多くの理由があります。薬物使用やアルコール消費などの不健康な行動は、グルタミルトランスペプチダーゼの上昇につながる可能性があります。 |
| Xiao Liは最近、頻脈の症状を発症し、軽度の胸痛を伴いました。身体検査では、PR間隔が延長されており、T Wave LowおよびSTセグメントの異常を伴うことがわかりました。 | 申し訳ありませんが、私はあなたの質問がわかりません。あなたの質問にもっとよく答えることができるように、より多くのコンテキストまたはコンテキストを提供してください。ありがとう! | Xiao Liには頻脈の症状があり、胸痛が伴います。心筋症や冠状動脈硬化症などの心血管疾患があるかどうかを考慮する必要があります。心電図、血液検査、心臓超音波検査などを受けることをお勧めします。 |
| ...... | ...... | ...... |
Q:エラーValueError:130001がリストに含まれていません / valueError:150001がリストにありません
A:関連する依存関係の迅速な更新により、さまざまなバージョンがいくつかのバグにつながります
(1)エラーが150001のリストにない場合は、リポジトリを最新バージョンに更新してください
(2)エラーが130001のリストにない場合は、CB9D827をコミットしてバージョンにリポジトリを返済してください。リンクはhttps://github.com/scir-hi/med-chatglm/tree/CB9D82738021EC6F82B307D6031E8595A49DCB0000
Q:モデルの効果は限られています
A:ChatGlm独自のトレーニング戦略はオープンソースではないため、このリポジトリで提供される指導微調整トレーニング方法は、ChatGlmの基本機能にマイナスの影響を与える可能性があります。著作権やその他の考慮事項により、将来のモデルの反復はオープンソースモデルに焦点を当てます。
このプロジェクトは、ハルビン工科大学のソーシャルコンピューティングおよび情報検索センターのヘルスインテリジェンスグループであるWang HaochunとLiu Chiによって完了しました。インストラクターは、Zhao Sendong教授、Qin Bing教授、Li Ting教授です。
このプロジェクトは、次のオープンソースプロジェクトを参照しており、関連するプロジェクトと研究開発スタッフに感謝の気持ちを表明したいと思います。
このプロジェクトに関連するリソースは、学術研究のみであり、商業目的で厳密に禁止されています。サードパーティコードを含むパーツを使用する場合は、対応するオープンソースプロトコルに厳密に従ってください。モデルによって生成されるコンテンツは、モデルの計算、ランダム性、定量的精度損失などの要因の影響を受けます。このプロジェクトは、その精度を保証することはできません。このプロジェクトのデータセットのほとんどはモデルによって生成され、特定の医学的事実に準拠していても、実際の医療診断の基礎として使用することはできません。このプロジェクトは、モデルによるコンテンツ出力に対する法的責任を想定しておらず、関連するリソースと出力結果の使用から生じる可能性のある損失についても責任を負いません。
このプロジェクトのデータまたはコードを使用する場合は、参照を宣言してください
@misc{ChatGLM-Med,
author={Haochun Wang, Chi Liu, Sendong Zhao, Bing Qin, Ting Liu},
title = {ChatGLM-Med: 基于中文医学知识的ChatGLM模型微调},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {url{https://github.com/SCIR-HI/Med-ChatGLM}},
}