Skip to content

组件代理

重要提示

旧版插件 不再适用于 AutoGPT。它们已被组件所取代,尽管我们仍在开发一个新的系统来加载插件组件。

本指南解释了 AutoGPT 代理的基于组件的架构。这是一种构建代理的新方式,更加灵活且易于扩展。组件通过一个更加模块化和可组合的系统,取代了部分代理逻辑和插件。

代理由*组件*组成,每个*组件*实现了一系列*协议*(接口),每个协议提供特定的功能,例如额外的命令或消息。每个*协议*按照代理定义的特定顺序处理。这实现了关注点的清晰分离和更加模块化的设计。

该系统简单、灵活,且不隐藏任何数据——任何内容仍然可以直接传递或访问,无论是在组件之间还是从组件中。

定义与指南

查看创建组件以开始!或者你可以详细探索以下主题:

  • 🧩 组件:一个实现一个或多个*协议*的类。它可以被添加到代理中以提供额外功能。查看内置组件中已提供的内容。
  • ⚙️ 协议:定义了一组组件必须实现的方法的接口。协议用于将相关功能分组。
  • 🛠️ 命令:使*代理*能够与用户和工具交互。
  • 🤖 代理:由组件组成的类。它负责执行管道和管理组件。
  • 管道:组件上的一系列方法调用。管道用于按特定顺序执行一系列操作。目前还没有正式的管道类,它只是组件上的一系列方法调用。默认代理中实现了两个默认管道:propose_actionexecute。了解更多信息,请参阅🤖 代理