Minimizing Factual Inconsistency and Hallucination in Large Language Models