AgentForge:基于 LangChain 的企业多智能体 AI 助理平台

ai -agent

分支1Tags1
文件最后提交记录最后更新时间
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
AgentForge Logo

AgentForge

基于 LangChain 的多智能体 AI 助理平台

Python FastAPI LangChain Version


简介

AgentForge 是一个面向企业的多智能体 AI 助理平台,基于 LangChain 构建,集成了多模型对话、视频生成、CEO 数据简报等核心功能。系统采用 FastAPI + Vue.js 的全栈架构,通过模块化的智能体(Agent)和工具箱(Tool)设计,实现灵活可扩展的 AI 服务编排。

核心能力

能力 说明
🤖 多模型对话 切换 Qwen 3.7 Max/Plus、DeepSeek V4 Pro,支持流式 SSE 响应
🎬 AI 视频生成 文字描述转视频(DashScope Wan2.7-T2V 720P)
📊 CEO 简报 自动生成业务数据报告,定时邮件推送
🔐 邮件验证码登录 QQ 邮箱验证码认证 + Redis 会话管理
💾 会话管理 对话历史保存/加载/删除,30 天持久化
🎨 视频资产库 视频搜索、播放、分页管理
🌗 暗色/亮色主题 一键切换,偏好自动保存

快速开始

前置条件

  • Python >= 3.10
  • MySQL 服务
  • Redis 服务
  • DashScope API Key(用于 Qwen 和视频生成)
  • DeepSeek API Key(可选)

安装

# 克隆项目
git clone https://github.com/your-org/agentforge.git
cd agentforge

# 安装依赖
pip install -r requirements.txt

# 配置环境变量
cp .env.example .env
# 编辑 .env,填入你的 API Key 和数据库配置

配置 .env

# LLM 模型配置
DASHSCOPE_API_KEY=sk-xxxx
DEEPSEEK_API_KEY=sk-xxxx

# MySQL
DATABASE_HOST=localhost
DATABASE_PORT=3306
DATABASE_USER=root
DATABASE_PASSWORD=your_password
DATABASE_NAME=your_database

# Redis
REDIS_HOST=127.0.0.1
REDIS_PORT=6379

启动

uvicorn api.main:app --host 0.0.0.0 --port 9000 --reload

打开浏览器访问 http://localhost:9000

快速使用

1. 登录

输入您的邮箱地址,点击"发送验证码",查收邮件后输入 4 位验证码完成登录。

2. 开始对话

  • 在聊天框输入问题
  • 右上角下拉菜单切换模型(Qwen Max / Qwen Plus / DeepSeek)
  • 支持 Markdown 渲染回复,代码块自动高亮

3. 生成视频

在输入框输入视频描述(如:"一只猫咪在草地上奔跑"),选择视频模式提交,系统将实时推送生成进度。

4. 查看视频库

点击左侧"视频库"按钮,浏览已生成的视频资产,支持搜索和分页。

5. 接收 CEO 简报

使用个人信息助理功能,系统将自动从业务数据库提取数据并生成报表,邮件发送到指定邮箱。

项目结构

agentforge/
├── ai/                          # AI 核心模块
│   ├── agent/                   # 智能体定义
│   │   ├── chat_agent.py        # 通用对话智能体
│   │   ├── login_agent.py       # 登录验证智能体
│   │   ├── video_agent.py       # 视频生成智能体
│   │   └── personal_assistant_agent.py  # CEO 助理智能体
│   ├── model/
│   │   └── my_model.py          # LLM 模型工厂
│   └── tool/                    # 工具集
│       ├── mysql_tool.py        # MySQL 查询
│       ├── send_email_tool.py   # 邮件发送 (QQ SMTP)
│       ├── redis_tool.py        # Redis 缓存读写
│       ├── generate_video_tool.py       # DashScope 视频生成
│       ├── download_video_tool.py       # 视频下载归档
│       ├── video_archive_tool.py        # 视频资产管理
│       ├── ceo_briefing_tool.py         # CEO 数据简报
│       └── get_content_type.py          # 内容类型检测
├── api/                         # REST API
│   ├── main.py                  # FastAPI 入口 (port 9000)
│   └── chat/
│       └── chat_router.py       # 所有 API 路由
├── static/                      # 静态资源
│   └── download/                # 视频文件存储
├── api/static/
│   ├── chat.html                # 单页前端 (Vue.js)
│   └── js/                      # 前端依赖
├── docs/                        # 文档
│   ├── PRD.md                   # 产品需求文档
│   └── SSD.md                   # 软件规格设计文档
├── .env                         # 环境变量配置
├── pyproject.toml               # 项目元数据
└── requirements.txt             # Python 依赖

数据库表

user_info

字段 类型 说明
user_id INT 用户 ID (PK)
user_name VARCHAR 用户名
email VARCHAR 邮箱
department VARCHAR 部门

orders

字段 类型 说明
id INT 订单 ID (PK)
order_date DATE 下单日期
product_id INT 商品 ID (FK)
quantity INT 数量
total_amount DECIMAL 总金额
payment_method VARCHAR 支付方式

products

字段 类型 说明
product_id INT 商品 ID (PK)
product_name VARCHAR 商品名称
category VARCHAR 分类

video_archive

字段 类型 说明
id INT 记录 ID (PK)
video_name VARCHAR 视频名称
download_time DATETIME 下载时间
video_url VARCHAR 视频 URL
file_size INT 文件大小

API 概览

端点 方法 说明
/chat/invoke POST 同步对话
/chat/stream POST 流式对话 (SSE)
/auth/send_code POST 发送验证码
/auth/login POST 验证码登录
/auth/logout POST 退出登录
/auth/check_login GET 检查登录状态
/conversation/save POST 保存会话
/conversation/get POST 获取会话
/conversation/list POST 会话列表
/conversation/del POST 删除会话
/video/generate GET 视频生成 (SSE)
/video/archive POST 归档视频
/video/list POST 视频列表
/personal_assistant POST CEO 简报

技术栈

技术
前端 Vue.js 2, marked.js, CSS Custom Properties
后端 FastAPI, Uvicorn
AI 框架 LangChain (Agent, Tool, Executor)
语言模型 Qwen 3.7 Max/Plus (DashScope), DeepSeek V4 Pro
视频生成 DashScope VideoSynthesis (Wan2.7-T2V)
数据库 MySQL (PyMySQL)
缓存 Redis
邮件 QQ SMTP (SMTP_SSL)

开发计划

许可证

MIT


Built with ❤️ by AgentForge Team