AI火爆,传统的规则引擎是否无用武之地?

程序新视界 2024-10-02 14:31:03 阅读 87

随着ChatGPT的问世,AI的火爆程度再一次被点燃,但看目前市场上对于GPT的应用依旧处于探索阶段,除了基座大模型之外,并没有真正意义上的AI原生成功产品。也就是说,目前大多数产品都还处于探索阶段。

ChatGPT如此火爆,那么,我们现有的产品,特别是充斥着大量规则的逻辑与变数的产品,是否适合通过大模型来进行改造和演进呢?基于这个话题,这篇文章我们就来聊聊“基于传统规则引擎”和“基于AI”实现规则化产品的不同视角与实现。

基于规则引擎与基于AI的产品特质

在传统的软件开发中,特别是基于大量规则的产品逻辑开发中,底层的本质是:现实世界的业务需求,通过程序员将业务逻辑通过编码实现。这些编码实现基本上都是确定的,预置的,比如,如果满足A1条件则执行B1,如果满足A2条件则执行B2等。

当这类判断条件较多时,我们会采用规则引擎(比如Drools规则引擎,这里推荐《Drools8规则引擎:核心技术与实践》一书)来实现规则的灵活判断,使得程序显得更灵活,更智能。然而,本质上,它们依旧是预置好的规则。

目前基于AI的产品,特别是规则判断的功能,有了一个新的视角:它能够概念识别和自行逻辑判断能力。这也隐隐地意味着计算范式的变化。

在基于AI的产品模式下,人可以通过自然语言直接和模型进行交互,产品提供的具体功能范围是不定的。模型、策略和价值观设定这个范围,程序员的逻辑编程影响力变小了。

基于规则和基于模型

基于规则引擎的产品,无论是产品的UI层面(UI层的功能本质上是一种功能的归类),还是基于底层预置的规则层面,它们都是有边界的,有固定分类的。

而基于AI模型的产品,它基于用户的自然语言或行为,根据模型特有的意图识别与自行判断,提供更适配,更灵活,边界不明显的产品能力。我们知道,模型的判断本质上是基于概率和近似度的。

由此,我们可以看到基于规则和基于模型的智能程度在不同应用场景下拉开了巨大差异。

使用场景的选择

通过上面的了解,看起来基于AI的智能型产品更加有优势,然而事实并非如此,不然目前市面上也不会那么缺少基于AI的智能型产品了。

我们在选择使用规则匹配还是AI智能时有一个明显的选择准则:确定性匹配时使用规则,灵活性匹配时使用AI智能。

AI智能的灵活性,最终会带来更宽的业务适配,也就不需要基于产品UI或规则的归类,而且判断分支情况太多,也没办法进行逐一归类。也就是说,AI智能应用必然要解决复杂场景,解决规则所不能到达地方的问题。

AI智能应用的这种适配(通过自然语言宽泛的适配)的特征也决定了这种应用类型所匹配的领域。如果是只是简单的规则就能搞定,并且产生利润,其实并不是智能原生应用的最佳落点。

在规则确定、功能确定的场景下(也是目前大多数业务的场景),基于AI的智能型产品反而带来更多的不确定性和不可控性。此时,还是需要传统的规则逻辑和规则引擎等方式进行实现。

所以,AI虽然火爆,但未必所有的产品都能够或适合使用AI,针对那些确定性规则,也就是目前99%以上的业务场景来说,使用传统的规则判断依旧是最佳实践方案。而对于那些基于概念理解和自行判断的能力场景下,才可考虑使用AI。

相关技术的推荐

“基于传统规则引擎”和“基于AI”实现规则化产品的不同视角与实现,就讨论这么多。最后简单推荐一下这两种形式目前主流的解决方案。

基于AI的实现,不同场景下可选择不同的AI模型,特别是类似ChatGPT这样的国内外LLM(大语言模型)。根据业务场景的不同,可选择不同参数(体量)的模型,再基于目前常见的RAG和Agent的解决方案来实现对应的业务功能。由于基于AI,特别是GPT的智能原生产品大家都处于探索阶段,目前并没有呈现出很好的解决方案。

对于传统的基于规则引擎的解决方案,也是适配目前大多数业务场景,比较主流的且成熟的解决方案已经存在。比如,主流的开源规则引擎框架Drools规则引擎。

规则引擎本质上就是将业务逻辑中变化的部分抽离成一系列的规则,使得原本通过硬编码实现的业务逻辑分离为规则和数据,然后围绕着数据和规则提供一些管理和处理功能。像电商平台、风控系统、IoT(物联网)、财务计算、日志分析处理等有大量规则的场景下,都是规则引擎的运用场景。

Drools是最早由JBoss开发,目前由Red Hat开源的规则引擎,属于Red Hat的KIE Group组件之一,可以比较方便地与Red Hat的其他产品进行集成。比如,可以与jBPM工作流相结合实现对复杂规则流的管理。另外也可以与机器学习(Machine Leaning,ML)、深入学习(Deep Leaning,DL)等外部类库进行整合实现Pragmatic AI相关功能。

Drools官方除提供了规则引擎的核心功能,还提供了一系列基于该开源框架的组件(KIE Server、Business Central Workbench、Kogito等),方便使用者直接集成使用。同时还支持多种形式的规则构建形式,可根据客户的具体需要进行灵活生成、管理规则。

关于Drools规则引擎也为大家推荐一本刚刚出版的新书籍——《Drools8规则引擎:核心技术与实践》。该书由《Spring Boot技术内幕:架构设计与实现原理》畅销书作者倾心打造,基于最新的Drools 8版本及语法实现来进行讲解。这本书是规则引擎领域,以实战经验为基础,全面涵盖Drools从入门、原理、实战项目、架构实践等相关的指导书籍!

小结

通过上面的分析和总结,大家可能已经基本了解基于AI实现产品与基于传统规则实现产品的区别。根据这些区别以及它们适用的不同场景,可选择是否紧跟这波AI热。当然,如果产品本身并不具备AI原生产品的特性,那么很可能也只是蹭一波热度,无法在后续的过程中持续发力(已经有很多类似的AI产品了)。至于是选择蹭一波热度,还是稳妥的采用传统的规则引擎解决方案,这也需要产品的操刀者进行综合的评估和判断了。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。