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 패키지를 사용하여 RunPod에 사용자 지정 엔드포인트 API로 배포할 수 있는 서버리스 작업자를 생성할 수도 있습니다.
모델 정의와 RunPod 작업자 시작 코드가 포함된 프로젝트에서 Python 스크립트를 만듭니다. 이 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에 배포하기 전에 작업자를 로컬에서 테스트할 수도 있습니다. 이는 디버깅 및 테스트에 유용합니다.
파이썬 my_worker.py --rp_serve_api
RunPod API와 상호작용할 때 이 라이브러리를 사용하여 API에 요청할 수 있습니다.
import 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"} )# 엔드포인트 실행 상태 확인 requestprint(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"# 내 Podspod 모두 가져오기 = runpod.get_pods()# 특정 Podpod 가져오기 = runpod.get_pod(pod.id)# Podpod 만들기 = 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 # 문서├── 예제 # 예제├── runpod # 패키지 소스 코드│ ├── api_wrapper # 언어 라이브러리 - API (GraphQL)│ ├── cli # 명령줄 인터페이스 함수│ ├── 끝점 # 언어 라이브러리 - 엔드포인트│ └── 서버리스 # SDK - 서버리스 워커└── 테스트 # 패키지 테스트
GitHub에서 끌어오기 요청과 문제를 모두 환영합니다. 버그 수정과 새로운 기능이 권장되지만 먼저 기여 가이드를 읽어보세요.