[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GGM1ZFPPC4JS6WNFW9XC8E":3,"skill-same:01M6GGM1ZFPPC4JS6WNFW9XC8E":80},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":58,"commitSha":59,"skillDirectory":60,"forksCount":61,"repositoryHtmlUrl":62,"repositoryHomepageUrl":6,"ownerHtmlUrl":63,"ownerBlogUrl":6,"ownerDescription":64,"updatedAt":65,"install":66,"resources":79},"01M6GGM1ZFPPC4JS6WNFW9XC8E","modal-serverless-gpu",null,"Serverless GPU cloud platform for running ML workloads. Use when you need on-demand GPU access without infrastructure management, deploying ML models as APIs, or running batch jobs with automatic scaling.","zapabob\u002FSkills","zapabob","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F130830376?v=4","01M6DBMYZAGRTFQDSQYW3W764P","峯岸 亮","01M6DBMZ3GKDSJ01NZ9XTZD7JD",2,"MIT","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002Fed\u002Fedc75fb94f9aab8910b9c1eff786258142c58e5bc674e699f57ef4746b886279\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"gpu","modal serverless gpu","modal","serverless","you","macos","with","infrastructure management","as","platform","scaling","use","access","GPU Cloud","batch","deployment","infrastructure","ml","windows","linux","2026-11-10 10:12:30",false,"---\r\nname: modal-serverless-gpu\r\ndescription: Serverless GPU cloud platform for running ML workloads. Use when you need on-demand GPU access without infrastructure management, deploying ML models as APIs, or running batch jobs with automatic scaling.\r\nversion: 1.0.0\r\nauthor: Orchestra Research\r\nlicense: MIT\r\ndependencies: [modal>=0.64.0]\r\nplatforms: [linux, macos, windows]\r\nmetadata:\r\n  hermes:\r\n    tags: [Infrastructure, Serverless, GPU, Cloud, Deployment, Modal]\r\n\r\n---\r\n\r\n# Modal Serverless GPU\r\n\r\nComprehensive guide to running ML workloads on Modal's serverless GPU cloud platform.\r\n\r\n## When to use Modal\r\n\r\n**Use Modal when:**\r\n- Running GPU-intensive ML workloads without managing infrastructure\r\n- Deploying ML models as auto-scaling APIs\r\n- Running batch processing jobs (training, inference, data processing)\r\n- Need pay-per-second GPU pricing without idle costs\r\n- Prototyping ML applications quickly\r\n- Running scheduled jobs (cron-like workloads)\r\n\r\n**Key features:**\r\n- **Serverless GPUs**: T4, L4, A10G, L40S, A100, H100, H200, B200 on-demand\r\n- **Python-native**: Define infrastructure in Python code, no YAML\r\n- **Auto-scaling**: Scale to zero, scale to 100+ GPUs instantly\r\n- **Sub-second cold starts**: Rust-based infrastructure for fast container launches\r\n- **Container caching**: Image layers cached for rapid iteration\r\n- **Web endpoints**: Deploy functions as REST APIs with zero-downtime updates\r\n\r\n**Use alternatives instead:**\r\n- **RunPod**: For longer-running pods with persistent state\r\n- **Lambda Labs**: For reserved GPU instances\r\n- **SkyPilot**: For multi-cloud orchestration and cost optimization\r\n- **Kubernetes**: For complex multi-service architectures\r\n\r\n## Quick start\r\n\r\n### Installation\r\n\r\n```bash\r\npip install modal\r\nmodal setup  # Opens browser for authentication\r\n```\r\n\r\n### Hello World with GPU\r\n\r\n```python\r\nimport modal\r\n\r\napp = modal.App(\"hello-gpu\")\r\n\r\n@app.function(gpu=\"T4\")\r\ndef gpu_info():\r\n    import subprocess\r\n    return subprocess.run([\"nvidia-smi\"], capture_output=True, text=True).stdout\r\n\r\n@app.local_entrypoint()\r\ndef main():\r\n    print(gpu_info.remote())\r\n```\r\n\r\nRun: `modal run hello_gpu.py`\r\n\r\n### Basic inference endpoint\r\n\r\n```python\r\nimport modal\r\n\r\napp = modal.App(\"text-generation\")\r\nimage = modal.Image.debian_slim().pip_install(\"transformers\", \"torch\", \"accelerate\")\r\n\r\n@app.cls(gpu=\"A10G\", image=image)\r\nclass TextGenerator:\r\n    @modal.enter()\r\n    def load_model(self):\r\n        from transformers import pipeline\r\n        self.pipe = pipeline(\"text-generation\", model=\"gpt2\", device=0)\r\n\r\n    @modal.method()\r\n    def generate(self, prompt: str) -> str:\r\n        return self.pipe(prompt, max_length=100)[0][\"generated_text\"]\r\n\r\n@app.local_entrypoint()\r\ndef main():\r\n    print(TextGenerator().generate.remote(\"Hello, world\"))\r\n```\r\n\r\n## Core concepts\r\n\r\n### Key components\r\n\r\n| Component | Purpose |\r\n|-----------|---------|\r\n| `App` | Container for functions and resources |\r\n| `Function` | Serverless function with compute specs |\r\n| `Cls` | Class-based functions with lifecycle hooks |\r\n| `Image` | Container image definition |\r\n| `Volume` | Persistent storage for models\u002Fdata |\r\n| `Secret` | Secure credential storage |\r\n\r\n### Execution modes\r\n\r\n| Command | Description |\r\n|---------|-------------|\r\n| `modal run script.py` | Execute and exit |\r\n| `modal serve script.py` | Development with live reload |\r\n| `modal deploy script.py` | Persistent cloud deployment |\r\n\r\n## GPU configuration\r\n\r\n### Available GPUs\r\n\r\n| GPU | VRAM | Best For |\r\n|-----|------|----------|\r\n| `T4` | 16GB | Budget inference, small models |\r\n| `L4` | 24GB | Inference, Ada Lovelace arch |\r\n| `A10G` | 24GB | Training\u002Finference, 3.3x faster than T4 |\r\n| `L40S` | 48GB | Recommended for inference (best cost\u002Fperf) |\r\n| `A100-40GB` | 40GB | Large model training |\r\n| `A100-80GB` | 80GB | Very large models |\r\n| `H100` | 80GB | Fastest, FP8 + Transformer Engine |\r\n| `H200` | 141GB | Auto-upgrade from H100, 4.8TB\u002Fs bandwidth |\r\n| `B200` | Latest | Blackwell architecture |\r\n\r\n### GPU specification patterns\r\n\r\n```python\r\n# Single GPU\r\n@app.function(gpu=\"A100\")\r\n\r\n# Specific memory variant\r\n@app.function(gpu=\"A100-80GB\")\r\n\r\n# Multiple GPUs (up to 8)\r\n@app.function(gpu=\"H100:4\")\r\n\r\n# GPU with fallbacks\r\n@app.function(gpu=[\"H100\", \"A100\", \"L40S\"])\r\n\r\n# Any available GPU\r\n@app.function(gpu=\"any\")\r\n```\r\n\r\n## Container images\r\n\r\n```python\r\n# Basic image with pip\r\nimage = modal.Image.debian_slim(python_version=\"3.11\").pip_install(\r\n    \"torch==2.1.0\", \"transformers==4.36.0\", \"accelerate\"\r\n)\r\n\r\n# From CUDA base\r\nimage = modal.Image.from_registry(\r\n    \"nvidia\u002Fcuda:12.1.0-cudnn8-devel-ubuntu22.04\",\r\n    add_python=\"3.11\"\r\n).pip_install(\"torch\", \"transformers\")\r\n\r\n# With system packages\r\nimage = modal.Image.debian_slim().apt_install(\"git\", \"ffmpeg\").pip_install(\"whisper\")\r\n```\r\n\r\n## Persistent storage\r\n\r\n```python\r\nvolume = modal.Volume.from_name(\"model-cache\", create_if_missing=True)\r\n\r\n@app.function(gpu=\"A10G\", volumes={\"\u002Fmodels\": volume})\r\ndef load_model():\r\n    import os\r\n    model_path = \"\u002Fmodels\u002Fllama-7b\"\r\n    if not os.path.exists(model_path):\r\n        model = download_model()\r\n        model.save_pretrained(model_path)\r\n        volume.commit()  # Persist changes\r\n    return load_from_path(model_path)\r\n```\r\n\r\n## Web endpoints\r\n\r\n### FastAPI endpoint decorator\r\n\r\n```python\r\n@app.function()\r\n@modal.fastapi_endpoint(method=\"POST\")\r\ndef predict(text: str) -> dict:\r\n    return {\"result\": model.predict(text)}\r\n```\r\n\r\n### Full ASGI app\r\n\r\n```python\r\nfrom fastapi import FastAPI\r\nweb_app = FastAPI()\r\n\r\n@web_app.post(\"\u002Fpredict\")\r\nasync def predict(text: str):\r\n    return {\"result\": await model.predict.remote.aio(text)}\r\n\r\n@app.function()\r\n@modal.asgi_app()\r\ndef fastapi_app():\r\n    return web_app\r\n```\r\n\r\n### Web endpoint types\r\n\r\n| Decorator | Use Case |\r\n|-----------|----------|\r\n| `@modal.fastapi_endpoint()` | Simple function → API |\r\n| `@modal.asgi_app()` | Full FastAPI\u002FStarlette apps |\r\n| `@modal.wsgi_app()` | Django\u002FFlask apps |\r\n| `@modal.web_server(port)` | Arbitrary HTTP servers |\r\n\r\n## Dynamic batching\r\n\r\n```python\r\n@app.function()\r\n@modal.batched(max_batch_size=32, wait_ms=100)\r\nasync def batch_predict(inputs: list[str]) -> list[dict]:\r\n    # Inputs automatically batched\r\n    return model.batch_predict(inputs)\r\n```\r\n\r\n## Secrets management\r\n\r\n```bash\r\n# Create secret\r\nmodal secret create huggingface HF_TOKEN=hf_xxx\r\n```\r\n\r\n```python\r\n@app.function(secrets=[modal.Secret.from_name(\"huggingface\")])\r\ndef download_model():\r\n    import os\r\n    token = os.environ[\"HF_TOKEN\"]\r\n```\r\n\r\n## Scheduling\r\n\r\n```python\r\n@app.function(schedule=modal.Cron(\"0 0 * * *\"))  # Daily midnight\r\ndef daily_job():\r\n    pass\r\n\r\n@app.function(schedule=modal.Period(hours=1))\r\ndef hourly_job():\r\n    pass\r\n```\r\n\r\n## Performance optimization\r\n\r\n### Cold start mitigation\r\n\r\n```python\r\n@app.function(\r\n    container_idle_timeout=300,  # Keep warm 5 min\r\n    allow_concurrent_inputs=10,  # Handle concurrent requests\r\n)\r\ndef inference():\r\n    pass\r\n```\r\n\r\n### Model loading best practices\r\n\r\n```python\r\n@app.cls(gpu=\"A100\")\r\nclass Model:\r\n    @modal.enter()  # Run once at container start\r\n    def load(self):\r\n        self.model = load_model()  # Load during warm-up\r\n\r\n    @modal.method()\r\n    def predict(self, x):\r\n        return self.model(x)\r\n```\r\n\r\n## Parallel processing\r\n\r\n```python\r\n@app.function()\r\ndef process_item(item):\r\n    return expensive_computation(item)\r\n\r\n@app.function()\r\ndef run_parallel():\r\n    items = list(range(1000))\r\n    # Fan out to parallel containers\r\n    results = list(process_item.map(items))\r\n    return results\r\n```\r\n\r\n## Common configuration\r\n\r\n```python\r\n@app.function(\r\n    gpu=\"A100\",\r\n    memory=32768,              # 32GB RAM\r\n    cpu=4,                     # 4 CPU cores\r\n    timeout=3600,              # 1 hour max\r\n    container_idle_timeout=120,# Keep warm 2 min\r\n    retries=3,                 # Retry on failure\r\n    concurrency_limit=10,      # Max concurrent containers\r\n)\r\ndef my_function():\r\n    pass\r\n```\r\n\r\n## Debugging\r\n\r\n```python\r\n# Test locally\r\nif __name__ == \"__main__\":\r\n    result = my_function.local()\r\n\r\n# View logs\r\n# modal app logs my-app\r\n```\r\n\r\n## Common issues\r\n\r\n| Issue | Solution |\r\n|-------|----------|\r\n| Cold start latency | Increase `container_idle_timeout`, use `@modal.enter()` |\r\n| GPU OOM | Use larger GPU (`A100-80GB`), enable gradient checkpointing |\r\n| Image build fails | Pin dependency versions, check CUDA compatibility |\r\n| Timeout errors | Increase `timeout`, add checkpointing |\r\n\r\n## References\r\n\r\n- **[Advanced Usage](references\u002Fadvanced-usage.md)** - Multi-GPU, distributed training, cost optimization\r\n- **[Troubleshooting](references\u002Ftroubleshooting.md)** - Common issues and solutions\r\n\r\n## Resources\r\n\r\n- **Documentation**: https:\u002F\u002Fmodal.com\u002Fdocs\r\n- **Examples**: https:\u002F\u002Fgithub.com\u002Fmodal-labs\u002Fmodal-examples\r\n- **Pricing**: https:\u002F\u002Fmodal.com\u002Fpricing\r\n- **Discord**: https:\u002F\u002Fdiscord.gg\u002Fmodal\r\n","# Modal Serverless GPU\r\n\r\nComprehensive guide to running ML workloads on Modal's serverless GPU cloud platform.\r\n\r\n## When to use Modal\r\n\r\n**Use Modal when:**\r\n- Running GPU-intensive ML workloads without managing infrastructure\r\n- Deploying ML models as auto-scaling APIs\r\n- Running batch processing jobs (training, inference, data processing)\r\n- Need pay-per-second GPU pricing without idle costs\r\n- Prototyping ML applications quickly\r\n- Running scheduled jobs (cron-like workloads)\r\n\r\n**Key features:**\r\n- **Serverless GPUs**: T4, L4, A10G, L40S, A100, H100, H200, B200 on-demand\r\n- **Python-native**: Define infrastructure in Python code, no YAML\r\n- **Auto-scaling**: Scale to zero, scale to 100+ GPUs instantly\r\n- **Sub-second cold starts**: Rust-based infrastructure for fast container launches\r\n- **Container caching**: Image layers cached for rapid iteration\r\n- **Web endpoints**: Deploy functions as REST APIs with zero-downtime updates\r\n\r\n**Use alternatives instead:**\r\n- **RunPod**: For longer-running pods with persistent state\r\n- **Lambda Labs**: For reserved GPU instances\r\n- **SkyPilot**: For multi-cloud orchestration and cost optimization\r\n- **Kubernetes**: For complex multi-service architectures\r\n\r\n## Quick start\r\n\r\n### Installation\r\n\r\n```bash\r\npip install modal\r\nmodal setup  # Opens browser for authentication\r\n```\r\n\r\n### Hello World with GPU\r\n\r\n```python\r\nimport modal\r\n\r\napp = modal.App(\"hello-gpu\")\r\n\r\n@app.function(gpu=\"T4\")\r\ndef gpu_info():\r\n    import subprocess\r\n    return subprocess.run([\"nvidia-smi\"], capture_output=True, text=True).stdout\r\n\r\n@app.local_entrypoint()\r\ndef main():\r\n    print(gpu_info.remote())\r\n```\r\n\r\nRun: `modal run hello_gpu.py`\r\n\r\n### Basic inference endpoint\r\n\r\n```python\r\nimport modal\r\n\r\napp = modal.App(\"text-generation\")\r\nimage = modal.Image.debian_slim().pip_install(\"transformers\", \"torch\", \"accelerate\")\r\n\r\n@app.cls(gpu=\"A10G\", image=image)\r\nclass TextGenerator:\r\n    @modal.enter()\r\n    def load_model(self):\r\n        from transformers import pipeline\r\n        self.pipe = pipeline(\"text-generation\", model=\"gpt2\", device=0)\r\n\r\n    @modal.method()\r\n    def generate(self, prompt: str) -> str:\r\n        return self.pipe(prompt, max_length=100)[0][\"generated_text\"]\r\n\r\n@app.local_entrypoint()\r\ndef main():\r\n    print(TextGenerator().generate.remote(\"Hello, world\"))\r\n```\r\n\r\n## Core concepts\r\n\r\n### Key components\r\n\r\n| Component | Purpose |\r\n|-----------|---------|\r\n| `App` | Container for functions and resources |\r\n| `Function` | Serverless function with compute specs |\r\n| `Cls` | Class-based functions with lifecycle hooks |\r\n| `Image` | Container image definition |\r\n| `Volume` | Persistent storage for models\u002Fdata |\r\n| `Secret` | Secure credential storage |\r\n\r\n### Execution modes\r\n\r\n| Command | Description |\r\n|---------|-------------|\r\n| `modal run script.py` | Execute and exit |\r\n| `modal serve script.py` | Development with live reload |\r\n| `modal deploy script.py` | Persistent cloud deployment |\r\n\r\n## GPU configuration\r\n\r\n### Available GPUs\r\n\r\n| GPU | VRAM | Best For |\r\n|-----|------|----------|\r\n| `T4` | 16GB | Budget inference, small models |\r\n| `L4` | 24GB | Inference, Ada Lovelace arch |\r\n| `A10G` | 24GB | Training\u002Finference, 3.3x faster than T4 |\r\n| `L40S` | 48GB | Recommended for inference (best cost\u002Fperf) |\r\n| `A100-40GB` | 40GB | Large model training |\r\n| `A100-80GB` | 80GB | Very large models |\r\n| `H100` | 80GB | Fastest, FP8 + Transformer Engine |\r\n| `H200` | 141GB | Auto-upgrade from H100, 4.8TB\u002Fs bandwidth |\r\n| `B200` | Latest | Blackwell architecture |\r\n\r\n### GPU specification patterns\r\n\r\n```python\r\n# Single GPU\r\n@app.function(gpu=\"A100\")\r\n\r\n# Specific memory variant\r\n@app.function(gpu=\"A100-80GB\")\r\n\r\n# Multiple GPUs (up to 8)\r\n@app.function(gpu=\"H100:4\")\r\n\r\n# GPU with fallbacks\r\n@app.function(gpu=[\"H100\", \"A100\", \"L40S\"])\r\n\r\n# Any available GPU\r\n@app.function(gpu=\"any\")\r\n```\r\n\r\n## Container images\r\n\r\n```python\r\n# Basic image with pip\r\nimage = modal.Image.debian_slim(python_version=\"3.11\").pip_install(\r\n    \"torch==2.1.0\", \"transformers==4.36.0\", \"accelerate\"\r\n)\r\n\r\n# From CUDA base\r\nimage = modal.Image.from_registry(\r\n    \"nvidia\u002Fcuda:12.1.0-cudnn8-devel-ubuntu22.04\",\r\n    add_python=\"3.11\"\r\n).pip_install(\"torch\", \"transformers\")\r\n\r\n# With system packages\r\nimage = modal.Image.debian_slim().apt_install(\"git\", \"ffmpeg\").pip_install(\"whisper\")\r\n```\r\n\r\n## Persistent storage\r\n\r\n```python\r\nvolume = modal.Volume.from_name(\"model-cache\", create_if_missing=True)\r\n\r\n@app.function(gpu=\"A10G\", volumes={\"\u002Fmodels\": volume})\r\ndef load_model():\r\n    import os\r\n    model_path = \"\u002Fmodels\u002Fllama-7b\"\r\n    if not os.path.exists(model_path):\r\n        model = download_model()\r\n        model.save_pretrained(model_path)\r\n        volume.commit()  # Persist changes\r\n    return load_from_path(model_path)\r\n```\r\n\r\n## Web endpoints\r\n\r\n### FastAPI endpoint decorator\r\n\r\n```python\r\n@app.function()\r\n@modal.fastapi_endpoint(method=\"POST\")\r\ndef predict(text: str) -> dict:\r\n    return {\"result\": model.predict(text)}\r\n```\r\n\r\n### Full ASGI app\r\n\r\n```python\r\nfrom fastapi import FastAPI\r\nweb_app = FastAPI()\r\n\r\n@web_app.post(\"\u002Fpredict\")\r\nasync def predict(text: str):\r\n    return {\"result\": await model.predict.remote.aio(text)}\r\n\r\n@app.function()\r\n@modal.asgi_app()\r\ndef fastapi_app():\r\n    return web_app\r\n```\r\n\r\n### Web endpoint types\r\n\r\n| Decorator | Use Case |\r\n|-----------|----------|\r\n| `@modal.fastapi_endpoint()` | Simple function → API |\r\n| `@modal.asgi_app()` | Full FastAPI\u002FStarlette apps |\r\n| `@modal.wsgi_app()` | Django\u002FFlask apps |\r\n| `@modal.web_server(port)` | Arbitrary HTTP servers |\r\n\r\n## Dynamic batching\r\n\r\n```python\r\n@app.function()\r\n@modal.batched(max_batch_size=32, wait_ms=100)\r\nasync def batch_predict(inputs: list[str]) -> list[dict]:\r\n    # Inputs automatically batched\r\n    return model.batch_predict(inputs)\r\n```\r\n\r\n## Secrets management\r\n\r\n```bash\r\n# Create secret\r\nmodal secret create huggingface HF_TOKEN=hf_xxx\r\n```\r\n\r\n```python\r\n@app.function(secrets=[modal.Secret.from_name(\"huggingface\")])\r\ndef download_model():\r\n    import os\r\n    token = os.environ[\"HF_TOKEN\"]\r\n```\r\n\r\n## Scheduling\r\n\r\n```python\r\n@app.function(schedule=modal.Cron(\"0 0 * * *\"))  # Daily midnight\r\ndef daily_job():\r\n    pass\r\n\r\n@app.function(schedule=modal.Period(hours=1))\r\ndef hourly_job():\r\n    pass\r\n```\r\n\r\n## Performance optimization\r\n\r\n### Cold start mitigation\r\n\r\n```python\r\n@app.function(\r\n    container_idle_timeout=300,  # Keep warm 5 min\r\n    allow_concurrent_inputs=10,  # Handle concurrent requests\r\n)\r\ndef inference():\r\n    pass\r\n```\r\n\r\n### Model loading best practices\r\n\r\n```python\r\n@app.cls(gpu=\"A100\")\r\nclass Model:\r\n    @modal.enter()  # Run once at container start\r\n    def load(self):\r\n        self.model = load_model()  # Load during warm-up\r\n\r\n    @modal.method()\r\n    def predict(self, x):\r\n        return self.model(x)\r\n```\r\n\r\n## Parallel processing\r\n\r\n```python\r\n@app.function()\r\ndef process_item(item):\r\n    return expensive_computation(item)\r\n\r\n@app.function()\r\ndef run_parallel():\r\n    items = list(range(1000))\r\n    # Fan out to parallel containers\r\n    results = list(process_item.map(items))\r\n    return results\r\n```\r\n\r\n## Common configuration\r\n\r\n```python\r\n@app.function(\r\n    gpu=\"A100\",\r\n    memory=32768,              # 32GB RAM\r\n    cpu=4,                     # 4 CPU cores\r\n    timeout=3600,              # 1 hour max\r\n    container_idle_timeout=120,# Keep warm 2 min\r\n    retries=3,                 # Retry on failure\r\n    concurrency_limit=10,      # Max concurrent containers\r\n)\r\ndef my_function():\r\n    pass\r\n```\r\n\r\n## Debugging\r\n\r\n```python\r\n# Test locally\r\nif __name__ == \"__main__\":\r\n    result = my_function.local()\r\n\r\n# View logs\r\n# modal app logs my-app\r\n```\r\n\r\n## Common issues\r\n\r\n| Issue | Solution |\r\n|-------|----------|\r\n| Cold start latency | Increase `container_idle_timeout`, use `@modal.enter()` |\r\n| GPU OOM | Use larger GPU (`A100-80GB`), enable gradient checkpointing |\r\n| Image build fails | Pin dependency versions, check CUDA compatibility |\r\n| Timeout errors | Increase `timeout`, add checkpointing |\r\n\r\n## References\r\n\r\n- **[Advanced Usage](references\u002Fadvanced-usage.md)** - Multi-GPU, distributed training, cost optimization\r\n- **[Troubleshooting](references\u002Ftroubleshooting.md)** - Common issues and solutions\r\n\r\n## Resources\r\n\r\n- **Documentation**: https:\u002F\u002Fmodal.com\u002Fdocs\r\n- **Examples**: https:\u002F\u002Fgithub.com\u002Fmodal-labs\u002Fmodal-examples\r\n- **Pricing**: https:\u002F\u002Fmodal.com\u002Fpricing\r\n- **Discord**: https:\u002F\u002Fdiscord.gg\u002Fmodal\r\n",{"name":5,"author":44,"license":15,"version":45,"metadata":46,"platforms":55,"description":7,"dependencies":56},"Orchestra Research","1.0.0",{"hermes":47},{"tags":48},[49,50,51,52,53,54],"Infrastructure","Serverless","GPU","Cloud","Deployment","Modal",[38,24,37],[57],"modal>=0.64.0","main","0d1434f89f4bc6b07e9d272accd8c1013768820f","archive\u002Fskill-md-reviewed\u002Fsha256\u002Fed\u002Fedc75fb94f9aab8910b9c1eff786258142c58e5bc674e699f57ef4746b886279",0,"https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills","https:\u002F\u002Fgithub.com\u002Fzapabob","The Open University of JAPAN　2019-now\r\n\r\nTokyo University of Science　2007-2010","2026-10-26 16:29:01",{"source":8,"skillName":5,"commands":67,"prompt":77,"zipAvailable":78},[68,71,74],{"tool":69,"command":70},"npx","npx skills add zapabob\u002FSkills --skill modal-serverless-gpu",{"tool":72,"command":73},"bunx","bunx skills add zapabob\u002FSkills --skill modal-serverless-gpu",{"tool":75,"command":76},"pnpm","pnpm dlx skills add zapabob\u002FSkills --skill modal-serverless-gpu","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002Fed\u002Fedc75fb94f9aab8910b9c1eff786258142c58e5bc674e699f57ef4746b886279\u002FSKILL.md",true,[],[81,116,151,177,204,220],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":100,"publishedAt":39},"01M6GJTE1GESGGF9K028Y7753E","xurl","X\u002FTwitter via xurl CLI: post, search, DM, media, v2 API.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fxurl\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[87,92,95],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":93,"categoryName":94,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[83,101,24,102,103,38,37,104,105,106,107,108,109,110,111,112,58,113,114,115],"openclaw","cli","github","official","search","https","social-media","api","Media","hermes","hermes agent","twitter","social","via","post",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":133,"publishedAt":39},"01M6GJT8S1PXQ8WPXT1HSNBWH2","writing-plans","Write implementation plans: bite-sized tasks, paths, code.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwriting-plans\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[122,125,128,129,130],{"categoryNo":123,"categoryName":124,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":126,"categoryName":127,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":93,"categoryName":94,"taxonomyType":90,"taxonomyTypeDesc":91},{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},{"categoryNo":131,"categoryName":132,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000036","内容创作者",[134,135,136,137,24,138,38,139,37,140,141,142,143,144,145,146,147,148,149,150],"writing","writing plans","plans","design","review","workflow","documentation","tasks","development","code","planning","code-review","subagent","write","superpowers","paths","test-driven-development",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":160,"publishedAt":39},"01M6GJST0H5X7WHBJ3BZK0DVKH","whisper","OpenAI's general-purpose speech recognition model. Supports 99 languages, transcription, translation to English, and language identification. Six model sizes from tiny (39M params) to large (1550M params). Use for speech-to-text, podcast transcription, or multilingual audio processing. Best for robust, multilingual ASR.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwhisper\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[157],{"categoryNo":158,"categoryName":159,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000016","图像与多媒体",[153,24,38,161,162,163,164,165,166,167,168,169,30,170,171,172,173,174,175,176],"openai","speech","multimodal","Transformers","ASR","Audio","text","model","speech recognition","general","multilingual","translation","english","identification","processing","Audio Processing",{"skillNo":178,"name":179,"nameZh":6,"description":180,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":181,"categories":182,"keywords":186,"publishedAt":39},"01M6GJSMRQ8EETZTYMG72P70EA","weights-and-biases","W&B: log ML experiments, sweeps, model registry, dashboards.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fweights-and-biases\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[183],{"categoryNo":184,"categoryName":185,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000013","分析与可视化",[187,24,188,189,37,190,191,192,193,194,195,168,196,197,198,199,200,201,202,203],"weights and biases","tensorflow","experiments","pytorch","visualization","registry","real-time","tuning","dashboards","experiment","log","time","Experiment Tracking","Model Registry","Hyperparameter Tuning","WandB","Real-Time Visualization",{"skillNo":205,"name":206,"nameZh":6,"description":207,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":208,"categories":209,"keywords":211,"publishedAt":39},"01M6GJS19KDPRY112JTR326S06","watchers","Poll RSS, JSON APIs, and GitHub with watermark dedup.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwatchers\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[210],{"categoryNo":93,"categoryName":94,"taxonomyType":90,"taxonomyTypeDesc":91},[206,24,212,103,38,213,214,215,216,217,218,110,111,219,25],"terminal","automation","http","monitoring","cron","json","rss","devops",{"skillNo":221,"name":222,"nameZh":6,"description":223,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":224,"categories":225,"keywords":228,"publishedAt":39},"01M6GJRHJD2A6Q830SWF9W48BC","serving-llms-vllm","vLLM: high-throughput LLM serving, OpenAI API, quantization.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fvllm\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[226,227],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},[229,230,231,38,232,161,233,234,235,164,236,108,237,238,239,240,241,242,243,244],"llms","vLLM","serving llms vllm","research","openai api","tensor","Inference Serving","Production","llm serving","High Throughput","PagedAttention","Continuous Batching","Quantization","Tensor Parallelism","high-throughput","throughput"]