blog-hexo/source/_posts/AI/rag.md
2024-03-28 12:11:12 +08:00

43 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: RAG知识库召回率
categories:
- AI
status: done
abbrlink: 21037
---
# 通用的RAG方案的召回率
不一定召回率越高越好,对于准确性也需要考虑,通用的召回率大概在`70%`,不论是`dify`还是`fastgpt`,对于生产场景,要求起码到`90%`的水平
## 意图分类
类似 `xxx企业的董事长是谁`,一定不能打错,类似`QA`,上一代的客服系统必备的
针对有明确答案的召回一般都是比较准确的,但是针对有日期、数字类的一般效果会非常不好,可以考虑采用`nl2sql`的方案,使用`fine-tuning`,能够做到召回率`90%`,有专门的模型针对这块,例如微软的`RAT-SQL`模型。
针对`excel`类型的文件,直接把数据存到一张`宽表`中,不要跨表,降低复杂度。针对`nl2sql`的开源模型的能力基本都是`单表`,基本可以达到预期
针对某些场景例如`2021年的xxxx`,同样的`2022年的xxxx`也发生了,使用`embedding`容易给错误召回的,而`ES`的效果会更好。相当于通过从用户的问题中,捕捉关键词,然后通过这些关键词去库里召回。
针对`LLM`模型来说,数据治理变的很重要,在数据切分的过程中,需要符合人的逻辑去`分词`。按照人的逻辑,例如:表格、章节、目录……
## 分词
`chunk`的`size`越大,召回越少
## embedding
`embedding方案`可以考虑引入`link memory`,可以提高`10%-20%`,在医疗文献领域,根据参考材料写综述是非常专业的。
- 文档切分是浅层信息类似chatPDF数据中加入了总结、归纳的内容
- 大模型生成摘要,总结上下文,再进行检索。
# 如何提升召回率
# embedding哪个算法好
# 国内知识库方案哪些底座比较好
# RAG的发展方向