SmartGPT:一个突破性的人工智能项目
SmartGPT 是一个实验性的程序,旨在赋予大型语言模型(特别是 GPT-3.5 和 GPT-4)完成复杂任务的能力,而无需用户输入。它通过将任务分解为更小的问题,并利用互联网和其他外部资源收集信息来实现这一目标。
项目特点
SmartGPT 具有以下优势:
-
模块化:SmartGPT 提供一流的插件支持,并能够根据项目需求组合不同的 Auto(自动化组件),使其具有极高的模块化程度。
-
灵活性:SmartGPT 使用一个自动生成的
config.yml
文件,用户可以在其中配置任何所需的内容。 -
一致性:SmartGPT 采用智能系统,动态执行操作并静态链接工具,从而提供高度一致的结果。
然而,该项目也存在两个主要的短板:
-
生态系统:相比于更受欢迎的 AutoGPT,SmartGPT 的工具和集成系统相对较少。
-
内存管理:由于项目还很年轻,目前只有一个简单但有限的内存系统。
工作原理
Autos(自动化组件)
SmartGPT 的核心是 Autos,分为两种类型:
- Runner:负责完成单一任务。
- Assistants:可以进行对话交互,根据上下文提供回应。
动态代理和静态代理
每个 Auto 都包含一个代理,由动态代理和静态代理组成:
- 动态代理:基础代理,执行类似 REACT 的过程,包括思考、推理和决策。
- 静态代理:执行动态代理分配的子任务,规划工具使用顺序并逐步执行。
记忆系统
代理具有记忆功能。完成任务后,代理会将所有观察结果保存到长期记忆中。开始新任务时,它会使用向量数据库提取与任务相关的长期记忆。
插件系统
Autos 可以使用一系列工具,如 google_search
、browse_url
等。用户可以通过插件定义这些工具,每个插件都可以有自己的工具集和数据。
项目发展
SmartGPT 目前主要使用 GPT-3.5 进行测试,偶尔使用 GPT-4。随着项目的成熟,开发团队计划实验多个代理同时工作,并更多地使用 GPT-4 以充分发挥大型语言模型的潜力。
使用说明
要开始使用 SmartGPT,用户需要:
- 安装最新稳定版的
cargo
。 - 克隆 GitHub 仓库。
- 在发布模式下运行程序,生成
config.yml
文件。 - 根据需求调整配置,然后再次执行程序。
注意事项
SmartGPT 是一个高度实验性的应用程序。它为了释放大型语言模型的最大潜力而牺牲了一定的稳定性。尽管如此,SmartGPT 仍然是 AutoGPT 领域中最具创新性的项目之一,不断推动着人工智能的边界。