Bem-vindo à biblioteca Python oficial para API e SDK RunPod.
Índice
|Instalação
Trabalhador sem servidor (SDK)
Início rápido
Trabalhador de teste local
Biblioteca de linguagem API (GraphQL Wrapper)
Pontos finais
Nuvem GPU (pods)
Diretório
Comunidade e contribuição
# Instale a versão de lançamento mais recentepip install runpod# ou# Instale a versão de desenvolvimento mais recente (ramificação principal)pip install git+https://github.com/runpod/runpod-python.git
É necessário Python 3.8 ou superior para usar a versão mais recente deste pacote.
Este pacote python também pode ser usado para criar um trabalhador sem servidor que pode ser implantado no RunPod como uma API de endpoint personalizada.
Crie um script python em seu projeto que contenha a definição do modelo e o código inicial do trabalhador RunPod. Execute este código python como seu comando de início de contêiner padrão:
# my_worker.pyimport runpoddef is_even(job):job_input = job["input"]the_number = job_input["number"]if not isinstance(the_number, int):return {"error": "Humano bobo, você precisa passar um inteiro."}if the_number % 2 == 0:return Truereturn Falserunpod.serverless.start({"handler": é_par})
Certifique-se de que este arquivo seja executado quando o contêiner for iniciado. Isso pode ser feito chamando-o no comando docker ao configurar um modelo em runpod.io/console/serverless/user/templates ou definindo-o como o comando padrão em seu Dockerfile.
Consulte nossa postagem no blog para criar uma API sem servidor básica ou consulte os documentos detalhados para obter mais informações.
Você também pode testar seu trabalhador localmente antes de implantá-lo no RunPod. Isso é útil para depuração e teste.
python meu_worker.py --rp_serve_api
Ao interagir com a API RunPod você pode usar esta biblioteca para fazer solicitações à API.
importar runpodrunpod.api_key = "your_runpod_api_key_found_under_settings"
Você pode interagir com endpoints RunPod por meio de um método run
ou run_sync
.
endpoint = runpod.Endpoint("ENDPOINT_ID")run_request = endpoint.run( {"seu_model_input_key": "seu_model_input_value"} )# Verifique o status da execução do endpoint requestprint(run_request.status())# Obtenha a saída da solicitação de execução do endpoint, bloqueando até que a execução do endpoint seja concluída.print(run_request.output())
endpoint = runpod.Endpoint("ENDPOINT_ID")run_request = endpoint.run_sync( {"seu_model_input_key": "seu_model_input_value"} )# Retorna os resultados do trabalho se for concluído em 90 segundos, caso contrário, retorna o trabalho status.print(run_request )
import runpodrunpod.api_key = "your_runpod_api_key_found_under_settings"# Obtenha todos os meus podspods = runpod.get_pods()# Obtenha um podpod específico = runpod.get_pod(pod.id)# Crie um podpod = runpod.create_pod("test", "runpod/stack ", "NVIDIA GeForce RTX 3070")# Pare o podrunpod.stop_pod(pod.id)# Retomar o podrunpod.resume_pod(pod.id)# Encerrar o podrunpod.terminate_pod(pod.id)
.├── docs # Documentação├── exemplos # Exemplos├── runpod # Código fonte do pacote│ ├── api_wrapper # Biblioteca de linguagem - API (GraphQL)│ ├── cli # Funções de interface de linha de comando│ ├── endpoint # Biblioteca de idiomas - Endpoints│ └── serverless # SDK - Serverless Worker└── testes # testes de pacote
Aceitamos solicitações pull e problemas no GitHub. Correções de bugs e novos recursos são incentivados, mas leia primeiro nosso guia de contribuição.