jBPM作为AI编排平台
免责声明:本文观点仅代表作者对jBPM当前及潜在能力的主观看法。
本文介绍了jBPM作为编排外部AI中心化环境(如用于设计和运行AI解决方案的Python)的平台。我们将概述jBPM最相关的AI编排功能,并通过实际示例演示其作为AI编排平台的有效性:
简要介绍jBPM
jBPM(Java业务流程管理)是一个开源集成平台,其核心是工作流引擎。尽管jBPM项目自称为BPM(业务流程管理)或工作流引擎、工具包或套件,但我们认为将其描述为集成平台更为准确。
支持这一特性的功能包括:
-
通过REST API对外暴露jBPM中实现的业务逻辑:
-
提供业务流程自动化引擎:
-
嵌入与外部提供者交互的组件(例如与Python):
这些功能使jBPM能够与外部系统交互、做出自动化决策并高效管理对外部提供者的调用。
jBPM如何编排Python
jBPM的Python集成可以通过多种方式实现。我们当前的方法使用Jep(Java嵌入式Python),这是一个允许与Python解释器交互的Java扩展。当与jBPM的业务流程自动化(如脚本任务活动)结合时,这实现了坚实的基础级Python编排:
尽管Jep实现了Python集成,但其可用性障碍可能在初始实施期间需要解决方法。
实际示例:卒中预测
jBPM编排Python的一个全面示例是我们的解决方案,用于训练AI模型并估计一组患者的卒中风险。在医院或临床环境中,医生使用EMR(电子医疗记录)系统,如开源OpenEMR(或任何其他允许自定义用户屏幕的软件)。卒中预测请求可能来自EMR的各个部分,通常在患者文件中:
医生选择卒中预测AI解决方案并向部署了AI逻辑的jBPM提交预测请求:
jBPM处理请求,编排AI逻辑和Python计算,并将估计的卒中风险返回给OpenEMR:
卒中风险最初在jBPM中计算,然后返回给OpenEMR供医生查看:
此预测工作流在端到端可视化时如下所示:
同时,监控AI模型性能的分析师可以重新训练并发布更新的模型:
与医生的工作流类似,分析师选择AI解决方案并向jBPM提交训练/验证/测试请求:
jBPM记录并执行训练过程:
结果计算并返回给OpenEMR:
负载测试确认jBPM高效处理同时的用户请求,包括预测和模型训练,没有瓶颈或数据泄漏:
什么使jBPM成为AI编排平台?
鉴于其编排AI工作流的能力,人们可能会问:jBPM是否有足够的周边功能被视为一个完整的AI编排平台?
让我们检查jBPM周围的生态系统。其“最近邻居”可能是Eclipse,这是jBPM的首选IDE(集成开发环境),特别是由于像Eclipse BPMN2 Modeler这样的插件:
Eclipse通过启用离线开发来增强jBPM。上述插件允许开发人员在本地执行jBPM基于Web的客户端支持的大多数任务。此外,作为一个高度可扩展的模块化IDE,Eclipse提供了满足开发团队面临的几乎所有需求的工具。
另一个关键“邻居”是PostgreSQL,这是可以配置以支持jBPM底层数据结构的几种数据库引擎之一:
PostgreSQL存储jBPM技术数据的能力为数据挖掘和优化部署在jBPM中的AI解决方案解锁了巨大机会。
在此背景下,逻辑上要提到另一个关键“邻居”——BIRT(商业智能报告工具)。BIRT是能够提取、转换和报告jBPM管理的技术和业务数据的开源BI引擎之一:
Eclipse、PostgreSQL和BIRT与jBPM的核心功能一起,形成了一个强大的AI编排平台,促进了AI模型的部署、执行和优化。
更多信息: C-NLTX/Open-Source