| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | import argparse |
| | from pathlib import Path |
| |
|
| | from huggingface_hub import snapshot_download |
| |
|
| | from .convert_pixtral_ckpt import convert_pixtral_checkpoint |
| |
|
| |
|
| | def main(model_types, model_sizes, checkpoint_dir="checkpoints"): |
| | ORG_NAME = "nvidia" |
| |
|
| | |
| | model_map = { |
| | "7B": "Cosmos-1.0-Diffusion-7B", |
| | "14B": "Cosmos-1.0-Diffusion-14B", |
| | } |
| |
|
| | |
| | extra_models = [ |
| | "Cosmos-1.0-Guardrail", |
| | "Cosmos-1.0-Tokenizer-CV8x8x8", |
| | ] |
| |
|
| | if "Text2World" in model_types: |
| | extra_models.append("Cosmos-1.0-Prompt-Upsampler-12B-Text2World") |
| |
|
| | |
| | checkpoints_dir = Path(checkpoint_dir) |
| | checkpoints_dir.mkdir(parents=True, exist_ok=True) |
| |
|
| | download_kwargs = dict(allow_patterns=["README.md", "model.pt", "config.json", "*.jit"]) |
| |
|
| | |
| | for size in model_sizes: |
| | for model_type in model_types: |
| | suffix = f"-{model_type}" |
| | model_name = model_map[size] + suffix |
| | repo_id = f"{ORG_NAME}/{model_name}" |
| | local_dir = checkpoints_dir.joinpath(model_name) |
| | local_dir.mkdir(parents=True, exist_ok=True) |
| |
|
| | print(f"Downloading {repo_id} to {local_dir}...") |
| | snapshot_download( |
| | repo_id=repo_id, local_dir=str(local_dir), local_dir_use_symlinks=False, **download_kwargs |
| | ) |
| |
|
| | |
| | for model_name in extra_models: |
| | repo_id = f"{ORG_NAME}/{model_name}" |
| | local_dir = checkpoints_dir.joinpath(model_name) |
| | local_dir.mkdir(parents=True, exist_ok=True) |
| |
|
| | print(f"Downloading {repo_id} to {local_dir}...") |
| | |
| | snapshot_download( |
| | repo_id=repo_id, |
| | local_dir=str(local_dir), |
| | local_dir_use_symlinks=False, |
| | ) |
| |
|
| | if "Video2World" in model_types: |
| | |
| | convert_pixtral_checkpoint( |
| | checkpoint_dir=checkpoint_dir, |
| | checkpoint_name="Pixtral-12B", |
| | vit_type="pixtral-12b-vit", |
| | ) |
| |
|
| |
|