-
Notifications
You must be signed in to change notification settings - Fork 2.4k
feat(gepa): add tool description optimization for multi-agent systems #8928
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Ju-usc
wants to merge
83
commits into
stanfordnlp:main
Choose a base branch
from
Ju-usc:feature/tool-description-optimization
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
83 commits
Select commit
Hold shift + click to select a range
6412a5d
feat(gepa): add tool description optimization for multi-agent systems
Ju-usc cf0be4f
style: fix ruff formatting (trailing whitespace)
Ju-usc aa53fe2
style: apply ruff formatting fixes
Ju-usc 045c6cf
feat(gepa): implement tool-specific proposer for tool descriptions
Ju-usc c4f2041
docs(gepa): clean up multi-agent example code
Ju-usc 260ca80
refactor(gepa): simplify tool reflective dataset with ReAct context r…
Ju-usc 04f7e3d
fix(gepa): unify custom proposer routing for tools
Ju-usc f92e184
docs(gepa): clarify tool reflection prompt
Ju-usc 7178869
test: streamline GEPA tool optimization tests
Ju-usc e34703b
fix(gepa): streamline tool proposer formatting
Ju-usc 3f05311
test(gepa): drop legacy dummy tool fixture
Ju-usc 4df9ce5
docs(gepa): add tool-specific reflection prompt and metric example
Ju-usc 4296ccf
docs(gepa): fix implementation details with accurate code flow
Ju-usc ea1204a
docs(gepa): remove backward compatibility note
Ju-usc 48d5cd6
docs(gepa): improve usage examples with optimization visualization
Ju-usc 548d9b6
docs(gepa): add design rationale comments for tool context sharing
Ju-usc e61d0a1
docs(gepa): add tool optimization links to overview and parameter docs
Ju-usc 5c95412
docs(gepa): refine tool optimization scenarios and remove implementat…
Ju-usc 19d7717
docs(gepa): clarify future work section in code comments
Ju-usc 9ce5fe4
refactor(gepa): unify ReAct optimization as single module
Ju-usc 91331d0
test(gepa): add end-to-end ReAct module optimization test
Ju-usc 3418b59
fix(gepa): enable arg description optimization for ReAct tools
Ju-usc b26d39a
chore: remove legacy test_gepa_tool_optimization.py
Ju-usc 2791b5c
fix: restore accidentally removed score mismatch warning
Ju-usc 8e63c62
test: update fixture after arg description optimization fix
Ju-usc 7a9d2f3
fix(test): use JSON-based hashing for cross-version fixture stability
Ju-usc cd0de57
refactor(gepa): rename optimize_tool_descriptions to optimize_react_c…
Ju-usc 67bb739
docs(gepa): improve 'What is optimize_react_components?' section
Ju-usc b3026a7
docs(gepa): replace outdated tool-specific prompt with actual ReAct o…
Ju-usc 4e107aa
docs(gepa): simplify 'How It Works' section with accurate routing beh…
Ju-usc 78547e7
docs(gepa): remove outdated Implementation Details section
Ju-usc 7fa829b
docs(gepa): replace theoretical scenarios with real user pain points
Ju-usc da0e7bc
docs(gepa): fix usage examples reference to match updated scenarios
Ju-usc e51158d
docs(gepa): update inspect section to show all 4 ReAct components wit…
Ju-usc 776ab9b
docs(gepa): rewrite Section 8 with accurate custom proposer behavior …
Ju-usc ec6bb7b
fix(gepa): fix top-level ReAct module lookup and remove tool name san…
Ju-usc b6cc67b
refactor(gepa): unify ReAct module key handling and use constant
Ju-usc 1206f38
test(gepa): add ReAct module detection tests for nested structures
Ju-usc 333cbbf
test(gepa): add comprehensive ReAct detection and reconstruction tests
Ju-usc a50552a
test(gepa): add reflective dataset tests for multi-agent trajectory v…
Ju-usc 965b157
test(gepa): verify tool arg descriptions propagate to args schema
Ju-usc 5ddc6d3
fix(gepa): propagate arg_desc updates to tool.args for prompt rendering
Ju-usc 2269de5
test(gepa): remove fixture-based test and unused dependencies
Ju-usc 17456f0
test(gepa): remove unused fixture file
Ju-usc c884c18
style: fix ruff linting issues (import formatting, whitespace, bare e…
Ju-usc 82dee25
refactor(test): rename setup_spy_for_base_program to setup_capture_fo…
Ju-usc ca84b9d
docs(gepa): clarify why Tool.func uses placeholder lambda in proposer
Ju-usc 2eb8986
refactor(gepa): make all ReAct components optional with None default …
Ju-usc 9f37ac1
docs(gepa): clarify 'LM' as 'reflection LM' in comments for precision
Ju-usc bd4cdac
refactor(gepa): refine reflection prompt to guide concise, focused Re…
Ju-usc 0ad4077
docs(gepa): revise ReAct metric example to be general and extensible
Ju-usc ef5563e
docs(gepa): replace custom proposer example with reference to ReActMo…
Ju-usc 1b10b65
docs(gepa): make custom proposer section more approachable and clear
Ju-usc 675a0cd
docs(gepa): update ReAct reflection prompt to match current implement…
Ju-usc 4a4d209
feat(gepa): warn when ReAct modules detected but optimization disabled
Ju-usc d84842f
test(gepa): fix DummyLM configuration and remove exception swallowing
Ju-usc bb28f5f
test(gepa): add failing tests for generic tool optimization
Ju-usc a590e46
refactor(gepa): rename optimize_react_components to enable_tool_optim…
Ju-usc 6aceaf5
refactor(gepa): extract nested function to private method
Ju-usc 7a5bf05
feat(gepa): detect tool-using predictors via type checking
Ju-usc 12b01ed
test(gepa): update ReAct tests for predictor-name-based keys
Ju-usc 265896c
test(gepa): use explicit predictor keys in tool optimization tests
Ju-usc fe19dac
feat(gepa): extract tools from runtime traces
Ju-usc 38dd7cb
feat(gepa): detect tool-using predictors at compile time
Ju-usc 7f05a73
refactor(gepa): use predictor identity for ReAct detection
Ju-usc 0a6016d
test(gepa): refactor ReAct tests to use dynamic predictor names
Ju-usc a635768
refactor(gepa): generalize proposer to support both ReAct and tool mo…
Ju-usc e35603a
refactor(gepa): eliminate create-delete pattern in base_program build
Ju-usc ecb3726
refactor(gepa): eliminate ReAct coupling in build_program
Ju-usc d3693c9
refactor(gepa): apply code cleanup principles consistently
Ju-usc a086646
refactor(gepa): unify config extraction patterns
Ju-usc 0cecb75
refactor(gepa): remove verbose logs and consolidate comments
Ju-usc 9592c50
docs(gepa): clarify ReAct trace workaround with TODO
Ju-usc 76d7af5
test(gepa): remove deprecated ReAct-specific tests and refactor tool …
Ju-usc ac66e05
feat(gepa): add assertion for ReAct two-predictor design
Ju-usc 3ec4ada
test(gepa): add DSPy ReAct design docs and improve test consistency
Ju-usc b679ba2
fix(test): remove trailing whitespace and extra blank lines
Ju-usc 02aa151
refactor(gepa): clarify tool proposer output field descriptions
Ju-usc d37e433
Merge branch 'main' into feature/tool-description-optimization
Ju-usc d8b7c66
refactor(gepa): treat args as canonical for tool arg descriptions
Ju-usc f62a68e
refactor(gepa): tolerate missing arg descriptions when applying tool …
Ju-usc e031409
refactor(gepa): use args as sole source of tool arg descriptions
Ju-usc a133545
test(gepa): drop arg_desc expectations from tool optimization tests
Ju-usc File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -67,3 +67,8 @@ docs/docs/**/*.json* | |
|
|
||
| test_before_pypi/ | ||
| .github/.internal_dspyai/dist/ | ||
|
|
||
| AGENTS.md | ||
| /tasks | ||
| /notebooks | ||
| .cache/ | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.