🚀 BioMistral: 医療分野向けのオープンソース事前学習大規模言語モデルのコレクション
BioMistralは、医療分野に特化したオープンソースの大規模言語モデルです。Mistralをベースモデルとし、PubMed Centralのデータで事前学習を行っています。多言語対応の評価も行っており、既存のオープンソース医療モデルや独占的なモデルと比較して優れた性能を示しています。
🚀 クイックスタート
BioMistralを使うには、以下の手順でモデルとトークナイザーをロードします。
from transformers import AutoModel, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("BioMistral/BioMistral-7B")
model = AutoModel.from_pretrained("BioMistral/BioMistral-7B")
✨ 主な機能
- 医療分野特化:医療や生物学の知識を持ち、医療関連の質問に対して回答を生成できます。
- 多言語対応:英語以外の7つの言語での評価を行っており、多言語での汎化能力が検証されています。
- 多様なモデル:BioMistral 7Bをベースに、DARE、TIES、SLERPなどのモデルマージ戦略を用いたモデルや、量子化したモデルが用意されています。
📦 インストール
BioMistralを使用するには、Hugging FaceのTransformersライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
from transformers import AutoModel, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("BioMistral/BioMistral-7B")
model = AutoModel.from_pretrained("BioMistral/BioMistral-7B")
input_text = "医療分野におけるBioMistralの応用例を教えてください。"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
output = model.generate(input_ids)
output_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(output_text)
📚 ドキュメント
BioMistralモデル
BioMistralは、Mistralをベースモデルとし、PubMed Centralのテキストデータで事前学習を行ったオープンソースのモデルです。以下の表に、各モデルの詳細を示します。
量子化モデル
量子化したBioMistralモデルの詳細を以下の表に示します。
ベースモデル |
方法 |
q_group_size |
w_bit |
バージョン |
VRAM GB |
時間 |
ダウンロード |
BioMistral-7B |
FP16/BF16 |
|
|
|
15.02 |
x1.00 |
HuggingFace |
BioMistral-7B |
AWQ |
128 |
4 |
GEMM |
4.68 |
x1.41 |
HuggingFace |
BioMistral-7B |
AWQ |
128 |
4 |
GEMV |
4.68 |
x10.30 |
HuggingFace |
BioMistral-7B |
BnB.4 |
|
4 |
|
5.03 |
x3.25 |
HuggingFace |
BioMistral-7B |
BnB.8 |
|
8 |
|
8.04 |
x4.34 |
HuggingFace |
BioMistral-7B-DARE |
AWQ |
128 |
4 |
GEMM |
4.68 |
x1.41 |
HuggingFace |
BioMistral-7B-TIES |
AWQ |
128 |
4 |
GEMM |
4.68 |
x1.41 |
HuggingFace |
BioMistral-7B-SLERP |
AWQ |
128 |
4 |
GEMM |
4.68 |
x1.41 |
HuggingFace |
教師付き微調整ベンチマーク
BioMistral 7Bモデルとベースラインモデルの教師付き微調整(SFT)の性能を以下の表に示します。評価は、10の医療関連の質問応答タスクで行われ、精度(↑)で測定され、3つのランダムシードの3ショットで平均化されています。
|
臨床知識グラフ |
医療遺伝学 |
解剖学 |
専門医療 |
大学生物学 |
大学医学 |
MedQA |
MedQA 5選択肢 |
PubMedQA |
MedMCQA |
平均 |
BioMistral 7B |
59.9 |
64.0 |
56.5 |
60.4 |
59.0 |
54.7 |
50.6 |
42.8 |
77.5 |
48.1 |
57.3 |
Mistral 7B Instruct |
62.9 |
57.0 |
55.6 |
59.4 |
62.5 |
57.2 |
42.0 |
40.9 |
75.7 |
46.1 |
55.9 |
|
|
|
|
|
|
|
|
|
|
|
|
BioMistral 7B Ensemble |
62.8 |
62.7 |
57.5 |
63.5 |
64.3 |
55.7 |
50.6 |
43.6 |
77.5 |
48.8 |
58.7 |
BioMistral 7B DARE |
62.3 |
67.0 |
55.8 |
61.4 |
66.9 |
58.0 |
51.1 |
45.2 |
77.7 |
48.7 |
59.4 |
BioMistral 7B TIES |
60.1 |
65.0 |
58.5 |
60.5 |
60.4 |
56.5 |
49.5 |
43.2 |
77.5 |
48.1 |
57.9 |
BioMistral 7B SLERP |
62.5 |
64.7 |
55.8 |
62.7 |
64.8 |
56.3 |
50.8 |
44.3 |
77.8 |
48.6 |
58.8 |
|
|
|
|
|
|
|
|
|
|
|
|
MedAlpaca 7B |
53.1 |
58.0 |
54.1 |
58.8 |
58.1 |
48.6 |
40.1 |
33.7 |
73.6 |
37.0 |
51.5 |
PMC-LLaMA 7B |
24.5 |
27.7 |
35.3 |
17.4 |
30.3 |
23.3 |
25.5 |
20.2 |
72.9 |
26.6 |
30.4 |
MediTron-7B |
41.6 |
50.3 |
46.4 |
27.9 |
44.4 |
30.8 |
41.6 |
28.1 |
74.9 |
41.3 |
42.7 |
BioMedGPT-LM-7B |
51.4 |
52.0 |
49.4 |
53.3 |
50.7 |
49.1 |
42.5 |
33.9 |
76.8 |
37.6 |
49.7 |
|
|
|
|
|
|
|
|
|
|
|
|
GPT-3.5 Turbo 1106* |
74.71 |
74.00 |
65.92 |
72.79 |
72.91 |
64.73 |
57.71 |
50.82 |
72.66 |
53.79 |
66.0 |
🔧 技術詳細
BioMistralは、Mistralをベースモデルとし、PubMed Centralのデータで事前学習を行っています。また、多言語対応の評価を行うために、英語のベンチマークを自動翻訳して7つの言語で評価を行っています。これは、医療分野における大規模言語モデルの初の大規模多言語評価です。
📄 ライセンス
本モデルは、Apache-2.0ライセンスの下で公開されています。
引用
@misc{labrak2024biomistral,
title={BioMistral: A Collection of Open-Source Pretrained Large Language Models for Medical Domains},
author={Yanis Labrak and Adrien Bazoge and Emmanuel Morin and Pierre-Antoine Gourraud and Mickael Rouvier and Richard Dufour},
year={2024},
eprint={2402.10373},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
⚠️ 重要提示
BioMistralは高品質なエビデンスに基づく医療知識を含んでいますが、専門的な医療行動においてこの知識を効果的、安全かつ適切に伝達するように調整されていません。BioMistralを医療現場で使用する場合は、特定のユースケースに完全に適合し、さらなるテスト(実世界の医療環境での無作為化比較試験を含む)を経るまでは避けることをお勧めします。BioMistral 7Bにはまだ十分に評価されていない固有のリスクやバイアスが存在する可能性があり、モデルの性能は実世界の臨床環境で評価されていません。したがって、BioMistral 7Bは研究ツールとしてのみ使用し、自然言語生成や専門的な健康医療目的の本番環境での展開は避けることをおすすめします。
💡 使用建议
BioMistralを使用する際は、まず小規模なテストを行い、モデルの性能や出力の品質を確認することをおすすめします。また、医療関連の用途で使用する場合は、必ず専門家の意見を求めるなど、十分な注意を払ってください。