Self-Correcting RAG: Enhancing Faithfulness via MMKP Context Selection and NLI-Guided MCTS

arXiv cs.CL / 4/14/2026

📰 NewsIdeas & Deep AnalysisModels & Research

Key Points

  • The paper proposes “Self-Correcting RAG,” a unified framework that treats retrieval and generation as constrained optimization/path planning to improve complex reasoning with RAG.
  • For context selection, it introduces a multi-dimensional multiple-choice knapsack problem (MMKP) formulation to increase information density and reduce redundancy within a fixed token budget.
  • For answer generation, it adds an NLI-guided Monte Carlo Tree Search (MCTS) at test time to explore reasoning trajectories and check faithfulness, aiming to reduce hallucinations.
  • Experiments on six multi-hop QA and fact-checking datasets show significant gains in reasoning accuracy and effective hallucination reduction versus strong baselines.
  • The authors provide open-source code at the linked GitHub repository for reproducing and testing the approach.

Abstract

Retrieval-augmented generation (RAG) substantially extends the knowledge boundary of large language models. However, it still faces two major challenges when handling complex reasoning tasks: low context utilization and frequent hallucinations. To address these issues, we propose Self-Correcting RAG, a unified framework that reformulates retrieval and generation as constrained optimization and path planning. On the input side, we move beyond traditional greedy retrieval and, for the first time, formalize context selection as a multi-dimensional multiple-choice knapsack problem (MMKP), thereby maximizing information density and removing redundancy under a strict token budget. On the output side, we introduce a natural language inference (NLI)-guided Monte Carlo Tree Search (MCTS) mechanism, which leverages test-time compute to dynamically explore reasoning trajectories and validate the faithfulness of generated answers. Experiments on six multi-hop question answering and fact-checking datasets demonstrate that our method significantly improves reasoning accuracy on complex queries while effectively reducing hallucinations, outperforming strong existing baselines.Our code is available at https://github.com/xjiacs/Self-Correcting-RAG .