nifty-lab / README.md
IgorCSIS
Upgrade Gradio backend to 6.14 to match @gradio/client 1.8
40f8f0c
|
Raw
History Blame Contribute Delete
1.86 kB
---
title: nifty-lab
sdk: gradio
sdk_version: 6.14.0
app_file: app.py
pinned: false
license: apache-2.0
short_description: Multimodal playground on ByteDance Lance, ZeroGPU
tags:
- multimodal
- text-to-video
- video-understanding
- lance
---
# nifty-lab (Space code)
This is the Hugging Face Space that powers the
[nifty-lab](https://github.com/IgorCSIS/nifty-lab) portfolio piece.
It runs on ZeroGPU and serves ByteDance's
[Lance](https://github.com/bytedance/Lance) unified multimodal model.
## What's in here
- `app.py`: the Gradio app, written by me. ZeroGPU adapter around Lance.
- `lance_gradio_t2v_v2t.py`: a verbatim copy of ByteDance's reference Gradio
script. We import the heavy model-loading classes from it.
- `modeling/`, `common/`, `data/`, `config/`: copied verbatim from
ByteDance's repo. These are the Python packages Lance's inference code
imports.
- `requirements.txt`: pinned dependency versions tested against ZeroGPU.
- `LICENSE_LANCE`: ByteDance's Apache 2.0 license for the upstream code.
## How it boots
When the Space starts, `app.py` downloads the Lance_3B_Video weights from
`bytedance-research/Lance` into `downloads/Lance_3B_Video/`. First boot
takes 5 to 10 minutes for the download. Subsequent boots use the cached
files.
After download, the Gradio UI comes up. The first request the user makes
loads the model into GPU memory (about 60 seconds). Subsequent requests
in the same warm window are fast.
## Stage 1 vs Stage 2
Stage 1 (this commit): text-to-video and video understanding.
Stage 2 (coming): text-to-image, image edit, video edit, image
understanding. These will load the second Lance variant (`Lance_3B`)
alongside the current video variant.
## License attribution
Original Lance code is Apache 2.0 by ByteDance Ltd. See `LICENSE_LANCE`.
Adapter code in `app.py` is Apache 2.0 by Igor Lima.