In recent years, large language models (LLMs) have seen rapid advancements,
significantly impacting various fields such as computer vision, natural
language processing, and software engineering. These LLMs, exemplified by
OpenAI's ChatGPT, have revolutionized the way we approach language
understanding and generation tasks. However, in contrast to traditional
software development practices, LLM development introduces new challenges for
AI developers in design, implementation, and deployment. These challenges span
different areas (such as prompts, APIs, and plugins), requiring developers to
navigate unique methodologies and considerations specific to LLM application
development. Despite the profound influence of LLMs, to the best of our
knowledge, these challenges have not been thoroughly investigated in previous
empirical studies. To fill this gap, we present the first comprehensive study
on understanding the challenges faced by LLM developers. Specifically, we crawl
and analyze 29,057 relevant questions from a popular OpenAI developer forum. We
first examine their popularity and difficulty. After manually analyzing 2,364
sampled questions, we construct a taxonomy of challenges faced by LLM
developers. Based on this taxonomy, we summarize a set of findings and
actionable implications for LLM-related stakeholders, including developers and
providers (especially the OpenAI organization).