这是「知域引擎」从0到1的完整复盘。一个传统C/C++工程师,为什么要做企业AI知识库?技术架构怎么设计的?一个人怎么搞定前后端?踩了哪些坑?全部写在这里。
一、为什么做这个产品
我是一个传统的C/C++后端工程师,日常工作就是跟流媒体、模型推理、日志排查打交道。
说实话,痛苦的。
每天到工位第一件事,打开日志,开始排查。这个功能怎么又不工作了?那个问题之前不是处理过吗,怎么又来了?翻遍聊天记录、翻遍本地文档、回忆三个月前的处理方式——然后花两个小时定位一个重复出现过无数次的问题。
更让我难受的不是花时间,而是这种工作没有任何积累。你今天花两小时解决了一个问题,下个月同样的问题换个人来问,你又得花两小时。个人没有成长,经验没有沉淀,精力全耗在重复劳动上。
直到有一天我突然想:我平时写的技术文档、FAQ、SOP流程文档,不就是现成的知识库吗?如果能用AI把这些东西"喂"进去,让遇到问题的人直接向它提问——
不是我回答问题,是我的知识库回答他们的问题。
第一层:先检索本地的技术文档,看研发部门之前有没有遇到过类似问题。 第二层:根据文档内容,针对性地给出解决方案。 第三层:把权限放开,其他部门也能用。
这就是知域引擎的起点——让我自己从重复劳动里解脱出来。
二、技术架构:终于能聊清楚"分层"了
说来惭愧。
之前去面试,面试官问:"你们产品的技术架构是怎么分层的?"
我愣了半天。因为我做C++后端,主函数起来之后,一边做流媒体的推拉流,一边加载模型做核心业务流程编排。至于其他层?都交给别的部门了。我脑子里没有"分层"这个概念,觉得软件产品好像就是揉在一起的。
直到自己独立做了这个从前端到后端的完整项目——现在我可以很清晰地聊技术架构了。
知域引擎采用的是业界主流的RAG(检索增强生成)方案,技术架构分为四层,自上而下:
┌─────────────────────────────────────────┐
│ API 路由层 (HTTP/REST) │
│ 请求验证 · 参数校验 · 错误处理 · 鉴权 │
├─────────────────────────────────────────┤
│ 服务层 (Service Layer) │
│ 业务逻辑 · 事务管理 · 服务编排 · 工作流 │
├─────────────────────────────────────────┤
│ 核心层 (Core Layer) │
│ 文档解析 · 向量化 · 检索召回 · 模型推理 │
├─────────────────────────────────────────┤
│ 基础设施层 (Infrastructure) │
│ PostgreSQL · Qdrant · Redis · 文件存储 │
└─────────────────────────────────────────┘
API路由层: 所有HTTP请求的入口。验证身份、检查参数、处理异常。这层不碰业务逻辑,只管"谁来了、带什么、能不能进"。
服务层: 业务的核心编排。比如"上传文档→解析→分块→向量化→入库",这一串动作的编排逻辑在这里完成。事务管理也在这层。
核心层: 真正跟AI相关的部分。文档解析引擎、向量化、检索召回策略、大模型推理——这层的代码决定了"AI答得好不好"。
基础设施层: 数据库(PostgreSQL)、向量数据库(Qdrant)、缓存(Redis)、文件存储。这层是地基。
做前后的感受就是——当你一个人从API写到数据库再写到前端,分层不是设计出来的,是自然长出来的。 代码混在一起你根本维护不下去,自然就会分层了。
三、一个人怎么搞定前后端 + 运维 + 文档
实话实说,这么大体量的项目,前端和后端都有我的技术短板。
但2026年了,一个人不等于一个人。
我日常使用的AI编程工具:Kiro、Trae、Cursor、Claude Code——这些工具轮换着用,各有各的长处。前端组件不会写?描述清楚需求,AI帮你生成。运维脚本忘了怎么写?AI直接给可运行的。
(这里埋个坑,具体怎么用这些工具做全栈开发的,需要的在评论区留言,我单独出一篇教程。)
当然,AI工具不是万能的。它写出来的代码你需要能看懂、能判断对错。这也是为什么前面的技术架构自己必须理解透彻——AI是加速器,但方向盘得自己握。
四、踩过的坑
坑1:配置文件地狱
一开始配置文件散落在各个模块里:config.py、settings.py、.env、application.yml……改个数据库地址要翻三个文件,经常改了A忘了B,服务起来就报错。
解法: 全局配置只保留一份。所有模块从同一个入口读配置。环境差异用环境变量覆盖,不搞多份配置文件。
坑2:版本号混乱
手动改版本号。发版前手忙脚乱,经常忘了改某个地方的版本号。然后客户说"我这个版本有问题",我查了半天——版本号对不上。
解法: CI自动化规范版本发布流程。版本号由CI自动注入,拒绝手动修改。发布时打tag,版本号从tag自动读取。杜绝因为手动改版本号导致的一切问题。
坑3:模型加载问题
模型加载失败、显存不够、CUDA版本不匹配——这些问题每个都踩过。现在的经验是:环境隔离用Docker,模型加载做成可配置的插件机制,换模型不需要改代码。
五、现状和后续计划
目前知域引擎的MVP阶段已经完成,核心功能包括:
- 多格式文档上传解析(PDF / Word / Markdown / HTML)
- RAG驱动的智能问答,支持答案溯源
- 多租户架构,不同团队数据隔离
- 私有部署,数据不出门
后续的计划:
- 完善文档解析引擎(复杂表格/扫描件)
- 工作流编排(不仅仅是问答,要做自动化流程)
- 更多的模型适配和第三方集成
有需要的小伙伴可以加入内测,让我们一起把这个产品做得更好。
知域引擎 — 上传文档,AI秒答。企业级AI知识库,开箱即用。
如果这篇文章对你有帮助,欢迎点赞收藏。关于技术架构、AI工具使用或者踩坑细节,评论区见。