deepresearch-agent/
├── backend/ # Python FastAPI 后端
│ ├── app/
│ │ ├── api/ # API 路由
│ │ ├── models/ # 数据模型
│ │ ├── middleware/ # 中间件
│ │ └── main.py # 主应用
│ └── requirements.txt # Python 依赖
├── frontend/ # React 前端
│ ├── src/
│ │ ├── components/ # React 组件
│ │ ├── pages/ # 页面组件
│ │ ├── services/ # API 和 WebSocket 服务
│ │ └── App.js # 主应用
│ └── package.json # Node.js 依赖
├── README.md # 项目说明
├── MODULES.md # 模块详细说明
└── start_backend.py # 后端启动脚本
- Python 3.9+
- Node.js 16+
- npm 或 yarn
# 安装 Python 依赖
cd backend
pip install -r requirements.txt
# 启动后端服务器
cd ..
python start_backend.py后端将在 http://localhost:8000 启动
- API 文档: http://localhost:8000/docs
- WebSocket: ws://localhost:8000/ws/{client_id}
# 安装 Node.js 依赖
cd frontend
npm install
# 启动前端开发服务器
npm start前端将在 http://localhost:3000 启动
✅ 后端 API
- FastAPI 框架
- WebSocket 实时通信
- 研究会话管理
- 聊天接口
- 报告生成和管理
- RESTful API 设计
✅ 前端界面
- React 18 + Material-UI
- 响应式设计
- 实时聊天界面
- 研究进度跟踪
- 报告查看和管理
- WebSocket 集成
✅ 核心模块
- 研究会话管理
- 实时进度更新
- 聊天机器人交互
- 报告生成系统
- 用户界面导航
🔄 AI 集成
- LLM 模型集成 (OpenAI/本地模型)
- 智能查询分析
- 内容总结和分析
🔄 数据源集成
- 网页爬虫
- 学术数据库
- 新闻 API
- 搜索引擎集成
🔄 高级功能
- 用户认证系统
- 数据库持久化
- 缓存系统
- 部署配置
POST /api/research/start- 开始新研究GET /api/research/{id}/status- 获取研究状态PUT /api/research/{id}/pause- 暂停研究DELETE /api/research/{id}- 取消研究
POST /api/chat/message- 发送聊天消息GET /api/chat/history/{session_id}- 获取聊天历史
GET /api/reports/- 获取报告列表GET /api/reports/{id}- 获取特定报告POST /api/reports/{id}/export- 导出报告
chat_message- 聊天消息start_research- 开始研究research_progress- 研究进度更新research_completed- 研究完成
- 在
backend/app/api/中创建新的路由文件 - 在
backend/app/main.py中注册路由 - 在
frontend/src/services/api.js中添加对应的客户端方法
- 在
frontend/src/pages/中创建新页面组件 - 在
frontend/src/App.js中添加路由 - 在
frontend/src/components/Navbar.js中添加导航链接
- 在后端
main.py的websocket_endpoint中处理新消息类型 - 在前端
websocket.js中添加对应的事件处理
cd backend
python -m pytest tests/cd frontend
npm test# 构建镜像
docker-compose build
# 启动服务
docker-compose up -d- 设置环境变量
- 配置数据库连接
- 设置 Redis 缓存
- 配置 HTTPS
- 设置负载均衡
- 端口冲突: 确保 8000 和 3000 端口未被占用
- 依赖安装失败: 检查 Python 和 Node.js 版本
- WebSocket 连接失败: 检查防火墙设置
- CORS 错误: 确保后端 CORS 配置正确
- 后端日志: 控制台输出
- 前端日志: 浏览器开发者工具
- WebSocket 日志: 网络标签页
- Fork 项目
- 创建功能分支
- 提交更改
- 推送到分支
- 创建 Pull Request
MIT License - 详见 LICENSE 文件