Image-Text-to-Text
MLX
Core ML
Safetensors
Transformers
llava_qwen2
text-generation
fastvlm
mlx-vlm
conversational
custom_code
vision-language
multimodal
apple-silicon
quantized
7B
q4 / 4-bit quantized
4-bit precision
4-bit precision
q4
Instructions to use dbaek111/fastvlm-7b-mlx-q4 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use dbaek111/fastvlm-7b-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-7b-mlx-q4") config = load_config("dbaek111/fastvlm-7b-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-7b-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-7b-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-7b-mlx-q4", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- vLLM
How to use dbaek111/fastvlm-7b-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-7b-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-7b-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-7b-mlx-q4
- SGLang
How to use dbaek111/fastvlm-7b-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-7b-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-7b-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-7b-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-7b-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" } } ] } ] }' - Pi
How to use dbaek111/fastvlm-7b-mlx-q4 with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "dbaek111/fastvlm-7b-mlx-q4"
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "dbaek111/fastvlm-7b-mlx-q4" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use dbaek111/fastvlm-7b-mlx-q4 with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "dbaek111/fastvlm-7b-mlx-q4"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default dbaek111/fastvlm-7b-mlx-q4
Run Hermes
hermes
- OpenClaw new
How to use dbaek111/fastvlm-7b-mlx-q4 with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "dbaek111/fastvlm-7b-mlx-q4"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "dbaek111/fastvlm-7b-mlx-q4" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use dbaek111/fastvlm-7b-mlx-q4 with Docker Model Runner:
docker model run hf.co/dbaek111/fastvlm-7b-mlx-q4
| license: apple-amlr | |
| library_name: mlx | |
| pipeline_tag: image-text-to-text | |
| base_model: apple/FastVLM-7B | |
| base_model_relation: quantized | |
| tags: | |
| - fastvlm | |
| - mlx | |
| - mlx-vlm | |
| - safetensors | |
| - transformers | |
| - llava_qwen2 | |
| - image-text-to-text | |
| - text-generation | |
| - conversational | |
| - custom_code | |
| - vision-language | |
| - multimodal | |
| - apple-silicon | |
| - quantized | |
| - 7B | |
| - q4 / 4-bit quantized | |
| - 4-bit | |
| - 4-bit precision | |
| - q4 | |
| # fastvlm-7b-mlx-q4 | |
| This repository contains an MLX-converted FastVLM checkpoint. | |
| ## Model | |
| - Base model: `apple/FastVLM-7B` | |
| - Parameters: `7B` | |
| - Precision: `q4 / 4-bit quantized` | |
| - Approx. folder size: `4.9G` | |
| 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.mlpackage` vision tower | |
| ## Example Usage | |
| ```bash | |
| hf download dbaek111/fastvlm-7b-mlx-q4 --local-dir ./fastvlm-7b-mlx-q4 | |
| python -m mlx_vlm.generate \ | |
| --model ./fastvlm-7b-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. | |