ReFactX: Scalable Reasoning with Reliable Facts via Constrained Generation
This addresses the problem of unreliable responses in LLMs for users needing accurate information, offering a scalable and efficient alternative to existing methods like RAG, though it is incremental in improving knowledge integration.
The paper tackles knowledge gaps and hallucinations in Large Language Models by introducing ReFactX, a method that uses constrained generation with a prefix-tree index to access external knowledge without retrievers or auxiliary models, achieving effective results on Question Answering with scalability to 800 million facts and minimal overhead.
Knowledge gaps and hallucinations are persistent challenges for Large Language Models (LLMs), which generate unreliable responses when lacking the necessary information to fulfill user instructions. Existing approaches, such as Retrieval-Augmented Generation (RAG) and tool use, aim to address these issues by incorporating external knowledge. Yet, they rely on additional models or services, resulting in complex pipelines, potential error propagation, and often requiring the model to process a large number of tokens. In this paper, we present a scalable method that enables LLMs to access external knowledge without depending on retrievers or auxiliary models. Our approach uses constrained generation with a pre-built prefix-tree index. Triples from a Knowledge Graph are verbalized in textual facts, tokenized, and indexed in a prefix tree for efficient access. During inference, to acquire external knowledge, the LLM generates facts with constrained generation which allows only sequences of tokens that form an existing fact. We evaluate our proposal on Question Answering and show that it scales to large knowledge bases (800 million facts), adapts to domain-specific data, and achieves effective results. These gains come with minimal generation-time overhead. ReFactX code is available at https://github.com/rpo19/ReFactX.