@@ -24,238 +24,7 @@ final class ModelCatalog extends AbstractModelCatalog
2424 */
2525 public function __construct (array $ additionalModels = [])
2626 {
27- $ defaultModels = [
28- 'gpt-3.5-turbo ' => [
29- 'class ' => Gpt::class,
30- 'capabilities ' => [
31- Capability::INPUT_MESSAGES ,
32- Capability::OUTPUT_TEXT ,
33- Capability::OUTPUT_STREAMING ,
34- Capability::TOOL_CALLING ,
35- ],
36- ],
37- 'gpt-3.5-turbo-instruct ' => [
38- 'class ' => Gpt::class,
39- 'capabilities ' => [
40- Capability::INPUT_MESSAGES ,
41- Capability::OUTPUT_TEXT ,
42- Capability::OUTPUT_STREAMING ,
43- Capability::TOOL_CALLING ,
44- ],
45- ],
46- 'gpt-4 ' => [
47- 'class ' => Gpt::class,
48- 'capabilities ' => [
49- Capability::INPUT_MESSAGES ,
50- Capability::OUTPUT_TEXT ,
51- Capability::OUTPUT_STREAMING ,
52- Capability::TOOL_CALLING ,
53- ],
54- ],
55- 'gpt-4-turbo ' => [
56- 'class ' => Gpt::class,
57- 'capabilities ' => [
58- Capability::INPUT_MESSAGES ,
59- Capability::OUTPUT_TEXT ,
60- Capability::OUTPUT_STREAMING ,
61- Capability::TOOL_CALLING ,
62- Capability::INPUT_IMAGE ,
63- ],
64- ],
65- 'gpt-4o ' => [
66- 'class ' => Gpt::class,
67- 'capabilities ' => [
68- Capability::INPUT_MESSAGES ,
69- Capability::OUTPUT_TEXT ,
70- Capability::OUTPUT_STREAMING ,
71- Capability::TOOL_CALLING ,
72- Capability::INPUT_IMAGE ,
73- Capability::OUTPUT_STRUCTURED ,
74- ],
75- ],
76- 'gpt-4o-mini ' => [
77- 'class ' => Gpt::class,
78- 'capabilities ' => [
79- Capability::INPUT_MESSAGES ,
80- Capability::OUTPUT_TEXT ,
81- Capability::OUTPUT_STREAMING ,
82- Capability::TOOL_CALLING ,
83- Capability::INPUT_IMAGE ,
84- Capability::OUTPUT_STRUCTURED ,
85- ],
86- ],
87- 'gpt-4o-audio-preview ' => [
88- 'class ' => Gpt::class,
89- 'capabilities ' => [
90- Capability::INPUT_MESSAGES ,
91- Capability::OUTPUT_TEXT ,
92- Capability::OUTPUT_STREAMING ,
93- Capability::TOOL_CALLING ,
94- Capability::INPUT_AUDIO ,
95- Capability::INPUT_IMAGE ,
96- Capability::OUTPUT_STRUCTURED ,
97- ],
98- ],
99- 'o1-mini ' => [
100- 'class ' => Gpt::class,
101- 'capabilities ' => [
102- Capability::INPUT_MESSAGES ,
103- Capability::OUTPUT_TEXT ,
104- Capability::OUTPUT_STREAMING ,
105- Capability::TOOL_CALLING ,
106- Capability::INPUT_IMAGE ,
107- ],
108- ],
109- 'o1-preview ' => [
110- 'class ' => Gpt::class,
111- 'capabilities ' => [
112- Capability::INPUT_MESSAGES ,
113- Capability::OUTPUT_TEXT ,
114- Capability::OUTPUT_STREAMING ,
115- Capability::TOOL_CALLING ,
116- Capability::INPUT_IMAGE ,
117- ],
118- ],
119- 'o3-mini ' => [
120- 'class ' => Gpt::class,
121- 'capabilities ' => [
122- Capability::INPUT_MESSAGES ,
123- Capability::OUTPUT_TEXT ,
124- Capability::OUTPUT_STREAMING ,
125- Capability::TOOL_CALLING ,
126- Capability::INPUT_IMAGE ,
127- Capability::OUTPUT_STRUCTURED ,
128- ],
129- ],
130- 'o3-mini-high ' => [
131- 'class ' => Gpt::class,
132- 'capabilities ' => [
133- Capability::INPUT_MESSAGES ,
134- Capability::OUTPUT_TEXT ,
135- Capability::OUTPUT_STREAMING ,
136- Capability::TOOL_CALLING ,
137- ],
138- ],
139- 'gpt-4.5-preview ' => [
140- 'class ' => Gpt::class,
141- 'capabilities ' => [
142- Capability::INPUT_MESSAGES ,
143- Capability::OUTPUT_TEXT ,
144- Capability::OUTPUT_STREAMING ,
145- Capability::TOOL_CALLING ,
146- Capability::INPUT_IMAGE ,
147- Capability::OUTPUT_STRUCTURED ,
148- ],
149- ],
150- 'gpt-4.1 ' => [
151- 'class ' => Gpt::class,
152- 'capabilities ' => [
153- Capability::INPUT_MESSAGES ,
154- Capability::OUTPUT_TEXT ,
155- Capability::OUTPUT_STREAMING ,
156- Capability::TOOL_CALLING ,
157- Capability::INPUT_IMAGE ,
158- Capability::OUTPUT_STRUCTURED ,
159- ],
160- ],
161- 'gpt-4.1-mini ' => [
162- 'class ' => Gpt::class,
163- 'capabilities ' => [
164- Capability::INPUT_MESSAGES ,
165- Capability::OUTPUT_TEXT ,
166- Capability::OUTPUT_STREAMING ,
167- Capability::TOOL_CALLING ,
168- Capability::INPUT_IMAGE ,
169- Capability::OUTPUT_STRUCTURED ,
170- ],
171- ],
172- 'gpt-4.1-nano ' => [
173- 'class ' => Gpt::class,
174- 'capabilities ' => [
175- Capability::INPUT_MESSAGES ,
176- Capability::OUTPUT_TEXT ,
177- Capability::OUTPUT_STREAMING ,
178- Capability::TOOL_CALLING ,
179- Capability::INPUT_IMAGE ,
180- Capability::OUTPUT_STRUCTURED ,
181- ],
182- ],
183- 'gpt-5 ' => [
184- 'class ' => Gpt::class,
185- 'capabilities ' => [
186- Capability::INPUT_MESSAGES ,
187- Capability::OUTPUT_TEXT ,
188- Capability::OUTPUT_STREAMING ,
189- Capability::TOOL_CALLING ,
190- Capability::INPUT_IMAGE ,
191- Capability::OUTPUT_STRUCTURED ,
192- ],
193- ],
194- 'gpt-5-chat-latest ' => [
195- 'class ' => Gpt::class,
196- 'capabilities ' => [
197- Capability::INPUT_MESSAGES ,
198- Capability::OUTPUT_TEXT ,
199- Capability::OUTPUT_STREAMING ,
200- Capability::INPUT_IMAGE ,
201- ],
202- ],
203- 'gpt-5-mini ' => [
204- 'class ' => Gpt::class,
205- 'capabilities ' => [
206- Capability::INPUT_MESSAGES ,
207- Capability::OUTPUT_TEXT ,
208- Capability::OUTPUT_STREAMING ,
209- Capability::TOOL_CALLING ,
210- Capability::INPUT_IMAGE ,
211- Capability::OUTPUT_STRUCTURED ,
212- ],
213- ],
214- 'gpt-5-nano ' => [
215- 'class ' => Gpt::class,
216- 'capabilities ' => [
217- Capability::INPUT_MESSAGES ,
218- Capability::OUTPUT_TEXT ,
219- Capability::OUTPUT_STREAMING ,
220- Capability::TOOL_CALLING ,
221- Capability::INPUT_IMAGE ,
222- Capability::OUTPUT_STRUCTURED ,
223- ],
224- ],
225- 'text-embedding-ada-002 ' => [
226- 'class ' => Embeddings::class,
227- 'capabilities ' => [Capability::INPUT_TEXT ],
228- ],
229- 'text-embedding-3-large ' => [
230- 'class ' => Embeddings::class,
231- 'capabilities ' => [Capability::INPUT_TEXT ],
232- ],
233- 'text-embedding-3-small ' => [
234- 'class ' => Embeddings::class,
235- 'capabilities ' => [Capability::INPUT_TEXT ],
236- ],
237- 'whisper-1 ' => [
238- 'class ' => Whisper::class,
239- 'capabilities ' => [
240- Capability::INPUT_AUDIO ,
241- Capability::OUTPUT_TEXT ,
242- ],
243- ],
244- 'dall-e-2 ' => [
245- 'class ' => DallE::class,
246- 'capabilities ' => [
247- Capability::INPUT_TEXT ,
248- Capability::OUTPUT_IMAGE ,
249- ],
250- ],
251- 'dall-e-3 ' => [
252- 'class ' => DallE::class,
253- 'capabilities ' => [
254- Capability::INPUT_TEXT ,
255- Capability::OUTPUT_IMAGE ,
256- ],
257- ],
258- ];
27+ $ defaultModels = require __DIR__ .'/Resources/models.php ' ;
25928
26029 $ this ->models = array_merge ($ defaultModels , $ additionalModels );
26130 }
0 commit comments