Spaces:
Runtime error
Runtime error
| # Multi-modality of InternVideo2 | |
| ## Installation | |
| Please follow the installation instructions in [INSTALL](./INSTALL.md). | |
| >The codebase support using [wandb](https://wandb.ai/) to monitor training. If you want to use wandb, you will need to set up it following [this very short instruction](https://docs.wandb.ai/quickstart#1.-set-up-wandb), and also set `wandb.enable` in the config to be `True`. `wandb.entity` and `wandb.project` should also be set. | |
| ## Datasets | |
| You can find the dataset instructions in [DATASET](DATASET.md). | |
| ## Model ZOO | |
| You can find all the models and the scripts in [MODEL_ZOO](./MODEL_ZOO.md). | |
| ## Demo of Using InternVideo2 in Your Work | |
| We give a short instructions of accessing and utilizing InternVideo2-stage2 in [demo.ipynb](./demo.ipynb). | |
| ## Pre-Training | |
| We use [InternVL](https://github.com/OpenGVLab/InternVL/) pretrained model as the teacher by default | |
| For training, you can simply run the pretraining scripts in `scripts/pretraining` as follows: | |
| ```shell | |
| bash scripts/pretraining/stage2/1B/run.sh | |
| ``` | |
| :warning: **Notes:** | |
| 1. Set `data_dir` and `your_data_path` like `your_webvid_path` in [data.py](./configs/data.py) before running the scripts. | |
| 2. Set `vision_encoder.pretrained` in `vision_encoder.pretrained` in the corresponding config files. | |
| 3. Set `--rdzv_endpoint` to your `MASTER_NODE:MASTER_PORT`. You can also use the following commond to automatically set it: | |
| ```shell | |
| MASTER_NODE=$(scontrol show hostnames "$SLURM_JOB_NODELIST" | head -n 1) | |
| ALL_NODES=$(scontrol show hostnames "$SLURM_JOB_NODELIST") | |
| MASTER_PORT=$((10000 + $RANDOM % 100)) | |
| torchrun --rdzv_endpoint=${MASTER_NODE}:10068 $@ | |
| ``` | |
| 4. `save_latest=True` will automatically save the latest checkpoint while training. | |
| 5. `auto_resume=True` will automatically loaded the best or latest checkpoint while training. | |
| ## Zero-shot Evaluation | |
| For zero-shot evaluation, you can simply run the pretraining scripts in `scripts/evaluation` as follows: | |
| ```shell | |
| bash scripts/evaluation/stage2/zero_shot/1B/eval_msrvtt.sh | |
| ``` | |
| When evaluating, you can choose to turn off deepspeed and the performance will fluctuate slightly from the reported result (around 0.2): | |
| ```shell | |
| bash scripts/evaluation/stage2/zero_shot/1B/eval_msrvtt_no_deepspeed.sh | |
| ``` | |
| :warning: **Notes:** | |
| 1. Set `pretrained_path=your_model_path` in the running scripts before running the scripts. | |
| 2. Set `zero_shot=True` and `evaluate=True` for zero-shot evaluation | |
| ## Finetuning | |
| Coming soon. | |