Instructions to use THU98/lingbotva_franka_5task_lora_10k with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use THU98/lingbotva_franka_5task_lora_10k with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("robbyant/lingbot-va-base", dtype=torch.bfloat16, device_map="cuda") pipe.load_lora_weights("THU98/lingbotva_franka_5task_lora_10k") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Draw Things
| license: apache-2.0 | |
| library_name: diffusers | |
| pipeline_tag: robotics | |
| base_model: robbyant/lingbot-va-base | |
| tags: | |
| - robotics | |
| - vision-language-action | |
| - lingbot-va | |
| - lora | |
| - franka | |
| - dual-arm | |
| - real-robot | |
| # LingBot-VA Dual-Franka Five-Task LoRA — 10k | |
| English | [中文说明](#中文说明) | |
| This repository contains a LoRA adapter trained from [`robbyant/lingbot-va-base`](https://huggingface.co/robbyant/lingbot-va-base) on five real-robot manipulation tasks collected with a dual Franka FR3 setup. | |
| The repository is not a standalone full model. Load the base LingBot-VA checkpoint first, then apply `adapter_model.safetensors` using `adapter_config.json`. | |
| ## Tasks and prompts | |
| | Task ID | Training prompt | Episodes used | | |
| |---|---|---:| | |
| | `place_bowl_on_cabinet` | `Place the green bowl on top of the cabinet with the left arm.` | 49 | | |
| | `place_bowl_on_plate_pt2` | `Place the green bowl on the blue plate with the left arm.` | 18 | | |
| | `place_bowl_on_plate` | `Place the gray bowl on the green plate with the left arm.` | 49 | | |
| | `place_cup_on_tray` | `Place the cup on the tray with the left arm.` | 50 | | |
| | `tape_on_basket` | `Place the tape in the green basket with the left arm.` | 50 | | |
| Total training episodes: 216. The dataset is imbalanced because only 18 `place_bowl_on_plate_pt2` trajectories passed the strict LingBot-VA conversion/alignment checks. | |
| ## Inputs and outputs | |
| - Visual inputs: chest, left-wrist, and right-wrist RGB streams | |
| - Language conditioning: exact task prompt listed above | |
| - Training representation: video features pre-encoded as Wan2.2 VAE visual latents, with text embeddings | |
| - Robot-state input: no `observation.state` was supplied to this LingBot-VA training run | |
| - Source action: 16 dimensions — left 7 joints + left gripper + right 7 joints + right gripper | |
| - LingBot action layout: the 16 source dimensions are scattered into a 30-dimensional canonical layout; unused Cartesian channels are masked/padded | |
| ## Training configuration | |
| | Setting | Value | | |
| |---|---| | |
| | Base model | `robbyant/lingbot-va-base` | | |
| | Method | LoRA SFT | | |
| | Trainable parameters | 47,185,920 | | |
| | LoRA rank / alpha / dropout | 32 / 32 / 0.05 | | |
| | Target modules | self- and cross-attention Q/K/V/output projections | | |
| | Training steps | 10,000 | | |
| | Hardware | 4 × NVIDIA A100 80GB | | |
| | Per-device / global batch | 1 / 4 | | |
| | Gradient accumulation | 1 | | |
| | Learning rate | `5e-5`, 10-step warmup | | |
| | Adam betas / weight decay | 0.9, 0.95 / 0.1 | | |
| | Precision | bfloat16 | | |
| | Checkpoint interval | 1,000 steps | | |
| | Final checkpoint | `checkpoint_step_10000` | | |
| At step 9,999, the logged losses were: latent `0.0806`, action `0.00481`, total `0.0854`. These are training losses, not task success rates. | |
| ## Repository contents | |
| - `adapter_model.safetensors`: LoRA weights | |
| - `adapter_config.json`: rank, alpha, dropout, target modules, and base-model reference | |
| - `training_state.pt`: optimizer/scheduler/RNG state for the original training environment | |
| `training_state.pt` may contain Python-serialized objects. Only load it with `torch.load` if you trust this repository and need training resumption. It is not required for inference. | |
| ## Download and loading | |
| ```bash | |
| hf download robbyant/lingbot-va-base --local-dir ./lingbot-va-base | |
| hf download THU98/lingbotva_franka_5task_lora_10k \ | |
| --local-dir ./lingbotva_franka_5task_lora_10k | |
| ``` | |
| Use the official LingBot-VA repository and its post-training/inference code: | |
| ```bash | |
| git clone https://github.com/Robbyant/lingbot-va.git | |
| ``` | |
| Configure the base path as `./lingbot-va-base` and the adapter path as: | |
| ```text | |
| ./lingbotva_franka_5task_lora_10k/adapter_model.safetensors | |
| ``` | |
| The exact adapter targets are stored in `adapter_config.json`. Use the dual-Franka joint configuration and the same 16-to-30-dimensional action-channel mapping used during training. Generic PEFT loading is not guaranteed because the training code uses the LingBot-VA LoRA integration. | |
| ## Evaluation status | |
| No controlled real-robot success-rate evaluation is published with this adapter. No held-out validation set was used to select the final checkpoint. Loss reduction alone does not demonstrate safe or successful robot execution. | |
| ## Intended use and limitations | |
| - Research use with the official LingBot-VA base model and a matching dual Franka setup. | |
| - The data are small, task-specific, imbalanced, and dominated by left-arm behaviors. | |
| - The adapter was trained without proprioceptive `observation.state` input; behavior depends heavily on visual calibration and temporal alignment. | |
| - It is not validated for different robots, viewpoints, objects, control frequencies, action conventions, or prompt paraphrases. | |
| - Validate action-channel mapping, normalization, camera order, control rate, latency, collision avoidance, and emergency stops before deployment. | |
| - Human supervision and independent robot safety controls are required. | |
| ## 中文说明 | |
| 这是基于 `robbyant/lingbot-va-base` 训练的双 Franka FR3 五任务 LoRA adapter,不是可以独立加载的完整模型。推理时需要先加载 LingBot-VA base,再加载本仓库中的 `adapter_model.safetensors`。 | |
| 训练使用三路相机的视觉 latent 和 Language Instruction,没有把 16 维 `observation.state` 作为模型输入。源动作是 16 维双臂关节与夹爪动作,并映射到 LingBot-VA 的 30 维动作布局。五个任务共使用 216 条轨迹,其中 `place_bowl_on_plate_pt2` 只有 18 条通过严格数据校验,因此数据分布不均衡。 | |
| 当前没有发布正式真机成功率。部署前必须核对 base 版本、LoRA target、相机顺序、动作通道、归一化、控制频率以及真机安全限制。 | |
| ## Sources and citation | |
| - LingBot-VA repository: https://github.com/Robbyant/lingbot-va | |
| - Base model: https://huggingface.co/robbyant/lingbot-va-base | |
| - Paper: https://huggingface.co/papers/2601.21998 | |
| ```bibtex | |
| @article{lingbotva2026, | |
| title={Causal World Modeling for Robot Control}, | |
| journal={arXiv preprint arXiv:2601.21998}, | |
| year={2026} | |
| } | |
| ``` | |