SuperAPI AI 工具集

runpod-flash

部署与运维

查看项目

更新于 11-06 11:16

技能介绍

runpod-flash 是 Runpod 官方插件仓库中的一项技能文档,面向使用 Runpod Python SDK 2.0(runpod 包)进行以代码为核心的无服务器开发。它本身不是独立软件包,而是提供心智模型、决策规则和帮助输出中未包含的注意事项。

用途与定位 该技能用于指导开发者用纯 Python 定义 runpod.App,将代码运行在远程 Runpod GPU/CPU 上。文档明确:若用户需要显式的 Dockerfile/模板项目,应使用 runpod-build-template,不应以 Flash 替代,除非用户主动选择其代码优先工作流。文档还说明,独立 runpod-flash 包已弃用,2026 年 10 月 29 日后不再修复;新项目应使用 SDK 2.0。

主要能力 SDK 应用模型以 runpod.App 命名一组资源,通过装饰器定义三类资源:@app.queue 在函数上创建自动扩缩的队列式无服务器端点,适合请求/响应推理和批处理;@app.api 在类上创建负载均衡端点,通过 @runpod.get/@runpod.post 提供路由,适合 HTTP 服务、多路由 API 和加载一次复用模型状态;@app.task 在函数上为每次调用创建一个临时 Pod,返回后终止,适合训练、微调和长任务。队列和任务句柄支持 fn.remote、await fn.remote.aio、fn.spawn、fn.stream、fn.local 等调用方式;API 类按路由调用。

使用方式 安装依赖:uv add "runpod>=2.0.0"(或 pip install "runpod>=2.0.0");然后 rp login(或 export RUNPOD_API_KEY=...);执行 rp flash init my-app 初始化,进入目录后运行 rp flash dev main.py。开发阶段 rp flash dev 创建临时端点、在本地运行 @runpod.local_entrypoint、流式输出 worker 打印内容并在每次保存后重跑,Ctrl-C 删除端点;--once 只运行一次并自动清理,适合 CI 冒烟测试。rp flash deploy 构建产物(≤1,500 MB,内置 GPU 镜像排除 torch)并在默认环境创建持久端点,--env 指定其他环境,--build-only 仅打包。

适用场景 文档给出端到端示例索引,涉及 whisper 端点、网络卷交接、微调后部署等。典型场景包括请求/响应推理、批处理作业、HTTP 多路由服务、模型加载复用、训练与微调长任务,以及在远程 GPU 上迭代调试。

限制与注意事项 队列参数和结果必须可 JSON 序列化,传入 URL 或 base64 而非对象;整数浮点可能变为整数,需显式转换类型。dev 会话只发送模块源码,因此应用应保持单文件。模块级不应有阻塞性工作,重导入和耗时操作应放在函数内,本地专用代码用 runpod.is_local() 保护。gpu= 与 cpu= 互斥。默认 workers=(0, 3),idle_timeout 默认 60 秒。传入 GPU 列表时自动切换需要 workers 最大值 ≥ 5。请求负载上限 10 MB,大输出应通过卷或对象存储 URL 返回。卷的生命周期长于端点,删除端点不会删除 NetworkVolumes 且持续计费;队列和 API 资源挂载一个卷到 /runpod-volume,应在远程函数内读取 vol.path。spawn 的任务若不等待或取消会持续计费。原生 CUDA 库需加入 dependencies。dev 会话和任务需要本地 Python 3.10–3.14;deploy 在其他版本回退到 3.12 并警告,可用 --python-version 指定。已设置的 RUNPOD_API_KEY 优先于 rp login,过期键会导致 401。torch 系列由 GPU 镜像提供,不应固定版本;混用 CPU 和 GPU 资源时注意 CPU 资源冷启动安装 torch 需要 container_disk_gb 空间。dev worker 使用镜像内置 runpod,deploy 使用本地安装版本。卸载用 rp flash undeploy --app APP --env default -y 删除单个环境端点,rp flash app delete APP --yes 删除所有环境。队列和 API 名称至少 3 个字符才能部署。每个端点模板环境都会放入账户 API key,可读取模板者即可读取密钥。文档还提供迁移旧版 runpod-flash 的说明和回退步骤。

官方文档与源码链接:https://docs.runpod.io/sdk/overview、https://github.com/runpod/runpod-python。