Corrective Retrieval Augmented Generation (CRAG) is proposed to enhance the robustness of retrieval-augmented generation (RAG) by addressing the issue of inaccurate retrieval. CRAG introduces a lightweight retrieval evaluator to assess the quality of retrieved documents and determine whether they are correct, incorrect, or ambiguous. Based on this assessment, different knowledge retrieval actions are triggered. For correct documents, knowledge refinement is applied to extract key information. For incorrect documents, web searches are used to obtain complementary knowledge. For ambiguous cases, both internal and external knowledge are combined. CRAG is designed to be plug-and-play and can be seamlessly integrated with various RAG-based approaches. Experiments on four datasets show that CRAG significantly improves the performance of RAG-based methods, demonstrating its adaptability and generalizability across short- and long-form generation tasks. The retrieval evaluator is fine-tuned using existing datasets to determine the relevance of retrieved documents. A decompose-then-recompose algorithm is used to filter and refine retrieved information. Web searches are integrated to enhance the retrieval results. Ablation studies show that each component of CRAG contributes to improving the robustness of generation. The results indicate that CRAG outperforms existing RAG approaches in terms of accuracy and robustness, especially in scenarios where retrieval performance is suboptimal. The method is also flexible in replacing underlying LLM generators and is effective across various generation tasks. Limitations include the need for further study on detecting and correcting wrong knowledge and potential biases from web searches. Future work will focus on improving retrieval augmentation methods.Corrective Retrieval Augmented Generation (CRAG) is proposed to enhance the robustness of retrieval-augmented generation (RAG) by addressing the issue of inaccurate retrieval. CRAG introduces a lightweight retrieval evaluator to assess the quality of retrieved documents and determine whether they are correct, incorrect, or ambiguous. Based on this assessment, different knowledge retrieval actions are triggered. For correct documents, knowledge refinement is applied to extract key information. For incorrect documents, web searches are used to obtain complementary knowledge. For ambiguous cases, both internal and external knowledge are combined. CRAG is designed to be plug-and-play and can be seamlessly integrated with various RAG-based approaches. Experiments on four datasets show that CRAG significantly improves the performance of RAG-based methods, demonstrating its adaptability and generalizability across short- and long-form generation tasks. The retrieval evaluator is fine-tuned using existing datasets to determine the relevance of retrieved documents. A decompose-then-recompose algorithm is used to filter and refine retrieved information. Web searches are integrated to enhance the retrieval results. Ablation studies show that each component of CRAG contributes to improving the robustness of generation. The results indicate that CRAG outperforms existing RAG approaches in terms of accuracy and robustness, especially in scenarios where retrieval performance is suboptimal. The method is also flexible in replacing underlying LLM generators and is effective across various generation tasks. Limitations include the need for further study on detecting and correcting wrong knowledge and potential biases from web searches. Future work will focus on improving retrieval augmentation methods.