Change8

Migrating to DSPy 3.0.4b1

Version 3.0.4b1 introduces 4 breaking changes. This guide details how to update your code.

Released: 9/29/2025

4
Breaking Changes
5
Migration Steps
12
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

gepa.optimizeDummyLMEvaluationResultdspy.evaluate.EvaluationResultImage.from_*ImageEmailInsightEmbeddingsgepa_kwargsmlflowCitationAPIArbor

Breaking Changes

Issue #1

DummyLM constructor now requires an adapter argument; update code to pass an adapter when instantiating DummyLM.

Issue #2

EvaluationResult class moved to dspy.evaluate.EvaluationResult; update imports accordingly.

Issue #3

EmailInsight class removed from the email extraction tutorial; replace usage with an alternative approach or remove imports.

Issue #4

gepa[dspy] dependency updated to version 0.0.17 may affect load‑from‑state functionality; verify compatibility after upgrade.

Migration Steps

  1. 1
    Update DummyLM instantiation to provide an adapter argument.
  2. 2
    Change imports from dspy.EvaluationResult to dspy.evaluate.EvaluationResult.
  3. 3
    Replace any usage of Image.from_* helpers with the Image constructor.
  4. 4
    Remove imports or references to the EmailInsight class.
  5. 5
    Review custom GEPA component selection logic to align with the new gepa_kwargs support.

Release Summary

DSPy 3.0.4b1 adds extensive GEPA enhancements, multimodal support, and new documentation, while introducing breaking changes to DummyLM, EvaluationResult location, and deprecating Image.from_* helpers.

Need More Details?

View the full release notes and all changes for DSPy 3.0.4b1.

View Full Changelog