Spaces:
Runtime error
Runtime error
| # VQVAE Documentation | |
| # Introduction | |
| Vector Quantized Variational AutoEncoders (VQ-VAE) is a type of autoencoder that uses a discrete latent representation. It is particularly useful for tasks that require discrete latent variables, such as text-to-speech and video generation. | |
| # Usage | |
| ## Initialization | |
| To initialize a VQVAE model, you can use the `VideoGPTVQVAE` class. This class is a part of the `opensora.models.ae` module. | |
| ```python | |
| from opensora.models.ae import VideoGPTVQVAE | |
| vqvae = VideoGPTVQVAE() | |
| ``` | |
| ### Training | |
| To train the VQVAE model, you can use the `train_videogpt.sh` script. This script will train the model using the parameters specified in the script. | |
| ```bash | |
| bash scripts/videogpt/train_videogpt.sh | |
| ``` | |
| ### Loading Pretrained Models | |
| You can load a pretrained model using the `download_and_load_model` method. This method will download the checkpoint file and load the model. | |
| ```python | |
| vqvae = VideoGPTVQVAE.download_and_load_model("bair_stride4x2x2") | |
| ``` | |
| Alternatively, you can load a model from a checkpoint using the `load_from_checkpoint` method. | |
| ```python | |
| vqvae = VQVAEModel.load_from_checkpoint("results/VQVAE/checkpoint-1000") | |
| ``` | |
| ### Encoding and Decoding | |
| You can encode a video using the `encode` method. This method will return the encodings and embeddings of the video. | |
| ```python | |
| encodings, embeddings = vqvae.encode(x_vae, include_embeddings=True) | |
| ``` | |
| You can reconstruct a video from its encodings using the decode method. | |
| ```python | |
| video_recon = vqvae.decode(encodings) | |
| ``` | |
| ## Testing | |
| You can test the VQVAE model by reconstructing a video. The `examples/rec_video.py` script provides an example of how to do this. |