-
Notifications
You must be signed in to change notification settings - Fork 839
Add IList<AITool>.Add(ResponseTool)
/ AsAITool
extension methods
#6813
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
Conversation
For someone that knows they're using an OpenAI Responses IChatClient, they can Add a ResponseTool directly into ChatOptions.Tools, rather than needing to go through RawRepresentationFactory.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds convenience extension methods to enable direct use of OpenAI ResponseTool objects with the Microsoft.Extensions.AI framework. It introduces methods to add ResponseTool instances to IList collections and wrap them as AITool objects.
Key changes:
- Added
IList<AITool>.Add(ResponseTool)
extension method for direct addition of ResponseTool to tool collections - Added
ResponseTool.AsAITool()
extension method to wrap ResponseTool instances as AITool objects - Added internal ResponseToolAITool wrapper class to bridge ResponseTool and AITool types
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
MicrosoftExtensionsAIResponsesExtensions.cs | Added extension methods for ResponseTool to AITool conversion |
OpenAIResponsesChatClient.cs | Added internal ResponseToolAITool wrapper class and handling logic |
OpenAIConversionTests.cs | Added unit tests for the new extension methods |
OpenAIResponseClientTests.cs | Updated existing test to verify both raw and wrapped tool usage |
CHANGELOG.md files | Updated changelog entries to document the new functionality |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
For someone that knows they're using an OpenAI Responses IChatClient, they can Add a ResponseTool directly into ChatOptions.Tools, rather than needing to go through RawRepresentationFactory.
Microsoft Reviewers: Open in CodeFlow