For the complete documentation index, see llms.txt. This page is also available as Markdown.

BentoML

BentoML es un marco moderno de código abierto para crear, desplegar y escalar aplicaciones de IA. Une la brecha entre la experimentación con ML y el despliegue en producción, permitiéndote empaquetar cualquier modelo de cualquier framework en un servicio API listo para producción en minutos. Ejecuta BentoML en la nube de GPU de Clore.ai para un alojamiento rentable de aplicaciones de IA.


¿Qué es BentoML?

BentoML facilita tomar un modelo entrenado y convertirlo en un servicio API escalable:

  • Independiente del framework: PyTorch, TensorFlow, JAX, scikit-learn, HuggingFace, XGBoost, LightGBM y más

  • Bento: Un artefacto autónomo y reproducible (modelo + código + dependencias)

  • Runner: Unidad de inferencia de modelo escalable con procesamiento por lotes automático

  • Servicio: Definición de servicio HTTP/gRPC similar a FastAPI

  • BentoCloud: Plataforma de despliegue gestionada opcional

  • Primero Docker: Cada Bento puede convertirse en contenedor con un solo comando

Características principales:

  • Micro-lotes adaptativos para optimización del rendimiento

  • Validación integrada de entrada/salida con Pydantic

  • Especificación OpenAPI generada automáticamente

  • Métricas de Prometheus integradas

  • Compatibilidad con respuestas en streaming (LLMs)


Requisitos previos

Requisito
Mínimo
Recomendado

VRAM de GPU

8 GB

16–24 GB

GPU

Cualquier NVIDIA

RTX 4090 / A100

RAM

8 GB

16 GB

Almacenamiento

20 GB

40 GB

Python

3.9+

3.11+


Paso 1 — Alquila una GPU en Clore.ai

  1. Inicia sesión en clore.ai.

  2. Haz clic en Marketplace y selecciona una instancia de GPU con ≥ 16 GB de VRAM.

  3. Establece la imagen Docker: usaremos una compilación personalizada (ver Paso 2).

  4. Establece los puertos abiertos: 22 (SSH) y 3000 (servicio BentoML).

  5. Haz clic en Alquilar.


Paso 2 — Dockerfile

BentoML no tiene una imagen Docker oficial para GPU, así que construimos una:

Construir y subir

Construye la imagen y súbela a tu propia cuenta de Docker Hub (reemplaza YOUR_DOCKERHUB_USERNAME con tu nombre de usuario real):

BentoML no proporciona una imagen Docker oficial de GPU en Docker Hub. Las bentoml/bento-server imágenes en Docker Hub son para servir Bentos preempaquetados y no incluyen compatibilidad con CUDA. Construye la imagen a partir del Dockerfile anterior para despliegues con GPU en Clore.ai.


Paso 3 — Conéctate por SSH

Verifica BentoML:


Paso 4 — Tu primer servicio BentoML

Clasificador de texto simple

Crea un archivo de servicio:

Inicia el servicio

El --reload El indicador habilita la recarga en caliente durante el desarrollo. Elimínalo en producción para mayor estabilidad.


Paso 5 — Accede al servicio

Abre la UI Swagger generada automáticamente:

O prueba mediante curl:

Respuesta esperada:


Paso 6 — Servicio de clasificación de imágenes

Servicio de modelo de visión

Prueba con una imagen:


Paso 7 — Servicio de streaming de LLM

Para modelos de lenguaje con respuestas en streaming:


Paso 8 — Guarda y construye un Bento

Un Bento es un artefacto empaquetado y reproducible:

bentofile.yaml


Monitorización y métricas

BentoML expone métricas de Prometheus en /metrics:

Métricas clave:


Configuración de agrupación adaptativa


Solución de problemas

El servicio no inicia

Soluciones:

  • Comprueba la disponibilidad de CUDA: python -c "import torch; print(torch.cuda.is_available())"

  • Verifica la VRAM de la GPU: nvidia-smi

  • Comprueba que la descarga del modelo se completó (busca el progreso de descarga en los registros)

Puerto 3000 no accesible

Alta latencia en la primera solicitud

Esto es normal: la primera solicitud activa la carga del modelo (calentamiento). Todas las solicitudes posteriores serán rápidas. Añade una llamada al endpoint de calentamiento después del inicio:

Errores de importación

Solución:


Recomendaciones de GPU para Clore.ai

BentoML es un framework de servicio; los requisitos de GPU dependen totalmente del modelo que despliegues. Esto es lo que puedes esperar para cargas de trabajo comunes:

GPU
VRAM
Precio de Clore.ai
Rendimiento de LLM (7B Q4)
Difusión (SDXL)
Visión (ResNet50)

RTX 3090

24 GB

$0.07–0.21/h

~80 tok/s

~4 img/min

~400 req/s

RTX 4090

24 GB

$0.14–0.42/h

~140 tok/s

~8 img/min

~700 req/s

A100 40GB

40 GB

~110 tok/s

~6 img/min

~1200 req/s

A100 80GB

80 GB

~130 tok/s

~7 img/min

~1400 req/s

Guía de casos de uso:

  • Servicio de API LLM (7B–13B): RTX 3090 ($0.07–0.21/h) — relación precio-rendimiento óptima

  • APIs de generación de imágenes: RTX 3090 o RTX 4090 según las necesidades de rendimiento

  • Modelos grandes (34B–70B Q4): A100 40GB (bare metal) — cabe cómodamente

  • Servicio multmodelo en producción: A100 80GB para margen de memoria

La microagrupación adaptativa de BentoML es especialmente eficaz en A100: el programador de hardware maneja las agrupaciones eficientemente, extrayendo más rendimiento por dólar que un servicio ingenuo de una sola solicitud. Para APIs con mucho tráfico, A100 40GB a menudo ofrece mejor ROI que dos RTX 4090.


Recursos útiles

Última actualización

¿Te fue útil?