# SpringAIAlibaba-demo **Repository Path**: stand-tall-and-see/spring-aialibaba-demo ## Basic Information - **Project Name**: SpringAIAlibaba-demo - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-11-23 - **Last Updated**: 2026-03-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 该项目是一个基于 Spring Boot 的示例项目,整合了阿里巴巴的 AI 技术栈,主要演示了如何利用大模型构建一个图式智能代理(Graph Agent)来处理旅行助手相关的任务。以下为 README 的内容。 --- # Spring AI Alibaba Demo 本项目演示了如何使用 Spring Boot 和阿里巴巴 AI 技术构建一个图式智能代理,以处理旅行助手相关的任务。 ## 项目功能 - 构建了一个基于节点(Node)的图式代理(Graph Agent),可以处理旅行信息生成、信息提取、评分及建议优化等任务。 - 集成了大语言模型(LLM)来执行自然语言相关的处理。 - 支持通过工具(如天气工具)扩展功能。 ## 主要组件 - **XhsTravelAgent**: 负责组装整个图式代理的节点并运行旅行助手流程。 - **ContentNode**: 生成旅行相关内容。 - **InformationExtractionNode**: 从生成内容中提取结构化信息。 - **ScoreNode**: 对生成内容进行评分。 - **ImprovementNode**: 根据评分进行优化建议。 - **ChatModel**: 封装了调用大语言模型的接口。 - **WeatherTool**: 提供天气查询功能的工具。 ## 快速开始 ### 环境要求 - Java 17+ - Maven 3.8+ - Spring Boot 3.x ### 安装与运行 1. 克隆项目: ```bash git clone https://gitee.com/stand-tall-and-see/spring-aialibaba-demo.git ``` 2. 进入项目目录: ```bash cd spring-aialibaba-demo ``` 3. 配置 API Key: 在 `application.properties` 文件中配置 `spring.ai.dashscope.api-key`。 4. 构建项目: ```bash mvn clean install ``` 5. 运行项目: ```bash mvn spring-boot:run ``` ## 使用示例 ### 测试旅行助手代理 你可以使用 `XhsTravelAgent` 来运行旅行助手代理并获取旅行建议: ```java @Autowired private XhsTravelAgent xhsTravelAgent; public void run() throws GraphStateException { OverAllState finalState = xhsTravelAgent.runTravelAssistant().run(); String content = xhsTravelAgent.getTravelContent(finalState); Map info = xhsTravelAgent.getExtractedInfo(finalState); Double score = xhsTravelAgent.getFinalScore(finalState); } ``` ### 测试天气工具 ```java @Autowired private WeatherTool weatherTool; public void checkWeather() { String city = "北京"; String weather = weatherTool.apply(city, null); System.out.println("天气信息: " + weather); } ``` ## 测试 本项目包含单元测试,可以使用以下命令运行: ```bash mvn test ``` ## 贡献指南 欢迎提交 Pull Request 或提出 Issue。请确保提交前运行测试并保持代码整洁。 ## 许可证 本项目遵循 [MIT License](LICENSE)。