| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 | # ## Downloading Llama 3.2 3B Instruct Model# This script uses a Modal Function to download the model into a cloud Volume.## Run it with:#    modal run downloadimport modalMODELS_DIR = "/llamas"DEFAULT_NAME = "meta-llama/Llama-3.2-3B-Instruct"MINUTES = 60HOURS = 60 * MINUTES# Create a modal Volume to store the modelvolume = modal.Volume.from_name("llamas", create_if_missing=True)# This defines the image to use for the modal functionimage = (    modal.Image.debian_slim(python_version="3.10")    .pip_install(        [            "huggingface_hub",  # download models from the Hugging Face Hub            "hf-transfer",  # download models faster with Rust        ]    )    .env({"HF_HUB_ENABLE_HF_TRANSFER": "1"}))# We run the function from a modal App, which will have our HF_SECRET env var set.# Add your HuggingFace secret access token here: https://modal.com/secrets# secret name: huggingface# env var name: HF_TOKENapp = modal.App(image=image, secrets=[modal.Secret.from_name("huggingface")])# This function will be ran in the cloud, with the volume mounted.@app.function(volumes={MODELS_DIR: volume}, timeout=4 * HOURS)def download_model(model_name, force_download=False):    from huggingface_hub import snapshot_download    volume.reload()    snapshot_download(        model_name,        local_dir=MODELS_DIR + "/" + model_name,        ignore_patterns=[            "*.pt",            "*.bin",            "*.pth",            "original/*",        ],  # Ensure safetensors        force_download=force_download,    )    volume.commit()    print("Model successfully downloaded")@app.local_entrypoint()def main(    model_name: str = DEFAULT_NAME,    force_download: bool = False,):    download_model.remote(model_name, force_download)
 |