A Survey On Large Language Models Applications Challenges Limitations And Practical Usage