智能体式 AI 系统融合了大型语言模型 (LLM) 的灵活性与多样性,以及传统编程模型的精确性。智能体式 AI 系统能够代表用户或其他系统自主规划并执行任务。智能体式 AI 系统通过将复杂问题拆解为多个子任务,并利用工具与外部系统交互或执行计算,从而解决复杂问题。
这些能力使智能体式 AI 系统能够处理比单纯依赖 LLM 更广泛、更复杂的任务。例如,如果让 LLM 推荐购买哪款汽车,它通常会根据训练时可获得的数据生成一份推荐清单。相比之下,智能体式 AI 解决方案会进一步询问车辆用途(如休闲、通勤或运输重物),并告知当前是否有制造商返利或月底前有效的优惠。
智能体式 AI 系统由以下组件构成:
智能体拥有其自身的概念架构,如下图所示。
智能体由以下核心组件组成:
还可以添加图中未展示的组件,用于实现智能体运行管理、性能监控以及安全控制(例如身份传播和数据泄露防护)。
上图展示了 IBM 产品在智能体式 AI 架构中的映射关系。
watsonx Orchestrate 是一款“一体化”智能体式 AI 解决方案,集成了以下功能:
watsonx.ai Agent Builder 是一款低代码/无代码工具,使开发者能够构建智能体,并通过预构建流程定义和管理工具。
智能体编排可以通过多种方式实现。集中式编排方法使用单一主编排组件来管理系统中所有其他智能体的操作。单点配置与管理使整个系统易于管理、控制和排查故障。缺点在于单一控制点可能成为瓶颈,当请求量或智能体数量增加时,会面临可扩展性挑战。
去中心化编排方法通过任务队列实现:智能体从队列中获取任务并提交结果,同时在智能体之间分配多步骤任务;类似于黑板系统。去中心化编排方案具有高度稳健性和容错性,但随着系统规模和功能增加,其设计与排错难度也随之提升。
最后,分层编排方法融合了集中式与去中心化方法的特点。在分层编排中,主编排器负责协调高级智能体的操作,这些高级智能体可以调用其他智能体完成复杂任务。这种方法保留了集中式编排易于管理和控制的优势,同时降低了在高请求量或大量智能体情况下中央控制组件成为瓶颈的风险。
AI 智能体的粒度指其可执行任务的复杂程度。高粒度智能体可能足以详细处理许多任务或少量复杂任务,而低粒度智能体则可能只完成少量甚至单一任务,并且细节有限。为更清晰说明,可举客户服务智能体为例。低粒度智能体可能只能回答有关产品的简单问题(例如,“它是黑色的吗?”),而高粒度智能体可能足以检查本地库存并安排将产品交付给客户家中。
智能体解决方案设计者需决定系统中智能体的粒度,例如采用少量高粒度智能体,或大量低粒度智能体。高粒度智能体功能强大,但需要更多计算资源且任务完成时间更长。低粒度智能体功能有限,但关注范围窄,因此所需计算资源少,通常可更快完成任务。
尽管“最佳”粒度尚未确定,但早期经验显示,将低粒度智能体与特定业务流程(如 Purchase_Order_Processing_Agent)对齐,可在资源需求、处理速度和方案复杂性之间取得良好平衡。低粒度智能体可被纳入静态工作流,或由高粒度智能体在更大流程中调用。
智能体式 AI 解决方案的设计者需在智能体遵循预定义静态流程与根据用户提示动态生成工作流之间取得平衡。虽无绝对正确或错误,但建议架构师参考以下建议与注意事项。
静态工作流相对容易进行监控、审计和操作,其本身也可作为合规性的证据。在此类情况下使用静态工作流可为架构师带来若干优势: