Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

417
Views
503 Error: Servicio no disponible heroku al hacer inferencia

Implementé un modelo de aprendizaje automático usando Fast API en Heroku e implementé el trabajador en segundo plano y asíncrono, pero cuando estoy haciendo inferencias, sigo recibiendo el error 503. Sé que el tiempo de respuesta del servidor en Heroku es de 30 segundos.

Pero como estoy usando un trabajador en segundo plano, debería poder ejecutarlo en segundo plano; en cambio, recibo errores. Estoy usando el plan gratuito de Heroku para implementar

 app = FastAPI() response = {} @app.get('/predict') async def predictions(solute, solvent): mol = Chem.MolFromSmiles(solute) response["predictions"] = delta_g.item() return {'result': response} async def predict(background_tasks: BackgroundTasks,solute,solvent): background_tasks.add_task(predictions,solute,solvent) from predict_json import json_data_func @app.get('/predict_two') async def predictions_two(solute): for i in data: delta_g, interaction_map = model([get_graph_from_smile(Chem.MolToSmiles(Chem.AddHs(Chem.MolFromSmiles(solute)))).to(device), get_graph_from_smile(Chem.MolToSmiles(Chem.AddHs(Chem.MolFromSmiles(i)))).to(device)]) response_two[i] = delta_g.item() return {'result': response_two} async def predict_two(background_tasks: BackgroundTasks,solute): background_tasks.add_task(predictions_two,solute)

Archivo de proceso: web: gunicorn -w 2 -k uvicorn.workers.UvicornWorker main:app

Entonces, ¿qué debo hacer para ejecutar mi código en segundo plano sin tener un error de tiempo de espera de respuesta del servidor?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puede agregar el parámetro de timeout de espera (con -t o --timeout ) al gunicorn como se indica en la documentación del gunicorn .

Ejemplo de uso:

 gunicorn -w 2 -k uvicorn.workers.UvicornWorker -t 90 main:app
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!