本篇仍然是不依赖于LangChain等专用库,利用python基本库实现了三种查询转换技术
- 查询重写:使查询更加具体和详细,以提高搜索精度。
- 回退提示:生成更广泛的查询以检索有用的上下文信息。
- 子查询分解:将复杂查询分解为更简单的组件,以实现全面检索。
图 1:RAG 中的查询重写(红色虚线框)
查询转换技术通过优化输入查询的精准性、丰富性和适应性,使RAG系统能够:
5. 更高效地定位相关文档;
6. 覆盖更全面的信息维度;
7. 生成更符合用户意图的高质量回答。
这一技术是RAG系统实现“智能增强”的关键环节,尤其在处理开放域、多模态或高专业性的场景时不可或缺。
注意:
- 1 大家可以提前https://studio.nebius.com/注册一个api,然后获取一个api key,免费1刀,
其他平台薅羊毛也可以,很多可以免费薅羊毛!下文的结果是基于"BAAI/bge-en-icl"
- 2 请提前下载数据
- 3 提前准备好你的环境
- 4 本地嵌入模型搭建 基于本地的模型进行语义嵌入,可以利用FlagEmbedding,可以好好学习下,量大的话api的嵌入还是比较贵的哦!
文章目录
- 背景说明
- 1. **弥补用户查询与文档内容的语义鸿沟**
- 2. **应对复杂问题的多维度需求**
- 3. **提升检索效率与相关性**
- 4. **适应文档库的异构性**
- 5. **解决歧义与多义性问题**
- 实际案例