360 Secure SkillHub
360 安全技能中心

modal-gpu

该 Skill 提供在 Modal 无服务器平台上用云端 GPU 运行 Python 代码的指南,涵盖应用与容器镜像定义、T4/A10G/A100 GPU 选择、远程函数内数据集下载、结果返回与常见问题排查,并附入门、GPU 选择、数据下载、结果处理和故障排查参考文档。

lnj22
lnj22
热度 33.82
最近更新 2026-05-11 17:43:07
分类:开发依赖:代码执行 / 第三方 API应用场景:DevOps / 自动化脚本 / 数据处理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add mhc-layer-impl-modal-gpu
Metadata
name
modal-gpu
description
Run Python code on cloud GPUs using Modal serverless platform. Use when you need A100/T4/A10G GPU access for training ML models. Covers Modal app setup, GPU selection, data downloading inside functions, and result handling.

Modal GPU Training

Overview

Modal is a serverless platform for running Python code on cloud GPUs. It provides:

  • Serverless GPUs: On-demand access to T4, A10G, A100 GPUs
  • Container Images: Define dependencies declaratively with pip
  • Remote Execution: Run functions on cloud infrastructure
  • Result Handling: Return Python objects from remote functions

Two patterns:

  • Single Function: Simple script with @app.function decorator
  • Multi-Function: Complex workflows with multiple remote calls

Quick Reference

Topic Reference
Basic Structure Getting Started
GPU Options GPU Selection
Data Handling Data Download
Results & Outputs Results
Troubleshooting Common Issues

Installation

pip install modal
modal token set --token-id <id> --token-secret <secret>

Minimal Example

import modal

app = modal.App("my-training-app")

image = modal.Image.debian_slim(python_version="3.11").pip_install(
    "torch",
    "einops",
    "numpy",
)

@app.function(gpu="A100", image=image, timeout=3600)
def train():
    import torch
    device = torch.device("cuda")
    print(f"Using GPU: {torch.cuda.get_device_name(0)}")

    # Training code here
    return {"loss": 0.5}

@app.local_entrypoint()
def main():
    results = train.remote()
    print(results)

Common Imports

import modal
from modal import Image, App

# Inside remote function
import torch
import torch.nn as nn
from huggingface_hub import hf_hub_download

When to Use What

Scenario Approach
Quick GPU experiments gpu="T4" (16GB, cheapest)
Medium training jobs gpu="A10G" (24GB)
Large-scale training gpu="A100" (40/80GB, fastest)
Long-running jobs Set timeout=3600 or higher
Data from HuggingFace Download inside function with hf_hub_download
Return metrics Return dict from function

Running

# Run script
modal run train_modal.py

# Run in background
modal run --detach train_modal.py

External Resources