Welcome to the world of DISC-MedLLM, a unique Large Language Model (LLM) specifically designed for conversational healthcare scenarios. If you’re curious about implementing this medical domain-specific model, you’re in the right place! In this guide, we will take you through the steps to get started with DISC-MedLLM, alongside some troubleshooting tips to help you navigate any potential issues.
What is DISC-MedLLM?
DISC-MedLLM is developed by the Fudan-DISC lab and is powered by the Baichuan-13B-Base model. It aims to bridge the gap between general LLMs and real-world medical consultations. Thus, it can effectively assist with medical consultations, treatment inquiries, and high-quality health support services.
Key Features
- Knowledge-intensive and reliable
- Ability to handle multi-turn inquiries
- Alignment with human preferences
Getting Started with DISC-MedLLM
1. Obtain the Model Weights
You can download the model weights from the HuggingFace repository at FlmcDISC-MedLLM. For users interested in trying out the model, visit the online demo at medllm.fudan-disc.com.
2. Training the Model
To fine-tune the DISC-MedLLM model, you can utilize existing datasets like DISC-Med-SFT. Below are the steps to start training:
deepspeed --num_gpus=num_gpus .train/train.py --train_args_file .train/train_args_sft.json
Make sure to check the sft.json setup before you initiate the training process. If you plan to use other training code, follow this format:
$user_token content $assistant_token contents $user_token content ...
3. Using the Model with Hugging Face Transformers
The following code snippet guides you to interact with the model:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation.utils import GenerationConfig
tokenizer = AutoTokenizer.from_pretrained('FlmcDISC-MedLLM', use_fast=False, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained('FlmcDISC-MedLLM', device_map='auto', torch_dtype=torch.float16, trust_remote_code=True)
model.generation_config = GenerationConfig.from_pretrained('FlmcDISC-MedLLM')
messages = []
messages.append({'role': 'user', 'content': '我感觉自己颈椎非常不舒服,每天睡醒都会头痛'})
response = model.chat(tokenizer, messages)
print(response)
In this example, the messages array collects user inputs, and the model generates an appropriate response.
Understanding the Process with an Analogy
Think of the DISC-MedLLM as a highly-trained healthcare assistant. Much like you would consult a specialist for personalized advice, this model utilizes various datasets (like real-world doctor-patient dialogues and knowledge graphs) to ensure high-quality interactions. The model’s training process can be likened to teaching this assistant by exposing them to numerous case studies, ensuring they can respond accurately and effectively to a variety of health inquiries.
Troubleshooting Tips
If you encounter issues while working with DISC-MedLLM, consider the following troubleshooting ideas:
- Ensure that your environment has the required libraries installed correctly, particularly the
transformerslibrary. - Check your internet connection if you’re experiencing issues downloading the model weights or datasets.
- Review your
sft.jsonfile for any discrepancies in configuration before training. - Consult the official documentation or community forums for any common issues others might have faced.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Conclusion
With the power of DISC-MedLLM at your fingertips, you’re well on your way to developing advanced healthcare conversational capabilities. However, always bear in mind that while this model offers tremendous potential, it can’t replace professional medical advice.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

