Downloads · 30 days
40
6% of all-time downloads
mkurman/lfm2-350M-med
lfm2-350M-med is a text generation model from mkurman. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as other.
Small medical fine-tune on top of LiquidAI’s LFM2-350M. This checkpoint specializes the 350M LFM2 base for medical Q&A and tool-augmented search, using a light-weight recipe designed for laptops/edge boxes.
Downloads · 30 days
40
6% of all-time downloads
All-time downloads
677
Public
Parameters
354M
1.8 GB on disk
Likes
6
Public
Click a slice to open those files.
.safetensors1.4 GB · 79%
From the Hugging Face model README
Small medical fine-tune on top of LiquidAI’s LFM2-350M.
This checkpoint specializes the 350M LFM2 base for medical Q&A and tool-augmented search, using a light-weight recipe designed for laptops/edge boxes.
⚠️ Medical safety: This model is not a clinician. It may hallucinate and should not be used for diagnosis or treatment. Always seek qualified medical supervision.
<tool_call>, </tool_call>, etc.).Domain SFT (medical + tools)
Preference alignment (DPO)
Model fusion (Arcee Fusion)
merge_method: arcee_fusion.Use: education, research.
Don’t use: any medical advice.
All results below were run with the author’s harness; they will differ from LiquidAI’s internal suite and Open LLM Leaderboard settings.
| Benchmark | lfm2-350M-med | LFM2-350M (same harness) |
|---|---|---|
| MMLU-Pro | 19.46 | 18.76 |
| IFEVAL | 52.595 | 61.72 |
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "mkurman/lfm2-350M-med"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="bfloat16")
messages = [
{"role": "system", "content": "You are a careful medical assistant. Cite sources and warn that outputs are not medical advice."},
{"role": "user", "content": "Briefly explain the difference between cellulitis and erysipelas."}
]
prompt = tok.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
out = model.generate(**tok(prompt, return_tensors="pt"), max_new_tokens=256)
print(tok.decode(out[0], skip_special_tokens=True))