
In prompt engineering, instructions are written in natural languages, which are a lot more flexible than programming languages. Ambiguity causes frustration and even passionate hatred in developers (think dynamic typing in Python or JavaScript). Programming languages are “mostly” exact.

Challenges of productionizing prompt engineering The ambiguity of natural languagesįor most of the history of computers, engineers have written instructions in programming languages. ………… Control flows: sequential, parallel, if, for loop Applications that consist of multiple tasks ………… The impossibility of cost + latency analysis for LLMs Challenges of productionizing prompt engineering There has been so much written about LLMs, so feel free to skip any section you’re already familiar with. Part 3 covers some of the promising use cases that I’ve seen companies building on top of LLMs and how to construct them from smaller tasks.SQL executor, bash, web browsers, third-party APIs) for more complex and powerful applications. if statement, for loop) and incorporate tools (e.g. Part 2 discusses how to compose multiple tasks with control flows (e.g.Part 1 discusses the key challenges of productionizing LLM applications and the solutions that I’ve seen.LLM limitations are exacerbated by a lack of engineering rigor in prompt engineering, partially due to the ambiguous nature of natural languages, and partially due to the nascent nature of the field.It’s easy to make something cool with LLMs, but very hard to make something production-ready with them.After working with several companies who are working with LLM applications and personally going down a rabbit hole building my applications, I realized two things: A question that I’ve been asked a lot recently is how large language models (LLMs) will change machine learning workflows.
