引言

RAG(检索增强生成)是企业AI应用的基础,但很多企业的RAG效果不理想:

  • 检索不到相关文档(召回率低)
  • 检索到但不相关(准确率低)
  • 答案质量差(生成效果不好)

极智词元在优化数百家企业RAG系统的过程中,总结了10招实用技巧。


一、先看一组数据(优化前后对比)

极智词元某客户优化前后:

指标 优化前 优化后 提升
召回率(Top-5) 60% 90% +30%
准确率 70% 95% +25%
答案满意度 60分 90分 +30分

二、第1招:文档预处理(最基础也最重要)

1.1 为什么需要预处理?

原始文档问题:

  • 格式混乱(Word、PDF、PPT混在一起)
  • 有很多噪音(广告、页眉页脚、重复内容)
  • 结构不清晰(没有标题、分节)

1.2 极智词元文档预处理流程

原始文档
  │
  ▼
文档解析(提取文本)
  │
  ▼
格式规范化(统一格式)
  │
  ▼
噪音去除(去广告、去页眉页脚、去重)
  │
  ▼
结构解析(提取标题、分节)
  │
  ▼
预处理完成

1.3 代码示例(极智词元简化版)

from langchain.document_loaders import (
    PyPDFLoader,
    Docx2txtLoader,
    TextLoader
)
from langchain.text_splitter import RecursiveCharacterTextSplitter

def load_and_preprocess_document(file_path):
    # 1. 加载文档
    if file_path.endswith('.pdf'):
        loader = PyPDFLoader(file_path)
    elif file_path.endswith('.docx'):
        loader = Docx2txtLoader(file_path)
    else:
        loader = TextLoader(file_path)
    
    documents = loader.load()
    
    # 2. 分块
    text_splitter = RecursiveCharacterTextSplitter(
        chunk_size=1000,
        chunk_overlap=200
    )
    
    chunks = text_splitter.split_documents(documents)
    
    return chunks

三、第2招:分块策略优化(不是越大越好,也不是越小越好)

2.1 分块策略对比

分块大小 优点 缺点 适用场景
小(<500) 检索精准 上下文不足 FAQ、简单问答
中(500-1500) 平衡 平衡 通用场景
大(>1500) 上下文完整 检索可能不相关 长文档、摘要

2.2 极智词元推荐分块策略

text_splitter = RecursiveCharacterTextSplitter(
    chunk_size=1000,    # 推荐:1000
    chunk_overlap=200,  # 推荐:20%重叠
    separators=["\n\n", "\n", "。", "!", "?", " ", ""],
)

四、第3招:向量化模型选择(中文 vs 英文 vs 多语言)

3.1 向量化模型对比

模型 语言 维度 特点
OpenAda 中英 1536 质量高,推荐
Qwen-Embedding 中英 1536 阿里开源,中文好
BGE 中英 1024 智源开源,中文好

3.2 极智词元建议

  • 中文为主:Qwen-Embedding / BGE
  • 中英混合:OpenAda / Qwen-Embedding
  • 英文为主:OpenAda

五、第4招:混合检索(语义检索 + 关键词检索)

4.1 为什么混合检索?

语义检索问题:

  • 对专有名词、精确匹配可能不如关键词检索
  • 某些场景召回率不足

关键词检索问题:

  • 不理解语义
  • 同义词、变体匹配不好

4.2 极智词元混合检索方案

用户提问
  │
  ├──────────────┐
  │              │
  ▼              ▼
语义检索      关键词检索
  │              │
  └──────┬───────┘
         │
         ▼
结果融合(Rerank)
         │
         ▼
返回Top-K文档

六、第5-10招:快速一览

招式 说明 预期提升
第5招 重排序(Rerank) 准确率+10%
第6招 查询扩展(Query Expansion) 召回率+15%
第7招 提示词工程(Prompt Engineering) 答案质量+20%
第8招 元数据过滤(Metadata Filter) 准确率+10%
第9招 缓存优化(Cache) 速度+50%
第10招 反馈闭环(Feedback Loop) 持续优化

总结

企业级RAG系统优化10招:

  1. 文档预处理(基础)
  2. 分块策略优化(平衡)
  3. 向量化模型选择(合适的)
  4. 混合检索(语义+关键词)
  5. 重排序(Rerank)
  6. 查询扩展
  7. 提示词工程
  8. 元数据过滤
  9. 缓存优化
  10. 反馈闭环

想让你的RAG系统效果更好?联系极智词元!


作者: Mia
极智词元首席创意官
专注于企业级RAG系统优化

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐