dromara/liteflow
Lightweight, fast, stable, programmable component-based rule engine — where AI Agents orchestrate just like ordinary components. Uniquely designed DSL: component reuse, sync/async & dynamic orchestration, multi-language scripting, nested rules, hot deployment and smooth refresh. If you can orchestrate LiteFlow, you can orchestrate AI.
它解决了什么
LiteFlow 旨在解耦 Java 应用程序中的复杂业务逻辑。它用一个灵活的规则引擎取代臃肿且难以维护的代码,使开发者能够使用轻量级领域特定语言(DSL)来编排业务流程,而不是硬编码操作序列。
它是如何工作的
框架将每段逻辑视为一个“组件”。这些组件随后通过在 XML、JSON 或 YML 文件中定义的规则被排列成工作流。引擎支持多种编排操作符(如 THEN 表示顺序、WHEN 表示并行、IF 表示条件路由)来管理组件的执行方式。
从 v2.16.0 开始,它将 AI Agent 作为一等公民集成。通过将 ReAct(Reasoning + Acting)Agent 包装为标准 LiteFlow 组件,AI 可以直接插入到业务规则链中,与传统的 Java 组件并存。
它适用于谁
它主要面向构建复杂的、基于组件的业务系统的 Java 开发者,这些系统需要高度灵活性、能够在不重启应用程序的情况下更新业务规则(热刷新),以及能够将 LLM 驱动的代理集成到其工作流中的能力。
亮点
- AI Agent Integration:将 ReAct Agent 作为标准组件集成,使得 AI 能够使用与业务逻辑相同的操作符进行编排。
- 热刷新:无需重启应用程序即可瞬间更新业务规则。
- 多语言支持:支持 Groovy、Java、Kotlin、JavaScript、Python、Lua 等语言的脚本节点。
- 灵活存储:规则可以从数据库、Nacos、Etcd、Zookeeper、Apollo 或 Redis 加载。
- 广泛兼容性:适用于 Spring Boot(2.x、3.x、4.x)、Spring 以及 JDK 8 到 25。