Repolode
haifengl

haifengl/smile

Plataforma de machine learning e IA para JVM, com ML clássico, deep learning, NLP, visualização e inferência de LLMs/ONNX para Java, Kotlin e Scala.

Estrelas
6,429
Forks
1,149
Issues abertas
3
Último commit
há 9 horas

O que é?

O SMILE é uma biblioteca de machine learning e uma plataforma de IA para JVM, com APIs que podem ser usadas em Java, Kotlin e Scala. Oferece uma ampla variedade de algoritmos de classificação, regressão, clustering, aprendizado de variedades, detecção de anomalias, séries temporais, NLP e estatística, que podem ser executados dentro da própria aplicação, sem precisar rodar um serviço Python separado.

Além da biblioteca principal, o projeto inclui o SMILE Serve, um servidor de inferência baseado em Quarkus que hospeda modelos SMILE serializados, modelos ONNX e LLMs por meio de endpoints compatíveis com OpenAI, com streaming via SSE, métricas do Prometheus e uma interface web integrada. O SMILE Studio é um ambiente desktop com notebooks e agentes de IA para explorar dados, treinar modelos e exportar artefatos. O suporte à explicabilidade inclui TreeSHAP e KernelSHAP para atribuições locais de importância das features.

O projeto usa licenciamento duplo: por padrão, aplicam-se licenças open source (GPLv3, AGPLv3 e BSL para o Studio), e a HALO.AI também oferece licenças comerciais para distribuição proprietária.

Recursos principais

  • 01Algoritmos de classificação, regressão, clustering e aprendizado de variedades, acessíveis por Java, Kotlin e Scala
  • 02Deep learning com backend LibTorch/GPU e inferência via ONNX Runtime
  • 03Hospedagem de LLMs com chat completions compatíveis com OpenAI, chamada de ferramentas e streaming
  • 04TreeSHAP e KernelSHAP para explicar previsões de modelos
  • 05DataFrame, operações de I/O com CSV/Parquet/Arrow/JDBC e utilitários de transformação de dados
  • 06Visualização com gráficos Swing e Vega-Lite

Casos de uso

  • Incorporar modelos preditivos a um microsserviço JVM existente sem depender de um processo Python separado
  • Servir modelos de ML clássico, ONNX e LLMs em um servidor de inferência autohospedado
  • Executar scoring e atualizar modelos em máquinas de borda ou isoladas de redes externas
  • Explorar dados e treinar modelos em um ambiente interativo com notebooks

Início rápido

  1. 1

    Adicione a biblioteca smile-core do Maven Central ao seu build (consulte a seção Installation do README)

  2. 2

    Siga a seção Quick Start do README para executar seu primeiro exemplo

Antes de usar

  • As versões mais recentes exigem Java 25, enquanto a v4.x é compatível com Java 21 e as versões anteriores são compatíveis com Java 8.
  • Os metadados não identificam claramente a licença; por isso, confira os termos da licença antes de usar o projeto.
  • O README informa que a licença de código aberto implica obrigações de copyleft e divulgação do código-fonte, e que a HALO.AI oferece uma licença comercial para evitá-las.

Em coleções

Tópicos

Perguntas frequentes

O que é smile?
Plataforma de machine learning e IA para JVM, com ML clássico, deep learning, NLP, visualização e inferência de LLMs/ONNX para Java, Kotlin e Scala. O SMILE é uma biblioteca de machine learning e uma plataforma de IA para JVM, com APIs que podem ser usadas em Java, Kotlin e Scala. Oferece uma ampla variedade de algoritmos de classificação, regressão, clustering, aprendizado de variedades, detecção de anomalias, séries temporais, NLP e estatística, que podem ser executados dentro da própria aplicação, sem precisar rodar um serviço Python separado.
smile é gratuito? Qual é a licença?
smile é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
smile ainda é mantido?
Manutenção ativa. O último commit de smile foi em 7 de nov. de 2026.
Para que posso usar smile?
Incorporar modelos preditivos a um microsserviço JVM existente sem depender de um processo Python separado Servir modelos de ML clássico, ONNX e LLMs em um servidor de inferência autohospedado Executar scoring e atualizar modelos em máquinas de borda ou isoladas de redes externas Explorar dados e treinar modelos em um ambiente interativo com notebooks
Como instalar smile?
Adicione a biblioteca smile-core do Maven Central ao seu build (consulte a seção Installation do README) Siga a seção Quick Start do README para executar seu primeiro exemplo
Onde consigo smile?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/haifengl/smile

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados