Differences Between lingbot-map-long, lingbot-map, and lingbot-map-stage1 Checkpoints

The three LingBot-Map checkpoints differ primarily in sequence length optimization, memory utilization, and intended use cases, with lingbot-map-long engineered for 10,000+ frame sequences, lingbot-map serving as a balanced general-purpose option, and lingbot-map-stage1 providing stage-1 pre-training weights for research and fine-tuning.

The LingBot-Map repository ships three distinct model checkpoints, each targeting a specific deployment scenario within video reconstruction pipelines. Understanding the architectural and functional differences between lingbot-map-long, lingbot-map, and lingbot-map-stage1 ensures you select the appropriate variant for your sequence length and computational constraints. These checkpoints share the same underlying codebase but vary in trained weights, KV-cache configurations, and inference capabilities as documented in the repository's README.md Model Download section.

Checkpoint Overview and Selection Criteria

Selecting the correct checkpoint depends on your expected sequence length and whether you require end-user inference or research flexibility.

lingbot-map-long: Extended Sequence Support

The lingbot-map-long checkpoint is optimized for very long video sequences exceeding 10,000 frames and large-scale outdoor scenes such as city-scale reconstructions. This variant implements a larger KV-cache and enhanced drift-correction mechanisms within the full Geometric Context Transformer architecture, preserving anchor context, pose-reference windows, and trajectory memory without sacrificing inference speed. In lingbot_map/models/gct_stream_window.py, the windowed inference implementation supports this checkpoint's ability to maintain approximately 20 FPS while handling extended sequences, making it the recommended default for production deployments involving long runs.

lingbot-map: General-Purpose Balance

The lingbot-map checkpoint provides a balanced configuration ideal for short to medium-length video streams ranging from a few hundred to a few thousand frames. This variant shares the same architecture as the long checkpoint but utilizes a more modest KV-cache size (limited to approximately 320 frames), making it marginally lighter on GPU memory while delivering superior per-frame pose accuracy for shorter sequences. According to the model table in README.md, this checkpoint represents the optimal choice when your target scene fits comfortably within the KV-cache limit and you prioritize accuracy over extreme sequence length support.

lingbot-map-stage1: Research and Pre-training

The lingbot-map-stage1 checkpoint serves as the stage-1 training artifact containing weights after the initial pre-training phase of the Vision-Guided Geometric Transformer (VGGT). Unlike the production checkpoints, this variant supports bidirectional inference (camera-to-world, c2w) and is intended for researchers who need to continue training, experiment with alternative loss functions, or extract intermediate pose encodings. As noted in the repository documentation, this checkpoint is not designed for end-user inference pipelines and requires additional training steps to achieve final model performance.

Memory and Architecture Differences

The primary architectural distinction between the checkpoints lies in KV-cache allocation and trajectory memory management. The lingbot-map-long checkpoint leverages the full implementation in lingbot_map/models/gct_stream_window.py to handle extended sequences without truncation, while the standard lingbot-map uses lingbot_map/models/gct_stream.py with constrained memory windows optimized for shorter streams. The stage-1 checkpoint contains the foundational VGGT weights before the final training phase, lacking the refined drift-correction mechanisms present in the production-ready variants.

Loading Checkpoints in Practice

All three checkpoints integrate into the same inference pipeline and are loaded via the --model_path argument in demo.py. The script automatically selects the appropriate model class (GCTStream or GCTStreamWindow) based on the --mode flag, decoupling the architectural selection from the specific checkpoint weights.


# Example: loading each checkpoint with the demo script

# 1️⃣ lingbot‑map‑long (default for long sequences)

!python demo.py --model_path /path/to/lingbot-map-long.pt \
                --image_folder example/courthouse --mask_sky

# 2️⃣ lingbot‑map (balanced checkpoint)

!python demo.py --model_path /path/to/lingbot-map.pt \
                --image_folder example/university --mask_sky

# 3️⃣ lingbot‑map‑stage1 (stage‑1 training checkpoint)

!python demo.py --model_path /path/to/lingbot-map-stage1.pt \
                --image_folder example/loop --mask_sky

For evaluating the long checkpoint on large-scale outdoor datasets, reference the configuration in benchmark/configs/oxford_long.yaml, which specifies parameters optimized for extended sequence handling.

Summary

  • Use lingbot-map-long when processing very long sequences (10,000+ frames) or large-scale outdoor scenes requiring maximum drift correction and trajectory memory.
  • Use lingbot-map for general-purpose inference on short to medium sequences (up to ~320 frames) where balanced speed and accuracy are prioritized.
  • Use lingbot-map-stage1 for research applications requiring pre-training weights, bidirectional pose encoding, or fine-tuning the Vision-Guided Geometric Transformer.
  • All checkpoints load through the same demo.py interface via the --model_path parameter, with underlying architecture differences handled automatically by the model classes in lingbot_map/models/.

Frequently Asked Questions

Which checkpoint should I choose for city-scale reconstruction?

For city-scale reconstruction involving 10,000+ frames, select lingbot-map-long. This checkpoint implements an expanded KV-cache and enhanced drift-correction mechanisms specifically designed to handle the geometric complexity and extended duration of large outdoor scenes while maintaining real-time performance at approximately 20 FPS.

Can I use lingbot-map-stage1 for standard inference tasks?

No, lingbot-map-stage1 is not intended for end-user inference. This checkpoint contains stage-1 pre-training weights of the Vision-Guided Geometric Transformer and requires additional training to reach production-level accuracy. It is designed for researchers who need to continue training or extract bidirectional camera-to-world (c2w) pose encodings from intermediate model states.

What is the KV-cache limit for the general-purpose lingbot-map checkpoint?

The lingbot-map checkpoint operates with a KV-cache limit of approximately 320 frames, making it suitable for short to medium-length video streams. This constrained memory footprint allows for better per-frame accuracy on shorter sequences while remaining lighter on GPU memory compared to the long-sequence variant.

How do I switch between checkpoints in the inference pipeline?

You switch checkpoints by passing the appropriate file path to the --model_path argument in demo.py. The script automatically instantiates the correct model class (GCTStream or GCTStreamWindow) based on the --mode flag, allowing seamless swapping between lingbot-map, lingbot-map-long, and lingbot-map-stage1 without modifying the underlying codebase.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →