What's Changed
RLMs
- fix(interpreter): Fix enable_read_paths with multiple files by @missing-piece in #9256
- fix: handle dict response in RLM for reasoning models by @darinkishore in #9219
- feat(CodeInterpreter): Convert messaging format to JSONRPC by @isaacbmiller in #9226
- feat(RLMs): Fix code fence parsing by @isaacbmiller in #9231
- fix(RLM): large variable injection by @isaacbmiller in #9233
- fix(RLM): no longer get stuck on imports by @isaacbmiller in #9234
- fix(RLM): Refactor tools to take list instead of dict and properly serialize None/null values by @isaacbmiller in #9247
GEPA
- Update gepa[dspy] dependency to version 0.0.26 adding support for cached evals in GEPA expected to reduce metric calls, fix MLFlow logging, and bug fixes by @LakshyAAAgrawal in #9238
- Update gepa[dspy] version to 0.0.25 adding python==3.14 support by @LakshyAAAgrawal in #9224
- Temporarily remove the GEPA tool optimization doc by @chenmoneygithub in #9220
- fix(gepa): Remove enable_tool_optimization feature by @Ju-usc in #9223
Maintenance
- Stabilize real LM tests with deterministic temperature by @okhat in #9218
- fix: handle error responses from ColBERTv2 server by @emmanuel-ferdman in #9227
- Fix format by @chenmoneygithub in #9249
- Fix the request header in streaming mode by @chenmoneygithub in #9248
- feat(docs): add community ports page by @isaacbmiller in #9222
Deferred to a later release (added then reverted before cutting this release):
- Allow DSPy to use the native reasoning from models by @chenmoneygithub in #8822
- Revert ChainOfThought to pre-dspy.Reasoning (#8822) behavior by @okhat in #9258
New Contributors
- @missing-piece made their first contribution in #9256
Full Changelog: 3.1.2...3.1.3