SuperAGI
综合介绍
SuperAGI是一个以开发者为核心的开源框架,主要用于帮助开发者快速且可靠地构建、管理并运行具备自主能力的AI智能体。 通过这个框架,用户可以创建能够并发执行的多个智能体,并利用丰富的工具集来扩展它们的功能,让智能体能够与外部世界进行交互。该平台提供了一个图形用户界面(GUI),用户可以通过这个界面方便地配置、部署和监控自己的智能体,追踪它们的任务执行情况和资源消耗。 SuperAGI的设计目标是让智能体能够高效地执行多样化的任务,并通过记忆存储功能在一次次运行中不断学习和优化,最终实现更复杂的自动化工作流。
功能列表
- 智能体配置与部署:提供图形化界面,用户可以创建、管理和同时运行多个可扩展的自主智能体。
- 工具包(Toolkits):支持集成多种工具来扩展智能体的能力,例如使用谷歌搜索、Twitter、代码编写、文件管理、DALL-E图像生成等。
- 图形用户界面(GUI):通过简洁的Web界面进行所有操作,包括创建智能体、定义目标、分配工具和监控运行状态。
- 行为控制台(Action Console):允许用户与智能体互动,例如提供实时输入、授予执行权限等,以引导其任务流程。
- 多种矢量数据库支持:可以连接到多个矢量数据库(如Pinecone),以增强智能体的记忆和学习能力。
- 性能遥测:内置监控功能,可以追踪智能体执行任务时的性能指标和资源消耗,如API调用次数和Token使用量,帮助用户有效管理成本。
- 记忆存储:允许智能体在任务执行过程中存储和检索信息,使其能够从过去的经验中学习,并适应新情况。
- 工作流自动化:通过预设步骤,利用大语言模型的推理能力(ReAct)来简化和自动化复杂的任务流程。
使用帮助
SuperAGI提供了多种安装和使用方式,包括云端服务和本地部署。对于大多数开发者而言,使用Docker进行本地部署是最常见的方式。
安装准备
在开始之前,请确保你的系统已经安装了Docker
和Docker Compose
。同时,你需要准备一个大语言模型(LLM)的API密钥,例如OpenAI的API Key。
通过Docker进行本地安装
这是官方推荐的本地安装方法,流程简单清晰。
- 克隆代码仓库打开终端(命令行工具),执行以下命令,将SuperAGI的源代码克隆到你的本地电脑:
git clone https://github.com/TransformerOptimus/SuperAGI.git
- 进入项目目录使用
cd
命令进入刚刚克隆的文件夹:cd SuperAGI
- 创建配置文件项目目录下有一个名为
config_template.yaml
的配置文件模板。你需要复制这个文件并将其重命名为config.yaml
。这个文件将作为你本地环境的主要配置。在config.yaml
文件中,找到OPENAI_API_KEY
字段,并将你的OpenAI API密钥填入。如果你需要使用其他工具(如谷歌搜索),也需要填入相应的API密钥。# 示例 config.yaml 文件的一部分 OPENAI_API_KEY: "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxx" GOOGLE_API_KEY: "your_google_api_key" CUSTOM_SEARCH_ENGINE_ID: "your_custom_search_engine_id"
- 启动服务确保Docker桌面应用正在运行。然后在SuperAGI项目目录下,执行以下命令来构建和启动所有服务:
docker compose up --build
如果你有NVIDIA显卡并希望使用GPU加速本地模型,可以使用为GPU优化的命令:
docker compose -f docker-compose-gpu.yml up --build
- 访问图形界面当Docker容器成功启动后,打开你的网络浏览器,访问
http://localhost:3000
。 你将看到SuperAGI的图形用户界面,可以开始创建和管理你的智能体了。
如何创建并运行一个智能体
通过SuperAGI的图形界面,创建和运行智能体的过程非常直观。
- 创建新智能体在主界面上,找到“Agents”选项卡,点击“Create Agent”按钮。
- 配置智能体在智能体创建页面,你需要填写以下信息:
- Name (名称):为你的智能体起一个独特的名字,例如“研究助手”。
- Description (描述):简单描述这个智能体的用途。
- Goal (目标):明确定义你希望智能体完成的一个或多个任务。目标需要清晰、可执行。例如:“写一首关于宇宙的诗,并将其保存为一个txt文件”。
- 选择模型和工具
- Model (模型):你可以根据任务的复杂性选择不同的大语言模型,如GPT-3.5或GPT-4。
- Tools (工具):根据你设定的目标,为智能体选择完成任务所需的工具。例如,如果目标是上网搜索信息并写入文件,你需要为它分配“Google Search”和“File Toolkit”等工具。
- 高级设置(可选)在页面底部有“Advanced options”高级设置,你可以在这里进行更精细的控制:
- Constraints (约束):添加智能体在执行任务时必须遵守的规则。
- Iterations (迭代次数):设定智能体为完成目标可以尝试的最大次数。
- Memory (记忆):设置记忆窗口的大小,决定智能体能回顾多少步之前的信息。
- 运行和监控配置完成后,点击“Create and Run”按钮。智能体将开始执行任务。你可以在界面上实时观察它的思考过程、采取的行动以及使用的工具。 右侧的面板会显示API调用次数和Token消耗等信息,方便你管理成本。任务完成后,你可以在“Resource Manager”中找到智能体生成的最终文件并下载。
应用场景
- 自动化内容创作用户可以创建一个智能体,设定“撰写一篇关于人工智能最新进展的博客文章”为目标。智能体会自动使用搜索工具收集资料,然后利用写作工具生成文章,并最终将文章保存为文件。
- 代码生成与开发开发者可以利用SuperAGI来辅助编程。例如,设定一个目标为“创建一个使用Flask框架的简单Web应用,并推送到GitHub仓库”。智能体可以使用编码工具和GitHub工具来完成整个流程。
- 市场调研与分析企业用户可以部署一个智能体,用于持续监控特定行业的市场趋势和竞争对手动态。智能体可以定期搜索新闻、分析社交媒体情绪,并生成一份分析报告。
- 个人助理用户可以配置一个个人助理智能体,帮助处理日常事务,例如“检查我的谷歌日历,并根据今天的日程安排发送提醒邮件”。
QA
- SuperAGI是免费的吗?SuperAGI本身是一个开源框架,你可以免费在自己的服务器或本地计算机上部署和使用它。 但在运行智能体时,会调用第三方服务(如OpenAI的GPT模型),这些服务通常会按使用量收费。
- 我需要有编程经验才能使用SuperAGI吗?对于基本的使用,例如通过云版本或Docker安装后在GUI中创建和运行智能体,不需要很强的编程背景。 但如果想开发自定义工具或对框架进行深度修改,则需要具备Python编程知识。
- SuperAGI支持哪些大语言模型?SuperAGI支持多种模型,最常见的是OpenAI的GPT系列(如GPT-3.5和GPT-4)。 此外,它也支持接入本地部署的开源大语言模型。
- 智能体执行任务失败了怎么办?你可以在GUI中查看智能体的完整执行日志,分析它在哪一步遇到了问题。失败的常见原因包括目标设定不明确、缺少完成任务所需的工具,或者API密钥配置错误。你可以根据日志调整目标描述、为智能体添加更多工具或增加迭代次数,然后重新运行。