🚀 Palmyra-Med、医療分野向けに設計された強力な大規模言語モデル
Palmyra-Medは、医療産業のニーズに特化して開発された大規模言語モデルです。生物医学のベンチマークで高いスコアを獲得し、GPT-4やGemini、Med-PaLM-2などのモデルを上回る性能を発揮します。
Palmyra-Med、医療分野向けに設計された強力な大規模言語モデル
🚀 クイックスタート
このセクションでは、transformers
ライブラリを使用してPalmyra-Med-70Bを使った会話型推論の実行方法を紹介します。
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "Writer/Palmyra-Med-70B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float16,
device_map="auto",
attn_implementation="flash_attention_2",
)
messages = [
{
"role": "system",
"content": "You are a highly knowledgeable and experienced expert in the healthcare and biomedical field, possessing extensive medical knowledge and practical expertise.",
},
{
"role": "user",
"content": "Does danzhi Xiaoyao San ameliorate depressive-like behavior by shifting toward serotonin via the downregulation of hippocampal indoleamine 2,3-dioxygenase?",
},
]
input_ids = tokenizer.apply_chat_template(
messages, tokenize=True, add_generation_prompt=True, return_tensors="pt"
)
gen_conf = {
"max_new_tokens": 256,
"eos_token_id": [tokenizer.eos_token_id, tokenizer.convert_tokens_to_ids("<|eot_id|>")],
"temperature": 0.0,
"top_p": 0.9,
}
with torch.inference_mode():
output_id = model.generate(input_ids, **gen_conf)
output_text = tokenizer.decode(output_id[0][input_ids.shape[1] :])
print(output_text)
✨ 主な機能
モデル概要
モデルの詳細
Palmyra-Medは、医療産業のニーズを満たすためにWriterによって構築されたモデルです。生物医学のベンチマークで平均85.87%のスコアを獲得し、GPT-4、claude Opus、Gemini、Med-PaLM-2のベースモデルや医学的に訓練された人間のテスト受験者を上回っています。
リソースと技術ドキュメント
生物医学アプリケーションに特化
Palmyra-Med-70Bは、医学および生命科学分野の独特な言語および知識の要求を満たすために細心の注意を払って設計されています。高品質の生物医学データの広範なコレクションでファインチューニングされており、特定のドメインの精度と流暢さでテキストを理解および生成できるようになっています。
当社のシステムは、DPOデータセットと精巧に作成されたファインチューニングレシピ、およびカスタムの多様な医療命令データセットを統合しており、この分野の特定のニーズを処理するのに非常に優れています。トレーニングパイプラインの主要なコンポーネントには以下が含まれます。
- ポリシー最適化: モデルの性能を向上させるためにDirect Preference Optimizationを利用します。DPO
- ファインチューニングデータセット: カスタム医療命令データセット(Writer社内で構築)
📚 ドキュメント
想定される使用方法
- 想定される使用例: Palmyra-Med-70bは、英語での非商用および研究目的で使用することを想定しています。命令調整されたモデルは、アシスタントのようなチャットに使用されることを想定しており、事前学習されたモデルは、さまざまな自然言語生成タスクに適応させることができます。
- 想定外の使用: 適用される法律や規制(貿易コンプライアンス法を含む)に違反する方法での使用。WriterのAcceptable Use PolicyおよびWriter open model licenseによって禁止されている他の方法での使用。英語以外の言語での使用。
- 注意: 開発者は、Writer open model licenseおよびAcceptable Use Policyに準拠する限り、Palmyra-Med-70bモデルを英語以外の言語にファインチューニングすることができます。
- ウォーターマーク: Writer.comによって構築されたすべてのモデルには、誤用や違法な使用を検出および防止するためのウォーターマークが含まれています。
評価結果
Palmyra-Med-70bは、9つの多様な生物医学データセットで、GPT-4、Gemini、Med-PaLM-2などのより大きなモデルを上回り、パラメータが少ないにもかかわらず、平均85.9%の最先端の結果を達成しています。Clinical KG、Medical Genetics、PubMedQAなどのタスクでの強力なパフォーマンスは、生物医学知識の効果的な把握を裏付けています。
生物医学ベンチマークでのパフォーマンス

医療用途
Palmyra-Med-70bは、複雑な臨床ノート、EHRデータ、および退院要約の分析と要約に優れており、重要な情報を抽出して簡潔で構造化された要約を生成します。高度な臨床エンティティ認識を行うことで、非構造化テキストから疾患、症状、薬剤、手技、解剖学的構造などの重要な医学的概念を特定し、臨床意思決定を支援します。
医学用語の深い理解を活用することで、このモデルはEHR、研究論文、およびその他の生物医学ソースからの情報検索、データ分析、および知識発見を強化します。これらの機能は、臨床意思決定支援、薬物安全性管理、および医学研究などのアプリケーションをサポートします。
バイアス、リスク、および制限事項
Palmyra-Med-70bは、高品質のデータを活用しているにもかかわらず、不正確さ、バイアス、または不一致を含む可能性があり、臨床試験または実世界の医療環境で厳密に評価されていません。
このモデルを直接の患者ケア、臨床意思決定支援、または専門的な医療目的に使用しないことをお勧めします。代わりに、その使用は、その制限を理解している資格のある個人による研究に限定する必要があります。Palmyra-Med-70bは専門的な医学的判断を置き換えるものではなく、医療用途に適応させるには、包括的なテスト、ガイドラインの整合、バイアスの軽減、人的監視、および規制コンプライアンスを含む、多くの追加作業が必要になります。個人の医療ニーズについては、常に資格のある医療提供者に相談してください。
引用と関連情報
このモデルを引用するには、以下のようにしてください。
@misc{Palmyra-Med-70B,
author = {Writer Engineering team},
title = {{Palmyra-Med-70b: A powerful LLM designed for healthcare}},
howpublished = {\url{https://dev.writer.com}},
year = 2024,
month = June
}
連絡先
Hello@writer.com
📄 ライセンス
このモデルはWriter open model licenseの下で提供されています。