FastAPI+
PostgreSQL+
Redis-Cluster+
Next.js + Python 3.10++ Node.js 18++ Docker+ LangGraphFastAPI+PostgreSQL+Redis后端与Next.js前端组合,搭建多类型AI Agent管理与运行平台
方案简介
Evo AI 是一个开源 AI Agent 平台,用于创建和管理 AI Agent,并可集成不同的 AI 模型与服务。它基于 Google Agent Development Kit (ADK) 作为 Agent 开发基础框架,同时支持 CrewAI(开发中)和 LangGraph 构建复杂工作流,实现 Google 的 A2A(Agent 2 Agent)协议以支持 Agent 间互操作。
平台支持七种可灵活组合的 Agent 类型:LLM Agent(基于 GPT-4、Claude 等语言模型,可配置工具、MCP 服务器与子 Agent)、A2A Agent、Sequential Agent(按顺序执行子 Agent)、Parallel Agent(并行执行)、Loop Agent(循环执行并有最大迭代次数)、Workflow Agent(用 LangGraph 图结构定义自定义工作流)以及 Task Agent。此外还提供 JWT 认证与邮箱验证、API Key 加密存储、按文件夹组织 Agent 等能力,并有原生 Langfuse 集成用于执行追踪。适合需要自托管、多 Agent 编排与可视化管理界面的团队。
组成与分工
- FastAPI:构建 API 的 Web 框架
- SQLAlchemy:与数据库交互的 ORM
- PostgreSQL:主数据库
- Alembic:数据库迁移系统
- Pydantic:数据验证与序列化
- Uvicorn:ASGI 服务器
- Redis:缓存与会话管理
- JWT:安全令牌认证
- SendGrid/SMTP:邮件通知服务(可配置),配合 Jinja2 渲染邮件模板
- Bcrypt:密码哈希与安全
- LangGraph:构建有状态多 Agent 工作流的框架
- Next.js 15 + React 18 + TypeScript:前端界面
- Tailwind CSS + shadcn/ui:样式与组件库
- React Hook Form + Zod:表单管理与 Schema 校验
- ReactFlow:节点式可视化工作流
- React Query:服务端状态管理
- Langfuse:基于 OpenTelemetry 的执行追踪与可观测性
前置要求
后端:
- Python: 3.10 or higher
- PostgreSQL: 13.0 or higher
- Redis: 6.0 or higher
- Git: 用于版本控制
- Make: 用于运行 Makefile 命令
前端:
- Node.js: 18.0 or higher
- pnpm:推荐的包管理器(或 npm/yarn)
实施步骤
1. 克隆仓库
bash
git clone https://github.com/EvolutionAPI/evo-ai.git
cd evo-ai
2. 后端设置
创建虚拟环境并安装依赖:
bash
make venv
source venv/bin/activate
make install-dev
配置环境变量:
bash
cp .env.example .env
编辑 .env 填入数据库、Redis 等设置。然后初始化数据库:
bash
make alembic-upgrade
make seed-all
3. 前端设置
bash
cd frontend
pnpm install
cp .env.example .env
前端 .env 应包含:
env
NEXT_PUBLIC_API_URL=http://localhost:8000
4. 开发模式启动
终端 1 启动后端:
bash
make run
后端运行在 http://localhost:8000。终端 2 启动前端:
bash
cd frontend
pnpm dev
前端运行在 http://localhost:3000。
5. Docker 一键部署(可选)
bash
make docker-build
make docker-up
make docker-seed
使用与配置要点
安装完成后:
- 打开 http://localhost:3000 访问前端
- 使用种子管理员凭据登录或注册新账号
- 配置你的第一个 MCP 服务器连接
- 创建 Client 以组织你的 Agent
- 创建并配置你的 AI Agent
- 使用聊天界面与 Agent 交互测试
种子运行后可查看 seeder 输出获取生成的管理员邮箱和密码。
生产模式:后端使用 make run-prod 多 worker 运行;前端使用 pnpm build && pnpm start。
要启用 Langfuse 追踪,在 .env 中设置:
env
LANGFUSE_PUBLIC_KEY="pk-lf-..."
LANGFUSE_SECRET_KEY="sk-lf-..."
OTEL_EXPORTER_OTLP_ENDPOINT="https://cloud.langfuse.com/api/public/otel"
然后在 Langfuse 仪表板中实时查看 traces。
注意事项与常见问题
- CrewAI 支持仍处于开发中(in development)
- 管理员邮箱和密码需查看 seeder 输出获取,而非固定默认值
- 邮件服务可通过 SendGrid 或 SMTP 配置,二选一
- API Key 采用加密存储,需在
.env正确配置数据库、Redis 等设置后才能运行
优缺点
- ✓ 支持多种Agent类型灵活组合
- ✓ 前后端与Docker部署齐全
- ✕ 部署依赖组件较多
- ✕ CrewAI支持仍在开发中
出处
本方案挖掘自开源项目 evolution-foundation/evo-ai,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。