Spring AI项目:AI智能对话与简历分析系统
Spring AI项目Jane是一个智能对话与简历分析系统,整合了多模型AI能力。技术栈包含Spring Boot、Spring AI、PostgreSQL、Redis、Pinecone等,实现了JWT认证、BCrypt加密、分布式锁等安全机制。核心功能包括多模型对话(DeepSeek、通义千问等)、简历AI分析评分、RAG检索增强生成,支持PDF解析和向量化存储。项目采用多级缓存、限流防刷、幂等
Spring AI项目- Jane_智能对话与简历分析系统
前言
大家好,这是我个人自主研发的项目,后端代码已经开源。开发这个项目的初衷是源于一个偶然的想法,同时希望通过实践来提升自己的开发和设计能力。在项目后端开发过程中,可能存在一些不足之处,希望大家慷慨的指点斧正,欢迎大家交流!
还有就是,本项目体验大家放心使用,不会泄露个人隐私,后端服务器也不会存储大家的隐私数据,会自动删除
有关文章
在实际开发过程中也碰到到过一些问题,比如说Spring AI并没有提供相关 Redis存储会话记忆的实现,以下就是我本人发布的文章,完全运用到了项目中,欢迎阅览!
项目技术栈
🔧 框架:Spring Boot 3.5.3 + Spring AI 1.0.0
💾 数据库:PostgreSQL + MyBatis Plus
🚀 缓存:Redis + Caffeine 多级缓存
🔍 向量数据库:Pinecone
🔐 安全:JWT + BCrypt + 分布式锁
📊 监控:Log4j2 + Spring Boot Actuator
🛠️ 工具:Hutool、Lombok、FastJSON
项目介绍
- 🔗 项目代码地址 : https://gitee.com/Ee111wang210210/jane
- 🔗 项目前端体验: 项目前端地址: http://115.190.14.86/
- 📚 详细文档 :项目包含完整的部署指南和API文档
点击前端登录

点击游客登陆

点开侧边栏当前会话上面的使用教程

项目亮点
🔒 安全与认证
- 用 BCrypt 实现了密码加密存储 :使用 BCryptPasswordEncoder 进行不可逆哈希加密,自动加盐防止彩虹表攻击
- 用 JWT 实现了无状态认证 :基于HS256算法生成token,支持用户身份验证和权限控制
- 用 Redis 实现了token状态管理 :将用户登录状态存储在Redis中,支持主动失效控制
🚀 高并发与性能优化
- 用 Semaphore 实现了请求限流 :基于信号量机制,默认支持200并发请求,防止系统过载
- 用 Caffeine 实现了本地缓存 :缓存ReentrantLock对象,最大200个条目,48小时过期,提升锁获取性能
- 用自定义线程池实现了异步处理 :核心线程数为CPU核心数+1,最大线程数为CPU核心数/0.2,队列容量300
- 用 Redisson 实现了分布式锁 :基于Redis的分布式锁机制,支持集群环境下的并发控制
🛡️ 防刷与幂等控制
- 用 AOP+Redis 实现了幂等组件 :通过 @RepateExecuteLimit 注解,防止5秒内重复提交相同请求
- 用 布隆过滤器 实现了防刷机制 :基于Redisson的RBloomFilter,预期插入1000条数据,误判率0.01%
- 用本地锁+分布式锁实现了双重保障 :Caffeine本地锁+Redisson分布式锁,确保高并发下的数据一致性
🤖 AI集成与智能化
- 用 Spring AI 实现了多模型集成 :支持DeepSeek、阿里云通义千问、OpenAI等多种AI模型
- 用 Pinecone 实现了向量数据库 :1024维向量嵌入,支持RAG检索增强生成功能加粗样式
- 用Redis实现了对话记忆 存储对话历史,支持多轮对话上下文维护,最大保留30条记录
- 用 Advisor 模式实现了AI增强 :通过RequestResponseAdvisor接口扩展AI功能
📊 数据存储与缓存
- 用 PostgreSQL 实现了关系数据存储 :主数据库存储用户信息、对话记录等结构化数据
- 用 Redis 实现了分布式缓存 :Lettuce连接池配置,支持高并发访问
- 用 MyBatis Plus 实现了ORM映射 :简化数据库操作,提供Lambda查询支持
🌐 网络与通信
- 用 Filter 实现了请求拦截 :统一处理CORS、认证、限流等横切关注点
- 用 策略模式 实现了请求验证 :不同路径采用不同的验证策略,支持灵活扩展
- 用 ThreadLocal 实现了上下文传递 :在请求处理过程中传递用户信息等上下文数据
📁 文件处理
- 用 Apache PDFBox 实现了PDF解析 :支持PDF简历文件上传、内容提取和AI分析
- 用向量化技术实现了文档检索 :将 PDF内容向量化存储,支持语义搜索
🔧 系统监控与日志
- 用 Log4j2 实现了日志管理 :支持按日期滚动、压缩,便于问题排查
- 用 自定义异常处理 实现了统一错误响应 :BaseCode枚举定义错误码,统一异常处理机制
核心功能特性
🤖 多模型智能对话
- 多AI模型支持 :集成 DeepSeek、阿里云通义千问、OpenAI 等主流AI模型
- 流式响应 :实时返回AI回复,提升用户体验
- 对话记忆 :基于Redis的智能对话历史管理
- 上下文维护 :支持多轮对话,智能理解对话上下文
📄 AI驱动的简历分析系统
- 智能PDF解析 :使用Apache PDFBox精确提取简历内容
- AI评分系统 :基于AI模型对简历进行智能评分和分析
- 实时排行榜 :动态展示简历评分排名
- 向量化存储 :将简历内容转换为1024维向量,支持语义检索
🔍 RAG检索增强生成
- Pinecone向量数据库 :高性能向量存储和检索
- 语义搜索 :基于向量相似度的智能文档检索
- 增强回答 :结合检索到的相关信息生成更准确的回答
- 文档分块优化 :智能文档切分,提升检索精度
👤 企业级用户管理
- JWT认证 :安全的令牌认证机制
- BCrypt加密 :密码安全存储
- 权限控制 :细粒度的用户权限管理
- 布隆过滤器 :防止恶意注册和登录攻击
感谢收看
– 2025/7/26
更多推荐



所有评论(0)