0Pricing
MLOps Academy · Lección

Defina un servicio y su API

Exponga runners mediante un endpoint de servicio tipado.

Defina un servicio y su API es una lección gratuita de MLOps Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de MLOps Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de MLOps Academy incluye 4 lecciones en total.

Qué es un servicio

En BentoML, un Service es la unidad que se implementa. Envuelve el modelo y expone uno o varios endpoints de API a los que pueden llamar los clientes. 🛎️

Los runners ejecutan el modelo

Un runner es el wrapper optimizado de BentoML para un modelo guardado. Gestiona la inferencia en su propio worker para que la API siga respondiendo.

runner = bentoml.sklearn.get("iris_clf:latest").to_runner()

Cree el servicio

Para crear un servicio, asígnele un nombre y páselo a sus runners. El objeto Service es lo que BentoML sirve y escala.

svc = bentoml.Service("iris_classifier", runners=[runner])

Añada un endpoint

Exponga una función como API mediante el decorador @svc.api. Esa función se convierte en una ruta HTTP invocable.

@svc.api(input=..., output=...)
def classify(data):
    ...

Declare la entrada y la salida

Defina descriptores de E/S tipados para que BentoML pueda validar y serializar los datos. NumpyNdarray le indica que debe esperar y devolver arrays.

from bentoml.io import NumpyNdarray

Llame al runner desde dentro

Dentro de la función de la API, invoque el modelo mediante el runner. Usar run envía la entrada al worker del modelo y devuelve el resultado.

result = runner.predict.run(data)
return result

Colóquelo en service.py

BentoML busca el código en un archivo siguiendo una convención. Coloque el servicio en service.py, en la raíz del proyecto.

Sírvalo localmente

Un solo comando inicia un servidor de desarrollo. bentoml serve apunta al archivo y al objeto svc y, después, supervisa los cambios.

bentoml serve service:svc --reload

Use JSON para los diccionarios

No todas las API trabajan con arrays. Cambie el descriptor a JSON cuando sus clientes envíen y esperen diccionarios.

from bentoml.io import JSON

Documentación Swagger integrada

Una vez que se ejecuta, BentoML sirve documentación interactiva de Swagger en la URL raíz para que pueda probar cada endpoint en el navegador. 🎉

Pruebe con una llamada curl

Puede acceder al endpoint activo desde el terminal. Un curl POST rápido envía datos de ejemplo y muestra la predicción que devuelve.

curl -X POST localhost:3000/classify -d "[[5.1,3.5,1.4,0.2]]"

Comprobación rápida

Quiere llamar a su modelo desde una función de API. ¿Cuál es el wrapper adecuado?

Recapitulación

Convirtió un runner en un Service, expuso un endpoint @svc.api con entrada y salida tipadas, lo colocó en service.py y lo sirvió con documentación integrada. ¡API en producción! 🙌

Preguntas frecuentes

¿La lección «Defina un servicio y su API» es gratis?

Sí — el texto completo de «Defina un servicio y su API» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de MLOps Academy, actualiza a CoddyKit PRO. El curso de MLOps Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Defina un servicio y su API»?

Exponga runners mediante un endpoint de servicio tipado. Practicas MLOps Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar MLOps Academy?

No se requiere experiencia previa. MLOps Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Defina un servicio y su API»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de MLOps Academy?

Sí. Cada lección de MLOps Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Guarde un modelo en el Bento Store
  2. Defina un servicio y su API
  3. Habilite el microbatching adaptativo
  4. Compile un Bento y conviértalo en contenedor
← Volver a MLOps Academy