← 返回文章列表

成长记录

WMS 智能仓储辅助决策系统:第一次把 AI 接进真实业务流程

这是一段把 AI 从聊天框推进到业务系统里的成长记录。

这个项目对我来说,不只是一个毕业设计演示项目。它更像是我第一次认真思考:AI 如果只停留在聊天框里,能做的事情其实很有限;只有接进真实的数据、权限、资料和业务流程里,它才开始像一个系统。

我做的是一个 WMS 智能仓储辅助决策系统。前端使用 Vue 3、Vite 和 Electron,后端使用 Spring Boot 3.4、Java 17 和 SQL Server。系统围绕仓储场景展开,核心目标是把库存预警、自然语言数据分析、资料增强问答和文档处理放到同一个业务闭环里。

从“能聊天”到“能处理业务”

一开始我对 AI 应用的理解比较简单:接一个模型接口,做一个对话页面,能问能答,好像就已经是 AI 项目了。

真正做 WMS 时,我才发现业务系统里的 AI 不是这样工作的。用户真正需要的不是一句泛泛的回答,而是:

  • 能不能登录后只看到自己权限范围内的数据;
  • 能不能上传业务资料,让 AI 回答时参考这些资料;
  • 能不能用自然语言问库存和销售问题,然后让系统查真实数据库;
  • 能不能看到低库存预警,而不是自己去翻表;
  • 能不能处理文档,提取内容,并把结果预览和下载出来。

所以这个项目慢慢从“智能对话”变成了“仓储辅助决策系统”。

我做了哪些能力

这个系统最后形成了几个主要功能区。

第一是账号和权限。系统支持管理员登录、修改密码、用户管理和登录态路由保护。公开注册是关闭的,普通账号由管理员创建。这让我开始意识到,哪怕是一个演示项目,只要涉及数据和后台,也不能绕开身份和权限。

第二是智能对话。对话支持流式返回,并且请求里带 Authorization 头。多会话可以本地保存,也能和后端同步。这个过程让我理解了前端状态、后端会话和模型响应之间的关系。

第三是资料增强问答。用户可以上传、查看、删除知识资料,AI 回答时优先参考当前账号上传的资料。这一步让我从“直接问模型”走到了“给模型补上下文”。

第四是分析助手。用户可以用自然语言提出库存或销售分析问题,后端通过只读 SQL 工具查询真实数据库,再返回 SQL 明细和分析结论。这是我最有成长感的一部分,因为它让我看到 AI 和数据库结合后,能从“回答问题”变成“分析数据”。

第五是库存洞察和文档处理。库存洞察负责低库存预警和商品查询,文档处理负责上传文档、提取文本、预览结果和下载。这些功能让系统更像一个完整的业务工具,而不是一个单独的 AI 页面。

最重要的变化

做这个项目以前,我更关注页面能不能跑起来、接口能不能返回结果。做完以后,我开始关注系统之间的连接。

前端不只是展示页面,它要处理登录态、路由保护、会话状态、资料上传、结果预览。后端不只是转发模型请求,它还要处理认证、数据库、文档、SQL 安全和业务接口。数据库也不只是存数据,它会直接影响 AI 能分析什么、能不能给出可信结论。

这个项目让我明白,AI 项目真正难的地方不一定是调用模型,而是把模型放进一个可靠的工作流里。

我学到的东西

我学到的第一件事,是不要把 AI 功能孤立出来看。一个好用的 AI 系统,应该知道用户是谁、有什么数据、能访问哪些资料、当前问题属于哪个业务场景。

第二件事,是业务系统要有边界。比如 SQL 分析只能做只读查询,API Key 不能写进代码和提交记录,模型配置要可以在系统配置里维护。这些细节不炫技,但它们决定系统能不能继续往下走。

第三件事,是演示也要有主线。这个项目的演示主线可以从管理员登录开始,再到资料上传、资料问答、库存洞察、分析助手,最后展示系统配置和文档处理。这样别人看到的不是一堆功能,而是一条完整的业务流程。

回头看

现在回头看,这个项目还有很多可以继续打磨的地方,比如权限颗粒度、SQL 安全策略、资料检索质量、文档处理能力和部署细节。

但它对我最大的意义,是让我第一次把 AI、数据库、后台、前端和业务流程放到一起考虑。它让我从“做一个能对话的页面”,往“做一个能解决业务问题的系统”走了一步。