DSPy
Ranked 5 of 28 agent frameworks by recommenders
People use it to structure LLM calls as typed programs and optimize prompts. Critics say its value depends on a good automated metric and up-front setup.
People use it to structure LLM calls as typed programs and optimize prompts. Critics say its value depends on a good automated metric and up-front setup.
48 people gave an opinion
- recommend it
- 29
- criticize it
- 19
- approval share
- 60%
Recommended in 8 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: not recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: not recommended
- May 2026: recommended
- June 2026: not recommended
- July 2026: recommended
- August 2026: not recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 29 people recommend itNeeds 10 or more, met.
- 1.5 recommenders for every criticNeeds 2 to 1 or better, not met.
- Recommended in 8 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Typed structured LLM calls
“I enjoy working with it. I mostly just use it to define the input and outputs more programmatically compared to raw prompts.”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “They allow you to structure LLM calls within the broader control flow of the program, with typed inputs and outputs.”
Comment from 7 May 2026 in “Agents need control flow, not more prompts” “I had better results (compared to LlamaIndex) with structuring unstructured data just by putting it in DSPy models”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” - Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?”
Prompt optimization with metrics
“I like to look at it like the MVC for the Web.”
Comment from 19 Dec 2025 in “Show HN: Stepped Actions – distributed workflow orchestration for Rails” “optimize your module for any given LLM (based on sample data and metrics)”
Comment from 14 Nov 2025 in “AI World Clocks” “DSPy's real value is in its prompt optimization framework”
Comment from 25 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” Modular, well-tested, hackable design
“DSPy.rb shines when you need to decompose into multiple specialized modules with different concerns.”
Comment from 26 Dec 2025 in “Building an AI agent inside a 7-year-old Rails monolith” “such a hackable, usable framework”
Comment from 16 Dec 2025 in “Achieving 20%+ improvement in structured extraction using DSPy and GEPA” “they are well tested and reliable”
Comment from 3 Nov 2025 in “Context engineering”
What people warn about
Each mark is one comment
Needs hand-labeled data and metrics
“Dspy often does not really show it's benefit until you have a good 'automated metric', which can be difficult to get to.”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “It's slow: you first have to get acquainted with DSPY and then get hand-labeled data for prompt optimization.”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “You need to do some up-front work to set up some of the optimizers which a lot of people are averse to.”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” Python-only, awkward in non-Python stacks
“we had to stand up an entire new repo in Python for it”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “We had to stand up an entire new repo in Python for it, because the vast majority of our code is not Python.”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “who the hell puts Python in production just to make some API calls?”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” Little value for the added friction
“Dspy does not solve an immediate problem, which is why many feel this way”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “it literally gave me nothing of added value in practice but a lot of friction when i needed precise control over the context”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?” “layers on layer on top of the base LLM calls with not so much to show for it”
Comment from 23 Mar 2026 in “If Dspy is so great, why isn't anyone using it?”
Other agent frameworks people recommend
The four most recommended other agent frameworks, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| Claude Agent SDK | 36 | 25 | 59% | 11 | — | — |
| LangChain | 32 | 79 | 29% | 10 | 1 yr3 owners | — |
| Mastra | 32 | 3 | 91% | 10 | — | Approved |
| LangGraph | 31 | 23 | 57% | 12 | — | — |
| DSPyThis page | 29 | 19 | 60% | 8 | — | — |
What people said
40 of the 63 comments that mention it, newest first. Each links to the original comment.
“I said "techniques in DSPy", your agentic workflows are already using them.”
“Techniques in DSPy are still extremely valuable.”
“DSPy has great prompt engineering constructs it ships with.”
“They allow you to structure LLM calls within the broader control flow of the program, with typed inputs and outputs.”
“DSPy's real value is in its prompt optimization framework”
“It's clearly built from first principles and the ideas from it will outlast the framework itself.”
“I had better results (compared to LlamaIndex) with structuring unstructured data just by putting it in DSPy models”
“I don't think the DSPy approach is bad but it doesn't really solve those issues.”
“Dspy encourages you to write your code in a way that better enables optimization”
“DSPy is cool from an integrated perspective but as someone who extensively develops agents, there have been two phases to the workflow that prevented me from adopting it”
“We had to stand up an entire new repo in Python for it, because the vast majority of our code is not Python.”
“I think automatic optimization is valuable, but it's not what Dspy 'is'”
“I enjoy working with it. I mostly just use it to define the input and outputs more programmatically compared to raw prompts.”
“who the hell puts Python in production just to make some API calls?”
“Model testing and swapping is one of the surprises people really appreciate DSPy for.”
“I rarely recommend people to use Dspy; but I think Dspy is often so polarizing that people "throw out the baby with the bathwater"”
“it is a library only for optimizing an existing workflow/ prompt and not for the use cases described there”
“It's slow: you first have to get acquainted with DSPY and then get hand-labeled data for prompt optimization.”
“it literally gave me nothing of added value in practice but a lot of friction when i needed precise control over the context”
“I find it hard to recommend Dspy. At the same time, I can't escape the observation that many companies are re-implementing a lot of parts of it.”
“layers on layer on top of the base LLM calls with not so much to show for it”
“we had to stand up an entire new repo in Python for it”
“It's not as ergonomic as they made it to be.”
“Dspy does not solve an immediate problem, which is why many feel this way”
“Dspy often does not really show it's benefit until you have a good 'automated metric', which can be difficult to get to.”
“You need to do some up-front work to set up some of the optimizers which a lot of people are averse to.”
“I consistently hear great things from Dspy users.”
“there is a better way of optimizing and building them using model languages themselves as evaluator and skill builder”
“I've used and keep using DSPy a lot for work”
“DSPy.rb[0] enables this pattern in Ruby”
“DSPy.rb shines when you need to decompose into multiple specialized modules with different concerns.”
“which so far I've been quite happy with for small experiments”
“seems like it could be a reasonable approach for systematic evaluation of skills”
“brings the DSPy paradigm's tooling (optimizers, evaluation loops) to Ruby”
“I like to look at it like the MVC for the Web.”
“such a hackable, usable framework”
“it works great to solve user queries with code”
“DSPy has optimisers. It could probably optimise well with length match heuristic”
“optimize your module for any given LLM (based on sample data and metrics)”
“they are well tested and reliable”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.