Understanding ChatGPT and Generative AI: Lessons in Natural Language Processing