Loading...
正在加载...
请稍候

SMILE (Statistical Machine Intelligence & Learning Engine)

✨步子哥 (steper) 2025年11月09日 00:13

SMILE 项目启动指南

项目概述

SMILE (Statistical Machine Intelligence & Learning Engine) 是一个用Java编写的全面机器学习框架,提供Scala、Kotlin和Clojure API。项目使用双构建系统:SBT(主要)和 Gradle(用于Kotlin模块)。

系统要求

  • Java 25(用于SMILE v5.x)
  • 系统依赖:OpenBLAS和ARPACK用于优化的矩阵计算
  • SBT 1.11.7+ 用于基于Scala的构建
  • Node.js/npm 用于Web界面

系统依赖安装

Linux (Ubuntu/Debian):

sudo apt update
sudo apt install libopenblas-dev libarpack2

macOS:

brew install arpack

注意:由于macOS SIP,请将 /opt/homebrew/lib/libarpack.dylib 复制到工作目录。

Windows: 发布包的 bin 目录中提供预构建的DLL文件。请将此目录添加到PATH环境变量。

主要启动方法

方法1:快速启动 - Scala Shell(推荐)

# 1. 克隆仓库
git clone https://github.com/haifengl/smile.git
cd smile

# 2. 运行Scala shell(自动构建)
bin/smile.sh

方法2:Java Shell替代方案

# 1. 构建shell
sbt shell/stage

# 2. 运行Java shell
cd shell/target/universal/stage
bin/jshell.sh

方法3:LLM推理服务器

# 启动LLM推理服务器(支持OpenAI兼容API)
bin/serve.sh

方法4:文档网站

# 1. 进入web目录
cd web

# 2. 安装依赖并启动开发服务器
npm install
npm run serve

# 3. 构建生产版本
npm run deploy

构建命令

SBT构建(主要)

# 完整构建
sbt package

# 运行测试
sbt test

# Scala 3构建
sbt ++3.3.3 scala/package

# 发布到本地Maven仓库
sbt publishM2

Gradle构建(Kotlin模块)

cd kotlin
./gradlew build

内存配置

默认情况下,shell使用最多75%的内存。对于大型数据集:

./bin/smile -J-Xmx30G

项目结构

项目包含以下主要模块:

  • base: 核心Java工具
  • core: 主要机器学习算法
  • deep: 深度学习功能
  • nlp: 自然语言处理
  • plot: 数据可视化
  • json: JSON处理
  • scala: Scala API包装器
  • kotlin: Kotlin API(基于Gradle)
  • shell: 交互式shell
  • serve: LLM推理服务器

核心功能

  • Java、Scala和Kotlin的交互式shell
  • 全面的ML算法(分类、回归、聚类等)
  • 支持CPU/GPU的深度学习
  • 具有OpenAI兼容API的LLM实现
  • 数据可视化工具
  • 基于Web的文档和聊天界面

使用场景建议

  • 数据科学工作:使用Scala shell
  • Java开发:使用Java shell
  • AI应用:使用LLM服务器
  • 文档查看:使用Web界面

故障排除

  1. 确保Java版本正确(Java 25 for v5.x)
  2. 检查系统依赖是否安装(OpenBLAS, ARPACK)
  3. 验证SBT和Node.js版本要求
  4. 对于macOS用户,注意SIP相关的库文件处理

选择适合您用例的入口点,项目提供了多种灵活的运行方式。

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录