Skip to content

Conversation

@tzolov
Copy link
Contributor

@tzolov tzolov commented Nov 11, 2025

Replace direct List injection with ObjectProvider pattern for better flexibility and backward compatibility in tool callback autoconfiguration.

  • Use ObjectProvider<List> and ObjectProvider for flexible bean resolution
  • Add merging and de-duplication logic for ToolCallbackProvider instances from multiple sources
  • Update StatelessToolCallbackConverterAutoConfiguration with new provider handling in syncTools() and asyncTools() methods
  • Update ToolCallbackConverterAutoConfiguration with similar provider handling improvements
  • Enhance ToolCallingAutoConfiguration toolCallbackResolver() to support both legacy List injection and new ObjectProvider pattern
  • Add test coverage

Replace direct List<ToolCallbackProvider> injection with ObjectProvider
pattern for better flexibility and backward compatibility in tool callback
autoconfiguration.

- Use ObjectProvider<List<ToolCallbackProvider>> and
  ObjectProvider<ToolCallbackProvider> for flexible bean resolution
- Add merging and de-duplication logic for ToolCallbackProvider instances
  from multiple sources
- Update StatelessToolCallbackConverterAutoConfiguration with new provider
  handling in syncTools() and asyncTools() methods
- Update ToolCallbackConverterAutoConfiguration with similar provider
  handling improvements
- Enhance ToolCallingAutoConfiguration toolCallbackResolver() to support
  both legacy List injection and new ObjectProvider pattern
- Add test coverage

Co-authored-by: Yanming Zhou <[email protected]>

Signed-off-by: Christian Tzolov <[email protected]>
@ilayaperumalg
Copy link
Member

Rebased and merged as e4926e5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants