Prompt Engineering Guide: Mastering LLM Prompts for Efficient Natural Language Generation