Biblioteca de Python para crear y servir API de inferencia de modelos de IA, pipelines multimodelo y aplicaciones con LLM, con despliegue en Docker y Kubernetes.
mosecorg/mosec
Framework de Python para servir modelos de ML, con una capa web en Rust, batching dinámico y etapas de CPU/GPU en pipeline para APIs de inferencia online.
- Estrellas
- 902
- Forks
- 75
- Issues abiertos
- 13
- Último commit
- hace 5 días
¿Qué es?
Mosec es un framework para convertir modelos de machine learning entrenados en servicios HTTP online. La capa web y la coordinación de tareas están escritas en Rust, mientras que los usuarios definen la lógica del servicio en Python. Así, el mismo código de inferencia que se usa en pruebas offline puede ponerse en producción sin reescribirlo para un framework de ML específico.
El framework agrupa las solicitudes concurrentes en lotes según un tamaño máximo y un tiempo de espera configurados, y después devuelve los resultados a cada cliente. Los pipelines de varias etapas permiten que procesos separados se encarguen del preprocesamiento en CPU y de la inferencia en GPU; además, se puede ajustar el número de workers de cada etapa. Entre las funciones para servir modelos se incluyen el calentamiento del modelo, el apagado ordenado, las métricas de Prometheus y la generación de documentación OpenAPI. Está diseñado para ejecutarse en Kubernetes y otros orquestadores de contenedores.
Mosec se puede instalar desde PyPI y conda-forge en Linux y macOS. Sus ejemplos incluyen modelos de PyTorch, JAX y Stable Diffusion, además de servicios de embeddings y reranking compatibles con OpenAI.
Funciones clave
- 01Batching dinámico que agrupa solicitudes concurrentes según el tamaño máximo del lote o el tiempo de espera.
- 02Pipelines de varias etapas que ejecutan tareas de CPU y GPU en procesos separados.
- 03Capa web basada en Rust con una interfaz de Python pura para crear workers.
- 04Calentamiento del modelo, apagado ordenado y métricas de Prometheus para entornos de producción.
- 05Generación de documentación OpenAPI para los endpoints publicados.
- 06Serialización con Msgpack y JSON, con soporte para IPC mediante memoria compartida.
Casos de uso
- Servir un modelo de PyTorch o Stable Diffusion como API HTTP con inferencia por lotes en GPU.
- Crear servicios de inferencia de varias etapas que separen el preprocesamiento de la ejecución del modelo.
- Desplegar endpoints de embeddings o reranking compatibles con OpenAI en contenedores sobre Kubernetes.
Inicio rápido
- 1
Instala el paquete mosec desde PyPI
pip install -U mosec - 2
Instala los requisitos previos diffusers y transformers (solo se necesitan para el ejemplo de stable diffusion)
pip install --upgrade diffusers[torch] transformers - 3
Ejecuta el servidor de ejemplo de stable diffusion desde la raíz del proyecto
python examples/stable_diffusion/server.py --log-level debug --timeout 30000
Antes de usarlo
- La instalación mediante pip solo es compatible con Linux o macOS.
- Se requiere Python 3.7 o superior.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es mosec?
- Framework de Python para servir modelos de ML, con una capa web en Rust, batching dinámico y etapas de CPU/GPU en pipeline para APIs de inferencia online. Mosec es un framework para convertir modelos de machine learning entrenados en servicios HTTP online. La capa web y la coordinación de tareas están escritas en Rust, mientras que los usuarios definen la lógica del servicio en Python. Así, el mismo código de inferencia que se usa en pruebas offline puede ponerse en producción sin reescribirlo para un framework de ML específico.
- ¿mosec es gratuito? ¿Qué licencia tiene?
- mosec es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿mosec sigue mantenido?
- Mantenimiento activo. El último commit de mosec fue el 2 nov 2026.
- ¿Para qué puedo usar mosec?
- Servir un modelo de PyTorch o Stable Diffusion como API HTTP con inferencia por lotes en GPU. Crear servicios de inferencia de varias etapas que separen el preprocesamiento de la ejecución del modelo. Desplegar endpoints de embeddings o reranking compatibles con OpenAI en contenedores sobre Kubernetes.
- ¿Cómo se instala mosec?
- Instala el paquete mosec desde PyPI: pip install -U mosec Instala los requisitos previos diffusers y transformers (solo se necesitan para el ejemplo de stable diffusion): pip install --upgrade diffusers[torch] transformers Ejecuta el servidor de ejemplo de stable diffusion desde la raíz del proyecto: python examples/stable_diffusion/server.py --log-level debug --timeout 30000
- ¿Dónde consigo mosec?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/mosecorg/mosec
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Sistema de alto rendimiento para servir modelos de machine learning en producción, con endpoints de inferencia gRPC y HTTP versionados.
Plataforma nativa de Kubernetes para desplegar y servir modelos de IA predictiva y generativa a escala con distintos frameworks de ML.
Suite de MLOps/LLMOps de código abierto para seguimiento de experimentos, versionado de datasets, pipelines, orquestación, planificación y serving de modelos.
Modular Platform: plataforma de código abierto para el framework de IA MAX y el lenguaje de programación Mojo, orientada al desarrollo y despliegue de modelos de IA.
Servidor de inferencia de código abierto que despliega modelos de IA de TensorRT, PyTorch, ONNX, OpenVINO y otros frameworks mediante HTTP/REST y gRPC.