解锁“成长9.1蓝莓”隐藏路线:最新版本链接,探寻你的无限可能!

核心内容摘要

免费污污软件下载-免费污污软件下载最新ios版v28.8.25下载
《影向山下的浮生梦:鸣神大社主祭的荒野受难与血脉重塑》

美国BBBB嗓与BBBB嗓:一场华丽的声线较量,谁才是你的心头好?

本文详细介绍了如何使用Spring AI框架构建电商客服智能知识库RAG系统。

从需求分析、技术选型开始逐步讲解了环境配置、知识库构建、RAG核心组件配置、接口开发到系统测试的全流程。

系统支持PDF文档导入、双检索模式能有效解答退换货、物流查询等电商问题避免大模型幻觉。

通过实战案例展示了Spring AI在电商场景中的应用价值为开发者提供了完整的RAG系统开发指南。

经过前面几篇文章的铺垫我们已掌握 Spring AI 核心模块对话、Embedding、RAG与优化技巧。

本文将聚焦电商行业高频痛点通过实战案例 —— 电商客服智能知识库 RAG 系统带大家完成从需求分析、环境搭建到系统测试的全流程开发。

该系统支持本地 PDF 格式的电商规则文档导入、Milvus 向量存储、双 Advisor 检索增强可精准解答用户关于退换货政策、物流查询、促销活动等咨询帮助企业提升客服响应效率、降低沟通成本同时避免大模型 “幻觉” 问题。

项目需求与技术选型

核心需求支持导入本地 PDF 格式电商规则文档如《电商知识库标准条款》等。

实现电商场景高频问题智能问答如 “双 11 买的口红拆封能退吗”“未发货订单怎么改地址”“偏远地区包邮吗”。

支持两种检索模式精准条款匹配QuestionAnswerAdvisor与复杂场景增强RetrievalAugmentationAdvisor适配不同咨询场景。

回答需基于知识库内容标注信息来源避免编造规则同时过滤与电商业务无关的查询。

支持提取用户问题中的核心实体商品类型、购买时间、需求类型提升检索精准度。

技术选型技术模块选型方案开发框架Spring Boot

3.

3 Spring AI

1.

0-SNAPSHOT大模型智普 AIEmbeddingembedding-2ChatGLM-4-Flash向量数据库Milvus

2.

0文档解析PdfDocumentReader支持 PDF 文档解析文本切分TokenTextSplitter按 Token 数量智能切分RAG 组件QuestionAnswerAdvisor RetrievalAugmentationAdvisor

项目初始化与环境配置

创建 Spring Boot 项目项目名称Weiz-SpringAI-RAG-EcommerceCustomerJDK 版本17Spring Boot 版本

3.

3核心依赖Spring Web、Spring AI 相关依赖智普 AI、Milvus、RAG 组件、Tika 文档解析PDF 文档解析

配置 pom.xml 依赖?xml version

0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/

4.

0 xmlns:xsihttp://www.w

org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/

4.

0 https://maven.apache.org/xsd/maven-

4.

0.

xsd modelVersion

4.

0/modelVersion parent groupIdcom.example/groupId artifactIdWeiz-SpringAI/artifactId version

0.

1-SNAPSHOT/version /parent artifactIdWeiz-SpringAI-RAG-EcommerceCustomer/artifactId nameWeiz-SpringAI-RAG-EcommerceCustomer/name descriptionWeiz-SpringAI-RAG-EcommerceCustomer/description dependencies dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-web/artifactId /dependency dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-starter-model-zhipuai/artifactId /dependency !-- spring-ai-client-chat 中包括 TokenTextSplitter、TextReader、Document 等工具 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-client-chat/artifactId /dependency !-- PDF 文档解析依赖 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-pdf-document-reader/artifactId /dependency !-- DOC 文档解析依赖Tika -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-tika-document-reader/artifactId /dependency dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-test/artifactId scopetest/scope /dependency !-- Milvus 向量数据库 Starter -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-starter-vector-store-milvus/artifactId /dependency !-- QuestionAnswerAdvisor 依赖 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-advisors-vector-store/artifactId /dependency !-- RetrievalAugmentationAdvisor 依赖 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-rag/artifactId /dependency /dependencies /project

配置 application.properties# 应用基础配置 spring.application.nameWeiz-SpringAI-RAG-EcommerceCustomer server.port8080 # 智普 AI 配置 spring.ai.zhipuai.api-key你的智普 AI API Key spring.ai.zhipuai.base-urlhttps://open.bigmodel.cn/api/paas spring.ai.zhipuai.embedding.options.modelembedding-2 spring.ai.zhipuai.chat.options.modelGLM-4-Flash # Milvus 向量数据库配置 spring.ai.vectorstore.milvus.client.hostlocalhost spring.ai.vectorstore.milvus.client.port19530 spring.ai.vectorstore.milvus.client.tokenroot:Milvus spring.ai.vectorstore.milvus.database-namedefault spring.ai.vectorstore.milvus.collection-nameguide_exam_store spring.ai.vectorstore.milvus.initialize-schematrue spring.ai.vectorstore.milvus.embedding-dimension1024 # 日志配置便于调试 logging.level.org.springframework.aiINFO logging.level.com.exampleDEBUG

知识库构建电商规则文档导入与向量入库

准备电商客服知识库文档将 电商知识库标准条款.doc 文档放入src/main/resources目录文档内容示例

退换货政策核心条款 一通用退换货规则

7 天无理由退换用户签收商品后 7 天内商品完好吊牌未拆、包装完整、 无使用痕迹支持无理由退换美妆、个护类商品拆封后仍支持 7 天无理由退 换但需保留赠品及原包装配件。

质量问题退换商品存在破损、功能故障、材质不符等质量问题支持签收后 30 天内免费退换往返运费由商家承担需提供问题商品清晰照片、快递面单作为 凭证48 小时内响应处理。

退换货流程用户发起申请 → 商家审核24 小时内→ 用户寄回商品7 天 内→ 商家验收 → 退款 / 换货验收后 48 小时内。

二特殊商品退换规则

定制类商品刻字首饰、定制尺寸服装、个性化印刷品等无质量问题不支持退 换质量问题需在签收后 48 小时内反馈提供定制凭证及问题证明。

食品 / 美妆类食品、饮料、保健品等开封后不支持退换美妆类商品口红、 粉底液等使用后出现过敏需提供医院诊断证明支持全额退款。

数码家电类未拆封数码家电支持 7 天无理由退换拆封后仅支持质量问题退 换需提供品牌售后检测报告保修服务按品牌官方政策执行。

....... 后面省略

编写知识库初始化配置创建com.example.weizspringai.config.KnowledgeBaseConfig 类实现 DOC 文档解析、文本切分与向量入库import org.springframework.ai.document.Document; import org.springframework.ai.reader.tika.TikaDocumentReader; import org.springframework.ai.transformer.splitter.TokenTextSplitter; import org.springframework.ai.vectorstore.VectorStore; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; import org.springframework.stereotype.Component; import jakarta.annotation.PostConstruct; import java.util.ArrayList; import java.util.List; Component public class KnowledgeBaseConfig { private final VectorStore vectorStore; public KnowledgeBaseConfig(VectorStore vectorStore) { this.vectorStore vectorStore; } /** * 项目启动时初始化知识库解析 PDF 文档 → 切分文本 → 向量入库 */ PostConstruct public void initKnowledgeBase() { try { System.out.println(开始初始化电商客服知识库...); //

定义需要导入的 PDF 文档列表 ListString pdfFiles List.of( 电商知识库标准条款.docx ); ListDocument allSplitDocs new ArrayList(); for (String fileName : pdfFiles) { //

读取单个 PDF 文档 Resource resource new ClassPathResource(fileName); TikaDocumentReader reader new TikaDocumentReader(resource); ListDocument rawDocs reader.read(); //

优化文本切分策略适配电商规则条款化特点 TokenTextSplitter splitter TokenTextSplitter.builder() .withChunkSize(

// 每段最大 600 Token匹配规则条款长度 .withMinChunkSizeChars(

// 每段最小 200 字符 .withKeepSeparator(true) // 保留条款分隔符 .build(); //

切分当前文档并添加到总列表 ListDocument splitDocs splitter.apply(rawDocs); allSplitDocs.addAll(splitDocs); System.out.println(已解析文档 fileName 生成 splitDocs.size() 个文本片段); } //

批量向量入库Spring AI 自动调用 EmbeddingModel 完成向量化 vectorStore.add(allSplitDocs); System.out.println(知识库初始化完成共导入 allSplitDocs.size() 个文本片段); } catch (Exception e) { System.err.println(知识库初始化失败 e.getMessage()); e.printStackTrace(); } } }

RAG 核心配置 Advisor 初始化创建com.example.ecommerceservicerag.config.RAGConfig类配置QuestionAnswerAdvisor与 RetrievalAugmentationAdvisor 等 RAG 组件优化提示词以提取电商业务实体、提升检索精准度import org.springframework.ai.chat.client.ChatClient; import org.springframework.ai.chat.client.advisor.vectorstore.QuestionAnswerAdvisor; import org.springframework.ai.rag.advisor.RetrievalAugmentationAdvisor; import org.springframework.ai.rag.generation.augmentation.ContextualQueryAugmenter; import org.springframework.ai.rag.retrieval.search.VectorStoreDocumentRetriever; import org.springframework.ai.vectorstore.SearchRequest; import org.springframework.ai.vectorstore.VectorStore; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; Configuration public class RAGConfig { private final VectorStore vectorStore; public RAGConfig(VectorStore vectorStore) { this.vectorStore vectorStore; } /** * 配置 QuestionAnswerAdvisor适合精准条款查询如具体政策匹配 */ Bean public QuestionAnswerAdvisor questionAnswerAdvisor() { return QuestionAnswerAdvisor.builder(vectorStore) .searchRequest(SearchRequest.builder() .similarityThreshold(

0.

// 优化阈值适配电商规则检索 .topK(

// 取 Top4 相似片段提升精准度 .build()) .build(); } /** * 配置 RetrievalAugmentationAdvisor适合复杂场景查询如促销退换货组合问题 */ Bean public RetrievalAugmentationAdvisor retrievalAugmentationAdvisor() { //

向量检索器配置检索参数 VectorStoreDocumentRetriever retriever VectorStoreDocumentRetriever.builder() .vectorStore(vectorStore) .similarityThreshold(

0.

.topK(

.build(); // 查询增强器 ContextualQueryAugmenter queryAugmenter ContextualQueryAugmenter.builder() .allowEmptyContext(true) .build(); //

构建检索增强 Advisor return RetrievalAugmentationAdvisor.builder() .documentRetriever(retriever) .queryAugmenter(queryAugmenter) .build(); } /** * 配置 ChatClient集成智普 AI GLM-4-Flash适配电商客服语气 */ Bean public ChatClient chatClient(org.springframework.ai.chat.model.ChatModel chatModel) { return ChatClient.builder(chatModel) .defaultSystem( 你是友好的电商客服顾问仅基于提供的知识库内容回答用户问题规则如下

回答需亲切、简洁、准确符合电商客服沟通语气避免生硬表述

涉及政策规则时分点说明关键信息让用户一目了然

回答末尾必须标注信息来源格式信息来源[文档名称 - 相关条款类别]

若未查询到相关信息回复非常抱歉暂未查询到该问题的相关规则建议联系人工客服咨询~

仅回应与电商购物退换货、促销、物流等相关的问题无关问题直接回复上述统一话术。

) .build(); } }

编写控制器提供问答接口创建com.example.ecommerag.controller.CustomerServiceController类提供精准条款查询与复杂场景增强查询两种接口适配电商客服日常咨询场景import org.springframework.ai.chat.client.ChatClient; import org.springframework.ai.chat.client.advisor.vectorstore.QuestionAnswerAdvisor; import org.springframework.ai.rag.advisor.RetrievalAugmentationAdvisor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Map; RestController RequestMapping(/ecommerce/service) public class CustomerServiceController { Autowired private ChatClient chatClient; Autowired private QuestionAnswerAdvisor questionAnswerAdvisor; Autowired private RetrievalAugmentationAdvisor retrievalAugmentationAdvisor; /** * 精准条款查询接口基于 QuestionAnswerAdvisor * 适用场景查询具体规则条款如包邮条件、退换货时限、价保规则 */ GetMapping(/chat/precise) public MapString, String preciseChat(RequestParam(question) String question) { String answer chatClient.prompt() .user(question) .advisors(List.of(questionAnswerAdvisor)) .call() .content(); return Map.of( question, question, answer, answer, mode, precise精准条款查询 ); } /** * 复杂场景增强查询接口基于 RetrievalAugmentationAdvisor * 适用场景组合类、流程类问题如促销期退换货、已下单改地址、VIP用户物流查询 */ GetMapping(/chat/enhanced) public MapString, String enhancedChat(RequestParam(question) String question) { String answer chatClient.prompt() .user(question) .advisors(List.of(retrievalAugmentationAdvisor)) .call() .content(); return Map.of( question, question, answer, answer, mode, enhanced复杂场景增强 ); } }

测试与验证测试 1查询具体概念精准问答访问http://localhost:8083/ecommerce/service/chat/precise?question新疆地区订单多少金额包邮响应结果{ question: 新疆地区订单多少金额包邮, answer: 新疆属于偏远地区订单金额满199元可享受包邮服务不满199元需收取20元运费哦~ 信息来源[物流服务标准 - 包邮政策], mode: precise精准条款查询 }测试 2查询多步骤问题检索增强访问http://localhost:8080/ecommerce/service/chat/enhanced?question双11买的口红拆封了能退吗我是VIP用户响应结果{ question: 双11买的口红拆封了能退吗我是VIP用户, answer: 非常抱歉根据我们的退换货政策口红属于美妆类商品拆封后不支持7天无理由退换。

不过作为VIP用户您在促销期间退换货可以享受免审核和优先处理的特权。

如果您确实需要退换建议联系客服了解具体情况。

信息来源[电商知识库标准条款文档模板 - 退换货政策], mode: enhanced复杂场景增强 }测试 3流程类查询未发货订单改地址访问http://localhost:8080/ecommerce/service/chat/enhanced?question我刚下单还没发货想修改收货地址可以吗响应结果{ question: 我刚下单还没发货想修改收货地址可以吗, answer: 当然可以您下单后24小时内可以通过APP修改收货地址和联系电话。

如果超过24小时需要联系客服协调但仅支持同城市地址修改哦。

信息来源[电商知识库标准条款文档模板 - 订单修改与追踪]。

, mode: enhanced复杂场景增强 }测试 4查询无关问题验证过滤访问http://localhost:8083/ecommerce/service/chat/precise?question怎么办理信用卡响应结果{ question: 怎么办理信用卡, answer: 非常抱歉暂未查询到关于如何办理信用卡的相关规则建议联系人工客服咨询~信息来源[电商知识库标准条款文档模板 - 退换货政策], mode: precise精准条款查询 }测试结果表明系统完全满足需求能精准回答导游考试相关问题支持不同类型的查询场景且能过滤无关问题符合生产级应用的要求。

项目扩展方向多格式文档支持扩展支持 PDF、Excel、PPT 等格式的知识库导入使用 Spring AI 提供的对应文档阅读器。

知识库增量更新实现知识库的新增、修改、删除功能避免每次更新都需重启服务。

前端可视化界面开发 Web 前端支持文档上传、问题输入、回答展示、历史记录查询等功能。

权限控制添加用户认证与授权功能限制知识库的访问权限如仅导游考试学员可使用。

系统监控集成 Prometheus Grafana监控 Milvus 检索性能、大模型调用耗时、接口响应速度等指标。

AI大模型从0到精通全套学习大礼包我在一线互联网企业工作十余年里指导过不少同行后辈。

帮助很多人得到了学习和成长。

只要你是真心想学AI大模型我这份资料就可以无偿共享给你学习。

大模型行业确实也需要更多的有志之士加入进来我也真心希望帮助大家学好这门技术如果日后有什么学习上的问题欢迎找我交流有技术上面的问题我是很愿意去帮助大家的如果你也想通过学大模型技术去帮助就业和转行可以扫描下方链接大模型重磅福利入门进阶全套104G学习资源包免费分享

从入门到精通的全套视频教程包含提示词工程、RAG、Agent等技术点​

AI大模型学习路线图还有视频解说全过程AI大模型学习路线​

学习电子书籍和技术文档市面上的大模型书籍确实太多了这些是我精选出来的

大模型面试题目详解

这些资料真的有用吗?这份资料由我和鲁为民博士共同整理鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利同时还斩获了吴文俊人工智能科学技术奖。

目前我正在和鲁博士共同进行人工智能的研究。

所有的视频由智泊AI老师录制且资料与智泊AI共享相互补充。

这份学习大礼包应该算是现在最全面的大模型学习资料了。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。

智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念‌通过动态追踪大模型开发、数据标注伦理等前沿技术趋势‌构建起前沿课程智能实训精准就业的高效培养体系。

课堂上不光教理论还带着学员做了十多个真实项目。

学员要亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事‌如果说你是以下人群中的其中一类都可以来智泊AI学习人工智能找到高薪工作一次小小的“投资”换来的是终身受益应届毕业生‌无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。

零基础转型‌非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界‌。

业务赋能 ‌突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型‌。

获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】

9731芳草地-9731芳草地应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123