# dboat-ai-agent **Repository Path**: liujq1988/dboat-ai-agent ## Basic Information - **Project Name**: dboat-ai-agent - **Description**: 基于springboot 3.4.10、jdk21、spring ai、alibaba的agent 项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-02-02 - **Last Updated**: 2026-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DBoat AI Agent 一个基于Spring Boot和Spring AI的智能代理系统,集成了多种AI工具和大模型能力,提供自主规划和任务执行功能。 ## 项目简介 DBoat AI Agent是一个全功能AI代理框架,旨在解决用户提出的各种复杂任务。该系统集成了多种工具和大模型能力,通过自主规划和决策,能够高效地完成复杂请求。项目采用了模块化设计,支持多种AI代理类型,包括基础代理、反应式代理和工具代理。 ## 核心功能 ### 智能代理系统 - **BaseAgent**: 提供代理基础框架,包含状态管理、步骤执行和会话记录 - **ReactAgent**: 实现思考-行动模式的反应式代理 - **ToolAgent**: 集成多种工具的智能代理,支持工具调用和结果处理 - **DManus**: 超级智能体,拥有自主规划能力,可组合使用多种工具解决复杂问题 ### 工具集成 - 文件操作工具 (FileOperationTool) - 网络搜索工具 (WebSearchTool) - 网页抓取工具 (WebScrapingTool) - 资源下载工具 (ResourceDownloadTool) - 终端操作工具 (TerminalOperationTool) - PDF生成工具 (PdfGenerationTool) - 任务终止工具 (TerminateTool) ### 大模型集成 - 阿里云DashScope大模型集成 - Spring AI框架支持 - 自定义聊天客户端实现 - 对话记忆管理 (FileBasedChatMemory) ### 向量存储与RAG - PostgreSQL向量存储支持 - 文档加载和处理 - 向量化检索功能 - 知识库构建 ## 技术栈 - **后端框架**: Spring Boot 3.4.10 - **AI框架**: Spring AI 1.0.0 - **大模型**: 阿里云DashScope - **数据库**: PostgreSQL (向量存储) - **向量库**: PGVector - **文档处理**: iText PDF, Markdown解析 - **工具库**: Hutool, Jsoup - **API文档**: Knife4j (Swagger) - **序列化**: Kryo, FastJSON - **构建工具**: Maven - **Java版本**: 21 ## 项目结构 ``` dboat-ai-agent/ ├── src/main/java/com/dboat/dboataiagent/ │ ├── agent/ # 智能代理实现 │ ├── advisor/ # 顾问模式实现 │ ├── chatmermory/ # 对话记忆管理 │ ├── client/ # 客户端实现 │ ├── config/ # 配置类 │ ├── controller/ # 控制器 │ ├── demo/ # 示例代码 │ ├── entity/ # 实体类 │ ├── rag/ # RAG相关实现 │ └── tool/ # 工具实现 ├── src/main/resources/ │ ├── docs/ # 文档资源 │ ├── prompts/ # 提示词模板 │ └── application.yml # 应用配置 └── dboat-ai-agent-mcp-server/ # MCP服务器模块 ``` ## 快速开始 ### 环境要求 - Java 21+ - Maven 3.6+ - PostgreSQL (可选,用于向量存储) ### 安装步骤 1. 克隆项目 ```bash git clone https://github.com/your-username/dboat-ai-agent.git cd dboat-ai-agent ``` 2. 配置应用 - 复制 `application.yml` 并根据需要修改配置 - 配置DashScope API密钥 - 如需使用向量存储,配置PostgreSQL连接 3. 构建项目 ```bash mvn clean install ``` 4. 运行应用 ```bash mvn spring-boot:run ``` 5. 访问应用 - API文档: http://localhost:8090/api/swagger-ui.html - 应用端口: 8090 ## 使用示例 ### 基本代理使用 ```java @Autowired private DManus dManus; // 执行任务 String result = dManus.run("帮我搜索最新的AI技术发展趋势"); ``` ### 自定义工具 ```java @Component public class CustomTool implements ToolCallback { // 实现工具逻辑 } ``` ## 配置说明 ### 应用配置 - 服务器端口: 8090 - 上下文路径: /api - 默认配置文件: application.yml ### AI配置 - 大模型: DashScope - 向量存储: PGVector (可选) - MCP服务器: 支持多种连接方式 ## API文档 项目集成了Knife4j,提供完整的API文档: - 访问地址: http://localhost:8090/api/swagger-ui.html - 支持在线测试API接口 ## 开发指南 ### 添加新工具 1. 实现 `ToolCallback` 接口 2. 在 `ToolRegistration` 中注册工具 3. 重启应用 ### 扩展代理类型 1. 继承 `BaseAgent` 或其子类 2. 实现必要的抽象方法 3. 定义代理行为和逻辑 ## 许可证 本项目采用 [MIT License](LICENSE) 许可证。 ## 贡献指南 欢迎提交Issue和Pull Request来帮助改进项目。 --- **注意**: 使用前请确保已正确配置API密钥和相关服务。