felixcheng97 commited on
Commit
dcf6cf2
Β·
verified Β·
1 Parent(s): 5fb2534

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +239 -0
README.md CHANGED
@@ -1,3 +1,242 @@
1
  ---
2
  license: apache-2.0
3
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
  license: apache-2.0
3
  ---
4
+
5
+ # LingBot-Video
6
+
7
+ **🌐 [Project Page](https://technology.robbyant.com/lingbot-video)** | **πŸ€— [Hugging Face](https://huggingface.co/collections/robbyant/lingbot-video)** | **πŸ€– [ModelScope](https://www.modelscope.cn/collections/Robbyant/LingBot-Video)** | **πŸ“„ [Paper](https://github.com/Robbyant/lingbot-video/blob/main/paper.pdf)** | **βš–οΈ [License](LICENSE.txt)**
8
+
9
+ We are excited to introduce **LingBot-Video**, the first open-source large-scale MoE (Mixture-of-Experts) video generation model dedicated to embodied intelligence. As a top-tier video model, LingBot-Video is designed to bridge the gap between video synthesis and physical world understanding.
10
+
11
+ ## πŸ”₯ Key Highlights
12
+
13
+ * **πŸš€ Efficient MoE Architecture**: Scaled from scratch; balanced between capacity and cost with **~3x** faster inference.
14
+ * **πŸ“¦ Data Engine**: Trained on massive web videos integrated with **70,000+ hours** of embodied data.
15
+ * **βš–οΈ Multi Reward System**: Rewarded for **high aesthetics**, **physical rationality**, and **task completion**.
16
+
17
+ ## πŸ”₯ Latest News
18
+
19
+ - July 9, 2026: πŸŽ‰ We release the technical report, code, models, rewriters for LingBot-Video.
20
+
21
+ ## πŸ“¦ Model Download
22
+
23
+ | Model Name | Components | Tasks | Download |
24
+ | --- | --- | --- | --- |
25
+ | ⚑ LingBot-Video-Dense | Dense (1.3B) | T2I, T2V, TI2V | πŸ€— [Huggingface](https://huggingface.co/robbyant/lingbot-video-dense-1.3b)   πŸ€– [ModelScope](https://www.modelscope.cn/models/Robbyant/lingbot-video-dense-1.3b) |
26
+ | πŸ’ͺ LingBot-Video-MoE | MoE (30B-A3B) + Refiner | T2I, T2V, TI2V, Refinement | πŸ€— [Huggingface](https://huggingface.co/robbyant/lingbot-video-moe-30b-a3b)   πŸ€– [ModelScope](https://www.modelscope.cn/models/Robbyant/lingbot-video-moe-30b-a3b) |
27
+ | πŸ“ LingBot-Video-Rewriter-Base | Qwen3.6-27B official | Prompt rewriter (Expand) | πŸ€— [Huggingface](https://huggingface.co/Qwen/Qwen3.6-27B)   πŸ€– [ModelScope](https://www.modelscope.cn/models/Qwen/Qwen3.6-27B) |
28
+ | πŸ“ LingBot-Video-Rewriter-Adapter | Qwen3.6-27B LoRA | Prompt rewriter (Json) | πŸ€— [Huggingface](https://huggingface.co/robbyant/lingbot-video-rewriter-lora)   πŸ€– [ModelScope](https://www.modelscope.cn/models/Robbyant/lingbot-video-rewriter-lora) |
29
+
30
+ ## πŸš€ Quick Start
31
+
32
+ ### πŸ› οΈ Installation
33
+
34
+ The root `requirements.txt` includes the recommended PyTorch build for LingBot-Video inference.
35
+
36
+ ```bash
37
+ git clone https://github.com/Robbyant/lingbot-video
38
+ cd lingbot-video
39
+
40
+ python -m venv .venv
41
+ source .venv/bin/activate
42
+ python -m pip install -U pip
43
+
44
+ # Base requirements cover direct DiT inference and rewriter --backend transformers.
45
+ pip install -r requirements.txt
46
+ pip install -e .
47
+ ```
48
+
49
+ > **πŸ’‘ Rewriter deployment**: the bundled rewriter uses the single-process
50
+ > `transformers` backend. For higher throughput, deploy the VLM yourself and call
51
+ > it through an OpenAI-compatible API. Preserve the two-stage semantics: step 1
52
+ > must use the base VLM without the rewriter LoRA, while step 2 must use the same
53
+ > base VLM with the rewriter LoRA enabled. This can be implemented with two
54
+ > endpoints, or with one server that can select the adapter per request. See
55
+ > [vLLM](https://docs.vllm.ai) / [SGLang](https://docs.sglang.ai) official docs.
56
+
57
+ Install the optional SGLang dependencies only when using SGLang Diffusion or the
58
+ fused / FP8 MoE runtime:
59
+
60
+ ```bash
61
+ python -m pip install --no-deps -r requirements-sglang.txt
62
+ ```
63
+
64
+ Recommended runtime versions:
65
+
66
+ | Package | Version |
67
+ | --- | --- |
68
+ | `Python` | `>=3.10` |
69
+ | `torch` | `2.12.0.dev20260220+cu130` (recommended) |
70
+ | `torchvision` | `0.26.0.dev20260220+cu130` (recommended) |
71
+ | `transformers` | `5.8.1` |
72
+ | `diffusers` | `0.39.0` |
73
+ | `peft` | `0.19.1` |
74
+ | `json_repair` | `>=0.30` |
75
+ | `decord` | `>=0.6.0` |
76
+ | `safetensors` | `>=0.4.5` |
77
+
78
+ ### 🎬 Inference
79
+
80
+ #### 🧭 Recommended Inference Workflow
81
+
82
+ LingBot-Video DiT inference is designed to consume structured JSON captions,
83
+ not casual natural-language prompts. The recommended public workflow is:
84
+
85
+ 1. Rewrite the user's plain prompt with
86
+ Prompt Rewriter.
87
+ For TI2V, pass the same first frame to the rewriter.
88
+ 2. Run Auto Negative by
89
+ default to prune the negative prompt for this specific caption.
90
+ 3. Run the unified inference runner with `--prompt_json` and select direct
91
+ diffusers or SGLang Diffusion through `--backend`.
92
+
93
+ Backend choices:
94
+
95
+ - `diffusers`: direct diffusers reference path.
96
+ - `sglang`: SGLang Diffusion path. If the optional SGLang package is not
97
+ installed, it automatically falls back to direct diffusers and prints a
98
+ warning. Install `requirements-sglang.txt` to enable the SGLang runtime.
99
+
100
+ For multi-GPU inference, add `--enable_fsdp_inference` to shard the base DiT and
101
+ refiner DiT on GPU. This reduces GPU memory pressure after loading, but each
102
+ rank still constructs the transformer on host memory before FSDP sharding; make
103
+ sure the machine has enough system RAM for large MoE checkpoints.
104
+
105
+ ```bash
106
+ # Model root (released Dense or MoE package) and rewriter weights.
107
+ export MODEL_DIR="<path_to_lingbot-video-model>"
108
+ export REWRITER_BASE_MODEL="<path_to_rewriter_base_vlm>"
109
+ export REWRITER_ADAPTER="<path_to_rewriter_lora>"
110
+
111
+ python rewriter/inference.py --backend transformers --mode t2v \
112
+ --prompt "<plain_user_prompt>" --duration 5 --output prompt.json
113
+
114
+ # Recommended Auto Negative block. If skipped, remove --negative_prompt_json from
115
+ # the DiT inference command.
116
+ python rewriter/auto_negative.py --backend transformers --mode t2v \
117
+ --caption prompt.json --output negative.json
118
+
119
+ export BACKEND=diffusers # or: sglang
120
+
121
+ python scripts/inference.py \
122
+ --backend "$BACKEND" \
123
+ --model_dir "$MODEL_DIR" \
124
+ --run_refiner \
125
+ --mode t2v \
126
+ --prompt_json prompt.json \
127
+ --negative_prompt_json negative.json \
128
+ --output "<output_dir>/base.mp4" \
129
+ --refiner_output "<output_dir>/refined.mp4" \
130
+ --height 480 \
131
+ --width 832 \
132
+ --fps 24 \
133
+ --steps 40 \
134
+ --refiner_steps 8 \
135
+ --guidance_scale 3 \
136
+ --refiner_guidance_scale 3 \
137
+ --shift 3 \
138
+ --refiner_shift 3 \
139
+ --transformer_dtype bf16 \
140
+ --text_encoder_dtype bf16 \
141
+ --vae_dtype fp32 \
142
+ --refiner_vae_dtype fp32 \
143
+ --reuse_condition_features
144
+ ```
145
+
146
+ Ready-to-run scripts are provided for single-GPU and multi-GPU inference. Set
147
+ your environment and model path first:
148
+
149
+ ```bash
150
+ source .venv/bin/activate
151
+ export PYTHON_BIN=python
152
+ export DENSE_MODEL_DIR="<path_to_lingbot-video-dense>"
153
+ export MOE_MODEL_DIR="<path_to_lingbot-video-moe>"
154
+ ```
155
+
156
+ Single-GPU scripts use direct diffusers and batched CFG by default. They run
157
+ base generation only.
158
+
159
+ ```bash
160
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/single-gpu/run_dense_t2i.sh
161
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/single-gpu/run_dense_t2v.sh
162
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/single-gpu/run_dense_ti2v.sh
163
+
164
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/single-gpu/run_moe_t2i.sh
165
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/single-gpu/run_moe_t2v.sh
166
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/single-gpu/run_moe_ti2v.sh
167
+ ```
168
+
169
+ Multi-GPU no-refiner scripts use the same inference arguments as the single-GPU
170
+ scripts, plus CP8 and FSDP:
171
+
172
+ ```bash
173
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_dense_t2i_fsdp_cp8.sh
174
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_dense_t2v_fsdp_cp8.sh
175
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_dense_ti2v_fsdp_cp8.sh
176
+
177
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_moe_t2i_fsdp_cp8.sh
178
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_moe_t2v_fsdp_cp8.sh
179
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus-no-refiner/run_moe_ti2v_fsdp_cp8.sh
180
+ ```
181
+
182
+ Multi-GPU refiner scripts use CP8 + FSDP + batched CFG by default. They also
183
+ default to direct diffusers; set `BACKEND=sglang` externally when you want to
184
+ exercise SGLang Diffusion. MoE multi-GPU T2V/TI2V scripts additionally run the
185
+ refiner.
186
+
187
+ ```bash
188
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus/run_dense_t2i_fsdp_cp8.sh
189
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus/run_dense_t2v_fsdp_cp8.sh
190
+ MODEL_DIR="$DENSE_MODEL_DIR" ./scripts/multi-gpus/run_dense_ti2v_fsdp_cp8.sh
191
+
192
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus/run_moe_t2i_fsdp_cp8.sh
193
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus/run_moe_t2v_refiner_fsdp_cp8.sh
194
+ MODEL_DIR="$MOE_MODEL_DIR" ./scripts/multi-gpus/run_moe_ti2v_refiner_fsdp_cp8.sh
195
+ ```
196
+
197
+ All scripts accept the same environment overrides, such as `PROMPT_JSON`,
198
+ `IMAGE`, `OUT_DIR`, `HEIGHT`, `WIDTH`, `STEPS`, `GUIDANCE_SCALE`, `SHIFT`,
199
+ `SEED`, `FPS`, `BACKEND`, and `PYTHON_BIN`. Refiner scripts also accept
200
+ `REFINER_HEIGHT`, `REFINER_WIDTH`, `REFINER_STEPS`,
201
+ `REFINER_GUIDANCE_SCALE`, `REFINER_SHIFT`, `REFINER_T_THRESH`, and
202
+ `REFINER_SIGMA_TAIL_STEPS`. MoE scripts default to grouped expert execution
203
+ (`LINGBOT_MOE_EXPERT_BACKEND=grouped_mm`).
204
+
205
+ See English Docs or δΈ­ζ–‡ζ–‡ζ‘£ for the
206
+ detailed prompt rewrite, auto-negative, TI2V, base-only/refiner, distributed
207
+ SGLang, and speed-first FP8 workflows.
208
+
209
+ ## πŸ“Š Benchmarks
210
+
211
+ ### πŸ›οΈ Public Benchmark
212
+
213
+ As of July 9th, 2026, LingBot-Video ranks top in [RBench Leaderboard](https://huggingface.co/spaces/DAGroup-PKU/RBench-Leaderboard).
214
+
215
+ | Models | Open-source | Avg. | Manip. | Spatial | Multi-entity | Long-hor. | Reasoning | Single arm | Dual arm | Quadruped | Humanoid |
216
+ | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
217
+ | **LingBot-Video (Ours)** | βœ… | **0.620** | **0.578** | <u>0.643</u> | 0.444 | **0.634** | <u>0.505</u> | 0.636 | 0.639 | **0.758** | 0.689 |
218
+ | Cosmos3 Super | βœ… | 0.581 | 0.487 | 0.642 | 0.444 | <u>0.591</u> | 0.395 | 0.615 | 0.623 | <u>0.739</u> | <u>0.691</u> |
219
+ | LongCat-Video | βœ… | 0.437 | 0.372 | 0.310 | 0.220 | 0.384 | 0.186 | 0.586 | 0.576 | 0.681 | 0.621 |
220
+ | Wan 2.2 A14B | βœ… | 0.507 | 0.381 | 0.454 | 0.373 | 0.501 | 0.330 | 0.608 | 0.582 | 0.690 | 0.648 |
221
+ | HunyuanVideo 1.5 | βœ… | 0.460 | 0.442 | 0.316 | 0.312 | 0.438 | 0.364 | 0.513 | 0.526 | 0.634 | 0.595 |
222
+ | Wan 2.6 | ❌ | <u>0.607</u> | 0.546 | **0.656** | <u>0.479</u> | 0.514 | **0.531** | **0.666** | **0.681** | 0.723 | 0.667 |
223
+ | Seedance 1.5 pro | ❌ | 0.584 | <u>0.577</u> | 0.495 | **0.484** | 0.570 | 0.470 | <u>0.648</u> | <u>0.641</u> | 0.680 | **0.692** |
224
+ | Veo 3 | ❌ | 0.563 | 0.521 | 0.508 | 0.430 | 0.530 | 0.504 | 0.634 | 0.610 | 0.689 | 0.637 |
225
+
226
+
227
+ *Note: **Bold** indicates the best performance, and <u>underline</u> indicates the second best.*
228
+
229
+ ## βš–οΈ License
230
+ This project is licensed under the Apache 2.0 License. Please refer to the [LICENSE file](LICENSE) for the full text, including details on rights and restrictions.
231
+
232
+ ## πŸ“š Citation
233
+ If you find this work useful for your research, please cite our paper:
234
+
235
+ ```bibtex
236
+ @article{lingbot-video,
237
+ title = {Scaling Mixture-of-Experts Video Pretraining for Embodied Intelligence},
238
+ author = {Shuailei Ma and Jiaqi Liao and Xinyang Wang and Jingjing Wang and Chaoran Feng and Zijing Hu and Chong Bao and Zichen Xi and Yuqi Gan and Weisen Wang and Yanhong Zeng and Qin Zhao and Zifan Shi and Wei Wu and Hao Ouyang and Qiuyu Wang and Shangzhan Zhang and Jiahao Shao and Yipengjing Sun and Liangxiao Hu and Lunke Pan and Nan Xue and Kecheng Zheng and Yinghao Xu and Xing Zhu and Yujun Shen and Ka Leong Cheng},
239
+ journal={arXiv preprint arXiv:2607.xxxxx},
240
+ year = {2026}
241
+ }
242
+ ```