
Antes de fazer deploy de qualquer endpoint serverless, dá pra testar o handler na sua máquina. Foi o que eu fiz aqui (runpod SDK 2.1.0).
1. Instalar
pip install runpod
2. O handler
# handler.py
import runpod
def handler(job):
texto = job["input"].get("texto", "")
return {"tamanho": len(texto), "maiusculo": texto.upper()}
runpod.serverless.start({"handler": handler})
O worker recebe um job com a chave input e devolve o que você retornar.
3. Arquivo de teste
echo '{"input":{"texto":"ola nuvem"}}' > test_input.json
python handler.py
Se existe um test_input.json na pasta, o SDK usa ele como entrada local. A saída que eu recebi:
INFO | Job result: {'output': {'tamanho': 9, 'maiusculo': 'OLA NUVEM'}}
INFO | Local testing complete, exiting.
4. Onde está o custo de verdade
Em produção, segundo a documentação de preços (04/11/2026), você paga por segundo e o worker flex escala a zero sem requisições. Mas são cobrados o cold start, a execução e o idle timeout (padrão 5 segundos). Se o seu handler carrega um modelo grande, carregue fora da função handler, no nível do módulo, assim o carregamento acontece uma vez por worker e não a cada job.
import runpod
# carrega UMA vez por worker (exemplo: seu modelo aqui)
# modelo = carregar_modelo()
def handler(job):
# return modelo(job["input"]["prompt"])
return {"ok": True}
runpod.serverless.start({"handler": handler})
5. Próximo passo
Empacotar num container, criar o endpoint no console e testar com uma requisição. Eu não rodei essa parte, então não vou prometer custo nem tempo de cold start.
Resumo em vídeo e a newsletter: https://nuvemdev.substack.com
Se quiser criar conta no RunPod: https://go.nowto.link/runpod
Mais tutoriais da Nuvem Dev: veja também o post sobre monitor de VPS com systemd aqui no perfil.
Transparência: o link do RunPod é de afiliado, posso ganhar comissão sem custo extra pra você.
Top comments (0)