Views
No views yet
1from transformers import AutoModelForCausalLM, AutoTokenizer
2from peft import PeftModel
3
4# Load base model
5base_model = AutoModelForCausalLM.from_pretrained(
6 "OpenMeditron/Meditron3-8B",
7 torch_dtype=torch.bfloat16,
8 device_map="auto"
9)
10
11# Load tokenizer
12tokenizer = AutoTokenizer.from_pretrained("OpenMeditron/Meditron3-8B")
13
14# Load LoRA adapter
15model = PeftModel.from_pretrained(base_model, "YOUR_HF_USERNAME/REPO_NAME")1import json
2
3# Input format (medical context text)
4input_text = "L'hypertension artérielle essentielle est une maladie chronique caractérisée par une pression artérielle élevée. Le traitement de première intention comprend les modifications du mode de vie et les médicaments antihypertenseurs."
5
6# Format prompt using the same structure as training
7prompt_prefix = "<|user|>
8Context:
9"
10prompt_suffix = "
11
12Generate ONE valid multiple-choice question based strictly on the context above. Output ONLY the valid JSON object representing the question.
13MCQ JSON:<|end|>
14<|assistant|>
15"
16
17# Generate response
18formatted_prompt = prompt_prefix + input_text + prompt_suffix
19inputs = tokenizer(formatted_prompt, return_tensors="pt")
20
21with torch.no_grad():
22 outputs = model.generate(**inputs, max_new_tokens=512, temperature=0.0)
23
24response = tokenizer.decode(outputs[0], skip_special_tokens=True)1{
2 "question": "Quel est le traitement de première intention de l'hypertension artérielle essentielle?",
3 "options": {
4 "A": "Inhibiteurs de l'ECA",
5 "B": "Bêta-bloquants",
6 "C": "Diurétiques thiazidiques",
7 "D": "Antagonistes calciques"
8 },
9 "correct_answer": "A",
10 "explanation": "Les inhibiteurs de l'ECA sont recommandés en première intention pour le traitement de l'hypertension artérielle essentielle selon les guidelines internationales."
11}1@misc{meditron3-8b-mcq-lora,
2 title={Meditron3-8B LoRA Adapter for Medical MCQ JSON Generation},
3 author={Your Name},
4 year={2025},
5 publisher={Hugging Face},
6 url={https://huggingface.co/YOUR_USERNAME/REPO_NAME}
7}