Instructions to use remyxai/SpaceQwen2.5-VL-3B-Instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="remyxai/SpaceQwen2.5-VL-3B-Instruct") 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 AutoProcessor, AutoModelForImageTextToText processor = AutoProcessor.from_pretrained("remyxai/SpaceQwen2.5-VL-3B-Instruct") model = AutoModelForImageTextToText.from_pretrained("remyxai/SpaceQwen2.5-VL-3B-Instruct") 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 = processor.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=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - llama-cpp-python
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="remyxai/SpaceQwen2.5-VL-3B-Instruct", filename="SpaceQwen2.5-VL-3B-Instruct-F16.gguf", )
llm.create_chat_completion( 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" } } ] } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16 # Run inference directly in the terminal: llama-cli -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16 # Run inference directly in the terminal: llama-cli -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16 # Run inference directly in the terminal: ./llama-cli -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Use Docker
docker model run hf.co/remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
- LM Studio
- Jan
- vLLM
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "remyxai/SpaceQwen2.5-VL-3B-Instruct" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "remyxai/SpaceQwen2.5-VL-3B-Instruct", "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/remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
- SGLang
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct 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 "remyxai/SpaceQwen2.5-VL-3B-Instruct" \ --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": "remyxai/SpaceQwen2.5-VL-3B-Instruct", "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 "remyxai/SpaceQwen2.5-VL-3B-Instruct" \ --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": "remyxai/SpaceQwen2.5-VL-3B-Instruct", "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" } } ] } ] }' - Ollama
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Ollama:
ollama run hf.co/remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
- Unsloth Studio new
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for remyxai/SpaceQwen2.5-VL-3B-Instruct to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for remyxai/SpaceQwen2.5-VL-3B-Instruct to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for remyxai/SpaceQwen2.5-VL-3B-Instruct to start chatting
- Pi new
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "remyxai/SpaceQwen2.5-VL-3B-Instruct:F16" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
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 remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Run Hermes
hermes
- Docker Model Runner
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Docker Model Runner:
docker model run hf.co/remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
- Lemonade
How to use remyxai/SpaceQwen2.5-VL-3B-Instruct with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull remyxai/SpaceQwen2.5-VL-3B-Instruct:F16
Run and chat with the model
lemonade run user.SpaceQwen2.5-VL-3B-Instruct-F16
List all available models
lemonade list
llm.create_chat_completion(
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"
}
}
]
}
]
)
SpaceQwen2.5-VL-3B-Instruct
The model was presented in the paper OmniSpatial: Towards Comprehensive Spatial Reasoning Benchmark for Vision Language Models. More information can be found at the project page.
- Model Type: Multimodal, Vision-Language Model
- Architecture:
Qwen2.5-VL-3B-Instruct - Model Size: 3.75B parameters (FP16)
- Finetuned from: Qwen/Qwen2.5-VL-3B-Instruct
- Finetune Strategy: LoRA (Low-Rank Adaptation)
- License: Apache-2.0
Model Overview
This model uses data synthesis techniques and publicly available models to reproduce the work described in SpatialVLM to enhance the spatial reasoning of multimodal models. With a pipeline of expert models, we can infer spatial relationships between objects in a scene to create a VQA dataset for spatial reasoning.
Running SpaceQwen2.5-VL-3B-Instruct
Ollama
To launch with ollama, run:
ollama run hf.co/remyxai/SpaceQwen2.5-VL-3B-Instruct:latest
Transformers
Install qwen dependencies:
pip install qwen-vl-utils[decord]==0.0.8
To run inference on a sample image:
from transformers import Qwen2_5_VLForConditionalGeneration, AutoTokenizer, AutoProcessor
from qwen_vl_utils import process_vision_info
model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
"remyxai/SpaceQwen2.5-VL-3B-Instruct", torch_dtype="auto", device_map="auto"
)
processor = AutoProcessor.from_pretrained("remyxai/SpaceQwen2.5-VL-3B-Instruct")
messages = [
{
"role": "user",
"content": [
{
"type": "image",
"image": "https://raw.githubusercontent.com/remyxai/VQASynth/refs/heads/main/assets/warehouse_sample_2.jpeg",
},
{"type": "text", "text": "What is the height of the man in the red hat in feet?"},
],
}
]
# Preparation for inference
text = processor.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
text=[text],
images=image_inputs,
videos=video_inputs,
padding=True,
return_tensors="pt",
)
inputs = inputs.to("cuda")
# Inference: Generation of the output
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)
GGUF
Or run SpaceQwen2.5-VL-3B-Instruct using llama.cpp:
./llama-qwen2vl-cli -m /path/to/SpaceQwen2.5-VL-3B-Instruct/SpaceQwen2.5-VL-3B-Instruct-F16.gguf \
--mmproj /path/to/SpaceQwen2.5-VL-3B-Instruct/spaceqwen2.5-vl-3b-instruct-vision.gguf \
-p "What's the height of the man in the red hat?" \
--image /path/to/warehouse_sample_2.jpeg --threads 24 -ngl 99
Dataset & Training
SpaceQwen2.5-VL-3B-Instruct uses LoRA to fine-tune Qwen2.5-VL-3B-Instruct on the OpenSpaces dataset.
Dataset Summary:
~10k synthetic spatial reasoning traces
Question types: spatial relations (distances (units), above, left-of, contains, closest to)
Format: image (RGB) + question + answer
Dataset: OpenSpaces
Code: VQASynth
Reference: SpatialVLM
Scripts for LoRA SFT available at trl
Model Evaluation
SpatialScore
SpaceQwen shines in the 3D positional relations categories of the SpatialScore-Hard comparison featured in the table below:
Read more about the comprehensive spatial reasoning benchmark: SpatialScore.
The following chart compares performance between SpaceQwen and SpaceThinker on the SpatialScore benchmarks sources.
OmniSpatial
OmniSpatial is another comprehensive spatial reasoning benchmark that assesses dynamic reasoning, complex spatial logic, spatial interaction, and perspective-taking capabilities.

Learn more about OmniSpatial.
SpaCE-10
| Model | Overall | EQ | SQ | SA | OO | OS | EP | FR | SP | Source |
|---|---|---|---|---|---|---|---|---|---|---|
| InternVL2.5-4B | 36.01 | 34.30 | 34.40 | 43.60 | 44.40 | 16.50 | 31.10 | 50.10 | 33.70 | Table |
| SpaceThinker | 32.72 | 32.73 | 24.81 | 47.26 | 50.33 | 33.63 | 9.25 | 37.54 | 26.25 | GPT Eval |
| SpaceOm | 32.32 | 32.47 | 24.81 | 47.63 | 50.00 | 32.52 | 9.12 | 37.04 | 25.00 | GPT Eval |
| SpaceQwen | 31.98 | 31.19 | 25.89 | 41.61 | 51.98 | 35.18 | 10.97 | 36.54 | 22.50 | GPT Eval |
| Qwen2.5-VL-3B-Instruct | 30.00 | 31.70 | 45.50 | 39.00 | 43.00 | 25.30 | 11.50 | 22.80 | 21.20 | Table |
Legend:
- EQ: Entity Quantification
- SQ: Scene Quantification
- SA: Size Assessment
- OO: Object-Object spatial relations
- OS: Object-Scene spatial relations
- EP: Entity Presence
- FR: Functional Reasoning
- SP: Spatial Planning
ℹ️ Note: Scores for SpaceQwen, SpaceThinker, SpaceOm are generated via
gpt_eval_scoreon single-choice (*-single) versions of the SpaCE-10 benchmark tasks. Other entries reflect leaderboard accuracy scores from the official SpaCE-10 evaluation table.
Read more about the SpaCE-10 benchmark or see results here
SIRI-Bench
SIRI-Bench is a video-based benchmark designed to evaluate complex spatial reasoning capabilities
MindCube
MindCube is a benchmark for assessing Spatial Mental Modeling from Limited Views

⚠️ Limitations & Ethical Considerations
- Performance may degrade in cluttered environments or camera perspective.
- This model was fine-tuned using synthetic reasoning over an internet image dataset.
- Multimodal biases inherent to the base model (Qwen2.5-VL) may persist.
- Not intended for use in safety-critical or legal decision-making.
Users are encouraged to evaluate outputs critically and consider fine-tuning for domain-specific safety and performance.
Citation
@article{chen2024spatialvlm,
title = {SpatialVLM: Endowing Vision-Language Models with Spatial Reasoning Capabilities},
author = {Chen, Boyuan and Xu, Zhuo and Kirmani, Sean and Ichter, Brian and Driess, Danny and Florence, Pete and Sadigh, Dorsa and Guibas, Leonidas and Xia, Fei},
journal = {arXiv preprint arXiv:2401.12168},
year = {2024},
url = {https://arxiv.org/abs/2401.12168},
}
@misc{qwen2.5-VL,
title = {Qwen2.5-VL},
url = {https://qwenlm.github.io/blog/qwen2.5-vl/},
author = {Qwen Team},
month = {January},
year = {2025}
}
@article{wu2025spatialscore,
author = {Wu, Haoning and Huang, Xiao and Chen, Yaohui and Zhang, Ya and Wang, Yanfeng and Xie, Weidi},
title = {SpatialScore: Towards Unified Evaluation for Multimodal Spatial Understanding},
journal = {arXiv preprint arXiv:2505.17012},
year = {2025},
}
@article{omnispatial25,
title = {OmniSpatial: Towards Comprehensive Spatial Reasoning Benchmark for Vision Language Models},
author = {Mengdi Jia and Zekun Qi and Shaochen Zhang and Wenyao Zhang and Xinqiang Yu and Jiawei He and He Wang and Li Yi},
journal = {arXiv preprint arXiv:2506.03135},
year = {2025}
}
@article{song2025siribench,
title = {{SIRI-Bench}: Challenging VLMs’ Spatial Intelligence through Complex Reasoning Tasks},
author = {Song, Zijian and Lin, Xiaoxin and Huang, Qiuming and Wang, Guangrun and Lin, Liang},
journal = {arXiv preprint arXiv:2506.14512},
year = {2025},
url = {https://arxiv.org/abs/2506.14512}
}
@misc{yin2025spatial,
title = {Spatial Mental Modeling from Limited Views},
author = {Baiqiao Yin and Qineng Wang and Pingyue Zhang and Jianshu Zhang
and Kangrui Wang and Zihan Wang and Jieyu Zhang
and Keshigeyan Chandrasegaran and Han Liu and Ranjay Krishna
and Saining Xie and Manling Li and Jiajun Wu and Li Fei-Fei},
year = {2025},
archivePrefix= {arXiv},
eprint = {2506.21458},
primaryClass = {cs.AI},
url = {https://arxiv.org/abs/2506.21458}
}
- Downloads last month
- 904
Model tree for remyxai/SpaceQwen2.5-VL-3B-Instruct
Dataset used to train remyxai/SpaceQwen2.5-VL-3B-Instruct
Space using remyxai/SpaceQwen2.5-VL-3B-Instruct 1
Collections including remyxai/SpaceQwen2.5-VL-3B-Instruct
Papers for remyxai/SpaceQwen2.5-VL-3B-Instruct
Spatial Mental Modeling from Limited Views
SIRI-Bench: Challenging VLMs' Spatial Intelligence through Complex Reasoning Tasks
SpaCE-10: A Comprehensive Benchmark for Multimodal Large Language Models in Compositional Spatial Intelligence
OmniSpatial: Towards Comprehensive Spatial Reasoning Benchmark for Vision Language Models
SpatialScore: Towards Unified Evaluation for Multimodal Spatial Understanding
Evaluation results
- Overall Success Rate on 3DSRBenchself-reported0.515
- Overall Success Rate on BLINKself-reported0.500
- Overall Success Rate on MMIUself-reported0.304
- Overall Success Rate on MMVPself-reported0.577
- Overall Success Rate on QSpatialBench-Plusself-reported0.366
- Overall Success Rate on QSpatialBench-ScanNetself-reported0.330
- Overall Success Rate on RealWorldQAself-reported0.439
- Overall Success Rate on SpatialSenseself-reported0.655


# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="remyxai/SpaceQwen2.5-VL-3B-Instruct", filename="", )