AI-RAG 智能问答系统需求规格说明书
1 引言1.1 目的本文档基于 AI-RAG 系统当前实际实现编写描述系统功能需求、技术架构、接口规范与非功能需求作为开发验收与后续迭代的基准。1.2 系统定位AI-RAG 是一套基于检索增强生成Retrieval-Augmented Generation技术的企业知识库智能问答系统使用智谱 GLM-4.7 大模型提供自然语言问答服务支持多格式文档上传、自动解析、向量化检索、多轮对话与答案溯源。1.3 技术栈层级技术选型前端Vue 3 Element Plus Vue Router Pinia Vite后端FastAPI SQLAlchemy Pydantic Uvicorn关系数据库MySQL 8.0用户/知识库/文档/对话/配置缓存Redis会话管理、热点问答缓存、限流文档数据库MongoDB系统日志向量数据库ChromaDBembedded 嵌入式模式对象存储MinIO私有桶存储文件预签名URL访问大模型智谱 GLM-4.7OpenAI 兼容接口嵌入模型智谱 embedding-31024 维认证JWT RBAC 角色权限模型2 总体架构2.1 架构图┌──────────────────────────────────────────────────────────────┐ │ 前端 (Vue3 Element Plus) │ │ 登录 │ 智能问答 │ 知识库 │ 文档管理 │ 文件管理 │ 日志/配置/用户 │ └───────────────────────────┬──────────────────────────────────┘ │ HTTP / SSE (JWT) ┌───────────────────────────┴──────────────────────────────────┐ │ 后端 (FastAPI) │ │ ┌─────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ │ │ 认证JWT │ │ RBAC权限 │ │ 限流中间件│ │ CORS中间件 │ │ │ └─────────┘ └──────────┘ └──────────┘ └──────────────────┘ │ │ ┌──────────────────────────────────────────────────────┐ │ │ │ API 路由层 (api/v1) │ │ │ │ auth │ users │ knowledge-bases │ documents │ files │ │ │ │ chat │ configs │ logs │ │ │ └──────────────────────────────────────────────────────┘ │ │ ┌──────────────────────────────────────────────────────┐ │ │ │ 服务层 (services) │ │ │ │ user_service │ kb_service │ document_service │ │ │ │ file_service │ chat_service │ config_service │ log │ │ │ └──────────────────────────────────────────────────────┘ │ │ ┌──────────────────────────────────────────────────────┐ │ │ │ RAG 引擎层 (rag) │ │ │ │ document_loader │ indexer │ retriever │ │ │ │ embeddings │ llm │ chat_engine │ │ │ └──────────────────────────────────────────────────────┘ │ └──┬───────┬───────┬──────────┬──────────┬────────────────────┘ │ │ │ │ │ ┌──▼──┐ ┌─▼───┐ ┌▼────────┐ ┌▼────────┐ ┌▼──────────┐ │MySQL│ │Redis│ │MongoDB │ │ChromaDB │ │ MinIO │ │业务 │ │会话 │ │系统日志│ │向量存储 │ │文件存储 │ └─────┘ └─────┘ └────────┘ └────────┘ └──────────┘2.2 RAG 核心流程用户提问 ↓ ① 问题向量化 (embedding-3) ↓ ② ChromaDB 向量检索 (top_k5, 相似度阈值过滤) ↓ ③ 构建上下文 (context sources) ↓ ④ Prompt 工程 (系统提示 参考资料 对话历史 当前问题) ↓ ⑤ GLM-4.7 大模型生成回答 (支持 SSE 流式) ↓ ⑥ 返回回答 答案溯源 ↓ ⑦ 持久化消息记录到 MySQL

相关新闻

AI Agent工程化:从实验室原型到工业级产品的核心挑战与破局路径

AI Agent工程化:从实验室原型到工业级产品的核心挑战与破局路径

1. 从“玩具”到“工具”:我们离真正的AI Agent还有多远?最近和几个做AI应用的朋友聊天,大家不约而同地提到了一个词:瓶颈。不是算力不够,也不是模型不聪明,而是当我们试图把那些在Demo里跑得飞起的AI Agen…

2026/10/18 14:35:12 阅读更多 →
解决Python pip安装错误:externally-managed-environment的四种方案

解决Python pip安装错误:externally-managed-environment的四种方案

1. 问题引入:当“pip install”不再是万能钥匙 最近在给一台新装的Ubuntu 23.10或者最新的Fedora 39系统配置Python环境时,你是不是也遇到了这个让人有点懵的报错?满心欢喜地打开终端,敲下熟悉的 pip install requests &#xf…

2026/10/17 21:25:34 阅读更多 →
RTL8762CMF模组供应

RTL8762CMF模组供应

RTL8762CMF 蓝牙低功耗模组供应商金日泰电子本模组基于 RTL8762CMF 芯片打造,搭载 ARM Cortex-M4F 32 位处理器,主频 40MHz,内置 160KB RAM 与 512KB Flash,支持蓝牙 5.4 / BLE Mesh 1.1 组网,发射功率最高 7.5dBm&…

2026/10/18 14:35:38 阅读更多 →

最新新闻

JetBrains Air × Hermes Agent:ACP 连接配置与 Provider 过滤实战(TaoToken 统一 Key 接入)

JetBrains Air × Hermes Agent:ACP 连接配置与 Provider 过滤实战(TaoToken 统一 Key 接入)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 22:21:36 阅读更多 →
FRRouting Route Maps 路由策略实战:从原理到BGP选路控制

FRRouting Route Maps 路由策略实战:从原理到BGP选路控制

1. 路由策略的底层逻辑:为什么需要 Route Maps很多刚接触 FRRouting 的朋友会有一个疑问:我明明已经把 OSPF、BGP 都配通了,路由表里该有的条目也都有了,为什么还要折腾 Route Maps 这个东西?这个问题问得好&#xff0…

2026/10/18 22:21:36 阅读更多 →
免费文字转语音工具哪个好用?在线AI配音工具选择指南

免费文字转语音工具哪个好用?在线AI配音工具选择指南

做短视频、制作知识讲解内容,或者给图文作品添加旁白,经常会遇到一个问题:文字稿已经写好了,却不知道用什么工具转换成自然的语音。目前,文字转语音工具主要分为在线配音平台、视频剪辑软件和云端语音合成服务。它们的…

2026/10/18 22:21:36 阅读更多 →
查看`/proc/devices`,查看系统注册的块设备主设备号

查看`/proc/devices`,查看系统注册的块设备主设备号

cat /proc/devicesls -l /proc/devices cat /proc/devices Block devices: 259 blkext7 loop12 ramdisk31 mtdblock 179 mmcblkext:是内核扩展块设备,用来处理分区设备,现代内核用来支持超过传统限制的次设备号,一般不用手动操作,内核底层基础设施.loop:loop块设备 把普通文件…

2026/10/18 22:21:36 阅读更多 →
17节Blender萌系建模课:Q版头像+插画小屋+Lowpoly武器,新手快速入门

17节Blender萌系建模课:Q版头像+插画小屋+Lowpoly武器,新手快速入门

资源概述 这是一套围绕Blender 3D建模的系列教程,以萌系角色与场景设计为主线,通过自媒体渠道分享。资源整体为压缩包形式,内含17个视频章节以及一个名为“课程素材.exe”的配套素材包。教程从零基础宣传片引入,逐步展开各主题项…

2026/10/18 22:20:36 阅读更多 →
从调通API到构建AI Agent:Python实战物流调度助手全解析

从调通API到构建AI Agent:Python实战物流调度助手全解析

两个多月前,有位读者给我留言:“我已经能把大模型API调通了,但总觉得自己写的是聊天机器人,离AI Agent还差着十万八千里,到底差在哪?”这个问题最近被问得特别频繁,所以我决定用一整篇文章把它讲…

2026/10/18 22:20:36 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →