Skip to content

BX25307/Agent-World

Repository files navigation

clj-ai-agent 🤖✨

一个基于 Spring Boot 3.5(Java 21)的 AI Agent 后端项目,内置 MCP 客户端能力,并包含一个独立的图片搜索 MCP Server。

项目介绍(智能体用途)

  • LoveApp 💘:恋爱陪伴与情感建议型智能体,强调温柔、共情、可对话的关系指导。
  • WhisperNest 🌙:情绪陪伴型智能体,倾向安抚与倾听,提供安全、轻柔的情绪支持。
  • EternityManus 🧭:参考 Manus 的设计方法,强调工具调用与可编排的任务执行,输出清晰的中文结果。

🌟 项目功能概览

  • AI Agent 对话与工具调用(包含多种 Agent 实现与 Advisor)
  • RAG 能力(文档加载、向量检索、查询改写)
  • MCP 客户端支持(stdio + sse)
  • 图片搜索 MCP Server(可独立部署)
  • Swagger/Knife4j 接口文档

🧩 模块说明

clj-ai-agent(主服务)

负责 Agent 能力、对话逻辑、工具调用、RAG 相关功能与 API 暴露。
默认端口:8092,上下文路径:/api

cli-image-search-mcp-server(图片搜索 MCP Server)

独立的 MCP Server,可用 stdiosse 方式接入主服务。
默认端口:8866


🧱 主要目录结构(功能分区)

  • src/main/java/xyz/bx25/cljaiagent/agentAgent 实现
  • src/main/java/xyz/bx25/cljaiagent/advisor对话 Advisor
  • src/main/java/xyz/bx25/cljaiagent/ragRAG 相关组件
  • src/main/java/xyz/bx25/cljaiagent/tools工具能力
  • src/main/java/xyz/bx25/cljaiagent/controller对外 API
  • src/main/resources配置文件 / 文档 / 资源
  • cli-image-search-mcp-server/独立图片搜索 MCP Server

🧠 Advisor 说明

  • MyLoggerAdvisor:记录模型输出,便于调试和排查对话效果。
  • ReReadingAdvisor:对用户问题做“再阅读”式改写,提高模型理解一致性。
  • RAG 相关 Advisor:在 rag 包内提供检索增强配置与工厂。

🧭 Agent 设计说明

  • EternityManus:参考大名鼎鼎的 Manus 设计方法,强调可解释、可编排的 Agent 流程。
  • ReActAgent:ReAct 思路的工具调用与推理流程。
  • ToolCallAgent:面向工具调用的对话编排与执行。

📚 RAG 能力说明

  • LoveAppDocumentLoader:加载 resources/document/*.md 文档作为知识源。
  • LoveAppVectorStoreConfig:向量库构建(SimpleVectorStore),含关键词补全。
  • LoveAppRagCustomAdvisorFactory:构建检索增强 Advisor(带过滤与阈值)。
  • LoveAppContextualQueryAugmenterFactory:空上下文时返回友好提示。
  • QueryRewriter:查询改写(RewriteQueryTransformer)。
  • LoveAppCloudAdvisorConfig:基于 DashScope 知识库的检索增强配置。

🔑 需要你填写的密钥

请务必在运行前设置这些环境变量,否则功能不可用。

主服务(clj-ai-agent)需要:

  • DASHSCOPE_API_KEY = 你的 DashScope Key
  • SEARCHAPI_API_KEY = 你的 SearchAPI Key
  • AMAP_MAPS_API_KEY = 你的高德地图 Key(MCP stdio 用)

图片搜索 MCP Server 需要:

  • PEXELS_API_KEY = 你的 Pexels Key

🚀 本地运行(主服务)

./mvnw -DskipTests package
export SPRING_PROFILES_ACTIVE=local
export DASHSCOPE_API_KEY=你的key
export SEARCHAPI_API_KEY=你的key
export AMAP_MAPS_API_KEY=你的key
java -jar target/clj-ai-agent-0.0.1-SNAPSHOT.jar

Swagger UI:http://localhost:8092/api/swagger-ui.html


🖼️ 本地运行(图片搜索 MCP Server)

cd cli-image-search-mcp-server
./mvnw -DskipTests package
export SPRING_PROFILES_ACTIVE=sse
export PEXELS_API_KEY=你的key
java -jar target/cli-image-search-mcp-server-0.0.1-SNAPSHOT.jar

🔌 MCP 接入方式

主服务配置在 src/main/resources/application.yml 中:

  • stdio MCP:使用 mcp-servers.json
  • sse MCP:默认连接 http://localhost:8866

如果你把 cli-image-search-mcp-server 改成 SSE,只要保证服务在 8866 启动,主服务会通过 SSE 连接它。


注意:如果生产要用图片搜索 MCP Server,请单独部署它,并把主服务的 sse 指向对应地址。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors