feat: ✨ Pass ToolOutput to FunctionTool Callback #18756
Open
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.
Description
This enable people to edit ToolOutput on Callback, specially handling retring on error when return direct = True by adusting the is_error value. This also allows us to let the LLM to know the original tools output, the tool name of the failing tool and other helpful information so that the LLM can handle the failed tool even better
Fixes #
Cannot Retry when FunctionTool return an error or None when
return_direct
is set toTrue
Version Bump?
Did I bump the version in the
pyproject.toml
file of the package I am updating? (Except for thellama-index-core
package)Type of Change
Breaking change
This change Might break the user functionality who create and use tool callbacks with Tool raw_output as the callback input
How Has This Been Tested?
Your pull-request will likely not be merged unless it is covered by some form of impactful unit testing.
Suggested Checklist:
uv run make format; uv run make lint
to appease the lint gods