Image-Text-to-Text
Transformers
gemma3_text
gemma3
medical
radiology
clinical-reasoning
dermatology
pathology
ophthalmology
chest-x-ray
arxiv:2303.15343
arxiv:2507.05201
arxiv:2405.03162
arxiv:2106.14463
arxiv:2412.03555
arxiv:2501.19393
arxiv:2009.13081
arxiv:2102.09542
arxiv:2411.15640
arxiv:2404.05590
arxiv:2501.18362
oflm
openflowlm
npu2
q4nx
conversational
Instructions to use OpenFlowLM/Medgemma-4B-NPU2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use OpenFlowLM/Medgemma-4B-NPU2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="OpenFlowLM/Medgemma-4B-NPU2") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForMultimodalLM tokenizer = AutoTokenizer.from_pretrained("OpenFlowLM/Medgemma-4B-NPU2") model = AutoModelForMultimodalLM.from_pretrained("OpenFlowLM/Medgemma-4B-NPU2", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use OpenFlowLM/Medgemma-4B-NPU2 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "OpenFlowLM/Medgemma-4B-NPU2" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpenFlowLM/Medgemma-4B-NPU2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/OpenFlowLM/Medgemma-4B-NPU2
- SGLang
How to use OpenFlowLM/Medgemma-4B-NPU2 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "OpenFlowLM/Medgemma-4B-NPU2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpenFlowLM/Medgemma-4B-NPU2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "OpenFlowLM/Medgemma-4B-NPU2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpenFlowLM/Medgemma-4B-NPU2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use OpenFlowLM/Medgemma-4B-NPU2 with Docker Model Runner:
docker model run hf.co/OpenFlowLM/Medgemma-4B-NPU2
|
Download README.md from OpenFlowLM/Medgemma-4B-NPU2: direct link, hf CLI and curl.
- Browser
- Download file 2.68 kB
-
https://huggingface.co/OpenFlowLM/Medgemma-4B-NPU2/resolve/main/README.md
- Command line
-
hf download hf://OpenFlowLM/Medgemma-4B-NPU2/README.md
-
curl -L -o README.md https://huggingface.co/OpenFlowLM/Medgemma-4B-NPU2/resolve/main/README.md
2.68 kB
| license: other | |
| base_model: | |
| - Atomic-Germ/Medgemma-4B-NPU2 | |
| base_model_relation: quantized | |
| quantized_by: Atomic-Germ | |
| pipeline_tag: image-text-to-text | |
| oflm-family: gemma3 | |
| tags: | |
| - transformers | |
| - gemma3 | |
| - image-text-to-text | |
| - medical | |
| - radiology | |
| - clinical-reasoning | |
| - dermatology | |
| - pathology | |
| - ophthalmology | |
| - chest-x-ray | |
| - arxiv:2303.15343 | |
| - arxiv:2507.05201 | |
| - arxiv:2405.03162 | |
| - arxiv:2106.14463 | |
| - arxiv:2412.03555 | |
| - arxiv:2501.19393 | |
| - arxiv:2009.13081 | |
| - arxiv:2102.09542 | |
| - arxiv:2411.15640 | |
| - arxiv:2404.05590 | |
| - arxiv:2501.18362 | |
| - base_model:google/gemma-3-4b-pt | |
| - base_model:finetune:google/gemma-3-4b-pt | |
| - license:other | |
| - endpoints_compatible | |
| - region:us | |
| - oflm | |
| - openflowlm | |
| - npu2 | |
| - q4nx | |
| # Medgemma-4B-NPU2 | |
| **OpenFlowLM Q4NX conversion of [`Atomic-Germ/Medgemma-4B-NPU2`](https://huggingface.co/Atomic-Germ/Medgemma-4B-NPU2)** for AMD XDNA NPU inference. | |
| This repository contains a quantized **Q4NX** port of the model, compiled for the OpenFlowLM (OFLM) runtime. It is **not** a GGUF file. | |
| | Item | Value | | |
| |------|-------| | |
| | Source model | [`Atomic-Germ/Medgemma-4B-NPU2`](https://huggingface.co/Atomic-Germ/Medgemma-4B-NPU2) | | |
| | Source GGUF | `medgemma-4b-it.i1-Q4_1.gguf` | | |
| | Weights | `model.q4nx` (3.51 GB) | | |
| | Modality | language | | |
| | OFLM version | `0.1.0` | | |
| | Converted | 2026-10-01 | | |
| ## Reproduce this conversion | |
| This container was produced by exactly this command, so a fine-tune of the | |
| same base can be packed the same way: | |
| ```bash | |
| oflm pack -i /home/atomic-germ/.cache/huggingface/hub/models--mradermacher--medgemma-4b-it-i1-GGUF/snapshots/e72473b68139c8f77427dd21270eff3b2b80c1f9/medgemma-4b-it.i1-Q4_1.gguf -o /home/atomic-germ/Projects/OpenFlowLM-Next/Medgemma-4B-NPU2 -s Atomic-Germ/Medgemma-4B-NPU2 | |
| ``` | |
| ## Install and run | |
| This repository works with `oflm-add`, a small installer that copies the model | |
| into the OpenFlowLM user directory and registers the tag. It never | |
| modifies the system OpenFlowLM install. | |
| `pip install oflm-add` or `uv tool install oflm-add` | |
| ```bash | |
| uv tool install oflm-add | |
| oflm-add Atomic-Germ/Medgemma-4B-NPU2 --family qwen3.5 --xclbin-from Medgemma-4B-NPU2 | |
| OFLM_CONFIG_PATH="$HOME/.config/oflm/model_list.json" OFLM_XCLBIN_PATH="$HOME/.config/oflm" oflm run Medgemma-4B-NPU2 | |
| ``` | |
| ## Files | |
| | File | Description | | |
| |------|-------------| | |
| | `model.q4nx` | Quantized weights (Q8_0 / Q4_1 / BF16) | | |
| | `config.json` | OFLM runtime configuration | | |
| | `tokenizer.json` | Tokenizer vocabulary | | |
| | `tokenizer_config.json` | Tokenizer configuration | | |
| | `chat_template.jinja` | Chat template | | |
| --- | |
| ## Source model card | |
| See the original model card: [Atomic-Germ/Medgemma-4B-NPU2](https://huggingface.co/Atomic-Germ/Medgemma-4B-NPU2) | |