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 旨在 decouple 複雜的業務邏輯在 Java 應用程式中。它用一個靈活的規則引擎取代臃腫、難以維護的程式碼,使開發者能夠使用輕量級領域特定語言 (DSL) 編排業務流程,而不是硬編碼操作的順序。
它是如何運作的
框架將每段邏輯視為一個「元件」。這些元件接著會使用定義在 XML、JSON 或 YML 檔案中的規則排列成工作流程。引擎支援多種編排運算子(例如 THEN 表示序列、WHEN 表示平行、IF 表示條件路由)來管理元件的執行方式。
從 v2.16.0 版開始,它將 AI Agent 作為一級公民整合。透過將 ReAct (Reasoning + Acting) Agent 包裝成標準的 LiteFlow 元件,AI 可以直接插入業務規則鏈中,與傳統的 Java 元件並存。
它適合誰使用
它主要適用於構建複雜、組件化業務系統的 Java 開發者,這些系統需要高度靈活性、能夠在不重啟應用程式的情況下更新業務規則(熱重載),以及將 LLM 驅動的代理整合到他們的工作流程中的能力。
Highlights
- AI Agent 整合:將 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 版本相容。