Agent Zero 是一个与众不同的 AI 框架,它并非预先定义,而是随着你的使用而有机地成长和学习。它旨在成为一个透明、易读、可理解、可定制和交互式的工具,能够利用你的电脑来完成各项任务。它就像一个通用的个人助理,可以帮你搜集信息、执行命令和代码,与其他智能体协作,尽其所能地完成你给定的任务。
主要功能
通用助手
- Agent Zero 不是为特定任务预编程的(但可以预编程)。它旨在成为一个通用的个人助理。给它一个任务,它将收集信息、执行命令和代码、与其他代理实例合作,并尽最大努力完成它。
- 它具有持久内存,可以记住以前的解决方案、代码、事实、说明等,以便将来更快、更可靠地解决任务。
计算机作为工具
- Agent Zero 使用作系统作为完成其任务的工具。它没有预先编程的单一用途工具。相反,它可以编写自己的代码,并根据需要使用终端创建和使用自己的工具。
- 其武器库中唯一的默认工具是在线搜索、内存功能、通信(与用户和其他代理)以及代码/终端执行。其他所有内容均由代理自行创建,或者可由用户扩展。
- 工具使用功能是从头开始开发的,即使是非常小的模型,也是最兼容和可靠的。
- 默认工具:Agent Zero 包括知识、网页内容、代码执行和通信等工具。
- 创建自定义工具:通过创建您自己的自定义工具来扩展 Agent Zero 的功能。
- 仪器:Instruments 是一种新型工具,允许您创建可由 Agent Zero 调用的自定义函数和过程。
多方智能体合作
- 每个代理都有一个高级代理,给它任务和指示。然后,每个代理都向上级报告。
- 在链中的第一个代理 (Agent 0) 的情况下,上级是人类用户;代理没有看到任何区别。
- 每个代理都可以创建其从属代理来帮助分解和解决子任务。这有助于所有代理保持其上下文的简洁和专注。
完全可定制和可扩展
- 此框架中几乎没有任何内容是硬编码的。没有什么是隐藏的。用户可以扩展或更改所有内容。
- 整个行为由 prompts/default/agent.system.md 文件中的系统提示符定义。更改此提示并显著更改框架。
- 该框架不会以任何方式指导或限制代理。代理不必遵循硬编码的轨道。
- 在通信回路中发送给代理的每一个提示、每一个小消息模板都可以在 prompts/ 文件夹中找到并更改。
- 每个默认工具都可以在 python/tools/ 文件夹中找到,并对其进行更改或复制以创建新的预定义工具。
沟通是关键
- 给你的代理人一个适当的系统提示和指示,它可以创造奇迹。
- 代理人可以与他们的上级和下级沟通,提出问题,给出指示并提供指导。在系统提示符中指导您的代理如何有效沟通。
- 终端界面是实时流式和交互式的。您可以随时停止和干预。如果您看到您的代理朝着错误的方向前进,请立即停下来告诉它。
- 这个框架有很大的自由度。您可以指示您的代理定期向上级报告,请求允许继续。您可以指示他们在决定何时委派子任务时使用积分系统。上级可以仔细检查下属的结果并提出争议。可能性是无穷无尽的。
安装和使用
# Pull and run with Docker
docker pull frdel/agent-zero-run
docker run -p 50001:80 frdel/agent-zero-run
# Visit http://localhost:50001 to start
👀 注意事项
Agent Zero 可能很危险!
- 通过适当的指导,Agent Zero 能够做很多事情,甚至是与您的计算机、数据或帐户相关的潜在危险作。始终在隔离环境(如 Docker)中运行 Agent Zero,并小心您的愿望。
代理 Zero 是基于提示的。
- 整个框架由 prompts/ 文件夹引导。代理指南、工具说明、消息、实用 AI 功能,应有尽有。