ujjman's picture
Update README.md
ece238c verified
metadata
library_name: transformers
tags:
  - unsloth
  - finetuned
license: apache-2.0
datasets:
  - keivalya/MedQuad-MedicalQnADataset
language:
  - en
base_model:
  - meta-llama/Llama-3.2-3B
pipeline_tag: question-answering

Model Card for MedQA LLM

This model is fine-tuned on the "keivalya/MedQuad-MedicalQnADataset" to provide accurate answers to medical queries, focusing on a variety of question types including symptoms, diagnosis, prevention, and treatment.

Model Details

Model Description

This model, built on LLaMA 3.2 3B, has been fine-tuned specifically to address question-answering tasks in the medical domain. It aims to assist healthcare providers, researchers, and the general public by offering detailed and accurate responses to queries about medical conditions and treatments.

  • Developed by: Ujjwal Mishra
  • Model type: Question-Answering on medical data
  • Source Model: LLaMA 3.2 3B

Uses

This model is intended for use as a first-line information provider about medical queries. It can support digital health applications, help desks, and educational platforms.

Direct Use

The model can directly answer questions from users about medical issues without any further fine-tuning.

Downstream Use

This model can be further fine-tuned on more specific medical sub-domains or integrated into medical decision-support systems to enhance its utility.

Out-of-Scope Use

The model is not designed to replace professional medical advice or diagnostic activities by certified healthcare providers.

Bias, Risks, and Limitations

Due to the nature of its training data, the model might exhibit biases towards more commonly represented diseases or conditions. It may not perform equally well on rare conditions or non-English queries.

Recommendations

Users should verify the information provided by the model with up-to-date and peer-reviewed medical sources or professionals. The model should be continuously monitored and updated to mitigate biases and adapt to new medical knowledge.

How to Get Started with the Model



from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
from accelerate import Accelerator

# Initialize the Accelerator for mixed precision and faster inference (if supported by your hardware)
accelerator = Accelerator()

# Load your fine-tuned model and tokenizer
model_name = "ujjman/llama-3.2-3B-Medical-QnA-unsloth"
tokenizer = AutoTokenizer.from_pretrained(model_name)

model = AutoModelForCausalLM.from_pretrained(model_name)

# Place model and tokenizer on the appropriate device
model, tokenizer = accelerator.prepare(model, tokenizer)

# Create a text generation pipeline
generator = pipeline('text-generation', model=model, tokenizer=tokenizer)

# Function to ask a medical question
def ask_question(question_type, question):
    prompt = f"""Below is a Question Type that describes the type of question, paired with a question that asks a question based on medical science. Give an answer that correctly answers the question.

### Question Type:
{question_type}

### Question:
{question}

### Answer:
"""
    # Adjust max_length and specify eos_token_id for better stopping
    eos_token_id = tokenizer.eos_token_id
    response = generator(prompt, max_length=1024, eos_token_id=eos_token_id, num_return_sequences=1)
    answer = response[0]['generated_text'][len(prompt):]
    return answer.strip()


# Example usage
question_type = "prevention"
question = "How can I protect myself from poisoning caused by marine toxins?"
print(ask_question(question_type, question))