@@ -3318,6 +3318,38 @@ components:
33183318 title : OpenAIResponseInputToolWebSearch | ... (4 variants)
33193319 type : array
33203320 - type : ' null'
3321+ tool_choice :
3322+ anyOf :
3323+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMode'
3324+ title : OpenAIResponseInputToolChoiceMode
3325+ - oneOf :
3326+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
3327+ title : OpenAIResponseInputToolChoiceAllowedTools
3328+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
3329+ title : OpenAIResponseInputToolChoiceFileSearch
3330+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3331+ title : OpenAIResponseInputToolChoiceWebSearch
3332+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
3333+ title : OpenAIResponseInputToolChoiceFunctionTool
3334+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
3335+ title : OpenAIResponseInputToolChoiceMCPTool
3336+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
3337+ title : OpenAIResponseInputToolChoiceCustomTool
3338+ discriminator :
3339+ propertyName : type
3340+ mapping :
3341+ allowed_tools : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
3342+ custom : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
3343+ file_search : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
3344+ function : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
3345+ mcp : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
3346+ web_search : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3347+ web_search_2025_08_26 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3348+ web_search_preview : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3349+ web_search_preview_2025_03_11 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3350+ title : OpenAIResponseInputToolChoiceAllowedTools | ... (6 variants)
3351+ - type : ' null'
3352+ title : OpenAIResponseInputToolChoiceMode
33213353 truncation :
33223354 anyOf :
33233355 - type : string
@@ -3718,6 +3750,38 @@ components:
37183750 title : OpenAIResponseInputToolWebSearch | ... (4 variants)
37193751 type : array
37203752 - type : ' null'
3753+ tool_choice :
3754+ anyOf :
3755+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMode'
3756+ title : OpenAIResponseInputToolChoiceMode
3757+ - oneOf :
3758+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
3759+ title : OpenAIResponseInputToolChoiceAllowedTools
3760+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
3761+ title : OpenAIResponseInputToolChoiceFileSearch
3762+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3763+ title : OpenAIResponseInputToolChoiceWebSearch
3764+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
3765+ title : OpenAIResponseInputToolChoiceFunctionTool
3766+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
3767+ title : OpenAIResponseInputToolChoiceMCPTool
3768+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
3769+ title : OpenAIResponseInputToolChoiceCustomTool
3770+ discriminator :
3771+ propertyName : type
3772+ mapping :
3773+ allowed_tools : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
3774+ custom : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
3775+ file_search : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
3776+ function : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
3777+ mcp : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
3778+ web_search : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3779+ web_search_2025_08_26 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3780+ web_search_preview : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3781+ web_search_preview_2025_03_11 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
3782+ title : OpenAIResponseInputToolChoiceAllowedTools | ... (6 variants)
3783+ - type : ' null'
3784+ title : OpenAIResponseInputToolChoiceMode
37213785 truncation :
37223786 anyOf :
37233787 - type : string
@@ -7620,6 +7684,121 @@ components:
76207684 type : object
76217685 title : OpenAIChatCompletionUsagePromptTokensDetails
76227686 description : Token details for prompt tokens in OpenAI chat completion usage.
7687+ OpenAIResponseInputToolChoiceAllowedTools :
7688+ properties :
7689+ mode :
7690+ type : string
7691+ enum :
7692+ - auto
7693+ - required
7694+ title : Mode
7695+ default : auto
7696+ tools :
7697+ items :
7698+ additionalProperties :
7699+ type : string
7700+ type : object
7701+ type : array
7702+ title : Tools
7703+ type :
7704+ type : string
7705+ const : allowed_tools
7706+ title : Type
7707+ default : allowed_tools
7708+ type : object
7709+ required :
7710+ - tools
7711+ title : OpenAIResponseInputToolChoiceAllowedTools
7712+ description : Constrains the tools available to the model to a pre-defined set.
7713+ OpenAIResponseInputToolChoiceCustomTool :
7714+ properties :
7715+ type :
7716+ type : string
7717+ const : custom
7718+ title : Type
7719+ default : custom
7720+ name :
7721+ type : string
7722+ title : Name
7723+ type : object
7724+ required :
7725+ - name
7726+ title : OpenAIResponseInputToolChoiceCustomTool
7727+ description : Forces the model to call a custom tool.
7728+ OpenAIResponseInputToolChoiceFileSearch :
7729+ properties :
7730+ type :
7731+ type : string
7732+ const : file_search
7733+ title : Type
7734+ default : file_search
7735+ type : object
7736+ title : OpenAIResponseInputToolChoiceFileSearch
7737+ description : Indicates that the model should use file search to generate a response.
7738+ OpenAIResponseInputToolChoiceFunctionTool :
7739+ properties :
7740+ name :
7741+ type : string
7742+ title : Name
7743+ type :
7744+ type : string
7745+ const : function
7746+ title : Type
7747+ default : function
7748+ type : object
7749+ required :
7750+ - name
7751+ title : OpenAIResponseInputToolChoiceFunctionTool
7752+ description : Forces the model to call a specific function.
7753+ OpenAIResponseInputToolChoiceMCPTool :
7754+ properties :
7755+ server_label :
7756+ type : string
7757+ title : Server Label
7758+ type :
7759+ type : string
7760+ const : mcp
7761+ title : Type
7762+ default : mcp
7763+ name :
7764+ anyOf :
7765+ - type : string
7766+ - type : ' null'
7767+ type : object
7768+ required :
7769+ - server_label
7770+ title : OpenAIResponseInputToolChoiceMCPTool
7771+ description : Forces the model to call a specific tool on a remote MCP server
7772+ OpenAIResponseInputToolChoiceMode :
7773+ type : string
7774+ enum :
7775+ - auto
7776+ - required
7777+ - none
7778+ title : OpenAIResponseInputToolChoiceMode
7779+ OpenAIResponseInputToolChoiceWebSearch :
7780+ properties :
7781+ type :
7782+ title : Type
7783+ default : web_search
7784+ type : string
7785+ enum :
7786+ - web_search
7787+ - web_search_preview
7788+ - web_search_preview_2025_03_11
7789+ - web_search_2025_08_26
7790+ search_context_size :
7791+ anyOf :
7792+ - type : string
7793+ pattern : ^low|medium|high$
7794+ - type : ' null'
7795+ default : medium
7796+ type : object
7797+ title : OpenAIResponseInputToolChoiceWebSearch
7798+ description : |-
7799+ Indicates that the model should use web search to generate a response.
7800+
7801+ This is an alias for OpenAIResponseInputToolWebSearch used in tool_choice context.
76237802 OpenAIResponseMessage-Output :
76247803 properties :
76257804 content :
@@ -7937,6 +8116,131 @@ components:
79378116 - $ref : ' #/components/schemas/GrammarResponseFormat'
79388117 title : GrammarResponseFormat
79398118 title : JsonSchemaResponseFormat | GrammarResponseFormat
8119+ AllowedToolsConfig :
8120+ properties :
8121+ tools :
8122+ items :
8123+ additionalProperties : true
8124+ type : object
8125+ title : Tools
8126+ type : array
8127+ mode :
8128+ enum :
8129+ - auto
8130+ - required
8131+ title : Mode
8132+ type : string
8133+ required :
8134+ - tools
8135+ - mode
8136+ title : AllowedToolsConfig
8137+ type : object
8138+ CustomToolConfig :
8139+ properties :
8140+ name :
8141+ title : Name
8142+ type : string
8143+ required :
8144+ - name
8145+ title : CustomToolConfig
8146+ type : object
8147+ FunctionToolConfig :
8148+ properties :
8149+ name :
8150+ title : Name
8151+ type : string
8152+ required :
8153+ - name
8154+ title : FunctionToolConfig
8155+ type : object
8156+ OpenAIChatCompletionToolChoiceAllowedTools :
8157+ description : Allowed tools response format for OpenAI-compatible chat completion requests.
8158+ properties :
8159+ type :
8160+ const : allowed_tools
8161+ default : allowed_tools
8162+ title : Type
8163+ type : string
8164+ allowed_tools :
8165+ $ref : ' #/components/schemas/AllowedToolsConfig'
8166+ required :
8167+ - allowed_tools
8168+ title : OpenAIChatCompletionToolChoiceAllowedTools
8169+ type : object
8170+ OpenAIChatCompletionToolChoiceCustomTool :
8171+ description : Custom tool choice for OpenAI-compatible chat completion requests.
8172+ properties :
8173+ type :
8174+ const : custom
8175+ default : custom
8176+ title : Type
8177+ type : string
8178+ custom :
8179+ $ref : ' #/components/schemas/CustomToolConfig'
8180+ required :
8181+ - custom
8182+ title : OpenAIChatCompletionToolChoiceCustomTool
8183+ type : object
8184+ OpenAIChatCompletionToolChoiceFunctionTool :
8185+ description : Function tool choice for OpenAI-compatible chat completion requests.
8186+ properties :
8187+ type :
8188+ const : function
8189+ default : function
8190+ title : Type
8191+ type : string
8192+ function :
8193+ $ref : ' #/components/schemas/FunctionToolConfig'
8194+ required :
8195+ - function
8196+ title : OpenAIChatCompletionToolChoiceFunctionTool
8197+ type : object
8198+ OpenAIChatCompletionToolChoice :
8199+ discriminator :
8200+ mapping :
8201+ allowed_tools : ' #/components/schemas/OpenAIChatCompletionToolChoiceAllowedTools'
8202+ custom : ' #/components/schemas/OpenAIChatCompletionToolChoiceCustomTool'
8203+ function : ' #/components/schemas/OpenAIChatCompletionToolChoiceFunctionTool'
8204+ propertyName : type
8205+ oneOf :
8206+ - $ref : ' #/components/schemas/OpenAIChatCompletionToolChoiceAllowedTools'
8207+ title : OpenAIChatCompletionToolChoiceAllowedTools
8208+ - $ref : ' #/components/schemas/OpenAIChatCompletionToolChoiceFunctionTool'
8209+ title : OpenAIChatCompletionToolChoiceFunctionTool
8210+ - $ref : ' #/components/schemas/OpenAIChatCompletionToolChoiceCustomTool'
8211+ title : OpenAIChatCompletionToolChoiceCustomTool
8212+ title : OpenAIChatCompletionToolChoiceAllowedTools | OpenAIChatCompletionToolChoiceFunctionTool | OpenAIChatCompletionToolChoiceCustomTool
8213+ OpenAIResponseInputToolChoice :
8214+ anyOf :
8215+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMode'
8216+ title : OpenAIResponseInputToolChoiceMode
8217+ - discriminator :
8218+ mapping :
8219+ allowed_tools : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
8220+ custom : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
8221+ file_search : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
8222+ function : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
8223+ mcp : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
8224+ web_search : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
8225+ web_search_2025_08_26 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
8226+ web_search_preview : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
8227+ web_search_preview_2025_03_11 : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
8228+ propertyName : type
8229+ oneOf :
8230+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceAllowedTools'
8231+ title : OpenAIResponseInputToolChoiceAllowedTools
8232+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFileSearch'
8233+ title : OpenAIResponseInputToolChoiceFileSearch
8234+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceWebSearch'
8235+ title : OpenAIResponseInputToolChoiceWebSearch
8236+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceFunctionTool'
8237+ title : OpenAIResponseInputToolChoiceFunctionTool
8238+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceMCPTool'
8239+ title : OpenAIResponseInputToolChoiceMCPTool
8240+ - $ref : ' #/components/schemas/OpenAIResponseInputToolChoiceCustomTool'
8241+ title : OpenAIResponseInputToolChoiceCustomTool
8242+ title : OpenAIResponseInputToolChoiceAllowedTools | ... (6 variants)
8243+ title : OpenAIResponseInputToolChoiceMode
79408244 OpenAIResponseContentPart :
79418245 discriminator :
79428246 mapping :
0 commit comments