请描述你在 AI 超级智能体项目中构建 RAG 知识库的具体做法,包括文档处理、向量化、存储和检索等关键步骤。
考察说明
考查候选人在实际项目中应用 RAG 构建知识库的工程实践能力。
回答思路
- 【回答框架 1】RAG 知识库构建通常包括数据采集、文档解析、分块、向量化、索引存储和检索生成几个环节。数据采集应覆盖多格式文档,如 PDF、Word、HTML 等,并考虑数据清洗和去重。
- 【回答框架 2】文档解析后需进行分块,常用策略有固定大小分块、基于句子的分块或按语义段落分块。分块大小需根据检索效果和模型上下文长度调整,一般几百到上千字符。
- 【回答框架 3】向量化采用嵌入模型,如 OpenAI 的 text-embedding-ada-002 或开源的 BGE、M3E 等。需要为每个块生成向量,并考虑使用向量数据库如 Milvus、Faiss 或 Elasticsearch 的向量检索插件。
- 【回答框架 4】检索时采用混合检索策略,结合向量相似度和关键词匹配(如 BM25),以提升召回率和准确率。必要时可加入重排模型(Reranker)优化结果。
- 【回答框架 5】检索到的相关内容与用户问题一起组成提示词,输入大语言模型生成回答。整体流程需评估响应质量和延迟,根据实际情况调优分块、嵌入模型和检索参数。
- 【关键点 1】RAG 核心是将外部知识向量化并存储,检索增强生成。
- 【关键点 2】分块策略和分块大小直接影响检索质量,需要实验调优。
- 【关键点 3】混合检索(向量+BM25)通常优于单一向量检索。
- 【关键点 4】重排(Rerank)可以进一步提升检索结果相关性。
- 【关键点 5】构建流程需考虑数据增量更新和版本管理。
- 【易错点 1】向量检索在背景噪声大时可能召回不准确,纯粹依赖相似度可能导致语义偏差。
- 【易错点 2】分块过小可能丢失上下文,过大则引入噪声并增加计算成本。
- 【易错点 3】混合检索不加权重调优可能导致结果不稳定,需要根据业务场景调整。