仓库:https://github.com/yoheinakajima/babyagi 归档仓库:https://github.com/yoheinakajima/babyagi_archive 许可证:MIT 运行形态:Python 库 + Dashboard Web UI(默认端口 8080)
1. 项目简介
BabyAGI 最初于 2023 年 3 月以"任务规划驱动自治 Agent"出圈。当前仓库是作者 Yohei 重写的实验性框架:一个"自构建自治 Agent",核心是 functionz 函数框架——用数据库存储、管理、执行函数,带依赖图、密钥管理、自动加载与完整日志,并附 dashboard。
1.1 核心信息一览
| 项目 | 内容 |
|---|---|
| 仓库 | yoheinakajima/babyagi |
| 定位 | 实验性自构建自治 Agent 框架 |
| 许可证 | MIT |
| 安装 | pip install babyagi |
| Dashboard 端口 | 8080(http://localhost:8080/dashboard) |
| 原始版本 | 已归档至 babyagi_archive(2024-09 快照) |
1.2 适用场景
- 研究"函数自组织 + 自构建 Agent"这一思路;
- 想要一个带 dashboard 的函数管理 / 实验沙箱;
- 作为自治 Agent 思想史的参考实现。
1.3 能力边界(官方口径)
- ⚠️ README 明确:不是为生产环境设计,作者本人并非职业开发者,仓库目的是分享想法、激发讨论;
- 自构建 Agent(self_build 等)属实验性草稿功能,生成代码最小化、需自行改进;
- 原始 2023 版已归档到 babyagi_archive。
2. 功能特性
- functionz 函数框架:从数据库存储、管理、执行函数;
- 依赖图结构:跟踪 import、依赖函数与认证密钥,自动加载、完整日志;
- Dashboard:管理函数、运行更新、查看日志;
- 函数包:内置 default_functions(执行 / 密钥 / 触发器 / 日志)与 ai_generator(自动生成描述与 embedding、按提示选函数);
- 自构建 Agent 实验:
process_user_input决定复用还是生成新函数;self_build按用户描述生成多任务并自动建函数。
3. 官方界面预览
官方 README 引用的 self_build 截图链接当前不可用(404),按规程不强行配图。
4. 官方跳转链接汇总
- 仓库主页:https://github.com/yoheinakajima/babyagi
- 归档仓库(原始 2023 版):https://github.com/yoheinakajima/babyagi_archive
- 介绍推文串:https://x.com/yoheinakajima/status/1840678823681282228
5. 前置要求与服务器配置
- Python 环境;
- OpenAI API Key(自构建 Agent 实验需要);
- 端口 8080 不被占用。
6. 方式一:pip 安装(推荐)
pip install babyagi启动 dashboard:
import babyagi
if __name__ == "__main__":
app = babyagi.create_app('/dashboard')
app.run(host='0.0.0.0', port=8080)浏览器打开 http://localhost:8080/dashboard。
7. 方式二:注册函数与自构建实验
import babyagi
# 注册函数与依赖
@babyagi.register_function()
def world():
return "world"
@babyagi.register_function(dependencies=["world"])
def hello_world():
return f"Hello {world()}!"
print(babyagi.hello_world()) # Hello world!自构建 Agent 实验:
import os, babyagi
babyagi.add_key_wrapper('openai_api_key', os.environ['OPENAI_API_KEY'])
babyagi.load_functions("drafts/code_writing_functions")
babyagi.process_user_input("Grab today's score from ESPN and email it to test@test.com")8. 配置项说明
| 配置 | 说明 |
|---|---|
@babyagi.register_function(imports=..., dependencies=..., key_dependencies=..., metadata=...) |
注册函数并声明依赖 |
babyagi.load_functions("path/to/pack.py") |
加载函数包 / 草稿包 |
babyagi.add_key_wrapper('openai_api_key', ...) |
代码里存密钥(也可在 dashboard 加) |
| dashboard | http://localhost:8080/dashboard |
9. 常用运维命令
# 安装
pip install babyagi
# 启动 dashboard(脚本内 app.run)
python your_app.py10. 常见故障排查
- dashboard 打不开:确认脚本里
app.run(host='0.0.0.0', port=8080)已执行、端口未被占; - 自构建 Agent 报错:确认已
add_key_wrapper('openai_api_key', ...); - 生成代码不可用:官方明示实验功能,生成代码最小、需自行改进;
- 想要生产方案:本仓库不适用,改用 LangGraph / AutoGen 等成熟框架。
11. 风险与合规说明
- MIT 许可;
- ⚠️ 官方明示不用于生产,仅作研究与实验;
- 自构建 Agent 会自动生成函数代码,执行前务必人工审查;
- OpenAI 调用费用由你账号承担;
- 本文为社区部署笔记,命令以官方仓库最新说明为准。