From 102b6e45830ac39ee4b8377cb944e309207b23b5 Mon Sep 17 00:00:00 2001 From: Felix Arntz Date: Sun, 16 Nov 2025 22:34:40 -0800 Subject: [PATCH] Fix incorrect model options being set for GPT search models. --- .../OpenAi/OpenAiModelMetadataDirectory.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/ProviderImplementations/OpenAi/OpenAiModelMetadataDirectory.php b/src/ProviderImplementations/OpenAi/OpenAiModelMetadataDirectory.php index b8544eb9..3ffb2d96 100644 --- a/src/ProviderImplementations/OpenAi/OpenAiModelMetadataDirectory.php +++ b/src/ProviderImplementations/OpenAi/OpenAiModelMetadataDirectory.php @@ -109,6 +109,14 @@ protected function parseResponseToModelMetadataList(Response $response): array ] ), ]); + $gptSearchOptions = [ + new SupportedOption(OptionEnum::systemInstruction()), + new SupportedOption(OptionEnum::outputMimeType(), ['text/plain', 'application/json']), + new SupportedOption(OptionEnum::outputSchema()), + new SupportedOption(OptionEnum::customOptions()), + new SupportedOption(OptionEnum::inputModalities(), [[ModalityEnum::text()]]), + new SupportedOption(OptionEnum::outputModalities(), [[ModalityEnum::text()]]), + ]; $imageCapabilities = [ CapabilityEnum::imageGeneration(), ]; @@ -166,6 +174,7 @@ static function (array $modelData) use ( $gptOptions, $gptMultimodalInputOptions, $gptMultimodalSpeechOutputOptions, + $gptSearchOptions, $imageCapabilities, $dalleImageOptions, $gptImageOptions, @@ -200,6 +209,8 @@ static function (array $modelData) use ( // New multimodal output model for audio generation. if (str_contains($modelId, '-audio')) { $modelOptions = $gptMultimodalSpeechOutputOptions; + } elseif (str_contains($modelId, '-search')) { + $modelOptions = $gptSearchOptions; } } elseif (!str_contains($modelId, '-audio')) { $modelCaps = $gptCapabilities;