Generative AI: From Basics to Real-World Applications