首页/AI/RAG 与向量库速查/上下文压缩与提取

上下文压缩与提取

把检索片段压缩成与问题相关的要点再进提示词:可用抽取式压缩(按句选取相关句)或 LLM 摘要压缩;目的是降低 token 消耗与噪声干扰,但要防止压缩过程丢失关键数字与条件。

RAG 与向量库速查AI更新于 2026-10-12

抽取式压缩示意

抽取式压缩示意
from sentence_transformers import CrossEncoder

scorer = CrossEncoder("BAAI/bge-reranker-base")
sentences = split_sentences(chunk.text)
pairs = [(query, s) for s in sentences]
scores = scorer.predict(pairs)
keep = [s for s, sc in zip(sentences, scores) if sc >= THRESHOLD]
compressed = " ".join(keep)
压缩后再让生成模型引用原文页码/段落时,要保留片段 id 与顺序,否则引用无法回溯。

易错点

  • 压缩阈值过松导致关键整句被丢弃,答案缺条件
  • 压缩输出未保留来源 id,引用标注无法定位原文

数据来源与参考

  • LangChain 官方文档(Contextual Compression)
  • LlamaIndex 官方文档(SentenceWindow / 节点后处理)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌