jBPM作为AI编排平台:集成Python与Java的技术实践

本文探讨了如何利用jBPM(Java业务流程管理)作为AI编排平台,通过Jep扩展实现Python与Java的集成,并详细演示了卒中预测AI解决方案的端到端工作流编排与执行过程。

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

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计