Skip to content

Commit edbfbcc

Browse files
committed
bug #794 [Platform] Fix structured output capability check for unsupported models (Griffon-Weglot)
This PR was squashed before being merged into the main branch. Discussion ---------- [Platform] Fix structured output capability check for unsupported models | Q | A | ------------- | --- | Bug fix? | yes | New feature? | no | Docs? | no | Issues | Fix #791 Related to #802 | License | MIT <!-- Replace this notice by a description of your feature/bugfix. This will help reviewers and should be a good start for the documentation. Additionally (see https://symfony.com/releases): - Always add tests and ensure they pass. - For new features, provide some code snippets to help understand usage. - Features and deprecations must be submitted against branch main. - Update/add documentation as required (we can help!) - Changelog entry should follow https://symfony.com/doc/current/contributing/code/conventions.html#writing-a-changelog-entry - Never break backward compatibility (see https://symfony.com/bc). --> Commits ------- 562e0f7 [Platform] Fix structured output capability check for unsupported models
2 parents 7da897a + 562e0f7 commit edbfbcc

File tree

4 files changed

+7
-14
lines changed

4 files changed

+7
-14
lines changed

src/platform/src/Bridge/Gemini/ModelCatalog.php

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ public function __construct(array $additionalModels = [])
6969
Capability::INPUT_AUDIO,
7070
Capability::INPUT_PDF,
7171
Capability::OUTPUT_STREAMING,
72-
Capability::OUTPUT_STRUCTURED,
7372
Capability::TOOL_CALLING,
7473
],
7574
],
@@ -81,7 +80,6 @@ public function __construct(array $additionalModels = [])
8180
Capability::INPUT_AUDIO,
8281
Capability::INPUT_PDF,
8382
Capability::OUTPUT_STREAMING,
84-
Capability::OUTPUT_STRUCTURED,
8583
Capability::TOOL_CALLING,
8684
],
8785
],
@@ -93,7 +91,6 @@ public function __construct(array $additionalModels = [])
9391
Capability::INPUT_AUDIO,
9492
Capability::INPUT_PDF,
9593
Capability::OUTPUT_STREAMING,
96-
Capability::OUTPUT_STRUCTURED,
9794
Capability::TOOL_CALLING,
9895
],
9996
],
@@ -105,7 +102,6 @@ public function __construct(array $additionalModels = [])
105102
Capability::INPUT_AUDIO,
106103
Capability::INPUT_PDF,
107104
Capability::OUTPUT_STREAMING,
108-
Capability::OUTPUT_STRUCTURED,
109105
Capability::TOOL_CALLING,
110106
],
111107
],
@@ -117,7 +113,6 @@ public function __construct(array $additionalModels = [])
117113
Capability::INPUT_AUDIO,
118114
Capability::INPUT_PDF,
119115
Capability::OUTPUT_STREAMING,
120-
Capability::OUTPUT_STRUCTURED,
121116
Capability::TOOL_CALLING,
122117
],
123118
],

src/platform/src/Bridge/VertexAi/ModelCatalog.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@ public function __construct(array $additionalModels = [])
6666
Capability::INPUT_PDF,
6767
Capability::OUTPUT_TEXT,
6868
Capability::OUTPUT_STREAMING,
69-
Capability::OUTPUT_STRUCTURED,
7069
Capability::TOOL_CALLING,
7170
],
7271
],
@@ -92,7 +91,6 @@ public function __construct(array $additionalModels = [])
9291
Capability::INPUT_PDF,
9392
Capability::OUTPUT_TEXT,
9493
Capability::OUTPUT_STREAMING,
95-
Capability::OUTPUT_STRUCTURED,
9694
Capability::TOOL_CALLING,
9795
],
9896
],

src/platform/tests/Bridge/Gemini/ModelCatalogTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,11 @@ public static function modelsProvider(): iterable
2828
yield 'gemini-2.5-flash' => ['gemini-2.5-flash', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
2929
yield 'gemini-2.5-pro' => ['gemini-2.5-pro', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
3030
yield 'gemini-2.5-flash-lite' => ['gemini-2.5-flash-lite', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
31-
yield 'gemini-2.0-flash' => ['gemini-2.0-flash', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
32-
yield 'gemini-2.0-pro-exp-02-05' => ['gemini-2.0-pro-exp-02-05', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
33-
yield 'gemini-2.0-flash-lite-preview-02-05' => ['gemini-2.0-flash-lite-preview-02-05', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
34-
yield 'gemini-2.0-flash-thinking-exp-01-21' => ['gemini-2.0-flash-thinking-exp-01-21', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
35-
yield 'gemini-1.5-flash' => ['gemini-1.5-flash', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
31+
yield 'gemini-2.0-flash' => ['gemini-2.0-flash', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
32+
yield 'gemini-2.0-pro-exp-02-05' => ['gemini-2.0-pro-exp-02-05', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
33+
yield 'gemini-2.0-flash-lite-preview-02-05' => ['gemini-2.0-flash-lite-preview-02-05', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
34+
yield 'gemini-2.0-flash-thinking-exp-01-21' => ['gemini-2.0-flash-thinking-exp-01-21', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
35+
yield 'gemini-1.5-flash' => ['gemini-1.5-flash', Gemini::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
3636
yield 'gemini-embedding-exp-03-07' => ['gemini-embedding-exp-03-07', Embeddings::class, [Capability::INPUT_MULTIPLE]];
3737
yield 'text-embedding-004' => ['text-embedding-004', Embeddings::class, [Capability::INPUT_MULTIPLE]];
3838
yield 'embedding-001' => ['embedding-001', Embeddings::class, [Capability::INPUT_MULTIPLE]];

src/platform/tests/Bridge/VertexAi/ModelCatalogTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ public static function modelsProvider(): iterable
2828
// Gemini models
2929
yield 'gemini-2.5-pro' => ['gemini-2.5-pro', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
3030
yield 'gemini-2.5-flash' => ['gemini-2.5-flash', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
31-
yield 'gemini-2.0-flash' => ['gemini-2.0-flash', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
31+
yield 'gemini-2.0-flash' => ['gemini-2.0-flash', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
3232
yield 'gemini-2.5-flash-lite' => ['gemini-2.5-flash-lite', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
33-
yield 'gemini-2.0-flash-lite' => ['gemini-2.0-flash-lite', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::OUTPUT_STRUCTURED, Capability::TOOL_CALLING]];
33+
yield 'gemini-2.0-flash-lite' => ['gemini-2.0-flash-lite', GeminiModel::class, [Capability::INPUT_MESSAGES, Capability::INPUT_IMAGE, Capability::INPUT_AUDIO, Capability::INPUT_PDF, Capability::OUTPUT_TEXT, Capability::OUTPUT_STREAMING, Capability::TOOL_CALLING]];
3434

3535
// Embeddings models
3636
yield 'gemini-embedding-001' => ['gemini-embedding-001', EmbeddingsModel::class, [Capability::INPUT_TEXT, Capability::INPUT_MULTIPLE]];

0 commit comments

Comments
 (0)