DSPy alternatives
Curated alternatives to DSPy — and why you'd switch.
LangGraph
Build stateful, multi-actor LLM apps as graphs — durable execution, human-in-the-loop, streaming.
Why switchA different bet: optimize prompts as code rather than orchestrate them.
Full comparison →labs-OO-Agents
NVIDIA's object-oriented agent framework: an agent is a Python class — fields are state, docstrings are prompts, and a `...` method body becomes an LLM loop that acts by writing Python.
Why switchBoth refuse hand-written prompt strings, then diverge. DSPy treats the prompt as a compiled artifact optimized against a metric; NOOA treats it as the docstring and the type signature and optimizes nothing — declarative in structure, not in tuning.
Full comparison →SkillOpt
Microsoft's text-space optimizer that trains a frozen agent's skill document like weights — rollouts, bounded edits, validation-gated updates — and ships a compact best_skill.md.
Why switchBoth optimize the text a frozen model runs on against a metric; DSPy compiles prompts for declarative pipelines, SkillOpt trains one deployable skill document for an agent harness.
Full comparison →kev
Open reproduction of TypeSafe's Jev: a LoRA + readout head on Qwen that answers many typed questions about one document in a single prefill pass, returning calibrated probabilities.
Why switchBoth refuse hand-tuned prompts for classification-shaped work: DSPy compiles the prompt around a large model, kev trains weights so there is no prompt and no decoding at all.
Full comparison →