项目经验:畜牧业智慧问数 AI 应用
项目角色: 技术负责人
项目周期: 4个月(已上线内测)
项目规模: 服务畜牧业从业人员,支撑自然语言问数、智能报表生成
一、项目背景
该项目是一套面向畜牧业垂直领域的 “问数”AI 应用系统,旨在解决传统数据查询依赖人工写 SQL、响应慢、门槛高的问题。系统允许用户通过 H5 前端以自然语言提问(如“2025 年江苏省生猪出栏量是多少”),后台通过工作流编排,自动完成知识检索、SQL 生成、数据查询与结果润色,最终将数据以口语化形式返回给用户,大幅降低了业务人员获取数据洞察的门槛。
二、核心技术架构:
项目采用 Spring Boot + Spring AI 作为主体框架,整合 阿里千问 大模型提供语义理解与生成能力;引入 RAGFlow 构建向量知识库,用于存储畜牧业专业术语、数据字典及历史政策文件;使用 LiteFlow 实现灵活的工作流编排引擎,支持可视化配置用户问数的处理链路;底层数据存储采用 MySQL 存放结构化畜牧业指标数据。
三、核心职责与技术实现:
1. 知识库构建与文档解析接入
设计并实现了多源文档解析管道,支持用户上传 PDF、Excel、Word 等格式的畜牧业报告。通过调用 RAGFlow 的解析接口,自动提取文档正文及表格内容,完成文本分块(Chunking)与向量化,存入向量知识库。
针对畜牧业数据字典的特殊性,我单独设计了“字段映射表”维护模块,将业务术语(如“出栏量”、“存栏量”、“能繁母猪”)与数据库实际字段名做映射,为后续精准的 Text-to-SQL 提供元数据支撑。
2. 基于 LiteFlow 的工作流编排引擎开发
我利用 LiteFlow 将用户的一次问数请求拆解为可插拔的多个节点(Node):检索节点 → 提示词构造节点 → AI 调用节点 → SQL 执行节点 → 结果封装节点。
我封装了统一的 Node 组件接口,使运营人员可在后台管理端通过拖拽方式调整工作流顺序或替换 AI 模型,实现了业务逻辑与代码的解耦,极大提升了系统的扩展性。