Skip to content
Back to the collection

RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval

Parth Sarthi, Salman Abdullah, Aditi Tuli

Show all 6 authors

Shubh Khanna, Anna Goldie, Christopher D. Manning

2024 · arXiv

Read the paper
HN score
0
Mentions
7
Readers
7
Months
3
What’s in a score?

From the abstract

Retrieval-augmented language models can better adapt to changes in world state and incorporate long-tail knowledge. However, most existing methods retrieve only short contiguous chunks from a retrieval corpus, limiting holistic understanding of the overall document context. We introduce the novel approach of recursively embedding, clustering, and summarizing chunks of text, constructing a tree with differing levels of summarization from the bottom up. At inference time, our RAPTOR model retrieves from this tree, integrating information across lengthy documents at different levels of abstraction. Controlled experiments show that retrieval with recursive summaries offers significant improvements over traditional retrieval-augmented LMs on several tasks. On question-answering tasks that involve complex, multi-step reasoning, we show state-of-the-art results; for example, by coupling RAPTOR retrieval with the use of GPT-4, we can improve the best performance on the QuALITY benchmark by 20% in absolute accuracy.

Metadata: arXiv. Abstracts retain their original authors’ rights.

In the conversation

Original HN comments, with labels from simple text rules. A label describes the whole comment and may miss context or irony. Read the discussion to make up your own mind. About the labels

7 selected excerpts · 7 total mentions

santiagobasulto
Neutral mention · rule
These are all "techniques" on top of the foundations of RAG. It's similar to "Chain of Thought" in prompt engineering. You have an underlying technology, and then come up with techniques/frameworks on top. What MVC was for Web dev +15 years ago. RAPTOR for example is a technique that groups and clusters documents together, summarizes them, and creates embeddings defining a sort of a Tree. Paper: https://arxiv.org/html/2401.18059v1 Agentic RAG is creating an agent that can decide to augment "conversations" (or other LLM tools) with RAG searches and analyze its relevance. Pretty useful, but hard to implement right. You can google the others, they're all more or less these "techniques" to improve an old-fashioned RAG search.
williamcotton
Neutral mention · rule
HyDE: Hypothetical Document Embeddings [1] RAGAS: RAG Assessment [2] RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval [3] Self-RAG: Self-Reflective Retrieval-Augmented Generation [4] Agentic RAG: Agentic Retrieval-Augmented Generation [5] GraphRAG: Graph Retrieval-Augmented Generation [6] [1] https://docs.haystack.deepset.ai/docs/hypothetical-document-... [2] https://docs.ragas.io/en/stable/ [3] https://arxiv.org/html/2401.18059v1 [4] https://selfrag.github.io [5] https://langchain-ai.github.io/langgraph/tutorials/rag/langg... [6] https://www.microsoft.com/en-us/research/blog/graphrag-unloc...
newpeak
Neutral mention · rule
Tagging each paragraph is not a good approach. Instead, using LLM to generate a summary based on the clustering of paragraphs could be a good alternative. That's what RAPTOR(https://arxiv.org/html/2401.18059v1) has suggested. Regarding to reranker, it's a pure dynamic solution, which is different with re-chunking which requires all data to be reindexed. Comparing two paragraphs, in most cases, it's based on embedding, which means each paragraph will correspond to a single embedding. So comparing them does not take words into account. However, if you adopts a hybrid search which will use full text search as another kind of recall approach, it will take the words into ranking consideration, in that case, the scores are computed based on the TF/IDF metrics within the paragraph, which is an accumulated score of all hitted tokens.
jimmySixDOF
Neutral mention · rule
I like this approach it treats the problem like a reranker it would be interesting to byo classifiers you could do the embedding to match the hierarchy approach which is a good idea it seems. Also the code for Raptor came out recently and they are showing gains through a tree/hierarchy too. https://arxiv.org/html/2401.18059v1
homarp
Neutral mention · rule
code from the paper https://arxiv.org/abs/2401.18059 It introduces a novel approach of recursively embedding, clustering, and summarizing chunks of text, constructing a tree with differing levels of summarization from the bottom up. At inference time, the model retrieves from this tree, integrating information across lengthy documents at different levels of abstraction.
CuriouslyC
Neutral mention · rule
That looks like it'd be an adjunct strategy IMO. In most cases you want to have the original source material on tap, it helps with explainability and citations. That being said, it seems that everyone working at the state of the art is thinking about using LLMs to summarize chunks, and summarize groups of chunks in a hierarchical manner. RAPTOR (https://arxiv.org/html/2401.18059v1) was just published and is close to SoTA, and from a quick read I can already think of several directions to improve it, and that's not to brag but more to say how fertile the field is.

Keep following the thread.

More in Language models

More from the same topics.