# SpringAiAlibaba **Repository Path**: jamescrx/spring-ai-alibaba ## Basic Information - **Project Name**: SpringAiAlibaba - **Description**: 2026年最新使用SpringAiAlibab集成 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-06 - **Last Updated**: 2026-02-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring AI Alibaba Project Summary 本项目是一个基于 Spring AI Alibaba 的示例集合,展示了多种 AI 能力的集成与应用。项目采用多模块架构,每个模块专注于特定的功能领域。 ## 模块功能总览 ### 1. `ImageAi` - 图像生成 * **功能**: 利用 DashScope 的 `wanx2.1-t2i-turbo` 模型进行文本到图像的生成 (Text-to-Image)。 * **接口**: `GET /ai/getImage?msg={描述词}` * **核心类**: `ImageController` ### 2. `chatAi` - 具备记忆的对话 * **功能**: 实现了带有上下文记忆能力的聊天客户端。 * **接口**: `GET /ai/chatMemory?msg={消息}&userId={用户ID}` * **特点**: 集成 `ChatMemory`,能够根据 `userId` 记住对话历史,提供连续对话体验。支持 DeepSeek 和 Qwen 模型。 * **核心类**: `ChatClientController` ### 3. `RagAi` - 检索增强生成 (RAG) * **功能**: 结合向量数据库实现 RAG 流程,让 AI 基于私有知识库回答问题。 * **接口**: `GET /ai/rag?msg={问题}` * **特点**: 使用 `VectorStoreDocumentRetriever` 检索相关文档,并将其作为上下文注入到 Prompt 中。预设了“运维工程师”的 System Prompt。 * **核心类**: `RagController` ### 4. `VectorAi` - 向量与文档管理 * **功能**: 提供文档向量化 (Embedding) 和向量检索功能的演示。 * **接口**: * `GET /textEmbed?msg={文本}`: 获取文本的向量 Embedding。 * `GET /add`: 向向量数据库添加预设的测试文档 (如 "i study LLM")。 * `GET /get?msg={查询词}`: 在向量数据库中进行相似度搜索。 * **核心类**: `VectorController` ### 5. `ToolAi` - Function Calling (工具调用) * **功能**: 演示 LLM 如何调用本地 Java 方法(Tools)。 * **接口**: `GET /ai/tool?msg={问题}` * **特点**: 将 `DateUtil` 注册为工具,允许 AI 在回答如“现在几点”的问题时,自主调用工具获取当前时间。 * **核心类**: `ToolController` ### 6. `MyMCPServer` - MCP 服务端 * **功能**: 实现了一个 Model Context Protocol (MCP) 服务器。 * **特点**: 定义并暴露了一个查询天气的工具 (`getWeak`),可供 MCP 客户端发现和调用。 * **核心类**: `MCPService` (定义工具), `MCPConfig` (发布工具), `MyMCPAppRun` (启动类) ### 7. `MCPClient` & `MyMCPClient` - MCP 客户端 * **功能**: MCP 协议的客户端实现示例。 * **接口**: * `MCPClient`: `GET /ai/MCP?msg={消息}` * `MyMCPClient`: `GET /ai/mcp?msg={消息}` * **特点**: 演示如何连接 MCP Server 并进行交互。 * **核心类**: `BDMCPController`, `MCPClientController` ## 技术栈 * **Spring Boot**: 3.5.5 * **Spring AI Alibaba**: 1.1.2.0 * **Model Provider**: Alibaba DashScope (Qwen, Wanx, etc.) * **Vector Store**: Redis (Jedis)