Update README_zh.md
Browse files- README_zh.md +103 -147
README_zh.md
CHANGED
|
@@ -41,22 +41,46 @@
|
|
| 41 |
</p>
|
| 42 |
</div>
|
| 43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
## 🌟 亮点
|
| 45 |
|
| 46 |
-
Lance 是一个
|
|
|
|
|
|
|
|
|
|
| 47 |
|
| 48 |
-
|
| 49 |
-
- **从零训练。** Lance 采用分阶段多任务训练配方,在 **128 张 A100 GPU** 的预算内从零完成训练。
|
| 50 |
|
| 51 |
<div align="center">
|
| 52 |
<img src="assets/benchmarks/benchmark-overview.png" alt="Lance benchmark overview across image generation, image editing, video generation, and video understanding" width="980">
|
| 53 |
</div>
|
| 54 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 55 |
## 🎨 演示
|
| 56 |
|
| 57 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 58 |
|
| 59 |
-
<
|
|
|
|
|
|
|
| 60 |
<tr>
|
| 61 |
<td><a href="assets/text-to-video/videos/text-to-video-demo-01.mp4"><img src="assets/text-to-video/previews/text-to-video-demo-01.gif" width="100%"></a></td>
|
| 62 |
<td><a href="assets/text-to-video/videos/text-to-video-demo-02.mp4"><img src="assets/text-to-video/previews/text-to-video-demo-02.gif" width="100%"></a></td>
|
|
@@ -71,9 +95,9 @@ Lance 是一个轻量级、原生统一的多模态模型,在单一框架下
|
|
| 71 |
</tr>
|
| 72 |
</table>
|
| 73 |
|
| 74 |
-
|
| 75 |
|
| 76 |
-
<table>
|
| 77 |
<tr>
|
| 78 |
<td><a href="assets/video-editing/videos/video-editing-demo-01.mp4"><img src="assets/video-editing/previews/video-editing-demo-01.gif" width="100%"></a></td>
|
| 79 |
<td><a href="assets/video-editing/videos/video-editing-demo-02.mp4"><img src="assets/video-editing/previews/video-editing-demo-02.gif" width="100%"></a></td>
|
|
@@ -88,7 +112,7 @@ Lance 是一个轻量级、原生统一的多模态模型,在单一框架下
|
|
| 88 |
</tr>
|
| 89 |
</table>
|
| 90 |
|
| 91 |
-
|
| 92 |
|
| 93 |
<div align="center">
|
| 94 |
<a href="assets/multi-turn-editing/videos/multi-turn-editing-demo-01.mp4">
|
|
@@ -96,9 +120,9 @@ Lance 是一个轻量级、原生统一的多模态模型,在单一框架下
|
|
| 96 |
</a>
|
| 97 |
</div>
|
| 98 |
|
| 99 |
-
|
| 100 |
|
| 101 |
-
<table>
|
| 102 |
<tr>
|
| 103 |
<td><a href="assets/intelligent-video/videos/intelligent-video-demo-01.mp4"><img src="assets/intelligent-video/previews/intelligent-video-demo-01.gif" width="100%"></a></td>
|
| 104 |
<td><a href="assets/intelligent-video/videos/intelligent-video-demo-02.mp4"><img src="assets/intelligent-video/previews/intelligent-video-demo-02.gif" width="100%"></a></td>
|
|
@@ -107,111 +131,7 @@ Lance 是一个轻量级、原生统一的多模态模型,在单一框架下
|
|
| 107 |
</tr>
|
| 108 |
</table>
|
| 109 |
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
<div align="center">
|
| 113 |
-
<table>
|
| 114 |
-
<tr>
|
| 115 |
-
<td align="left" valign="top" width="33%">
|
| 116 |
-
<a href="assets/video-understanding/videos/video-understanding-vqa-01.mp4">
|
| 117 |
-
<img src="assets/video-understanding/previews/video-understanding-vqa-01.gif" width="100%">
|
| 118 |
-
</a>
|
| 119 |
-
<p><strong>问题:</strong> How many times did the person launch objects on the table? Options: (A) 3 (B) 2 (C) 4</p>
|
| 120 |
-
<p><strong>回答:</strong> (A) 3</p>
|
| 121 |
-
</td>
|
| 122 |
-
<td align="left" valign="top" width="33%">
|
| 123 |
-
<a href="assets/video-understanding/videos/video-understanding-vqa-02.mp4">
|
| 124 |
-
<img src="assets/video-understanding/previews/video-understanding-vqa-02.gif" width="100%">
|
| 125 |
-
</a>
|
| 126 |
-
<p><strong>问题:</strong> The person makes sets of repeated actions. How many distinct repeated actions did the person do? Options: (A) 2 (B) 3 (C) 4</p>
|
| 127 |
-
<p><strong>回答:</strong> (A) 2</p>
|
| 128 |
-
</td>
|
| 129 |
-
<td align="left" valign="top" width="33%">
|
| 130 |
-
<a href="assets/video-understanding/videos/video-understanding-vqa-03.mp4">
|
| 131 |
-
<img src="assets/video-understanding/previews/video-understanding-vqa-03.gif" width="100%">
|
| 132 |
-
</a>
|
| 133 |
-
<p><strong>问题:</strong> In which direction does the purple sphere move in the video? Options: (A) Down and to the right. (B) Up and to the left. (C) Up and to the right. (D) The object is stationary.</p>
|
| 134 |
-
<p><strong>回答:</strong> (A) Down and to the right.</p>
|
| 135 |
-
</td>
|
| 136 |
-
</tr>
|
| 137 |
-
<tr>
|
| 138 |
-
<td align="left" valign="top" width="33%">
|
| 139 |
-
<a href="assets/video-understanding/videos/video-understanding-vqa-04.mp4">
|
| 140 |
-
<img src="assets/video-understanding/previews/video-understanding-vqa-04.gif" width="100%">
|
| 141 |
-
</a>
|
| 142 |
-
<p><strong>问题:</strong> What is the unrealistic phenomenon displayed in the video? Options: (A) The man can manipulate time via phone. (B) Man grabs an object through a phone screen. (C) Chocolate transforms into different objects. (D) Visible means of propulsion enables flight.</p>
|
| 143 |
-
<p><strong>回答:</strong> (B) Man grabs an object through a phone screen.</p>
|
| 144 |
-
</td>
|
| 145 |
-
<td align="left" valign="top" width="33%">
|
| 146 |
-
<a href="assets/video-understanding/videos/video-understanding-caption-short-01.mp4">
|
| 147 |
-
<img src="assets/video-understanding/previews/video-understanding-caption-short-01.gif" width="100%">
|
| 148 |
-
</a>
|
| 149 |
-
<p><strong>问题:</strong> Offer a succinct account of the culinary process shown in this video.</p>
|
| 150 |
-
<p><strong>回答:</strong> Add tomato puree and mix it well with chicken pieces.</p>
|
| 151 |
-
</td>
|
| 152 |
-
<td align="left" valign="top" width="33%">
|
| 153 |
-
<a href="assets/video-understanding/videos/video-understanding-caption-long-01.mp4">
|
| 154 |
-
<img src="assets/video-understanding/previews/video-understanding-caption-long-01.gif" width="100%">
|
| 155 |
-
</a>
|
| 156 |
-
<p><strong>问题:</strong> Provide a detailed description of the given video, capturing its key moments.</p>
|
| 157 |
-
<p><strong>回答:</strong> In a sunlit meadow, a small tortoiseshell butterfly rests on a purple flower. A bee, with black and yellow stripes, lands on the same flower. The butterfly flaps its wings gently, while the bee busies itself, collecting nectar. The flower sways slightly in the breeze. The butterfly then takes off, and the bee follows, both heading to the next flower. The scene is a vivid display of insect interaction in a natural setting, with the colors of the butterfly and the bee contrasting against the green background of the meadow. The video captures this peaceful moment in a short 6-second duration.</p>
|
| 158 |
-
</td>
|
| 159 |
-
</tr>
|
| 160 |
-
</table>
|
| 161 |
-
</div>
|
| 162 |
-
|
| 163 |
-
### 文生图
|
| 164 |
-
|
| 165 |
-
<div align="center">
|
| 166 |
-
<img src="assets/text-to-image/text-to-image-overview.webp" alt="Lance text-to-image generation examples" width="100%">
|
| 167 |
-
</div>
|
| 168 |
-
|
| 169 |
-
### 图像编辑
|
| 170 |
-
|
| 171 |
-
<div align="center">
|
| 172 |
-
<img src="assets/image-editing/image-editing-overview.webp" alt="Lance image editing examples" width="100%">
|
| 173 |
-
</div>
|
| 174 |
-
|
| 175 |
-
### 图像理解
|
| 176 |
-
|
| 177 |
-
<div align="center">
|
| 178 |
-
<table>
|
| 179 |
-
<tr>
|
| 180 |
-
<td align="left" valign="top" width="33%">
|
| 181 |
-
<img src="assets/image-understanding/cases/image-understanding-case-01.png" alt="Pie chart reasoning case" width="100%">
|
| 182 |
-
<p><strong>问题:</strong> Is the largest segment greater than sum of all the other segments?</p>
|
| 183 |
-
<p><strong>回答:</strong> Yes, the largest segment in the pie chart is the blue one, which is the most populous segment.</p>
|
| 184 |
-
</td>
|
| 185 |
-
<td align="left" valign="top" width="33%">
|
| 186 |
-
<img src="assets/image-understanding/cases/image-understanding-case-02.png" alt="Survey chart about border security priorities" width="100%">
|
| 187 |
-
<p><strong>问题:</strong> What percentage of respondents want better border security?</p>
|
| 188 |
-
<p><strong>回答:</strong> 29%</p>
|
| 189 |
-
</td>
|
| 190 |
-
<td align="left" valign="top" width="33%">
|
| 191 |
-
<img src="assets/image-understanding/cases/image-understanding-case-03.png" alt="License plate recognition case" width="100%">
|
| 192 |
-
<p><strong>问题:</strong> What is the license plate number of the car?</p>
|
| 193 |
-
<p><strong>回答:</strong> The license plate number of the car is BX62 BFY.</p>
|
| 194 |
-
</td>
|
| 195 |
-
</tr>
|
| 196 |
-
<tr>
|
| 197 |
-
<td align="left" valign="top" width="33%">
|
| 198 |
-
<img src="assets/image-understanding/cases/image-understanding-case-04.png" alt="Market research chart reasoning case" width="100%">
|
| 199 |
-
<p><strong>问题:</strong> According to the data from the proprietary market research, how much amount was spent on the promotional meetings and events during 1998?</p>
|
| 200 |
-
<p><strong>回答:</strong> According to the data from the proprietary market research, the total amount spent on the promotional meetings and events during 1998 was approximately $1.3 billion.</p>
|
| 201 |
-
</td>
|
| 202 |
-
<td align="left" valign="top" width="33%">
|
| 203 |
-
<img src="assets/image-understanding/cases/image-understanding-case-05.png" alt="Colosseum description case" width="100%">
|
| 204 |
-
<p><strong>问题:</strong> What is the appearance of the Colosseum in Rome, Italy?</p>
|
| 205 |
-
<p><strong>回答:</strong> The Colosseum in Rome, Italy is a magnificent ancient amphitheater made of stone and concrete. It is characterized by its large, arched openings and its semi-circular shape. The Colosseum has been partially restored, and its original color has faded, but the architectural details, like the columns and the semi-circular arches, are still visible. The lighting in the image highlights the grandeur and historical significance of the Colosseum, making it stand out against the backdrop of the evening sky.</p>
|
| 206 |
-
</td>
|
| 207 |
-
<td align="left" valign="top" width="33%">
|
| 208 |
-
<img src="assets/image-understanding/cases/image-understanding-case-06.png" alt="Total solar eclipse case" width="100%">
|
| 209 |
-
<p><strong>问题:</strong> How does a total solar eclipse look like from Earth?</p>
|
| 210 |
-
<p><strong>回答:</strong> A total solar eclipse looks like a dark circle with a bright, white outer edge. This is a result of the Earth's rotation and the Earth's shadow, which partially obscures the sun's light. The bright white edge of the eclipse is caused by the sun's high energy and its interaction with the Earth's atmosphere, while the dark part of the eclipse is due to the Earth's shadow and the surrounding air currents. The solar eclipse's shape, with its bright white edge and dark center, is similar to the shape of a full moon or a dark disk. It is a natural phenomenon that occurs in the atmosphere of the Earth and is an important part of the solar system.</p>
|
| 211 |
-
</td>
|
| 212 |
-
</tr>
|
| 213 |
-
</table>
|
| 214 |
-
</div>
|
| 215 |
|
| 216 |
## 🚀 安装
|
| 217 |
|
|
@@ -276,9 +196,7 @@ snapshot_download(cache_dir=cache_dir,
|
|
| 276 |
|
| 277 |
### 推理
|
| 278 |
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
#### 方式一:配置并运行统一推理脚本
|
| 282 |
|
| 283 |
```bash
|
| 284 |
bash inference_lance.sh
|
|
@@ -289,11 +207,9 @@ bash inference_lance.sh
|
|
| 289 |
- **注意:** 对于所有任务,建议在编写输入 prompt 时参考提供示例中的 `prompt` 格式,这通常有助于获得更好的生成效果。
|
| 290 |
|
| 291 |
|
| 292 |
-
####
|
| 293 |
-
|
| 294 |
-
我们提供了面向不同生成、编辑和理解任务的一键启动命令,便于快速运行指定任务类型。
|
| 295 |
|
| 296 |
-
##### 文
|
| 297 |
|
| 298 |
```bash
|
| 299 |
bash inference_lance.sh \
|
|
@@ -303,10 +219,10 @@ bash inference_lance.sh \
|
|
| 303 |
--NUM_FRAMES 121 \
|
| 304 |
--VIDEO_HEIGHT 480 \
|
| 305 |
--VIDEO_WIDTH 848 \
|
| 306 |
-
--SAVE_PATH_GEN results/
|
| 307 |
```
|
| 308 |
|
| 309 |
-
##### 文
|
| 310 |
|
| 311 |
```bash
|
| 312 |
bash inference_lance.sh \
|
|
@@ -359,6 +275,27 @@ bash inference_lance.sh \
|
|
| 359 |
--SAVE_PATH_GEN results/x2t_image
|
| 360 |
```
|
| 361 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 362 |
#### 可用任务
|
| 363 |
|
| 364 |
| 任务名 | 说明 | 示例 JSON |
|
|
@@ -381,7 +318,7 @@ bash inference_lance.sh \
|
|
| 381 |
|
| 382 |
| 参数 | 默认值 | 说明 |
|
| 383 |
| --- | --- | --- |
|
| 384 |
-
| `MODEL_PATH` | `"downloads/
|
| 385 |
| `NUM_GPUS` | `1` | 用于推理的 GPU 数量。 |
|
| 386 |
| `VALIDATION_NUM_TIMESTEPS` | `30` | 去噪步数(例如 30 或 50)。 |
|
| 387 |
| `VALIDATION_TIMESTEP_SHIFT` | `3.5` | Flow matching 调度中的 timestep shift 参数。 |
|
|
@@ -391,14 +328,19 @@ bash inference_lance.sh \
|
|
| 391 |
| `VIDEO_HEIGHT` / `VIDEO_WIDTH`| `768` | 空间分辨率。*编辑任务不使用该参数(由输入图像/视频决定)。* |
|
| 392 |
| `RESOLUTION` | `"video_480p"` | 基础分辨率预设(如 `image_768res` 或 `video_480p`���。 |
|
| 393 |
|
| 394 |
-
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 398 |
|
| 399 |
### 基准评测
|
| 400 |
|
| 401 |
-
|
|
|
|
| 402 |
|
| 403 |
<div align="center">
|
| 404 |
<table align="center">
|
|
@@ -457,16 +399,19 @@ python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860
|
|
| 457 |
<tr>
|
| 458 |
<td align="left">TUNA-2</td><td align="center">7B</td><td align="center">89.50</td><td align="center">91.40</td><td align="center"><b>92.07</b></td><td align="center">91.91</td><td align="center">88.81</td><td align="center"><u>86.54</u></td>
|
| 459 |
</tr>
|
| 460 |
-
<tr
|
| 461 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>83.89</b></td><td align="center"><b>91.07</b></td><td align="center"><b>89.36</b></td><td align="center"><b>93.38</b></td><td align="center"><b>80.80</b></td><td align="center"><b>84.67</b></td>
|
| 462 |
</tr>
|
| 463 |
</tbody>
|
| 464 |
</table>
|
| 465 |
</div>
|
| 466 |
|
| 467 |
-
<p align="center"><em><sup>†</sup> 表示该方法在生成前使用 LLM rewriter 进行
|
|
|
|
|
|
|
| 468 |
|
| 469 |
-
|
|
|
|
| 470 |
|
| 471 |
<div align="center">
|
| 472 |
<table align="center">
|
|
@@ -529,16 +474,19 @@ python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860
|
|
| 529 |
<tr>
|
| 530 |
<td align="left">TUNA-2</td><td align="center">7B</td><td align="center"><u>0.99</u></td><td align="center"><u>0.96</u></td><td align="center">0.80</td><td align="center">0.91</td><td align="center">0.84</td><td align="center">0.76</td><td align="center">0.87</td>
|
| 531 |
</tr>
|
| 532 |
-
<tr
|
| 533 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>1.00</b></td><td align="center"><b>0.94</b></td><td align="center"><b>0.84</b></td><td align="center"><b>0.97</b></td><td align="center"><b>0.87</b></td><td align="center"><b>0.81</b></td><td align="center"><b>0.90</b></td>
|
| 534 |
</tr>
|
| 535 |
</tbody>
|
| 536 |
</table>
|
| 537 |
</div>
|
| 538 |
|
| 539 |
-
<p align="center"><em><sup>†</sup> 表示该方法在生成前使用 LLM rewriter 进行
|
|
|
|
|
|
|
| 540 |
|
| 541 |
-
|
|
|
|
| 542 |
|
| 543 |
<div align="center">
|
| 544 |
<table align="center">
|
|
@@ -591,14 +539,17 @@ python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860
|
|
| 591 |
<tr>
|
| 592 |
<td align="left">InternVL-U (w/ CoT)</td><td align="center">1.7B</td><td align="center">7.05</td><td align="center"><b>7.87</b></td><td align="center"><u>6.50</u></td><td align="center">6.99</td><td align="center">5.77</td><td align="center">6.10</td><td align="center">7.33</td><td align="center">7.16</td><td align="center">7.12</td><td align="center"><b>7.36</b></td><td align="center">6.46</td><td align="center"><u>6.88</u></td>
|
| 593 |
</tr>
|
| 594 |
-
<tr
|
| 595 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>7.73</b></td><td align="center"><u>7.74</u></td><td align="center"><b>7.28</b></td><td align="center"><b>7.83</b></td><td align="center"><b>7.50</b></td><td align="center"><b>7.03</b></td><td align="center"><u>7.64</u></td><td align="center"><b>7.85</b></td><td align="center"><b>7.71</b></td><td align="center">4.46</td><td align="center"><b>7.57</b></td><td align="center"><b>7.30</b></td>
|
| 596 |
</tr>
|
| 597 |
</tbody>
|
| 598 |
</table>
|
| 599 |
</div>
|
| 600 |
|
| 601 |
-
|
|
|
|
|
|
|
|
|
|
| 602 |
|
| 603 |
<div align="center">
|
| 604 |
<table align="center">
|
|
@@ -664,13 +615,15 @@ python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860
|
|
| 664 |
<tr>
|
| 665 |
<td align="left">TUNA</td><td align="center">1.5B</td><td align="center"><u>84.06</u></td>
|
| 666 |
</tr>
|
| 667 |
-
<tr
|
| 668 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>85.11</b></td>
|
| 669 |
</tr>
|
| 670 |
</tbody>
|
| 671 |
</table>
|
| 672 |
</div>
|
| 673 |
|
|
|
|
|
|
|
| 674 |
#### 运行基准评测
|
| 675 |
|
| 676 |
`benchmarks/` 目录下提供了可直接运行的基准评测脚本:
|
|
@@ -685,22 +638,25 @@ python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860
|
|
| 685 |
|
| 686 |
## 📄 许可证
|
| 687 |
|
| 688 |
-
Copyright 2025
|
| 689 |
|
| 690 |
## 🙏 致谢
|
| 691 |
|
| 692 |
-
感谢 [BAGEL](https://github.com/ByteDance-Seed/bagel)
|
| 693 |
|
| 694 |
## 💖 引用
|
| 695 |
|
| 696 |
-
如果 Lance 对您的项目或研究有帮助,欢迎 🌟 本仓库,并使用以下 BibTeX 引用我们的工作:
|
| 697 |
|
| 698 |
```bibtex
|
| 699 |
-
@misc{
|
| 700 |
-
|
| 701 |
-
|
| 702 |
-
|
| 703 |
-
|
|
|
|
|
|
|
|
|
|
| 704 |
}
|
| 705 |
```
|
| 706 |
|
|
|
|
| 41 |
</p>
|
| 42 |
</div>
|
| 43 |
|
| 44 |
+
|
| 45 |
+
> **注意:** Lance 是一个研究项目,而不是经过充分产品化打磨的模型。当前开源 checkpoint 使用不超过 128 张 A100 GPU 训练,训练阶段覆盖到 768x768 图像生成和 480p、12 FPS 视频生成。我们希望将 Lance 作为一个研究参考,分享在较小模型规模和相对有限算力下统一图像/视频理解、生成和编辑的建模思路、训练流程和推理代码。模型效果可能会随 prompt、分辨率、时长、运动复杂度和编辑场景而波动,post-training recipe 仍有进一步改进空间。我们欢迎社区提供建设性反馈,帮助项目持续改进。
|
| 46 |
+
|
| 47 |
+
## 🔥 更新
|
| 48 |
+
|
| 49 |
+
- **`2026/05/26`**: 🎨 Gradio 界面现已支持图像和视频生成、编辑与理解任务。[欢迎体验](assets/docs/changelog/2026-05-26.md)!
|
| 50 |
+
- **`2026/05/25`**: ✨ [Hugging Face Space](https://huggingface.co/spaces/bytedance-research/Lance) 已上线,感谢 HF 团队的支持!
|
| 51 |
+
- **`2026/05/19`**: 🤗 技术报告现已发布于 [arXiv](http://arxiv.org/abs/2605.18678)。
|
| 52 |
+
- **`2026/05/18`**: 🔥 我们发布了 [项目主页](https://lance-project.github.io/),并在 [GitHub](https://github.com/bytedance/Lance/) 和 [Hugging Face](https://huggingface.co/bytedance-research/Lance) 上开源了初版推理代码和模型权重。
|
| 53 |
+
|
| 54 |
## 🌟 亮点
|
| 55 |
|
| 56 |
+
**Lance** 是一个3B参数、原生统一的多模态模型,在单一框架下同时支持 **图像与视频的理解、生成和编辑**。
|
| 57 |
+
|
| 58 |
+
- **3B 规模高效。** 仅使用 **3B active parameters**,Lance 即可在图像生成、图像编辑和视频生成等基准上取得有竞争力的表现。
|
| 59 |
+
- **从零训练。** Lance 采用分阶段多任务训练配方从零训练,并在 **不超过 128 张 A100 GPU** 的预算内完成训练。
|
| 60 |
|
| 61 |
+
我们正在持续更新和改进本仓库。如果你发现任何问题或有改进建议,欢迎提出 issue 或提交 pull request(PR)💖。
|
|
|
|
| 62 |
|
| 63 |
<div align="center">
|
| 64 |
<img src="assets/benchmarks/benchmark-overview.png" alt="Lance benchmark overview across image generation, image editing, video generation, and video understanding" width="980">
|
| 65 |
</div>
|
| 66 |
|
| 67 |
+
## 📅 路线图
|
| 68 |
+
|
| 69 |
+
- [ ] 发布 fine-tuning 代码。
|
| 70 |
+
- [ ] 增加 image-to-video generation 代码支持。
|
| 71 |
+
|
| 72 |
## 🎨 演示
|
| 73 |
|
| 74 |
+
<details>
|
| 75 |
+
<summary><strong>展开查看演示结果</strong></summary>
|
| 76 |
+
|
| 77 |
+
<div align="center">
|
| 78 |
+
<strong>🔥 建议浏览我们的 <a href="https://lance-project.github.io/">主页</a> 查看更多效果。🔥</strong>
|
| 79 |
+
</div>
|
| 80 |
|
| 81 |
+
<h3 align="center">文生视频</h3>
|
| 82 |
+
|
| 83 |
+
<table align="center">
|
| 84 |
<tr>
|
| 85 |
<td><a href="assets/text-to-video/videos/text-to-video-demo-01.mp4"><img src="assets/text-to-video/previews/text-to-video-demo-01.gif" width="100%"></a></td>
|
| 86 |
<td><a href="assets/text-to-video/videos/text-to-video-demo-02.mp4"><img src="assets/text-to-video/previews/text-to-video-demo-02.gif" width="100%"></a></td>
|
|
|
|
| 95 |
</tr>
|
| 96 |
</table>
|
| 97 |
|
| 98 |
+
<h3 align="center">视频编辑</h3>
|
| 99 |
|
| 100 |
+
<table align="center">
|
| 101 |
<tr>
|
| 102 |
<td><a href="assets/video-editing/videos/video-editing-demo-01.mp4"><img src="assets/video-editing/previews/video-editing-demo-01.gif" width="100%"></a></td>
|
| 103 |
<td><a href="assets/video-editing/videos/video-editing-demo-02.mp4"><img src="assets/video-editing/previews/video-editing-demo-02.gif" width="100%"></a></td>
|
|
|
|
| 112 |
</tr>
|
| 113 |
</table>
|
| 114 |
|
| 115 |
+
<h3 align="center">多轮一致性编辑</h3>
|
| 116 |
|
| 117 |
<div align="center">
|
| 118 |
<a href="assets/multi-turn-editing/videos/multi-turn-editing-demo-01.mp4">
|
|
|
|
| 120 |
</a>
|
| 121 |
</div>
|
| 122 |
|
| 123 |
+
<h3 align="center">智能视频生成</h3>
|
| 124 |
|
| 125 |
+
<table align="center">
|
| 126 |
<tr>
|
| 127 |
<td><a href="assets/intelligent-video/videos/intelligent-video-demo-01.mp4"><img src="assets/intelligent-video/previews/intelligent-video-demo-01.gif" width="100%"></a></td>
|
| 128 |
<td><a href="assets/intelligent-video/videos/intelligent-video-demo-02.mp4"><img src="assets/intelligent-video/previews/intelligent-video-demo-02.gif" width="100%"></a></td>
|
|
|
|
| 131 |
</tr>
|
| 132 |
</table>
|
| 133 |
|
| 134 |
+
</details>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 135 |
|
| 136 |
## 🚀 安装
|
| 137 |
|
|
|
|
| 196 |
|
| 197 |
### 推理
|
| 198 |
|
| 199 |
+
#### 基本用法
|
|
|
|
|
|
|
| 200 |
|
| 201 |
```bash
|
| 202 |
bash inference_lance.sh
|
|
|
|
| 207 |
- **注意:** 对于所有任务,建议在编写输入 prompt 时参考提供示例中的 `prompt` 格式,这通常有助于获得更好的生成效果。
|
| 208 |
|
| 209 |
|
| 210 |
+
#### 任务示例
|
|
|
|
|
|
|
| 211 |
|
| 212 |
+
##### 文生视频
|
| 213 |
|
| 214 |
```bash
|
| 215 |
bash inference_lance.sh \
|
|
|
|
| 219 |
--NUM_FRAMES 121 \
|
| 220 |
--VIDEO_HEIGHT 480 \
|
| 221 |
--VIDEO_WIDTH 848 \
|
| 222 |
+
--SAVE_PATH_GEN results/t2v
|
| 223 |
```
|
| 224 |
|
| 225 |
+
##### 文生图
|
| 226 |
|
| 227 |
```bash
|
| 228 |
bash inference_lance.sh \
|
|
|
|
| 275 |
--SAVE_PATH_GEN results/x2t_image
|
| 276 |
```
|
| 277 |
|
| 278 |
+
#### 文本-图像到视频生成
|
| 279 |
+
bash inference_lance.sh \
|
| 280 |
+
--TASK_NAME ti2v \
|
| 281 |
+
--MODEL_PATH downloads/Lance_3B_Video \
|
| 282 |
+
--RESOLUTION video_480p \
|
| 283 |
+
--SAVE_PATH_GEN results/ti2v_test/idip
|
| 284 |
+
|
| 285 |
+
|
| 286 |
+
#### 文本-图像到视频生成
|
| 287 |
+
bash inference_lance.sh \
|
| 288 |
+
--TASK_NAME ff2v \
|
| 289 |
+
--MODEL_PATH downloads/Lance_3B_Video \
|
| 290 |
+
--RESOLUTION video_480p \
|
| 291 |
+
--SAVE_PATH_GEN results/ti2v_test/ff2v
|
| 292 |
+
|
| 293 |
+
|
| 294 |
+
config/examples/ti2v_example.json
|
| 295 |
+
|
| 296 |
+
<details>
|
| 297 |
+
<summary><strong>展开任务和参数参考</strong></summary>
|
| 298 |
+
|
| 299 |
#### 可用任务
|
| 300 |
|
| 301 |
| 任务名 | 说明 | 示例 JSON |
|
|
|
|
| 318 |
|
| 319 |
| 参数 | 默认值 | 说明 |
|
| 320 |
| --- | --- | --- |
|
| 321 |
+
| `MODEL_PATH` | `"downloads/Lance_3B"` | 下载后的 Lance 模型权重路径(如 `Lance_3B` 或 `Lance_3B_Video`)。 |
|
| 322 |
| `NUM_GPUS` | `1` | 用于推理的 GPU 数量。 |
|
| 323 |
| `VALIDATION_NUM_TIMESTEPS` | `30` | 去噪步数(例如 30 或 50)。 |
|
| 324 |
| `VALIDATION_TIMESTEP_SHIFT` | `3.5` | Flow matching 调度中的 timestep shift 参数。 |
|
|
|
|
| 328 |
| `VIDEO_HEIGHT` / `VIDEO_WIDTH`| `768` | 空间分辨率。*编辑任务不使用该参数(由输入图像/视频决定)。* |
|
| 329 |
| `RESOLUTION` | `"video_480p"` | 基础分辨率预设(如 `image_768res` 或 `video_480p`���。 |
|
| 330 |
|
| 331 |
+
</details>
|
| 332 |
+
|
| 333 |
+
### 🖥️ Gradio
|
| 334 |
+
|
| 335 |
+
你可以启动本地 Gradio demo,体验视频/图像生成、编辑和理解:
|
| 336 |
+
|
| 337 |
+
```bash
|
| 338 |
+
python lance_gradio.py --server-name 0.0.0.0 --server-port 7860
|
| 339 |
|
| 340 |
### 基准评测
|
| 341 |
|
| 342 |
+
<details>
|
| 343 |
+
<summary><strong>DPG-Bench 评测</strong></summary>
|
| 344 |
|
| 345 |
<div align="center">
|
| 346 |
<table align="center">
|
|
|
|
| 399 |
<tr>
|
| 400 |
<td align="left">TUNA-2</td><td align="center">7B</td><td align="center">89.50</td><td align="center">91.40</td><td align="center"><b>92.07</b></td><td align="center">91.91</td><td align="center">88.81</td><td align="center"><u>86.54</u></td>
|
| 401 |
</tr>
|
| 402 |
+
<tr>
|
| 403 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>83.89</b></td><td align="center"><b>91.07</b></td><td align="center"><b>89.36</b></td><td align="center"><b>93.38</b></td><td align="center"><b>80.80</b></td><td align="center"><b>84.67</b></td>
|
| 404 |
</tr>
|
| 405 |
</tbody>
|
| 406 |
</table>
|
| 407 |
</div>
|
| 408 |
|
| 409 |
+
<p align="center"><em><sup>†</sup> 表示该方法在生成前使用 LLM rewriter 进行提示词改写。</em></p>
|
| 410 |
+
|
| 411 |
+
</details>
|
| 412 |
|
| 413 |
+
<details>
|
| 414 |
+
<summary><strong>GenEval 评测</strong></summary>
|
| 415 |
|
| 416 |
<div align="center">
|
| 417 |
<table align="center">
|
|
|
|
| 474 |
<tr>
|
| 475 |
<td align="left">TUNA-2</td><td align="center">7B</td><td align="center"><u>0.99</u></td><td align="center"><u>0.96</u></td><td align="center">0.80</td><td align="center">0.91</td><td align="center">0.84</td><td align="center">0.76</td><td align="center">0.87</td>
|
| 476 |
</tr>
|
| 477 |
+
<tr>
|
| 478 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>1.00</b></td><td align="center"><b>0.94</b></td><td align="center"><b>0.84</b></td><td align="center"><b>0.97</b></td><td align="center"><b>0.87</b></td><td align="center"><b>0.81</b></td><td align="center"><b>0.90</b></td>
|
| 479 |
</tr>
|
| 480 |
</tbody>
|
| 481 |
</table>
|
| 482 |
</div>
|
| 483 |
|
| 484 |
+
<p align="center"><em><sup>†</sup> 表示该方法在生成前使用 LLM rewriter 进行提示词改写。</em></p>
|
| 485 |
+
|
| 486 |
+
</details>
|
| 487 |
|
| 488 |
+
<details>
|
| 489 |
+
<summary><strong>GEdit-Bench 评测</strong></summary>
|
| 490 |
|
| 491 |
<div align="center">
|
| 492 |
<table align="center">
|
|
|
|
| 539 |
<tr>
|
| 540 |
<td align="left">InternVL-U (w/ CoT)</td><td align="center">1.7B</td><td align="center">7.05</td><td align="center"><b>7.87</b></td><td align="center"><u>6.50</u></td><td align="center">6.99</td><td align="center">5.77</td><td align="center">6.10</td><td align="center">7.33</td><td align="center">7.16</td><td align="center">7.12</td><td align="center"><b>7.36</b></td><td align="center">6.46</td><td align="center"><u>6.88</u></td>
|
| 541 |
</tr>
|
| 542 |
+
<tr>
|
| 543 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>7.73</b></td><td align="center"><u>7.74</u></td><td align="center"><b>7.28</b></td><td align="center"><b>7.83</b></td><td align="center"><b>7.50</b></td><td align="center"><b>7.03</b></td><td align="center"><u>7.64</u></td><td align="center"><b>7.85</b></td><td align="center"><b>7.71</b></td><td align="center">4.46</td><td align="center"><b>7.57</b></td><td align="center"><b>7.30</b></td>
|
| 544 |
</tr>
|
| 545 |
</tbody>
|
| 546 |
</table>
|
| 547 |
</div>
|
| 548 |
|
| 549 |
+
</details>
|
| 550 |
+
|
| 551 |
+
<details>
|
| 552 |
+
<summary><strong>VBench 评测(视频生成)</strong></summary>
|
| 553 |
|
| 554 |
<div align="center">
|
| 555 |
<table align="center">
|
|
|
|
| 615 |
<tr>
|
| 616 |
<td align="left">TUNA</td><td align="center">1.5B</td><td align="center"><u>84.06</u></td>
|
| 617 |
</tr>
|
| 618 |
+
<tr>
|
| 619 |
<td align="left">🌟 <b>Lance (Ours)</b></td><td align="center"><b>3B</b></td><td align="center"><b>85.11</b></td>
|
| 620 |
</tr>
|
| 621 |
</tbody>
|
| 622 |
</table>
|
| 623 |
</div>
|
| 624 |
|
| 625 |
+
</details>
|
| 626 |
+
|
| 627 |
#### 运行基准评测
|
| 628 |
|
| 629 |
`benchmarks/` 目录下提供了可直接运行的基准评测脚本:
|
|
|
|
| 638 |
|
| 639 |
## 📄 许可证
|
| 640 |
|
| 641 |
+
Copyright 2025 ByteDance Ltd. and/or its affiliates.
|
| 642 |
|
| 643 |
## 🙏 致谢
|
| 644 |
|
| 645 |
+
我们感谢 [BAGEL](https://github.com/ByteDance-Seed/bagel)���[Qwen2.5-VL-3B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct) 和 [Wan2.2](https://github.com/Wan-Video/Wan2.2) 的贡献者,感谢他们开放的研究与社区贡献。
|
| 646 |
|
| 647 |
## 💖 引用
|
| 648 |
|
| 649 |
+
如果 **Lance** 对您的项目或研究有帮助,欢迎 🌟 本仓库,并使用以下 BibTeX 引用我们的工作:
|
| 650 |
|
| 651 |
```bibtex
|
| 652 |
+
@misc{fu2026lanceunifiedmultimodalmodeling,
|
| 653 |
+
title = {Lance: Unified Multimodal Modeling by Multi-Task Synergy},
|
| 654 |
+
author = {Fengyi Fu and Mengqi Huang and Shaojin Wu and Yunsheng Jiang and Yufei Huo and Hao Li and Yinghang Song and Fei Ding and Jianzhu Guo and Qian He and Zheren Fu and Zhendong Mao and Yongdong Zhang},
|
| 655 |
+
year = {2026},
|
| 656 |
+
eprint = {2605.18678},
|
| 657 |
+
archivePrefix = {arXiv},
|
| 658 |
+
primaryClass = {cs.CV},
|
| 659 |
+
url = {https://arxiv.org/abs/2605.18678},
|
| 660 |
}
|
| 661 |
```
|
| 662 |
|