dspy

DSPy: Keeping Pipeline Promises Intact

7 minute read Published: 2025-10-08

Language-model pipelines began life as collections of personal tricks. A team shipped a feature only after someone produced the right paragraph of instructions, and that paragraph lived in a notebook or a mind. The knowledge was fragile, undocumented, and always under revision. The same model update that improved one part of the product dissolved carefully tuned behavior somewhere else. Nobody could say, in plain words, what the system actually believed about its task; the intent was smeared across lines of improvised text. You could change a single noun, merge two product features, or move to a different model provider and watch months of tacit knowledge evaporate overnight.

I remember the scramble when OpenAI announced in 2023 that the old text-davinci-003 completion model would be retired and teams needed to migrate to gpt-3.5-turbo-instruct. We had months of notice, yet the next few weeks were consumed by rewriting prompts and hoping our carefully tuned flows would survive the switch. The experience made it obvious how little of our understanding was written down anywhere.