Skip to content
HN On Hacker News ↗

GitHub - bytedance/Lance: A 3B-active-parameter native unified multimodal model for image and video understanding, generation, and editing.

▲ 63 points 15 comments by cleardusk 4d ago HN discussion ↗

Pangram verdict · v3.3

We believe that this document is fully human-written

8 %

AI likelihood · overall

Human
100% human-written 0% AI-generated
SEGMENTS · HUMAN 6 of 6
SEGMENTS · AI 0 of 6
WORD COUNT 1,260
PEAK AI % 17% · §2
Analyzed
May 20
backend: pangram/v3.3
Segments scanned
6 windows
avg 210 words each
Distribution
100 / 0%
human / AI fraction
Verdict
Human
Pangram v3.3

Article text · 1,260 words · 6 segments analyzed

Human AI-generated
§1 Human · 6%

Lance: Unified Multimodal Modeling by Multi-Task Synergy Fengyi Fu*, Mengqi Huang*,✉, Shaojin Wu*, Yunsheng Jiang*, Yufei Huo, Jianzhu Guo✉,§ Hao Li, Yinghang Song, Fei Ding, Qian He, Zheren Fu, Zhendong Mao, Yongdong Zhang ByteDance * Equal contribution    ✉ Corresponding authors    § Project lead English | 简体中文 🌟 Highlights Lance is a 3B native unified multimodal model that supports image and video understanding, generation, and editing within a single framework.

Efficient at 3B scale. With only 3B active parameters, Lance delivers strong performance across image generation, image editing, and video generation benchmarks. Trained from scratch. Lance is built with a staged multi-task recipe and trained entirely from scratch (except for the ViT and VAE encoders; the transformer backbone is trained entirely from scratch) within a 128-A100-GPU budget.

We are actively updating and improving this repository. If you find any bugs or have suggestions, please feel free to open an issue or submit a pull request (PR) 💖.

🎨 Demo Text-to-Video

Video Editing

Multi-turn Consistency Editing

Intelligent Video Generation

Video Understanding

Question: How many times did the person launch objects on the table? Options: (A) 3 (B) 2 (C) 4 Response: (A) 3 Question: The person makes sets of repeated actions. How many distinct repeated actions did the person do? Options: (A) 2 (B) 3 (C) 4 Response: (A) 2 Question: In which direction does the purple sphere move in the video?

§2 Human · 17%

Options: (A) Down and to the right. (B) Up and to the left. (C) Up and to the right. (D) The object is stationary. Response: (A) Down and to the right. Question: 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. Response: (B) Man grabs an object through a phone screen. Question: Offer a succinct account of the culinary process shown in this video. Response: Add tomato puree and mix it well with chicken pieces. Question: Provide a detailed description of the given video, capturing its key moments. Response: 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. Text-to-Image Generation

Image Editing

Image Understanding

Question: Is the largest segment greater than sum of all the other segments? Response: Yes, the largest segment in the pie chart is the blue one, which is the most populous segment. Question: What percentage of respondents want better border security? Response: 29% Question: What is the license plate number of the car? Response: The license plate number of the car is BX62 BFY.

§3 Human · 16%

Question: According to the data from the proprietary market research, how much amount was spent on the promotional meetings and events during 1998? Response: 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. Question: What is the appearance of the Colosseum in Rome, Italy? Response: 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. Question: How does a total solar eclipse look like from Earth? Response: 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. 🚀 Installation Recommended Environment

Software: Python 3.10+, CUDA 12.4+ (required) Hardware: A GPU with at least 40GB VRAM is required for inference

Installation Steps bash ./setup_env.sh Download Model Weights Please download all necessary model checkpoints from Lance-3B on Hugging Face and place them in the downloads/ directory.

§4 Human · 6%

📚 Usage Inference We provide a unified command-line interface for all generation / editing / understanding tasks: Option 1: Configure and Run the Unified Script bash inference_lance.sh

Before running, please configure the inference parameters at the top of inference_lance.sh. Supported tasks: t2i, t2v, image_edit, video_edit, x2t_image, and x2t_video. You can modify TASK_DEFAULT_CONFIGS in inference_lance.py to customize the default data samples for each task. Note: For all tasks, we recommend following the prompt format used in the provided examples when writing input prompts, as this typically leads to better generation quality.

Option 2: Configure and Run the Unified Script We provide task-specific one-click commands for different generation, editing, and understanding tasks. Text-to-Video Generation bash inference_lance.sh \ --TASK_NAME t2v \ --MODEL_PATH downloads/Lance_3B_Video \ --RESOLUTION video_480p \ --NUM_FRAMES 121 \ --VIDEO_HEIGHT 480 \ --VIDEO_WIDTH 848 \ --SAVE_PATH_GEN results/t2v Text-to-Image Generation bash inference_lance.sh \ --TASK_NAME t2i \ --MODEL_PATH downloads/Lance_3B \ --RESOLUTION image_768res \ --VIDEO_HEIGHT 768 \ --VIDEO_WIDTH 768 \ --SAVE_PATH_GEN results/t2i Video Editing bash inference_lance.sh \ --TASK_NAME video_edit \ --MODEL_PATH downloads/Lance_3B_Video \ --RESOLUTION video_480p \ --SAVE_PATH_GEN results/video_edit Image Editing bash inference_lance.sh \ --TASK_NAME image_edit \ --MODEL_PATH downloads/Lance_3B \ --RESOLUTION image_768res \ --SAVE_PATH_GEN results/image_edit Video Understanding bash inference_lance.sh \ --TASK_NAME x2t_video \ --MODEL_PATH

§5 Human · 8%

downloads/Lance_3B_Video \ --RESOLUTION video_480p \ --NUM_FRAMES 50 \ --SAVE_PATH_GEN results/x2t_video Image Understanding bash inference_lance.sh \ --TASK_NAME x2t_image \ --MODEL_PATH downloads/Lance_3B \ --RESOLUTION image_768res \ --SAVE_PATH_GEN results/x2t_image Available Tasks

Task Name Description Example JSON

t2v Text-to-Video generation config/examples/t2v_example.json

t2i Text-to-Image generation config/examples/t2i_example.json

image_edit Image editing config/examples/image_edit_example.json

video_edit Video editing config/examples/video_edit_example.json

x2t_image Image understanding config/examples/x2t_image_example.json

x2t_video Video understanding config/examples/x2t_video_example.json

For understanding examples:

config/examples/x2t_image_example.json: image understanding examples for visual question answering and image-based reasoning. config/examples/x2t_video_example.json: video understanding examples for video question answering and video captioning.

Parameters You can configure the following hyperparameters at the top of the inference_lance.sh script:

Parameter Default Value Description

MODEL_PATH "downloads/Lance_3B" Path to the downloaded Lance model weights (Lance_3B or Lance_3B_Video).

NUM_GPUS 1 Number of GPUs to use for inference.

VALIDATION_NUM_TIMESTEPS 30 Number of denoising steps (e.g., 30 or 50).

VALIDATION_TIMESTEP_SHIFT 3.5 Timestep shift parameter for flow matching scheduling.

CFG_TEXT_SCALE 4.0 Classifier-Free Guidance (CFG) scale for text conditioning.

VALIDATION_DATA_SEED 42 Random seed for generation reproducibility.

NUM_FRAMES 50 Number of frames for video generation (Max: 121). Unused for image tasks.

VIDEO_HEIGHT / VIDEO_WIDTH 768 Spatial resolution. Unused for editing tasks (determined by input image/video).

§6 Human · 5%

RESOLUTION "video_480p" Base resolution preset (image_768res or video_480p).

Gradio python lance_gradio_t2v_v2t.py --gpus 0 --server-port 7860 Benchmarks

DPG-Bench Evaluation

Models # Params. Global Entity Attribute Relation Other Overall Generation-only Models SDXL3.5B83.2782.4380.9186.7680.4174.65 DALL-E 3-90.9789.6188.3990.5889.8383.50 SD3-Medium2B87.9091.0188.8380.7088.6884.08 FLUX.1-dev12B74.3590.0088.9690.8788.3383.84 Qwen-Image20B91.3291.5692.0294.3192.7388.32 Unified Models Janus-Pro-7B7B86.9088.9089.4089.3289.4884.19 OmniGen24B88.8188.8390.1889.3790.2783.57 Show-o27B89.0091.7889.9691.8191.6486.14