做企業(yè)網(wǎng)站選百度云還是阿里云b2b網(wǎng)站推廣優(yōu)化
文章目錄
- DISC-MedLLM
- 介紹
- 概述
- 數(shù)據(jù)集
- 部署
- 推理流程
DISC-MedLLM
介紹
DISC-MedLLM 是一個專門針對醫(yī)療健康對話式場景而設計的醫(yī)療領域大模型,由復旦大學數(shù)據(jù)智能與社會計算實驗室 (Fudan-DISC) 開發(fā)并開源。
該項目包含下列開源資源:
DISC-Med-SFT 數(shù)據(jù)集 (不包括行為偏好訓練數(shù)據(jù))
DISC-MedLLM 的模型權重
概述
DISC-MedLLM 是一個專為醫(yī)療健康對話場景而打造的領域大模型,它可以滿足您的各種醫(yī)療保健需求,包括疾病問診和治療方案咨詢等,為您提供高質(zhì)量的健康支持服務。
DISC-MedLLM 有效地對齊了醫(yī)療場景下的人類偏好,彌合了通用語言模型輸出與真實世界醫(yī)療對話之間的差距,這一點在實驗結果中有所體現(xiàn)。
得益于我們以目標為導向的策略,以及基于真實醫(yī)患對話數(shù)據(jù)和知識圖譜,引入LLM in the loop 和 Human in the loop的多元數(shù)據(jù)構造機制,DISC-MedLLM 有以下幾個特點:
- 可靠豐富的專業(yè)知識,我們以醫(yī)學知識圖譜作為信息源,通過采樣三元組,并使用通用大模型的語言能力進行對話樣本的構造。
- 多輪對話的問詢能力,我們以真實咨詢對話紀錄作為信息源,使用大模型進行對話重建,構建過程中要求模型完全對齊對話中的醫(yī)學信息。
- 對齊人類偏好的回復,病人希望在咨詢的過程中獲得更豐富的支撐信息和背景知識,但人類醫(yī)生的回答往往簡練;我們通過人工篩選,構建符合人類偏好的高質(zhì)量的小規(guī)模行為微調(diào)樣本,對齊病人的需求。
數(shù)據(jù)集
為了訓練 DISC-MedLLM ,我們構建了一個高質(zhì)量的數(shù)據(jù)集,命名為 DISC-Med-SFT,其中包含了超過47萬個衍生于現(xiàn)有的醫(yī)療數(shù)據(jù)集重新構建得到的樣本。我們采用了目標導向的策略,通過對于精心選擇的幾個數(shù)據(jù)源進行重構來得到SFT數(shù)據(jù)集。這些數(shù)據(jù)的作用在于幫助模型學習醫(yī)療領域知識,將行為模式與人類偏好對齊,并對齊真實世界在線醫(yī)療對話的分布情況。
部署
當前版本的 DISC-MedLLM 是基于Baichuan-13B-Base訓練得到的??梢灾苯訌?Hugging Face 上下載我們的模型權重
推理流程
git clone https://github.com/FudanDISC/DISC-MedLLM.gitcd DISC-MedLLMsource activateconda activate DISC-MedLLM
vi tuili.py 編輯待執(zhí)行程序
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation.utils import GenerationConfig
tokenizer = AutoTokenizer.from_pretrained("/data/sim_chatgpt/DISC-MedLLM", use_fast=False, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("/data/sim_chatgpt/DISC-MedLLM", device_map="auto", torch_dtype=torch.float16, trust_remote_code=True)
model.generation_config = GenerationConfig.from_pretrained("/data/sim_chatgpt/DISC-MedLLM")
messages = []
messages.append({"role": "user", "content": "我感覺自己頸椎非常不舒服,每天睡醒都會頭痛"})
response = model.chat(tokenizer, messages)
print(response)
python tuili.py 執(zhí)行程序
學習的參考資料:
DISC-MedLLM項目地址
DISC-MedLLM—中文醫(yī)療健康助手