code: # Required Environment Variables: OPENAI_API_KEY
  # Required TavilyAI API KEY for web searches - https://tavily.com/
  from llama_index.core import SimpleDirectoryReader
  from llama_index.packs.corrective_rag import CorrectiveRAGPack
  
  # load documents
  documents = SimpleDirectoryReader("./data").load_data()
  
  # uses the LLM to extract propositions from every document/node!
  corrective_rag = CorrectiveRAGPack(documents, tavily_ai_apikey="<tavily_ai_apikey>")
  
  # run the pack
  response = corrective_rag.run("<Query>")
  print(response)
  
apis: llama_index.packs.corrective_rag.CorrectiveRAGPack llama_index.core.SimpleDirectoryReader
extract_api: [((387, 454), 'llama_index.packs.corrective_rag.CorrectiveRAGPack', 'CorrectiveRAGPack', (['documents'], {'tavily_ai_apikey': '"""<tavily_ai_apikey>"""'}), "(documents, tavily_ai_apikey='<tavily_ai_apikey>')\n", (404, 454), False, 'from llama_index.packs.corrective_rag import CorrectiveRAGPack\n'), ((260, 291), 'llama_index.core.SimpleDirectoryReader', 'SimpleDirectoryReader', (['"""./data"""'], {}), "('./data')\n", (281, 291), False, 'from llama_index.core import SimpleDirectoryReader\n')]