haifengl/smile

Statistical Machine Intelligence & Learning Engine

What it solves

SMILE은 고성능이며 포괄적인 머신러닝 프레임워크를 JVM에 제공하여, 개발자가 Java, Scala, Kotlin 생태계를 떠나지 않고도 다양한 통계 및 AI 알고리즘을 구현할 수 있게 합니다. 고수준 데이터 사이언스 요구와 JVM 기반 프로덕션 환경의 성능 요구 사이의 격차를 메워줍니다.

How it works

SMILE은 여러 전문 모듈로 구성됩니다:

  • Core ML: 분류, 회귀, 클러스터링, 매니폴드 학습 및 이상 탐지를 위한 표준 알고리즘을 구현합니다.
  • Deep Learning & LLMs: LibTorch 백엔드를 사용해 GPU/CPU 텐서 연산을 수행하고, BPE 토크나이저와 OpenAI 호환 REST 서버를 포함한 완전한 LLaMA-3 추론 스택을 제공합니다.
  • NLP: 텍스트 정규화, 품사 태깅, 어간 추출 및 관련성 순위 도구를 제공합니다.
  • Base: 머신러닝에 필요한 기본 수학, 선형대수 및 데이터 구조(DataFrames 등)를 제공합니다.
  • Visualization: Swing 기반 인터랙티브 플롯과 선언형 Vega‑Lite 차트를 포함합니다.
  • SMILE Studio: 에이전트형 IDE로, Python, Java, Scala를 통해 자연어로 데이터와 상호작용할 수 있습니다.

Who it’s for

JVM 생태계(Java, Scala, Kotlin) 내에서 작업하는 데이터 과학자와 소프트웨어 엔지니어로, 통합된 딥러닝 및 LLM 기능을 갖춘 견고하고 프로덕션 준비된 머신러닝 라이브러리가 필요한 사람들을 위한 것입니다.

Highlights

  • Comprehensive Algorithm Suite: Random Forest와 SVM부터 t‑SNE, UMAP까지 모든 알고리즘을 지원합니다.
  • LLM Integration: 네이티브 LLaMA‑3 추론 및 OpenAI 호환 채팅 스트리밍 서버.
  • JVM Native: Java, Scala, Kotlin에 맞춘 관용적인 API를 통한 고성능 구현.
  • Agentic IDE: 자연어 데이터 인터랙션을 위한 SMILE Studio 포함.
  • Enterprise Ready: 모델 직렬화와 Apache Spark ML 파이프라인과의 통합을 지원합니다.