@@ -24,238 +24,7 @@ final class ModelCatalog extends AbstractModelCatalog
24
24
*/
25
25
public function __construct (array $ additionalModels = [])
26
26
{
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 ' ;
259
28
260
29
$ this ->models = array_merge ($ defaultModels , $ additionalModels );
261
30
}
0 commit comments