
回复
之前笔者曾介绍过Anthropic研究团队提出的一种能够显著增强RAG性能的方法—Contextual RAG(Anthropic提出Contextual Retrieval让RAG再进化,大幅降低检索失败率),虽然有详细的介绍,但并没有披露完整的实现源码。不过,这一缺憾被Together计算团队弥补,他们在GitHub 上发布了该技术的开源参考实现—Open Contextual RAG。
Contextual RAG 是一种先进的 chunk 增强技术,它巧妙地利用LLM,比如claude,为每个文档片段赋予更丰富的上下文。想象一下,如果我们的大脑在回忆某件事时,不仅能想起事件本身,还能自动联想到相关的前因后果,这就是 Contextual RAG 试图为LLM 赋予的能力。这种方法的实现显著提高了文档检索的准确性,联合重排序(reranking)使用,可以将检索准确率提升高达 67%。
Contextual RAG 的工作流程如下:
在Open Contextual RAG具体细节实现:
1. 数据处理和分块
至此,有了向量检索的方法。
至此,有了文本(bm25)检索的方法。
将重排后的的 3 个chunks传递给LLM以获得最终答案。
通过together团队的详细实现,我们清楚的了解到Contextual RAG的具体实现,这使得我们可以无痛的移植到我们的系统中,快速提升RAG性能。
本文转载自 AI工程化,作者: ully