Instructions to use dbaek111/fastvlm-0.5b-mlx-q4 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use dbaek111/fastvlm-0.5b-mlx-q4 with MLX:
# Make sure mlx-vlm is installed # pip install --upgrade mlx-vlm from mlx_vlm import load, generate from mlx_vlm.prompt_utils import apply_chat_template from mlx_vlm.utils import load_config # Load the model model, processor = load("dbaek111/fastvlm-0.5b-mlx-q4") config = load_config("dbaek111/fastvlm-0.5b-mlx-q4") # Prepare input image = ["http://images.cocodataset.org/val2017/000000039769.jpg"] prompt = "Describe this image." # Apply chat template formatted_prompt = apply_chat_template( processor, config, prompt, num_images=1 ) # Generate output output = generate(model, processor, formatted_prompt, image) print(output) - Transformers
How to use dbaek111/fastvlm-0.5b-mlx-q4 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="dbaek111/fastvlm-0.5b-mlx-q4", trust_remote_code=True) 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)# Load model directly from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_pretrained("dbaek111/fastvlm-0.5b-mlx-q4", trust_remote_code=True, dtype="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- vLLM
How to use dbaek111/fastvlm-0.5b-mlx-q4 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "dbaek111/fastvlm-0.5b-mlx-q4" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "dbaek111/fastvlm-0.5b-mlx-q4", "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/dbaek111/fastvlm-0.5b-mlx-q4
- SGLang
How to use dbaek111/fastvlm-0.5b-mlx-q4 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 "dbaek111/fastvlm-0.5b-mlx-q4" \ --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": "dbaek111/fastvlm-0.5b-mlx-q4", "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 "dbaek111/fastvlm-0.5b-mlx-q4" \ --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": "dbaek111/fastvlm-0.5b-mlx-q4", "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 dbaek111/fastvlm-0.5b-mlx-q4 with Docker Model Runner:
docker model run hf.co/dbaek111/fastvlm-0.5b-mlx-q4
fastvlm-0.5b-mlx-q4
This repository contains an MLX-converted FastVLM checkpoint.
Model
- Base model:
apple/FastVLM-0.5B - Parameters:
0.5B - Precision:
q4 / 4-bit quantized - Approx. folder size:
819M
The checkpoint was converted from Apple FastVLM using the official FastVLM model export workflow and patched mlx-vlm.
Files
This repository should include:
config.json- MLX model weights
- tokenizer files
fastvithd.mlpackagevision tower
Example Usage
hf download dbaek111/fastvlm-0.5b-mlx-q4 --local-dir ./fastvlm-0.5b-mlx-q4
python -m mlx_vlm.generate \
--model ./fastvlm-0.5b-mlx-q4 \
--image /path/to/your/image.jpg \
--prompt "Explain the image." \
--max-tokens 64 \
--temp 0.0
Benchmark
Benchmarked on an Apple Silicon Mac with the patched FastVLM mlx-vlm workflow.
- Task: pedestrian wayfinding captioning
- Images: three local test images resized to 512px and 1024px long edge
- Prompt:
Describe what is visible for pedestrian wayfinding in one short sentence. Do not list categories. Do not mention anything you cannot see. Keep under 30 words. - Max tokens:
64 - Temperature:
0.0 - Timing: model loaded once per image set, then three images processed sequentially
Model Selection
| Model | Size | Precision | Avg 512px | Avg 1024px | Load | Recommended use |
|---|---|---|---|---|---|---|
| fastvlm-0.5b-mlx-q4 | 819M | q4 | 0.338s | 0.370s | 2.82s | Smallest and fastest; rough real-time captions |
| fastvlm-0.5b-mlx-q8 | 1.1G | q8 | 0.419s | 0.414s | 2.57s | Fast, with richer captions than 0.5B q4 |
| fastvlm-0.5b-mlx-fp16 | 1.6G | fp16 | 0.435s | 0.421s | 2.79s | Small FP16 baseline |
| fastvlm-1.5b-mlx-q4 | 1.4G | q4 | 0.447s | 0.464s | 2.65s | Best real-time balance for pedestrian wayfinding |
| fastvlm-1.5b-mlx-q8 | 2.2G | q8 | 0.552s | 0.541s | 2.68s | More detail while staying sub-second |
| fastvlm-1.5b-mlx-fp16 | 3.8G | fp16 | 0.636s | 0.557s | 3.08s | 1.5B FP16 reference variant |
| fastvlm-7b-mlx-q4 | 4.9G | q4 | 1.263s | 1.241s | 3.04s | Best quality/latency tradeoff among 7B variants |
| fastvlm-7b-mlx-q8 | 8.0G | q8 | 1.497s | 1.495s | 3.85s | Higher precision 7B, slower than q4 |
| fastvlm-7b-mlx-fp16 | 15G | fp16 | 1.834s | 1.874s | 45.48s | Full precision reference; expensive to load |
Per-Image Timing
Each cell is img1 / img2 / img3 inference time in seconds.
| Model | 512px images | 1024px images |
|---|---|---|
| fastvlm-0.5b-mlx-q4 | 0.318 / 0.353 / 0.343 | 0.374 / 0.370 / 0.366 |
| fastvlm-0.5b-mlx-q8 | 0.393 / 0.465 / 0.400 | 0.424 / 0.387 / 0.431 |
| fastvlm-0.5b-mlx-fp16 | 0.394 / 0.490 / 0.421 | 0.430 / 0.395 / 0.437 |
| fastvlm-1.5b-mlx-q4 | 0.454 / 0.458 / 0.430 | 0.465 / 0.472 / 0.456 |
| fastvlm-1.5b-mlx-q8 | 0.591 / 0.611 / 0.453 | 0.594 / 0.552 / 0.477 |
| fastvlm-1.5b-mlx-fp16 | 0.701 / 0.709 / 0.496 | 0.520 / 0.635 / 0.516 |
| fastvlm-7b-mlx-q4 | 1.161 / 1.330 / 1.297 | 1.081 / 1.343 / 1.298 |
| fastvlm-7b-mlx-q8 | 1.364 / 1.639 / 1.487 | 1.341 / 1.712 / 1.432 |
| fastvlm-7b-mlx-fp16 | 1.561 / 2.041 / 1.902 | 1.595 / 2.277 / 1.749 |
Compatibility
This is an MLX export of FastVLM for Apple Silicon Macs. It includes the CoreML FastViTHD vision tower as fastvithd.mlpackage.
This repository is not a standard PyTorch Transformers checkpoint and is not intended for vLLM, SGLang, or Linux GPU inference.
Notes
This is a converted and quantized derivative of Apple FastVLM.
Please refer to the original Apple FastVLM repository and model card for license and usage conditions.
- Downloads last month
- 110
4-bit
Model tree for dbaek111/fastvlm-0.5b-mlx-q4
Base model
apple/FastVLM-0.5B