Biblioteca de machine learning para Python basada en SciPy y NumPy, con herramientas de clasificación, regresión, clustering y selección de modelos, bajo licencia BSD.
haifengl/smile
Plataforma de machine learning e IA para la JVM que abarca ML clásico, deep learning, NLP, visualización e inferencia con LLM y ONNX para Java, Kotlin y Scala.
- Estrellas
- 6,429
- Forks
- 1,149
- Issues abiertos
- 3
- Último commit
- anteayer
¿Qué es?
SMILE es una biblioteca de machine learning y una plataforma de IA para la JVM, con API que se pueden usar desde Java, Kotlin y Scala. Ofrece una amplia variedad de algoritmos de clasificación, regresión, clustering, aprendizaje de variedades, detección de anomalías, series temporales, NLP y estadística, que pueden ejecutarse dentro de una aplicación sin necesidad de un servicio de Python independiente.
Además de la biblioteca principal, el proyecto incluye SMILE Serve, un servidor de inferencia basado en Quarkus que aloja modelos serializados de SMILE, modelos ONNX y LLM detrás de endpoints compatibles con OpenAI, con transmisión SSE, métricas de Prometheus y una interfaz web integrada. SMILE Studio es un entorno de escritorio con notebooks y agentes de IA para explorar datos, entrenar modelos y exportar artefactos. La explicación de modelos incluye TreeSHAP y KernelSHAP para atribuir características a nivel local.
El proyecto tiene una doble licencia: por defecto se aplican licencias de código abierto (GPLv3, AGPLv3 y BSL para Studio), y HALO.AI ofrece licencias comerciales para la distribución de software propietario.
Funciones clave
- 01Algoritmos de clasificación, regresión, clustering y aprendizaje de variedades que se pueden usar desde Java, Kotlin y Scala
- 02Deep learning con backend LibTorch/GPU e inferencia con ONNX Runtime
- 03Despliegue de LLM con completado de chats compatible con OpenAI, llamadas a herramientas y streaming
- 04TreeSHAP y KernelSHAP para explicar las predicciones de los modelos
- 05DataFrame, entrada y salida de CSV/Parquet/Arrow/JDBC y utilidades de transformación de datos
- 06Gráficos con Swing y Vega-Lite para la visualización
Casos de uso
- Integrar modelos predictivos en un microservicio JVM existente sin un proceso auxiliar de Python
- Servir modelos de ML clásico, ONNX y LLM desde un servidor de inferencia autohospedado
- Ejecutar evaluaciones y actualizar modelos en máquinas edge o aisladas de la red
- Explorar datos y entrenar modelos en un entorno interactivo de notebooks
Inicio rápido
- 1
Añade la biblioteca smile-core de Maven Central a tu compilación (consulta la sección Installation del README)
- 2
Sigue la sección Quick Start del README para ejecutar tu primer ejemplo
Antes de usarlo
- Las versiones más recientes requieren Java 25, mientras que v4.x es compatible con Java 21 y las versiones anteriores, con Java 8.
- Los metadatos no identifican claramente la licencia, así que consulta sus términos antes de usar el proyecto.
- El README indica que la licencia de código abierto conlleva obligaciones de copyleft y de publicación del código fuente, y que HALO.AI ofrece una licencia comercial para evitarlas.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es smile?
- Plataforma de machine learning e IA para la JVM que abarca ML clásico, deep learning, NLP, visualización e inferencia con LLM y ONNX para Java, Kotlin y Scala. SMILE es una biblioteca de machine learning y una plataforma de IA para la JVM, con API que se pueden usar desde Java, Kotlin y Scala. Ofrece una amplia variedad de algoritmos de clasificación, regresión, clustering, aprendizaje de variedades, detección de anomalías, series temporales, NLP y estadística, que pueden ejecutarse dentro de una aplicación sin necesidad de un servicio de Python independiente.
- ¿smile es gratuito? ¿Qué licencia tiene?
- smile es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿smile sigue mantenido?
- Mantenimiento activo. El último commit de smile fue el 3 nov 2026.
- ¿Para qué puedo usar smile?
- Integrar modelos predictivos en un microservicio JVM existente sin un proceso auxiliar de Python Servir modelos de ML clásico, ONNX y LLM desde un servidor de inferencia autohospedado Ejecutar evaluaciones y actualizar modelos en máquinas edge o aisladas de la red Explorar datos y entrenar modelos en un entorno interactivo de notebooks
- ¿Cómo se instala smile?
- Añade la biblioteca smile-core de Maven Central a tu compilación (consulta la sección Installation del README) Sigue la sección Quick Start del README para ejecutar tu primer ejemplo
- ¿Dónde consigo smile?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/haifengl/smile
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Orange es una herramienta de programación visual de código abierto para minería, análisis y visualización de datos, basada en flujos de trabajo de arrastrar y soltar.
Conjunto de herramientas de Python y una interfaz web para evaluar y depurar patrones de error, equidad, interpretabilidad y efectos causales en modelos de ML.
Framework de machine learning en Python basado en scikit-learn y pandas, con módulos para sistemas de trading y predicción deportiva.
Toolkit de Python de código abierto para evaluar cuantitativamente explicaciones de redes neuronales con más de 30 métricas XAI en PyTorch y TensorFlow.
Servidor de deep learning, paquete wheel de Python y CLI para entrenar y ejecutar modelos con imágenes, texto, datos tabulares y series temporales mediante una REST API.