智能应用的两种开发范式 Workflow 与 Agentic

小麦2025年11月07日1778 字

这次让我们站在开发视角理解智能的本质,以及对比两种核心开发范式:Workflow 与 Agentic

如何让应用程序变得更聪明,无疑是这个时代的软件工程师需要研究的问题。

从开发角度看,智能的本质究竟是什么?

它又如何决定技术选型?

我是小麦,今天来聊聊我对智能本质的理解,以及介绍两种经典开发范式:Workflow 与 Agentic。

说到智能,自然离不开大模型,

我们接下来提到的模型都默认大语言模型。

有人说智能来自大模型本身的推理和决策能力;也有人说大模型只是善于模仿,并没有真正的智能。

在我看来,两种说法其实都对,但还差点意思。

我认为现阶段大模型的智能与其训练方式高度相关,本质上来自于语义匹配。

大语言模型以海量的文本数据作为训练材料,通过分析字词间的语义关系,建立了一个庞大关系网络。

推理时,大模型会根据输入文本的语义,“匹配”出最合理的结果。

当然,这是站在应用开发视角来看的,和真实的推理行为并不能等同。

举一些实际例子你会更有体感。

在智能客服场景中,用户询问:“我买的衣服大小不合适,能换吗?”

大模型会看到 “买衣服”、“大小”、“换” 这几个词,然后匹配出 “尺寸”、“换货” 等语义接近的关键词。

最后根据自身知识储备,做出比较标准的回复,比如:“根据一般电商惯例,大多数平台支持7天内尺码问题的退换货”。

如果系统外挂了知识库,那么可以通过关键词检索当前的退换货政策,丰富上下文后做出更精确的回复。

另一个例子,

在音乐流媒体推荐场景中,用户询问:“我想听一些轻松的音乐。”

大模型会注意到 “轻松” 二字,匹配出 “舒缓”、“柔和”、“慢节奏” 等语义接近的关键词。

随后系统根据用户历史听歌偏好,找到合适的歌曲并做出回复。

语义理解让模型表现出了推理能力,会让应用看起来更智能、更懂用户的需求。

显而易见的是:如果模型本身学习的知识太少或是没有见过私有知识,那么很有可能无法给出有用的信息。

这也是为什么 AI 会先落地智能搜索和知识库场景的原因之一。

理解语义匹配原理后,我们如何利用它来开发智能应用呢?

这就要提到两种经典开发范式了:Workflow 和 Agentic。

Workflow 即工作流,在工作流应用中,业务逻辑是事先编排好的,只能按照固定流程完成任务,模型通常只进行单轮推理。

我们可以写代码、或是使用像 Dify 这样的平台来可视化搭建工作流。

举个例子,

在智能搜索应用中,用户问:“搜一下 App Store 和 Apple Store 的区别”。

程序收到问题后,先让模型设计搜索词,然后调用接口进行联网搜索,最后交给模型总结回复。

这个业务流程看似通顺,但存在一个致命问题:针对用户的提问,一定需要搜索吗?

假设用户问的是:“你是谁?”,按照这个程序逻辑打死也搜不出正确答案。

当然你可以再加一个节点先让模型判断一下,但实际情况可能复杂得多,你会发现这样的节点只会越加越多。

我们可以总结出工作流范式的特点:

程序员需要事先设计好 if-else 判断和模型调用逻辑,才能保证任务顺利执行。

工作流应用看起来调用了大模型,但实际上却锁死了模型智能,无法最大程度发挥模型的推理能力。

为了解决 Workflow 范式的短板,于是我们就有了 Agentic 范式。

在 Agentic 范式中,程序可以根据环境(上下文)自主决策和执行下一步动作,直到完成任务。

模型也不再是单轮推理,而是多轮推理。

既然是多轮推理,那么 Agent Loop 结构必定是其中最核心的部分,如果用代码表示可以写成这样。

这就是 Agentic 范式中最简单的 ReAct 结构:模型循环调用工具并观察整体调用历史,决定是否进行最终输出。

相比 Workflow 程序复杂的 if-else 控制逻辑,Agent 程序可以简化为:一份系统提示词加自动工具调用加一个循环。

还是拿智能搜索应用举例,我们设计的系统提示词是:“你是一位答疑专家,必要时搜索互联网来解答用户提问。”。

同时提供一个搜索工具,描述是 “搜索互联网”。

接下来用户提问,模型会注意到用户说的 “搜” 这个动作,而恰好又有一个 “搜索互联网” 工具,语义上能匹配。

因此模型下一步必定会调用搜索工具。

即便用户没有说 “搜一下”,由于我们在系统提示词中植入了 “搜索互联网来解答用户提问”,

如果模型本身没有相关知识储备,也会高概率调用搜索工具而不是乱回答。

如果用户问的是:“你是谁?”,那么语义上会命中 “你是一位答疑专家”,

模型大概率会直接回答 “我是一位答疑专家”,而不会进行搜索。

你看,同样的场景,选择不同的范式,效果和开发成本是完全不同的。

Agentic 范式的优势不仅在于模型放权,还大大简化了程序设计。

几乎只需要设计固定的程序、准备好工具,迭代优化系统提示词即可。

而系统提示词的设计技巧就是尽可能地去覆盖用户输入可能包含的语义。

如果你想实际开发体验一下两种范式,我也准备好了项目案例,这个代码库包含各类 AI 应用的常见案例,由浅入深值得一看。

我是小麦,一位热爱技术和分享的软件工程师,我们下期再见。

本文为「捣鼓键盘的小麦」原创文章,转载请联系微信:Micoozlee

评论

你需要先登录才能发表评论
Made by 捣鼓键盘的小麦 / © 2025 Front Talk 版权所有