Blog | Abrazando la cara | Zona de juegos | Carreras
Un modelo de generación de vídeo de última generación de Genmo.
La vista previa de Mochi 1 es un modelo abierto de generación de video de última generación con movimiento de alta fidelidad y una fuerte adherencia rápida en la evaluación preliminar. Este modelo cierra drásticamente la brecha entre los sistemas de generación de vídeo abiertos y cerrados. Lanzaremos el modelo bajo una licencia Apache 2.0 permisiva. Prueba este modelo gratis en nuestro parque infantil.
Instalar usando uv:
clon de git https://github.com/genmoai/modelscd modelos instalación de pip uv uv venv.venvsource.venv/bin/activate herramientas de configuración de instalación de uv pip instalación de pip uv -e. --sin-aislamiento-de-construcción
Si desea instalar flash atención, puede utilizar:
uv pip install -e .[flash] --no-build-isolation
También necesitarás instalar FFMPEG para convertir tus resultados en videos.
Utilice download_weights.py para descargar el modelo + decodificador a un directorio local. Úselo así:
python3 ./scripts/download_weights.py <path_to_downloaded_directory>
O descargue directamente los pesos desde Hugging Face o mediante magnet:?xt=urn:btih:441da1af7a16bcaa4f556964f8028d7113d21cbb&dn=weights&tr=udp://tracker.opentrackr.org:1337/announce
a una carpeta en su computadora.
Inicie la interfaz de usuario de gradio con
python3 ./demos/gradio_ui.py --model_dir "<ruta_al_directorio_descargado>"
O genere videos directamente desde la CLI con
python3 ./demos/cli.py --model_dir "<ruta_al_directorio_descargado>"
Reemplace <path_to_downloaded_directory>
con la ruta al directorio de su modelo.
Este repositorio viene con una API simple y componible, por lo que puedes llamar al modelo mediante programación. Puede encontrar un ejemplo completo aquí. Pero, a grandes rasgos, se ve así:
desde genmo.mochi_preview.pipelines import (DecoderModelFactory, DitModelFactory, MochiSingleGPUPipeline, T5ModelFactory, linear_quadratic_schedule, )tubería = MochiSingleGPUPipeline( text_encoder_factory=T5ModelFactory(), dit_factory=DitModelFactory( model_path=f"{MOCHI_DIR}/dit.safetensors", model_dtype="bf16" ), decoder_factory=DecoderModelFactory( model_path=f"{MOCHI_DIR}/vae.safetensors", ), cpu_offload=Verdadero, decode_type="tiled_full", )video = canalización (altura = 480, ancho = 848, num_frames = 31, num_inference_steps = 64, sigma_schedule = linear_quadratic_schedule (64, 0.025), cfg_schedule = [4.5] * 64, lote_cfg = Falso, mensaje = "tu mensaje favorito aquí". ..", negativo_prompt="", semilla=12345, )
Mochi 1 representa un avance significativo en la generación de video de código abierto, presentando un modelo de difusión de 10 mil millones de parámetros construido sobre nuestra novedosa arquitectura de Transformador de Difusión Asimétrica (AsymmDiT). Entrenado completamente desde cero, es el modelo generativo de video más grande jamás lanzado abiertamente. Y lo mejor de todo es que es una arquitectura simple y pirateable. Además, estamos lanzando un arnés de inferencia que incluye una implementación paralela de contexto eficiente.
Junto con Mochi, estamos abriendo código para nuestro video AsymmVAE. Utilizamos una estructura codificador-decodificador asimétrica para construir un modelo de compresión eficiente de alta calidad. Nuestro AsymmVAE comprime videos causalmente a un tamaño 128 veces más pequeño, con una compresión espacial de 8x8 y temporal de 6x a un espacio latente de 12 canales.
parámetros Contar | Base Enc Canales | Base de diciembre Canales | Latente Oscuro | Espacial Compresión | Temporal Compresión |
---|---|---|---|---|---|
362M | 64 | 128 | 12 | 8x8 | 6x |
Un AsymmDiT procesa de manera eficiente las indicaciones del usuario junto con tokens de video comprimidos al optimizar el procesamiento de texto y enfocar la capacidad de la red neuronal en el razonamiento visual. AsymmDiT atiende conjuntamente texto y tokens visuales con autoatención multimodal y aprende capas MLP separadas para cada modalidad, similar a Stable Diffusion 3. Sin embargo, nuestro flujo visual tiene casi 4 veces más parámetros que el flujo de texto a través de un flujo oculto más grande. dimensión. Para unificar las modalidades en la autoatención, utilizamos QKV no cuadrado y capas de proyección de salida. Este diseño asimétrico reduce los requisitos de memoria de inferencia. Muchos modelos de difusión modernos utilizan múltiples modelos de lenguaje previamente entrenados para representar las indicaciones de los usuarios. Por el contrario, Mochi 1 simplemente codifica mensajes con un único modelo de lenguaje T5-XXL.
parámetros Contar | número capas | número cabezas | Visual Oscuro | Texto Oscuro | Visual Fichas | Texto Fichas |
---|---|---|---|---|---|---|
10B | 48 | 24 | 3072 | 1536 | 44520 | 256 |
El modelo requiere al menos 4 GPU H100 para funcionar. Agradecemos las contribuciones de la comunidad para reducir este requisito.
Los modelos de video Genmo son modelos generales de difusión de texto a video que reflejan inherentemente los sesgos y las ideas preconcebidas encontradas en sus datos de entrenamiento. Si bien se han tomado medidas para limitar el contenido NSFW, las organizaciones deben implementar protocolos de seguridad adicionales y una cuidadosa consideración antes de implementar estos pesos modelo en cualquier servicio o producto comercial.
Según el avance de la investigación, Mochi 1 es un punto de control vivo y en evolución. Existen algunas limitaciones conocidas. La versión inicial genera videos a 480p hoy. En algunos casos de bordes con movimiento extremo, también pueden ocurrir pequeñas deformaciones y distorsiones. Mochi 1 también está optimizado para estilos fotorrealistas, por lo que no funciona bien con contenido animado. También anticipamos que la comunidad ajustará el modelo para adaptarlo a diversas preferencias estéticas.
ComfyUI-MochiWrapper agrega soporte ComfyUI para Mochi. La integración de la atención SDPA de Pytorch se tomó de su repositorio.
@misc{genmo2024mochi, title={Mochi}, author={Genmo Team}, year={2024} }