Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Haz un servicio de ML fácilmente con FastAPI

Sebastián Ramírez
September 05, 2020
460

Haz un servicio de ML fácilmente con FastAPI

Sabes Machine Learning, tus modelos funcionan bien, al equipo le gustan los resultados... pero ahora necesitas "servir" los modelos en un API para que otros puedan interactuar con el (desarrolladores / equpo de frontend / otros sistemas).

En esta charla aprenderás cómo hacer fácilmente un API web (JSON), listo para producción, para tus modelos de ML, con FastAPI, incluyendo las mejores prácticas por defecto... explicado con memes.

Con muy poco código tendrás documentación automática e interactiva, validación de datos, estándares abiertos (OpenAPI, JSON Schema, OAuth2), y de los mejores desempeños disponibles para Python (a la par con Go y NodeJS).

Encima de eso, tendrás autocompletado y chequeos de errores de tipos en tu editor, incluso para tus propios datos, sin importar la complejidad que tengan.

La charla está dirigida a desarrolladores de Machine Learning que solo saben lo básico de desarrollo web: qué es un API web, HTTP, JSON, etc. Pero puede ser apropiada para cualquiera intersado en construir APIs web. Es una charla muy práctica, basada en ejemplos de código.

Sebastián Ramírez

September 05, 2020
Tweet

More Decks by Sebastián Ramírez

Transcript

  1. Haz un servicio de ML fácilmente con Alto desempeño, fácil

    de aprender, rápido de programar, listo para producción
  2. Sobre FastAPI • 20K estrellas de GitHub (alrededor de 1K+

    al mes) • Usado por Microsoft, Uber, Netflix, etc. • Desempeño entre los más altos en Python @tiangolo Por qué sería interesante para Machine Learning?
  3. FastAPI para ML Voy a asumir que sabes: • Machine

    Learning • Ideas básicas de desarrollo web / APIs • HTTP, JSON... @tiangolo
  4. Basado en estándares • OpenAPI • JSON Schema • OAuth2

    ✨ API docs automáticos ✨ @tiangolo
  5. Basado en anotaciones de tipos de Python • Autocompletado para

    todo • Chequeo de tipos y errores @tiangolo
  6. Crea un API web @tiangolo • Muéstrale a colegas •

    Integra con otros apps internos • Deploy a producción
  7. App básica de FastAPI con cuerpo y query - docs

    @tiangolo https://somedomain.com/article/?big_model=true
  8. FastAPI - Otras características @tiangolo • Dependency Injection • Seguridad

    - OAuth2 • WebSockets • Archivos • Tareas en Segundo Plano • Fácil integración con GraphQL • Y más...
  9. Otras herramientas @tiangolo CLIs geniales. Fácil de programar. Basado en

    tipos estándar de Python. Deep Learning funcional con tipos, compatible con tus herramientas favoritas. typer.tiangolo.com thinc.ai