feat: add option to omit tool_choice param for Azure/LiteLLM compatibility #10703
+17
−4
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.
Related GitHub Issue
Closes: #10701
Description
This PR attempts to address Issue #10701 by adding a new
openAiOmitToolChoicesetting to the OpenAI provider schema.Changes:
openAiOmitToolChoice: z.boolean().optional()to the openAiSchema inpackages/types/src/provider-settings.tssrc/api/providers/openai.tsto check for this setting before includingtool_choicein API requests (in all 4 places where tool_choice is used)webview-ui/src/components/settings/providers/OpenAICompatible.tsxwebview-ui/src/i18n/locales/en/settings.jsonWhen enabled, the setting will omit the
tool_choiceparameter from API requests, allowing users with Azure-hosted models (like GPT-5) accessed through LiteLLM proxies to avoid 400 errors.Test Procedure
tool_choicePre-Submission Checklist
Documentation Updates
Additional Notes
Feedback and guidance are welcome!
Important
Adds
openAiOmitToolChoicesetting to omittool_choiceparameter for Azure/LiteLLM compatibility, with changes in API handling, UI, and localization.openAiOmitToolChoicetoopenAiSchemainprovider-settings.tsto optionally omittool_choicein API requests.OpenAiHandlerinopenai.tsto checkopenAiOmitToolChoicebefore includingtool_choicein requests.OpenAICompatible.tsx.settings.json.This description was created by
for b292902. You can customize this summary. It will automatically update as commits are pushed.