Robotics
Transformers
Safetensors
qwen3_vl
image-text-to-text
embodied-navigation
vision-language-navigation
visual-tracking
vision-language-action
qwen3-vl
Instructions to use LightOriginsHQ/LightNav-0 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use LightOriginsHQ/LightNav-0 with Transformers:
# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("LightOriginsHQ/LightNav-0") model = AutoModelForMultimodalLM.from_pretrained("LightOriginsHQ/LightNav-0", device_map="auto") - Notebooks
- Google Colab
- Kaggle
File size: 3,867 Bytes
59ec49d 850f2cc 68aceb5 850f2cc 59ec49d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | ---
license: apache-2.0
library_name: transformers
pipeline_tag: robotics
base_model: Qwen/Qwen3-VL-4B-Instruct
tags:
- embodied-navigation
- vision-language-navigation
- visual-tracking
- vision-language-action
- qwen3-vl
- robotics
---
# LightNav-0
**LightNav-0: Eliciting VLM Spatial Intelligence for Generalist Embodied Navigation**
LightNav-0 is a compact generalist embodied navigation model that elicits the spatial
intelligence of a pretrained vision-language model (Qwen3-VL) and aligns it with navigation,
without task-specific prediction heads. Diverse tasks share one token interface: dual-channel
pointing expresses task-, scene- and embodiment-agnostic spatial intent, and a residual
vector-quantized (RVQ) action tokenizer maps that intent to precise, embodiment-specific
trajectories — so instruction following, open-vocabulary object navigation and visual
tracking live in a single model.
Inference, serving and evaluation code: **[LightNav-0 repository](https://github.com/lightrobo/LightNav-0)**.
## Files
| Path | Content |
|---|---|
| `config.json`, `model-*.safetensors`, `model.safetensors.index.json` | Qwen3-VL weights (bf16) with the navigation token embeddings |
| `tokenizer.json`, `tokenizer_config.json`, `chat_template.jinja`, `processor_config.json` | tokenizer / processor |
| `eval_config.json` | processing parameters that must match training (video size, pooling, SlowFast history tiers, task settings); read automatically by the inference code |
| `action_tokenizer/` | RVQ action-tokenizer bundle shared by navigation and tracking (one 3 × 256 residual codebook, horizon 10) |
The bundle holds `manifest.json`, the per-level codebooks (`codebook_l{0,1,2}.npy`, 3 × 256 codes),
`jacobian_weights.npy` and `alpha_per_source.json`. The model emits one `<act_l{level}_{code}>`
token per level; the bundle decodes them into a `(10, 3)` chunk of robot-local waypoints
`[forward_m, lateral_m (+left), yaw_rad (+ccw)]`. `eval_config.json` references the bundle by a
path relative to this directory, so the inference code finds them without extra flags.
## Usage
```bash
pip install "lightnav[vllm,video] @ git+https://github.com/lightrobo/LightNav-0"
hf download LightOriginsHQ/LightNav-0 --local-dir ./LightNav-0-ckpt
# offline prediction on a clip
lightnav-predict --model_path ./LightNav-0-ckpt --backend vllm_local \
--video clip.mp4 --fps 4 --instruction "follow the person in the red shirt"
# serve (tracking prompt) and drive with the reference client
lightnav-serve --task tracking --model_path ./LightNav-0-ckpt --backend vllm_local --port 8050
lightnav-ws-client --server ws://localhost:8050 --video clip.mp4 --fps 4 \
--instruction "follow the person in the red shirt"
# navigation prompt (instruction following / object navigation)
lightnav-serve --task vln --model_path ./LightNav-0-ckpt --backend vllm_local --port 8051
```
Habitat VLN-CE / ObjectNav and EVT-Bench evaluation recipes, the WebSocket protocol and the
real-robot deployment guide are in the code repository's `docs/`.
## Model details
- Backbone: Qwen3-VL (4B), bf16; the trajectory / pointing tokens are ordinary rows of the
embedding table, so the checkpoint loads with stock `transformers`.
- Input: a SlowFast-compressed history of first-person RGB frames (model input 256×448, 4 fps)
plus a natural-language instruction.
- Output: dual-channel pointing tokens (`<apos_*>` / `<opos_*>`) followed by three RVQ action
tokens (`<act_l0_*><act_l1_*><act_l2_*>`) decoded to a 10-step waypoint chunk.
## Community
Questions, deployment notes and release news — join us on
[Discord](https://discord.gg/zwZuD9JG), or scan to join the WeChat group:
<div align="center">
<img src="wechat_group.png" alt="WeChat QR code for the LightOrigins discussion group" width="280"/>
</div>
## License
Apache License 2.0.
|