runpod/runpod-python

🐍 | Python library for Runpod API and serverless worker SDK.

해결하는 문제

이 라이브러리는 RunPod의 GPU 클라우드 인프라를 통합적으로 관리하고 서버리스 AI 모델을 배포하기 위한 단일 Python 인터페이스를 제공합니다. 수동 API 호출이 필요 없으며, 인프라 관리(Pod)와 사용자 정의 서버리스 엔드포인트 생성을 위한 고수준 SDK를 제공합니다.

작동 방식

이 프로젝트는 주로 두 가지 기능으로 나뉩니다:

  1. 서버리스 SDK: Python 함수(핸들러)를 감싸고 RunPod에서 사용자 정의 API 엔드포인트로 배포할 수 있는 워커를 시작할 수 있습니다. GPU 가용성 또는 디스크 공간 검증을 위한 "피트니스 체크" 기능과 네트워크 볼륨에서 모델을 빠르게 로드하기 위한 VolumeCache를 포함합니다.
  2. API 래퍼: 프로그래밍 가능한 방식으로 RunPod 리소스를 제어할 수 있는 GraphQL 래퍼입니다. 사용자는 GPU Pod를 생성, 중지, 재개, 종료할 수 있으며, 동기 또는 비동기 요청 메서드를 사용해 배포된 엔드포인트와 상호작용할 수 있습니다.

대상 사용자

  • AI 엔지니어: 모델을 확장 가능한 서버리스 API로 배포하고 싶은 사람.
  • MLOps 엔지니어: GPU 클라우드 인스턴스(Pod)의 프로비저닝 및 관리를 자동화하고 싶은 사람.
  • 개발자: RunPod 엔드포인트에 추론 요청을 프로그래밍 방식으로 트리거하고 싶은 사람.

주요 특징

  • 서버리스 워커 프레임워크: Python 함수를 쉽게 배포 가능한 API 엔드포인트로 변환할 수 있습니다.
  • 인프라 자동화: GPU 및 CPU Pod에 대한 완전한 프로그래밍 제어가 가능합니다.
  • 워밍 캐시: 네트워크 볼륨에서 로컬 디렉터리를 사전에 채워서 콜드스타트 시간을 줄입니다.
  • 피트니스 체크: 작업을 수락하기 전에 워커가 건강한지(예: GPU 존재)를 보장합니다.
  • 유연한 API 키 관리: 스레드 세이프한 병렬 작업을 지원하기 위해 전역 키와 엔드포인트별 키를 모두 지원합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트