Agent 与多Agent应用#
agent 是一种通过消息进行通信的软件实体,它维护自身状态,并根据接收到的消息或状态变化执行操作。这些操作可能会修改agent的状态并产生外部效果,例如更新消息日志、发送新消息、执行代码或调用API。
许多软件系统都可以建模为相互交互的独立agent集合。典型示例包括:
工厂车间的传感器网络
支撑Web应用的分布式服务
涉及多方参与的业务工作流
由语言模型(如GPT-4)驱动的AI agent,这些agent可以编写代码、对接外部系统并与其他agent通信
这些由多个交互agent组成的系统被称为多Agent应用。
注意:
AI agent通常将语言模型作为其软件栈的一部分,用于解释消息、执行推理和完成操作。
多Agent应用特性#
在多Agent应用中,agent可能具有以下特征:
运行于同一进程或同一台机器上
跨不同机器或组织边界运行
采用不同编程语言实现,使用不同的AI模型或instructions
通过消息传递协调行动,共同实现共享目标
每个agent都是独立的单元,可以单独开发、测试和部署。这种模块化设计使得agent能够在不同场景中复用,并组合成更复杂的系统。
agent天生具备可组合性:简单agent可以组合形成复杂、适应性强的应用系统,每个agent都为整体系统贡献特定功能或服务。