muthuk1/saheli-gemma4-e4b-medical
1
๐ฅ SAHELI v2 โ Gemma 4 E4B Medical Fine-Tune
Smart Adaptive Health Engine for Local Intelligence
A LoRA fine-tune of Google Gemma 4 E4B-it with 7 technical novelties for clinical decision support in low-resource settings.
7 Novel Features
Model Details
Training Data
Architecture
Patient Input (Voice / Photo / Text)
|
[Complexity Triage] โ LOW / MODERATE / HIGH
|
[Gemma 4 E4B + Thinking Mode] โ Clinical reasoning
|
[Semantic RAG: GTE-small + FAISS] โ WHO guidelines
|
[Function Calling: FHIR Tools] โ Structured records
|
Answer + Reasoning Chain + FHIR JSON + Triage LevelFiles
Quick Start
from transformers import AutoProcessor, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("google/gemma-4-E4B-it", dtype="auto", device_map="auto")
processor = AutoProcessor.from_pretrained("google/gemma-4-E4B-it")
messages = [
{"role": "system", "content": "You are SAHELI, a medical AI for community health workers."},
{"role": "user", "content": "2-year-old, cough 3 days, breathing fast 52/min, temp 38.5C"}
]
# With thinking mode
text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True, enable_thinking=True)
inputs = processor(text=text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=1024, temperature=1.0, top_p=0.95, top_k=64)
response = processor.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=False)
parsed = processor.parse_response(response)
print("Thinking:", parsed.get("thinking", ""))
print("Answer:", parsed.get("answer", ""))Links
Hackathon Tracks
Main Track | Health & Sciences | Digital Equity | Safety & Trust | Unsloth | Ollama | llama.cpp
License
Apache 2.0 (following base model)
