runpod python
1.7.7
欢迎使用 RunPod API 和 SDK 的官方 Python 库。
目录
|安装
无服务器工作线程 (SDK)
快速入门
本地测试人员
API语言库(GraphQL包装器)
端点
GPU 云(Pod)
目录
社区和贡献
# 安装最新发布版本pip install runpod# 或# 安装最新开发版本(主分支)pip install git+https://github.com/runpod/runpod-python.git
需要 Python 3.8 或更高版本才能使用此包的最新版本。
此 python 包还可用于创建无服务器工作线程,该工作线程可以作为自定义端点 API 部署到 RunPod。
在项目中创建一个 python 脚本,其中包含模型定义和 RunPod 工作线程启动代码。运行此 python 代码作为默认容器启动命令:
# my_worker.pyimport runpoddef is_even(job):job_input = job["input"]the_number = job_input["number"]if not isinstance(the_number, int):return {"error": "愚蠢的人类,你需要传递一个整数。"}if the_number % 2 == 0:return Truereturn Falserunpod.serverless.start({"handler": is_even})
确保容器启动时运行此文件。这可以通过在 runpod.io/console/serverless/user/templates 设置模板时在 docker 命令中调用它来完成,或者通过在 Dockerfile 中将其设置为默认命令来完成。
请参阅我们关于创建基本无服务器 API 的博客文章,或查看详细文档以获取更多信息。
您还可以在将工作程序部署到 RunPod 之前在本地对其进行测试。这对于调试和测试很有用。
python my_worker.py --rp_serve_api
与 RunPod API 交互时,您可以使用此库向 API 发出请求。
导入 runpodrunpod.api_key = "your_runpod_api_key_found_under_settings"
您可以通过run
或run_sync
方法与 RunPod 端点交互。
端点 = runpod.Endpoint("ENDPOINT_ID")run_request = 端点.run( {“your_model_input_key”:“your_model_input_value”} )# 检查端点运行请求的状态print(run_request.status())# 获取端点运行请求的输出,阻塞直到端点运行完成。print(run_request.output())
端点 = runpod.Endpoint("ENDPOINT_ID")run_request = 端点.run_sync( {“your_model_input_key”:“your_model_input_value”} )# 如果在 90 秒内完成则返回作业结果,否则返回作业状态.print(run_request )
import runpodrunpod.api_key = "your_runpod_api_key_found_under_settings"# 获取我所有的 podspods = runpod.get_pods()# 获取特定的 podpods = runpod.get_pod(pod.id)# 创建一个 podpods = runpod.create_pod("test", "runpod/stack ", "NVIDIA GeForce RTX 3070")# 停止podrunpod.stop_pod(pod.id)# 恢复 podrunpod.resume_pod(pod.id)# 终止 podrunpod.terminate_pod(pod.id)
.├── docs # 文档├── Examples # 示例├── runpod # 包源代码│ ├── api_wrapper # 语言库-API (GraphQL)│ ├── cli # 命令行接口函数│ ├── endpoint #语言库 - Endpoints│ └── serverless # SDK - Serverless Worker└── 测试 # 包测试
我们欢迎 GitHub 上的拉取请求和问题。鼓励修复错误和添加新功能,但请先阅读我们的贡献指南。