26 低代码平台如何与大模型技术结合?
你好,我是陈旭。
我们在上一讲中探讨了低代码技术的发展及其在软件开发中的优势与局限性。低代码平台的主要优势在于通过可视化编辑和所见即所得的方式,帮助开发者快速实现描述性任务,如界面设计和数据展示。然而,低代码平台在处理复杂的逻辑性任务时,表现较为欠佳,因为这些任务需要高度灵活性,传统的可视化工具难以满足。
随着大模型技术的发展,尤其是自然语言处理(NLP)的进步,低代码平台可以通过结合大模型技术,弥补其在逻辑任务处理中的不足。大模型允许用户使用自然语言进行输入,从而替代部分复杂的可视化配置,降低了开发门槛,同时提高了开发效率。
那么从这一讲开始,我们就要真正来将大模型技术武装到低代码平台上了。
那么,低代码平台于大模型技术有哪些结合的方式呢?
在这之前,咱这个专栏已经架构了一个功能比较完善的低代码平台了,这是一个很重要的考虑这个问题的起点。如果你现在手里还没有一个这样的低代码平台,或者才刚刚起步建设这样的平台,那么考虑这个问题的侧重点会有不同,甚至会得到差别很大的结果。为了更加聚焦,我将更多的基于已有相对完善的低代码平台作为起点,而不是从零开始。但,虽然是否有一个相对完善低代码平台对这个问题的回答的影响很大,但这并不意味着我们将得到矛盾的或者不可调和的结论,相反的,这两种结论更具有继承性,它们实际上是低代码技术和大模型技术发展不同阶段下的结论。
在开始之前,我们先解释两个比较容易混淆的名词,这样确保我们的认知可以一致。第一个是Copilot,翻译为助手,第二个是Agent,翻译为智能体。
一般来说,我们把Copilot定义为一种低智的AI应用方式,它能理解“人话”,并从人话中提取出必要的信息,也能根据“人话”的要求去做一些事情。从表面上看,Copilot已经很智能了,因为它基本做到了说啥就有啥的效果。但这不够,人类只能以指令的方式来驱动Copilot,这意味着,人类必须自行将一个任务拆分为若干指令,然后一次性或者分多次告知给Copilot去执行。在这种方式下,人智依然是推动问题解决的关键。
而Agent虽然在表象上和Copilot很相似,也是输入自然语言,输出结果,但是它与Copilot最大的区别在于,输入给它的语言是在描述一个目标,而非描述一个指令。在收到一个目标之后,Agent自行规划解决问题的步骤并且直接实施,最终得到结果。人类的职责则简化为观察和授权。显然Agent才是梦中情AI,这才是AI应该有的样子。
现在人们谈到AI或者大模型时,是言必谈智能体,但是在我看来,现在的大模型的能力离要实现智能体,还有一定的距离,即使在OpenAI的o1模型面世后,这个趋势仍没有发生根本性的改变。当然,o1开了个好头,OpenAI首次将推理能力训练到大模型中,而推理能力是Agent对大模型的一个非常关键的基础需求。
Copilot 模式
有了前面的铺垫和解释,我们可以展开低代码平台和大模型技术结合的第一种模式了,这就是Copilot模式。Copilot模式是一种指令式的AI助手,它主要依赖大模型的NLU能力,更准确地说是依赖大模型的意图分类和实体提取这两种能力。意图分类和实体提取是目前大模型在实际产品领域落地中比较成熟可靠的应用方式了,许多智能化的产品主要就是依赖这两种能力。
在Copilot模式下,AI的主要职责是理解用户的指令并将其转化为具体的任务。例如,用户可能会告诉Copilot,“为我生成一个表单,用于收集用户的姓名和邮箱地址。”Copilot会基于这个指令,提取出人类的意图是要创建一个表单,从而它会去调用创建表单的Tool,创建表单的Tool又会从这句话中提取出用户名和邮箱等实体(就是表单项了),表单Tool进而将这些实体翻译成具体API调用操作,调用API之后,就完成了人类布置的这个小任务了。
Copilot模式的特点:
- 任务分解由人类主导:用户需要根据问题自行拆解步骤,并逐步给Copilot输入具体的指令,一个指令一般就是一个比较具体的工作项了。虽然Copilot能帮助人类执行具体任务,但其智能水平仅限于执行指令,无法自行规划和统筹任务的解决方案。
- 高效执行能力:Copilot擅长快速生成代码片段、配置文件等,大幅提高了开发效率,尤其是在重复性任务中表现更好,在低代码平台上,很多操作是重复且琐碎的,用户可以通过简短的指令,要求Copilot自动化执行一些任务。
- 更适合低代码平台初学者:Copilot模式降低了使用门槛,特别适合刚接触低代码平台的用户。功能越强大的低代码平台往往复杂度也更高,初学者很容易迷失,甚至手足无措。而通过自然语言下指令的方式让他们更便捷高效地探索低代码平台,无需阅读手册,极大幅度降低试错成本,快速积累经验并掌握高级的使用技能。
另一方面,Copilot模式就能用于解决低代码平台在处理复杂的逻辑性任务时,表现欠佳的问题。简要回顾一下,在处理复杂逻辑性任务时,低代码平台表现欠佳的原因主要在于其工具箱过于单一,严重依赖可视化手段。低代码技术在处理描述性任务(如界面设计和信息展示)时具有明显优势,但在涉及业务逻辑和数据处理的逻辑性任务时,表现较为乏力。逻辑性任务通常需要高度的灵活性,而这些任务往往不可预知,除非业务系统有很好的抽象,否则可视化手段会让操作变得繁琐和不便。
这种情况下,低代码平台要么牺牲可用性以换取易用性,要么让用户经历复杂的操作过程,导致入门门槛很高。这种缺陷使得低代码技术无法有效解决逻辑性任务,尤其是在数据处理、业务流程管理等方面,面临明显的局限性。
这一点我在上一讲里有提过,你可以回去温习温习。
ChatGPT等已经完全可以用于生成高质量的代码,我们只要通过适当的交互设计,让人类通过NL描述所需的业务逻辑,而让大模型帮我们生成所需的代码,现在来看,是完全可行的。这里主要的挑战在于,如何将私域业务知识通过提示工程或者相关手段与大模型打通,我在后面的内容里,会详细展开,这里先按下这个话题。我在这里主要想说明的是Copilot模式已经能解决许多问题,具有很高的实用性了,你不必因为它是一种过渡手段而有迟疑。
在大模型的推理能力足够强大以及足够便宜之前,Copilot模式必然是低代码平台与大模型技术相结合的最佳方式。虽然这种方式并未彻底提供端到端的解决方案,但是它已经有足够多的价值,在它的帮助下,低代码平台的能力和易用性,也是会有里程碑式的提升的。
同时,更关键的是,Copilot模式通向更高阶模式的基础,很难想象,在没有Copilot模式的支持下,有什么办法能通过输入一段话就能端到端地一步到位地自动生成一个产品的所有功能。
Agent 模式
接下来,让我们探讨低代码平台和大模型结合的第二种模式——Agent模式。
Agent模式相较于Copilot模式,AI会表现出更高的智能化水平。与Copilot依赖用户给出明确指令不同,Agent模式的核心在于目标驱动。用户不再需要分解复杂任务,只需通过自然语言描述最终想要达成的目标,Agent会自主规划完成任务的步骤,并自动执行这些步骤。Agent模式更接近人们对于AI的期望,即智能体能够独立理解问题、分析并采取行动。
这种模式让AI在低代码平台上具备了更高的自主性和解决问题的能力,减少了人类干预的必要性,极大提升了开发的效率和智能化水平。这种模式的核心优势在于它将决策和执行权交给了AI,用户的角色更多是“监督者”和“授权者”,不必参与繁琐的细节工作。
让我们来看一下Agent模式的关键特点:
- 人类决策的辅助者:在Agent模式下,用户更多地承担监督与授权的角色。当Agent遇到不确定性或需要额外信息时,用户可以进行适当的干预或调整。但整体上,Agent可以独立承担大部分的任务执行工作,极大地提升了用户的开发效率和体验。
- 自主规划与动态调整:依托大模型更强的推理能力,Agent可以根据任务的具体情况进行步骤规划,并在执行过程中进行动态调整,确保任务顺利完成。这对于开发性较高的任务尤其有帮助,而这类任务正是低代码平台的主要任务,在Agent的帮助下,用户无需频繁介入调整或修正。
- Copilot 是 Agent 的执行人:Agent模式实际上是在Copilot模式的基础上,实现了一个自动拆解复杂任务、规划实施步骤的能力,在完成了规划之后,每个具体任务的执行,实际上是需要交给各个Copilot去执行的。
Agent模式下,现在的低代码平台的架构设计会发生巨大的变化,兴许和其他工具软件一样,被AI简化为只剩下一个对话框,比如OpenAI刚刚放出的Canvas,它仅用一个输入框,一个白板(Canvas)来用于人类与AI协作,包括写作工具/编码IDE都不需要,在OpenAI看来,这代表着终极ASI人机交互形态,如果它成功了,那大多数工具软件都不需要了,现在的低代码平台当然也是。
在Agent模式下,LUI将替代GUI,成为人机交互的主要模式。LUI是Language-based User Interface的简写,这个词不是我发明的,但是我现在正在我司内大力推广这个理念。
GUI代表的是一种以流程为中心的业务架构,而LUI代表的是一种以人为中心的业务架构。人机交互依然需要有UI,但是在LUI模式下,UI是通过自然语言驱动出来的,此时的UI的生命周期是极短的,甚至是阅后即焚的,而不是像现在的GUI一样,任何UI的生命周期都非常长。当然GUI并不会完全消失,LUI也有解决不好的场景,而GUI恰好可以解决,因此这两者是相辅相成的关系,而不是替代关系。有机会我找一讲来展开。
但是要达到LUI这样的局面,并非一蹴而就,而是需要一个漫长的过程。这是因为:大模型技术需要时间来成长,终极ASI人机交互形态需要时间来探索,更主要的是存量业务需要更多的时间和资金来慢慢被改造。因此,眼下,作为一个务实的专栏,我认为还是少去畅想未来,而是更多脚踏实地,看看现在有哪些是明确的可以立即发挥效能的点,然后马上着手来做。
可视化与自然语言结合
不知道你有没有注意到,AGI的目标之一,是端到端来创建和管理一个业务,而这也正是低代码平台孜孜以求的目标。AGI主要通过自然语言来驱动业务的生成,而曾经的低代码技术则尝试采用可视化方式来达成相似的目标,显然,可视化技术由于泛化能力太差导致没能取得实质性的成功,但AGI技术虽然表现强劲,但由于Agent技术尚处于探索期,表现得很拉跨。
注意了,现在我们正在讨论的是,将这两个技术结合在一起,发挥其各自的长处,避开各自的短处。在我看来,自然语言虽好,但有它的短板,可视化技术成熟,可以弥补自然语言的短处,这两者的互补性极强,它们可以也必须结合使用,才能最终实现AGI。
那,如何结合呢?这取决于你手里对可视化技术的掌握程度。
如果你已经有了一个功能比较完善的低代码平台。那么我建议你应该保持以可视化技术为主,自然语言为辅的结合方式。
最大可能地让可视化技术发挥它的(剩余)价值,但要积极地研究和引入自然语言方式来弥补可视化技术的缺陷。我在上一讲有较大的篇幅说明可视化技术的缺陷,你可以回去翻阅一下。这里说的自然语言的方式,实际上就是指大模型技术了,后续我会将这两者混为一谈不再区分。前面在“价值”面前,我特地加上“剩余”两个字,说来确实有点唏嘘,但是在AGI技术成型之前,大多数现有的技术也是类似的情况。与其到最后被AGI碾压和抛弃,还不如现在就将它作为己用,韦小宝的成功秘诀可以学一学:打不过就加入。
自然语言有非常便利、真正的零门槛的优势,但是也有它低效没有全局观的劣势,而形象且全局观正是可视化技术的优势。以可视化方式来设计全局的操作流程,而局部使用自然语言来落地,这是非常完美的一种方式。
也是咱这专栏以后的内容的主要方向。
如果你的低代码工具才刚刚起步尚未成型。
现在才开始投入大量的时间和资金从头研发一个完善的低代码工具不是一个明智的选择,即使你的低代码工具的研发已经启动,但尚未成型,我的建议是尽快转型,更多地采用自然语言的方式和相应的交互设计来替代可视化手段。但这个建议并非全盘自然语言化,物极必反的道理你应该懂。可视化手段并非瞬间就变得一文不值,而自然语言的手段显然也不是万能。
在业务流程的概要设计阶段,用户通常需要清晰地掌握流程的全局脉络和各环节的逻辑关系。此时,采用可视化的方式可以更直观地呈现整体流程,让用户在宏观上快速理解和调整流程的结构。可视化工具能通过图表、流程图等形式,帮助用户更好地感知业务的流转和交互节点,从而优化流程的整体设计,避免遗漏关键步骤或产生不必要的复杂性。用户需要的是一种能够快速把握全局并轻松调整的方式,这时可视化显得尤为重要。
然而,在更为细分的业务流程,尤其是涉及信息采集、任务编排等具体操作时,用户对工具的灵活性和精确度提出了更高的要求。此时,自然语言的介入显得更为适宜。通过自然语言描述,用户可以自由表达复杂的逻辑、条件和数据处理需求,而无需拘泥于固定的图形化控件。这种方式不仅降低了操作复杂度,还能让用户以更人性化的方式表达他们的业务需求,从而实现更精细的流程管理和信息处理。
在系统的数据展示环节,自然语言手段同样可以大展身手,特别是在数据的编排和关联展示方面。用户可以通过自然语言命令定制复杂的数据展示逻辑,让系统自动生成符合需求的数据报表。然而,在UI布局调整、界面设计等细节任务上,用户往往需要更加直观、可视化的方式来微调组件位置、设置图表样式等细节。这时,结合可视化工具能够为用户提供更高效的控制力,使其能快速完成界面设计上的微调,提升整体用户体验。
小结
其实,在Copilot模式之前,还有一个入门级的知识问答模式,这是多数业务智能化转型时必选的一种形式。技术上,搭建一个RAG知识库,以及外接一个大模型就可以玩转起来了,难点在于领域知识整理和切片,这是人力密集型工作。当然文档整理程度只影响问答效果,可以先边用边整理。问答模式不是我们关注的重点。
低代码平台与大模型技术结合的方式主要有两种:Copilot模式和Agent模式。
Copilot 模式下,大模型作为助手,帮助用户通过自然语言执行具体的任务,用户仍需要自己拆解问题并给出明确指令。Copilot能大幅提高低代码平台的开发效率,尤其在处理重复性、描述性任务时优势明显。它更适合初学者使用,简化了操作步骤,降低了平台复杂度。
Agent 模式则更为智能,用户只需设定目标,Agent就能自主规划并执行任务。这种模式减少了用户干预,实现了更高的自动化与智能化。然而,当前大模型的推理能力还不足以完全支撑复杂的Agent任务。
Copilot模式和Agent模式并不是二选一,而是技术发展的不同阶段的不同选择,Copilot模式是Agent模式的基础。
思考题
请简述大模型技术如何通过Copilot模式提升低代码平台在处理复杂逻辑任务时的能力,并讨论这种模式下人类与AI各自承担的主要角色。
期待你的分享。我是陈旭,我们下一讲再见。