llm.rb 11.3.1 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +242 -1
  3. data/LICENSE +92 -17
  4. data/README.md +204 -623
  5. data/data/anthropic.json +433 -249
  6. data/data/bedrock.json +2097 -1055
  7. data/data/deepinfra.json +993 -0
  8. data/data/deepseek.json +53 -28
  9. data/data/google.json +389 -771
  10. data/data/openai.json +1053 -771
  11. data/data/xai.json +133 -292
  12. data/data/zai.json +249 -141
  13. data/lib/llm/active_record/acts_as_agent.rb +3 -41
  14. data/lib/llm/active_record/acts_as_llm.rb +18 -0
  15. data/lib/llm/active_record.rb +3 -3
  16. data/lib/llm/context.rb +9 -5
  17. data/lib/llm/contract/completion.rb +2 -2
  18. data/lib/llm/provider.rb +2 -2
  19. data/lib/llm/providers/deepinfra/audio.rb +66 -0
  20. data/lib/llm/providers/deepinfra/images.rb +90 -0
  21. data/lib/llm/providers/deepinfra/response_adapter.rb +36 -0
  22. data/lib/llm/providers/deepinfra.rb +100 -0
  23. data/lib/llm/providers/deepseek/images.rb +109 -0
  24. data/lib/llm/providers/deepseek/request_adapter.rb +32 -0
  25. data/lib/llm/providers/deepseek/response_adapter/image.rb +9 -0
  26. data/lib/llm/providers/deepseek/response_adapter.rb +29 -0
  27. data/lib/llm/providers/deepseek.rb +4 -2
  28. data/lib/llm/providers/google/request_adapter.rb +22 -5
  29. data/lib/llm/providers/google.rb +4 -4
  30. data/lib/llm/providers/openai/audio.rb +6 -2
  31. data/lib/llm/providers/openai/images.rb +9 -50
  32. data/lib/llm/providers/openai/request_adapter/respond.rb +38 -4
  33. data/lib/llm/providers/openai/response_adapter/audio.rb +5 -1
  34. data/lib/llm/providers/openai/response_adapter/completion.rb +1 -1
  35. data/lib/llm/providers/openai/response_adapter/image.rb +0 -4
  36. data/lib/llm/providers/openai/responses.rb +1 -0
  37. data/lib/llm/providers/openai/stream_parser.rb +5 -6
  38. data/lib/llm/providers/openai.rb +2 -2
  39. data/lib/llm/providers/xai/images.rb +49 -26
  40. data/lib/llm/providers/xai.rb +2 -2
  41. data/lib/llm/response.rb +10 -0
  42. data/lib/llm/schema/leaf.rb +7 -1
  43. data/lib/llm/schema/renderer.rb +121 -0
  44. data/lib/llm/schema.rb +30 -0
  45. data/lib/llm/sequel/agent.rb +2 -43
  46. data/lib/llm/sequel/plugin.rb +25 -7
  47. data/lib/llm/tracer/telemetry.rb +4 -6
  48. data/lib/llm/tracer.rb +9 -21
  49. data/lib/llm/transport/execution.rb +16 -1
  50. data/lib/llm/transport/net_http_adapter.rb +1 -1
  51. data/lib/llm/uridata.rb +16 -0
  52. data/lib/llm/version.rb +1 -1
  53. data/lib/llm.rb +9 -0
  54. data/llm.gemspec +5 -18
  55. data/resources/deepdive.md +798 -264
  56. metadata +15 -18
  57. data/lib/llm/tracer/langsmith.rb +0 -144
data/data/google.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "id": "google",
3
3
  "env": [
4
+ "GOOGLE_API_KEY",
4
5
  "GOOGLE_GENERATIVE_AI_API_KEY",
5
6
  "GEMINI_API_KEY"
6
7
  ],
@@ -8,107 +9,23 @@
8
9
  "name": "Google",
9
10
  "doc": "https://ai.google.dev/gemini-api/docs/models",
10
11
  "models": {
11
- "gemini-flash-latest": {
12
- "id": "gemini-flash-latest",
13
- "name": "Gemini Flash Latest",
14
- "family": "gemini-flash",
15
- "attachment": true,
16
- "reasoning": true,
17
- "tool_call": true,
18
- "structured_output": true,
19
- "temperature": true,
20
- "knowledge": "2025-01",
21
- "release_date": "2025-09-25",
22
- "last_updated": "2025-09-25",
23
- "modalities": {
24
- "input": [
25
- "text",
26
- "image",
27
- "audio",
28
- "video",
29
- "pdf"
30
- ],
31
- "output": [
32
- "text"
33
- ]
34
- },
35
- "open_weights": false,
36
- "limit": {
37
- "context": 1048576,
38
- "output": 65536
39
- },
40
- "cost": {
41
- "input": 0.3,
42
- "output": 2.5,
43
- "cache_read": 0.075,
44
- "input_audio": 1
45
- }
46
- },
47
- "gemma-4-26b-a4b-it": {
48
- "id": "gemma-4-26b-a4b-it",
49
- "name": "Gemma 4 26B",
50
- "family": "gemma",
51
- "attachment": false,
52
- "reasoning": true,
53
- "tool_call": true,
54
- "structured_output": true,
55
- "temperature": true,
56
- "release_date": "2026-04-02",
57
- "last_updated": "2026-04-02",
58
- "modalities": {
59
- "input": [
60
- "text",
61
- "image"
62
- ],
63
- "output": [
64
- "text"
65
- ]
66
- },
67
- "open_weights": true,
68
- "limit": {
69
- "context": 256000,
70
- "output": 8192
71
- }
72
- },
73
- "gemini-1.5-flash": {
74
- "id": "gemini-1.5-flash",
75
- "name": "Gemini 1.5 Flash",
76
- "family": "gemini-flash",
77
- "attachment": true,
78
- "reasoning": false,
79
- "tool_call": true,
80
- "temperature": true,
81
- "knowledge": "2024-04",
82
- "release_date": "2024-05-14",
83
- "last_updated": "2024-05-14",
84
- "modalities": {
85
- "input": [
86
- "text",
87
- "image",
88
- "audio",
89
- "video"
90
- ],
91
- "output": [
92
- "text"
93
- ]
94
- },
95
- "open_weights": false,
96
- "limit": {
97
- "context": 1000000,
98
- "output": 8192
99
- },
100
- "cost": {
101
- "input": 0.075,
102
- "output": 0.3,
103
- "cache_read": 0.01875
104
- }
105
- },
106
12
  "gemini-3.1-flash-lite": {
107
13
  "id": "gemini-3.1-flash-lite",
108
14
  "name": "Gemini 3.1 Flash Lite",
109
15
  "family": "gemini-flash-lite",
110
16
  "attachment": true,
111
17
  "reasoning": true,
18
+ "reasoning_options": [
19
+ {
20
+ "type": "effort",
21
+ "values": [
22
+ "minimal",
23
+ "low",
24
+ "medium",
25
+ "high"
26
+ ]
27
+ }
28
+ ],
112
29
  "tool_call": true,
113
30
  "structured_output": true,
114
31
  "temperature": true,
@@ -139,40 +56,33 @@
139
56
  "input_audio": 0.5
140
57
  }
141
58
  },
142
- "gemini-2.5-flash-preview-09-2025": {
143
- "id": "gemini-2.5-flash-preview-09-2025",
144
- "name": "Gemini 2.5 Flash Preview 09-25",
59
+ "gemini-2.5-flash-preview-tts": {
60
+ "id": "gemini-2.5-flash-preview-tts",
61
+ "name": "Gemini 2.5 Flash Preview TTS",
145
62
  "family": "gemini-flash",
146
- "attachment": true,
147
- "reasoning": true,
148
- "tool_call": true,
149
- "structured_output": true,
63
+ "attachment": false,
64
+ "reasoning": false,
65
+ "tool_call": false,
150
66
  "temperature": true,
151
67
  "knowledge": "2025-01",
152
- "release_date": "2025-09-25",
153
- "last_updated": "2025-09-25",
68
+ "release_date": "2025-05-01",
69
+ "last_updated": "2025-05-01",
154
70
  "modalities": {
155
71
  "input": [
156
- "text",
157
- "image",
158
- "audio",
159
- "video",
160
- "pdf"
72
+ "text"
161
73
  ],
162
74
  "output": [
163
- "text"
75
+ "audio"
164
76
  ]
165
77
  },
166
78
  "open_weights": false,
167
79
  "limit": {
168
- "context": 1048576,
169
- "output": 65536
80
+ "context": 8192,
81
+ "output": 16384
170
82
  },
171
83
  "cost": {
172
- "input": 0.3,
173
- "output": 2.5,
174
- "cache_read": 0.075,
175
- "input_audio": 1
84
+ "input": 0.5,
85
+ "output": 10
176
86
  }
177
87
  },
178
88
  "gemini-2.5-pro": {
@@ -181,12 +91,19 @@
181
91
  "family": "gemini-pro",
182
92
  "attachment": true,
183
93
  "reasoning": true,
94
+ "reasoning_options": [
95
+ {
96
+ "type": "budget_tokens",
97
+ "min": 128,
98
+ "max": 32768
99
+ }
100
+ ],
184
101
  "tool_call": true,
185
102
  "structured_output": true,
186
103
  "temperature": true,
187
104
  "knowledge": "2025-01",
188
- "release_date": "2025-03-20",
189
- "last_updated": "2025-06-05",
105
+ "release_date": "2025-06-17",
106
+ "last_updated": "2025-06-17",
190
107
  "modalities": {
191
108
  "input": [
192
109
  "text",
@@ -226,17 +143,28 @@
226
143
  }
227
144
  }
228
145
  },
229
- "gemini-2.5-flash-preview-04-17": {
230
- "id": "gemini-2.5-flash-preview-04-17",
231
- "name": "Gemini 2.5 Flash Preview 04-17",
146
+ "gemini-2.5-flash": {
147
+ "id": "gemini-2.5-flash",
148
+ "name": "Gemini 2.5 Flash",
232
149
  "family": "gemini-flash",
233
150
  "attachment": true,
234
151
  "reasoning": true,
152
+ "reasoning_options": [
153
+ {
154
+ "type": "toggle"
155
+ },
156
+ {
157
+ "type": "budget_tokens",
158
+ "min": 0,
159
+ "max": 24576
160
+ }
161
+ ],
235
162
  "tool_call": true,
163
+ "structured_output": true,
236
164
  "temperature": true,
237
165
  "knowledge": "2025-01",
238
- "release_date": "2025-04-17",
239
- "last_updated": "2025-04-17",
166
+ "release_date": "2025-06-17",
167
+ "last_updated": "2025-06-17",
240
168
  "modalities": {
241
169
  "input": [
242
170
  "text",
@@ -255,48 +183,70 @@
255
183
  "output": 65536
256
184
  },
257
185
  "cost": {
258
- "input": 0.15,
259
- "output": 0.6,
260
- "cache_read": 0.0375
186
+ "input": 0.3,
187
+ "output": 2.5,
188
+ "cache_read": 0.03,
189
+ "input_audio": 1
261
190
  }
262
191
  },
263
- "gemma-3-27b-it": {
264
- "id": "gemma-3-27b-it",
265
- "name": "Gemma 3 27B",
266
- "family": "gemma",
192
+ "gemini-3.5-flash": {
193
+ "id": "gemini-3.5-flash",
194
+ "name": "Gemini 3.5 Flash",
195
+ "family": "gemini-flash",
267
196
  "attachment": true,
268
- "reasoning": false,
197
+ "reasoning": true,
198
+ "reasoning_options": [
199
+ {
200
+ "type": "effort",
201
+ "values": [
202
+ "minimal",
203
+ "low",
204
+ "medium",
205
+ "high"
206
+ ]
207
+ }
208
+ ],
269
209
  "tool_call": true,
270
210
  "structured_output": true,
271
211
  "temperature": true,
272
- "knowledge": "2024-10",
273
- "release_date": "2025-03-12",
274
- "last_updated": "2025-03-12",
212
+ "knowledge": "2025-01",
213
+ "release_date": "2026-05-19",
214
+ "last_updated": "2026-05-19",
275
215
  "modalities": {
276
216
  "input": [
277
217
  "text",
278
- "image"
218
+ "image",
219
+ "video",
220
+ "audio",
221
+ "pdf"
279
222
  ],
280
223
  "output": [
281
224
  "text"
282
225
  ]
283
226
  },
284
- "open_weights": true,
227
+ "open_weights": false,
285
228
  "limit": {
286
- "context": 131072,
287
- "output": 8192
229
+ "context": 1048576,
230
+ "output": 65536
288
231
  },
289
232
  "cost": {
290
- "input": 0,
291
- "output": 0
233
+ "input": 1.5,
234
+ "output": 9,
235
+ "cache_read": 0.15,
236
+ "input_audio": 1.5
292
237
  }
293
238
  },
294
239
  "gemma-4-31b-it": {
295
240
  "id": "gemma-4-31b-it",
296
- "name": "Gemma 4 31B",
241
+ "name": "Gemma 4 31B IT",
297
242
  "family": "gemma",
298
- "attachment": false,
243
+ "attachment": true,
299
244
  "reasoning": true,
245
+ "reasoning_options": [
246
+ {
247
+ "type": "toggle"
248
+ }
249
+ ],
300
250
  "tool_call": true,
301
251
  "structured_output": true,
302
252
  "temperature": true,
@@ -313,57 +263,103 @@
313
263
  },
314
264
  "open_weights": true,
315
265
  "limit": {
316
- "context": 256000,
317
- "output": 8192
266
+ "context": 262144,
267
+ "output": 32768
318
268
  }
319
269
  },
320
- "gemini-2.5-pro-preview-tts": {
321
- "id": "gemini-2.5-pro-preview-tts",
322
- "name": "Gemini 2.5 Pro Preview TTS",
270
+ "gemini-2.0-flash": {
271
+ "id": "gemini-2.0-flash",
272
+ "name": "Gemini 2.0 Flash",
323
273
  "family": "gemini-flash",
274
+ "attachment": true,
275
+ "reasoning": false,
276
+ "tool_call": true,
277
+ "structured_output": true,
278
+ "temperature": true,
279
+ "knowledge": "2024-06",
280
+ "release_date": "2024-12-11",
281
+ "last_updated": "2024-12-11",
282
+ "modalities": {
283
+ "input": [
284
+ "text",
285
+ "image",
286
+ "audio",
287
+ "video",
288
+ "pdf"
289
+ ],
290
+ "output": [
291
+ "text"
292
+ ]
293
+ },
294
+ "open_weights": false,
295
+ "limit": {
296
+ "context": 1048576,
297
+ "output": 8192
298
+ },
299
+ "status": "deprecated",
300
+ "cost": {
301
+ "input": 0.1,
302
+ "output": 0.4,
303
+ "cache_read": 0.025
304
+ }
305
+ },
306
+ "gemini-embedding-001": {
307
+ "id": "gemini-embedding-001",
308
+ "name": "Gemini Embedding 001",
309
+ "family": "gemini",
324
310
  "attachment": false,
325
311
  "reasoning": false,
326
312
  "tool_call": false,
327
313
  "temperature": false,
328
- "knowledge": "2025-01",
329
- "release_date": "2025-05-01",
330
- "last_updated": "2025-05-01",
314
+ "knowledge": "2025-05",
315
+ "release_date": "2025-05-20",
316
+ "last_updated": "2025-05-20",
331
317
  "modalities": {
332
318
  "input": [
333
319
  "text"
334
320
  ],
335
321
  "output": [
336
- "audio"
322
+ "text"
337
323
  ]
338
324
  },
339
325
  "open_weights": false,
340
326
  "limit": {
341
- "context": 8000,
342
- "output": 16000
327
+ "context": 2048,
328
+ "output": 1
343
329
  },
344
330
  "cost": {
345
- "input": 1,
346
- "output": 20
331
+ "input": 0.15,
332
+ "output": 0
347
333
  }
348
334
  },
349
- "gemini-2.5-flash-preview-05-20": {
350
- "id": "gemini-2.5-flash-preview-05-20",
351
- "name": "Gemini 2.5 Flash Preview 05-20",
352
- "family": "gemini-flash",
335
+ "gemini-3.1-pro-preview-customtools": {
336
+ "id": "gemini-3.1-pro-preview-customtools",
337
+ "name": "Gemini 3.1 Pro Preview Custom Tools",
338
+ "family": "gemini-pro",
353
339
  "attachment": true,
354
340
  "reasoning": true,
341
+ "reasoning_options": [
342
+ {
343
+ "type": "effort",
344
+ "values": [
345
+ "low",
346
+ "medium",
347
+ "high"
348
+ ]
349
+ }
350
+ ],
355
351
  "tool_call": true,
356
352
  "structured_output": true,
357
353
  "temperature": true,
358
354
  "knowledge": "2025-01",
359
- "release_date": "2025-05-20",
360
- "last_updated": "2025-05-20",
355
+ "release_date": "2026-02-19",
356
+ "last_updated": "2026-02-19",
361
357
  "modalities": {
362
358
  "input": [
363
359
  "text",
364
360
  "image",
365
- "audio",
366
361
  "video",
362
+ "audio",
367
363
  "pdf"
368
364
  ],
369
365
  "output": [
@@ -376,95 +372,55 @@
376
372
  "output": 65536
377
373
  },
378
374
  "cost": {
379
- "input": 0.15,
380
- "output": 0.6,
381
- "cache_read": 0.0375
375
+ "input": 2,
376
+ "output": 12,
377
+ "cache_read": 0.2,
378
+ "tiers": [
379
+ {
380
+ "input": 4,
381
+ "output": 18,
382
+ "cache_read": 0.4,
383
+ "tier": {
384
+ "type": "context",
385
+ "size": 200000
386
+ }
387
+ }
388
+ ],
389
+ "context_over_200k": {
390
+ "input": 4,
391
+ "output": 18,
392
+ "cache_read": 0.4
393
+ }
382
394
  }
383
395
  },
384
- "gemini-3.1-flash-image-preview": {
385
- "id": "gemini-3.1-flash-image-preview",
386
- "name": "Gemini 3.1 Flash Image (Preview)",
387
- "family": "gemini-flash",
396
+ "gemini-flash-lite-latest": {
397
+ "id": "gemini-flash-lite-latest",
398
+ "name": "Gemini Flash-Lite Latest",
399
+ "family": "gemini-flash-lite",
388
400
  "attachment": true,
389
401
  "reasoning": true,
390
- "tool_call": false,
402
+ "reasoning_options": [
403
+ {
404
+ "type": "toggle"
405
+ },
406
+ {
407
+ "type": "budget_tokens",
408
+ "min": 512,
409
+ "max": 24576
410
+ }
411
+ ],
412
+ "tool_call": true,
413
+ "structured_output": true,
391
414
  "temperature": true,
392
415
  "knowledge": "2025-01",
393
- "release_date": "2026-02-26",
394
- "last_updated": "2026-02-26",
416
+ "release_date": "2025-09-25",
417
+ "last_updated": "2025-09-25",
395
418
  "modalities": {
396
419
  "input": [
397
420
  "text",
398
421
  "image",
399
- "pdf"
400
- ],
401
- "output": [
402
- "text",
403
- "image"
404
- ]
405
- },
406
- "open_weights": false,
407
- "limit": {
408
- "context": 131072,
409
- "output": 32768
410
- },
411
- "cost": {
412
- "input": 0.5,
413
- "output": 60
414
- }
415
- },
416
- "gemini-live-2.5-flash-preview-native-audio": {
417
- "id": "gemini-live-2.5-flash-preview-native-audio",
418
- "name": "Gemini Live 2.5 Flash Preview Native Audio",
419
- "family": "gemini-flash",
420
- "attachment": false,
421
- "reasoning": true,
422
- "tool_call": true,
423
- "temperature": false,
424
- "knowledge": "2025-01",
425
- "release_date": "2025-06-17",
426
- "last_updated": "2025-09-18",
427
- "modalities": {
428
- "input": [
429
- "text",
430
- "audio",
431
- "video"
432
- ],
433
- "output": [
434
- "text",
435
- "audio"
436
- ]
437
- },
438
- "open_weights": false,
439
- "limit": {
440
- "context": 131072,
441
- "output": 65536
442
- },
443
- "cost": {
444
- "input": 0.5,
445
- "output": 2,
446
- "input_audio": 3,
447
- "output_audio": 12
448
- }
449
- },
450
- "gemini-2.5-pro-preview-06-05": {
451
- "id": "gemini-2.5-pro-preview-06-05",
452
- "name": "Gemini 2.5 Pro Preview 06-05",
453
- "family": "gemini-pro",
454
- "attachment": true,
455
- "reasoning": true,
456
- "tool_call": true,
457
- "structured_output": true,
458
- "temperature": true,
459
- "knowledge": "2025-01",
460
- "release_date": "2025-06-05",
461
- "last_updated": "2025-06-05",
462
- "modalities": {
463
- "input": [
464
- "text",
465
- "image",
466
- "audio",
467
- "video",
422
+ "audio",
423
+ "video",
468
424
  "pdf"
469
425
  ],
470
426
  "output": [
@@ -477,145 +433,92 @@
477
433
  "output": 65536
478
434
  },
479
435
  "cost": {
480
- "input": 1.25,
481
- "output": 10,
482
- "cache_read": 0.31
483
- }
484
- },
485
- "gemma-3n-e2b-it": {
486
- "id": "gemma-3n-e2b-it",
487
- "name": "Gemma 3n 2B",
488
- "family": "gemma",
489
- "attachment": true,
490
- "reasoning": false,
491
- "tool_call": false,
492
- "temperature": true,
493
- "knowledge": "2024-10",
494
- "release_date": "2025-07-09",
495
- "last_updated": "2025-07-09",
496
- "modalities": {
497
- "input": [
498
- "text"
499
- ],
500
- "output": [
501
- "text"
502
- ]
503
- },
504
- "open_weights": true,
505
- "limit": {
506
- "context": 8192,
507
- "output": 2000
508
- },
509
- "cost": {
510
- "input": 0,
511
- "output": 0
512
- }
513
- },
514
- "gemma-3n-e4b-it": {
515
- "id": "gemma-3n-e4b-it",
516
- "name": "Gemma 3n 4B",
517
- "family": "gemma",
518
- "attachment": true,
519
- "reasoning": false,
520
- "tool_call": false,
521
- "temperature": true,
522
- "knowledge": "2024-10",
523
- "release_date": "2025-05-20",
524
- "last_updated": "2025-05-20",
525
- "modalities": {
526
- "input": [
527
- "text"
528
- ],
529
- "output": [
530
- "text"
531
- ]
532
- },
533
- "open_weights": true,
534
- "limit": {
535
- "context": 8192,
536
- "output": 2000
537
- },
538
- "cost": {
539
- "input": 0,
540
- "output": 0
436
+ "input": 0.1,
437
+ "output": 0.4,
438
+ "cache_read": 0.025
541
439
  }
542
440
  },
543
- "gemini-2.5-pro-preview-05-06": {
544
- "id": "gemini-2.5-pro-preview-05-06",
545
- "name": "Gemini 2.5 Pro Preview 05-06",
441
+ "gemini-3-pro-image-preview": {
442
+ "id": "gemini-3-pro-image-preview",
443
+ "name": "Nano Banana Pro",
546
444
  "family": "gemini-pro",
547
445
  "attachment": true,
548
446
  "reasoning": true,
549
- "tool_call": true,
550
- "structured_output": true,
447
+ "reasoning_options": [],
448
+ "tool_call": false,
551
449
  "temperature": true,
552
450
  "knowledge": "2025-01",
553
- "release_date": "2025-05-06",
554
- "last_updated": "2025-05-06",
451
+ "release_date": "2025-11-20",
452
+ "last_updated": "2025-11-20",
555
453
  "modalities": {
556
454
  "input": [
557
455
  "text",
558
- "image",
559
- "audio",
560
- "video",
561
- "pdf"
456
+ "image"
562
457
  ],
563
458
  "output": [
564
- "text"
459
+ "text",
460
+ "image"
565
461
  ]
566
462
  },
567
463
  "open_weights": false,
568
464
  "limit": {
569
- "context": 1048576,
570
- "output": 65536
465
+ "context": 131072,
466
+ "output": 32768
571
467
  },
572
468
  "cost": {
573
- "input": 1.25,
574
- "output": 10,
575
- "cache_read": 0.31
469
+ "input": 2,
470
+ "output": 120
576
471
  }
577
472
  },
578
- "gemini-2.5-flash-lite-preview-09-2025": {
579
- "id": "gemini-2.5-flash-lite-preview-09-2025",
580
- "name": "Gemini 2.5 Flash Lite Preview 09-25",
581
- "family": "gemini-flash-lite",
473
+ "gemini-2.5-flash-image": {
474
+ "id": "gemini-2.5-flash-image",
475
+ "name": "Nano Banana",
476
+ "family": "gemini-flash",
582
477
  "attachment": true,
583
478
  "reasoning": true,
584
- "tool_call": true,
585
- "structured_output": true,
479
+ "reasoning_options": [],
480
+ "tool_call": false,
586
481
  "temperature": true,
587
- "knowledge": "2025-01",
588
- "release_date": "2025-09-25",
589
- "last_updated": "2025-09-25",
482
+ "knowledge": "2025-06",
483
+ "release_date": "2025-08-26",
484
+ "last_updated": "2025-08-26",
590
485
  "modalities": {
591
486
  "input": [
592
487
  "text",
593
- "image",
594
- "audio",
595
- "video",
596
- "pdf"
488
+ "image"
597
489
  ],
598
490
  "output": [
599
- "text"
491
+ "text",
492
+ "image"
600
493
  ]
601
494
  },
602
495
  "open_weights": false,
603
496
  "limit": {
604
- "context": 1048576,
605
- "output": 65536
497
+ "context": 32768,
498
+ "output": 32768
606
499
  },
607
500
  "cost": {
608
- "input": 0.1,
609
- "output": 0.4,
610
- "cache_read": 0.025
501
+ "input": 0.3,
502
+ "output": 30,
503
+ "cache_read": 0.075
611
504
  }
612
505
  },
613
506
  "gemini-2.5-flash-lite": {
614
507
  "id": "gemini-2.5-flash-lite",
615
- "name": "Gemini 2.5 Flash Lite",
508
+ "name": "Gemini 2.5 Flash-Lite",
616
509
  "family": "gemini-flash-lite",
617
510
  "attachment": true,
618
511
  "reasoning": true,
512
+ "reasoning_options": [
513
+ {
514
+ "type": "toggle"
515
+ },
516
+ {
517
+ "type": "budget_tokens",
518
+ "min": 512,
519
+ "max": 24576
520
+ }
521
+ ],
619
522
  "tool_call": true,
620
523
  "structured_output": true,
621
524
  "temperature": true,
@@ -646,53 +549,69 @@
646
549
  "input_audio": 0.3
647
550
  }
648
551
  },
649
- "gemini-flash-lite-latest": {
650
- "id": "gemini-flash-lite-latest",
651
- "name": "Gemini Flash-Lite Latest",
652
- "family": "gemini-flash-lite",
552
+ "gemini-3.1-flash-image-preview": {
553
+ "id": "gemini-3.1-flash-image-preview",
554
+ "name": "Nano Banana 2",
555
+ "family": "gemini-flash",
653
556
  "attachment": true,
654
557
  "reasoning": true,
655
- "tool_call": true,
656
- "structured_output": true,
558
+ "reasoning_options": [
559
+ {
560
+ "type": "effort",
561
+ "values": [
562
+ "minimal",
563
+ "high"
564
+ ]
565
+ }
566
+ ],
567
+ "tool_call": false,
657
568
  "temperature": true,
658
569
  "knowledge": "2025-01",
659
- "release_date": "2025-09-25",
660
- "last_updated": "2025-09-25",
570
+ "release_date": "2026-02-26",
571
+ "last_updated": "2026-02-26",
661
572
  "modalities": {
662
573
  "input": [
663
574
  "text",
664
575
  "image",
665
- "audio",
666
- "video",
667
576
  "pdf"
668
577
  ],
669
578
  "output": [
670
- "text"
579
+ "text",
580
+ "image"
671
581
  ]
672
582
  },
673
583
  "open_weights": false,
674
584
  "limit": {
675
- "context": 1048576,
585
+ "context": 65536,
676
586
  "output": 65536
677
587
  },
678
588
  "cost": {
679
- "input": 0.1,
680
- "output": 0.4,
681
- "cache_read": 0.025
589
+ "input": 0.5,
590
+ "output": 60
682
591
  }
683
592
  },
684
- "gemini-3-pro-preview": {
685
- "id": "gemini-3-pro-preview",
686
- "name": "Gemini 3 Pro Preview",
593
+ "gemini-3.1-pro-preview": {
594
+ "id": "gemini-3.1-pro-preview",
595
+ "name": "Gemini 3.1 Pro Preview",
687
596
  "family": "gemini-pro",
688
597
  "attachment": true,
689
598
  "reasoning": true,
599
+ "reasoning_options": [
600
+ {
601
+ "type": "effort",
602
+ "values": [
603
+ "low",
604
+ "medium",
605
+ "high"
606
+ ]
607
+ }
608
+ ],
690
609
  "tool_call": true,
691
610
  "structured_output": true,
692
611
  "temperature": true,
693
612
  "knowledge": "2025-01",
694
- "release_date": "2025-11-18",
695
- "last_updated": "2025-11-18",
613
+ "release_date": "2026-02-19",
614
+ "last_updated": "2026-02-19",
696
615
  "modalities": {
697
616
  "input": [
698
617
  "text",
@@ -707,8 +626,8 @@
707
626
  },
708
627
  "open_weights": false,
709
628
  "limit": {
710
- "context": 1000000,
711
- "output": 64000
629
+ "context": 1048576,
630
+ "output": 65536
712
631
  },
713
632
  "cost": {
714
633
  "input": 2,
@@ -732,52 +651,58 @@
732
651
  }
733
652
  }
734
653
  },
735
- "gemini-2.0-flash-lite": {
736
- "id": "gemini-2.0-flash-lite",
737
- "name": "Gemini 2.0 Flash Lite",
738
- "family": "gemini-flash-lite",
654
+ "gemma-4-26b-a4b-it": {
655
+ "id": "gemma-4-26b-a4b-it",
656
+ "name": "Gemma 4 26B A4B IT",
657
+ "family": "gemma",
739
658
  "attachment": true,
740
- "reasoning": false,
659
+ "reasoning": true,
660
+ "reasoning_options": [
661
+ {
662
+ "type": "toggle"
663
+ }
664
+ ],
741
665
  "tool_call": true,
742
666
  "structured_output": true,
743
667
  "temperature": true,
744
- "knowledge": "2024-06",
745
- "release_date": "2024-12-11",
746
- "last_updated": "2024-12-11",
668
+ "release_date": "2026-04-02",
669
+ "last_updated": "2026-04-02",
747
670
  "modalities": {
748
671
  "input": [
749
672
  "text",
750
- "image",
751
- "audio",
752
- "video",
753
- "pdf"
673
+ "image"
754
674
  ],
755
675
  "output": [
756
676
  "text"
757
677
  ]
758
678
  },
759
- "open_weights": false,
679
+ "open_weights": true,
760
680
  "limit": {
761
- "context": 1048576,
762
- "output": 8192
763
- },
764
- "cost": {
765
- "input": 0.075,
766
- "output": 0.3
681
+ "context": 262144,
682
+ "output": 32768
767
683
  }
768
684
  },
769
- "gemini-3.1-pro-preview-customtools": {
770
- "id": "gemini-3.1-pro-preview-customtools",
771
- "name": "Gemini 3.1 Pro Preview Custom Tools",
685
+ "gemini-3-pro-preview": {
686
+ "id": "gemini-3-pro-preview",
687
+ "name": "Gemini 3 Pro Preview",
772
688
  "family": "gemini-pro",
773
689
  "attachment": true,
774
690
  "reasoning": true,
691
+ "reasoning_options": [
692
+ {
693
+ "type": "effort",
694
+ "values": [
695
+ "low",
696
+ "high"
697
+ ]
698
+ }
699
+ ],
775
700
  "tool_call": true,
776
701
  "structured_output": true,
777
702
  "temperature": true,
778
703
  "knowledge": "2025-01",
779
- "release_date": "2026-02-19",
780
- "last_updated": "2026-02-19",
704
+ "release_date": "2025-11-18",
705
+ "last_updated": "2025-11-18",
781
706
  "modalities": {
782
707
  "input": [
783
708
  "text",
@@ -795,6 +720,7 @@
795
720
  "context": 1048576,
796
721
  "output": 65536
797
722
  },
723
+ "status": "deprecated",
798
724
  "cost": {
799
725
  "input": 2,
800
726
  "output": 12,
@@ -817,46 +743,61 @@
817
743
  }
818
744
  }
819
745
  },
820
- "gemini-2.5-flash-image-preview": {
821
- "id": "gemini-2.5-flash-image-preview",
822
- "name": "Gemini 2.5 Flash Image (Preview)",
746
+ "gemini-3-flash-preview": {
747
+ "id": "gemini-3-flash-preview",
748
+ "name": "Gemini 3 Flash Preview",
823
749
  "family": "gemini-flash",
824
750
  "attachment": true,
825
751
  "reasoning": true,
826
- "tool_call": false,
752
+ "reasoning_options": [
753
+ {
754
+ "type": "effort",
755
+ "values": [
756
+ "minimal",
757
+ "low",
758
+ "medium",
759
+ "high"
760
+ ]
761
+ }
762
+ ],
763
+ "tool_call": true,
764
+ "structured_output": true,
827
765
  "temperature": true,
828
- "knowledge": "2025-06",
829
- "release_date": "2025-08-26",
830
- "last_updated": "2025-08-26",
766
+ "knowledge": "2025-01",
767
+ "release_date": "2025-12-17",
768
+ "last_updated": "2025-12-17",
831
769
  "modalities": {
832
770
  "input": [
833
771
  "text",
834
- "image"
772
+ "image",
773
+ "video",
774
+ "audio",
775
+ "pdf"
835
776
  ],
836
777
  "output": [
837
- "text",
838
- "image"
778
+ "text"
839
779
  ]
840
780
  },
841
781
  "open_weights": false,
842
782
  "limit": {
843
- "context": 32768,
844
- "output": 32768
783
+ "context": 1048576,
784
+ "output": 65536
845
785
  },
846
786
  "cost": {
847
- "input": 0.3,
848
- "output": 30,
849
- "cache_read": 0.075
787
+ "input": 0.5,
788
+ "output": 3,
789
+ "cache_read": 0.05,
790
+ "input_audio": 1
850
791
  }
851
792
  },
852
- "gemini-2.5-flash-preview-tts": {
853
- "id": "gemini-2.5-flash-preview-tts",
854
- "name": "Gemini 2.5 Flash Preview TTS",
793
+ "gemini-2.5-pro-preview-tts": {
794
+ "id": "gemini-2.5-pro-preview-tts",
795
+ "name": "Gemini 2.5 Pro Preview TTS",
855
796
  "family": "gemini-flash",
856
797
  "attachment": false,
857
798
  "reasoning": false,
858
799
  "tool_call": false,
859
- "temperature": false,
800
+ "temperature": true,
860
801
  "knowledge": "2025-01",
861
802
  "release_date": "2025-05-01",
862
803
  "last_updated": "2025-05-01",
@@ -870,25 +811,36 @@
870
811
  },
871
812
  "open_weights": false,
872
813
  "limit": {
873
- "context": 8000,
874
- "output": 16000
814
+ "context": 8192,
815
+ "output": 16384
875
816
  },
876
817
  "cost": {
877
- "input": 0.5,
878
- "output": 10
818
+ "input": 1,
819
+ "output": 20
879
820
  }
880
821
  },
881
- "gemini-2.5-flash-lite-preview-06-17": {
882
- "id": "gemini-2.5-flash-lite-preview-06-17",
883
- "name": "Gemini 2.5 Flash Lite Preview 06-17",
884
- "family": "gemini-flash-lite",
822
+ "gemini-flash-latest": {
823
+ "id": "gemini-flash-latest",
824
+ "name": "Gemini Flash Latest",
825
+ "family": "gemini-flash",
885
826
  "attachment": true,
886
827
  "reasoning": true,
828
+ "reasoning_options": [
829
+ {
830
+ "type": "toggle"
831
+ },
832
+ {
833
+ "type": "budget_tokens",
834
+ "min": 0,
835
+ "max": 24576
836
+ }
837
+ ],
887
838
  "tool_call": true,
839
+ "structured_output": true,
888
840
  "temperature": true,
889
841
  "knowledge": "2025-01",
890
- "release_date": "2025-06-17",
891
- "last_updated": "2025-06-17",
842
+ "release_date": "2025-09-25",
843
+ "last_updated": "2025-09-25",
892
844
  "modalities": {
893
845
  "input": [
894
846
  "text",
@@ -907,10 +859,10 @@
907
859
  "output": 65536
908
860
  },
909
861
  "cost": {
910
- "input": 0.1,
911
- "output": 0.4,
912
- "cache_read": 0.025,
913
- "input_audio": 0.3
862
+ "input": 0.3,
863
+ "output": 2.5,
864
+ "cache_read": 0.075,
865
+ "input_audio": 1
914
866
  }
915
867
  },
916
868
  "gemini-3.1-flash-lite-preview": {
@@ -919,6 +871,17 @@
919
871
  "family": "gemini-flash-lite",
920
872
  "attachment": true,
921
873
  "reasoning": true,
874
+ "reasoning_options": [
875
+ {
876
+ "type": "effort",
877
+ "values": [
878
+ "minimal",
879
+ "low",
880
+ "medium",
881
+ "high"
882
+ ]
883
+ }
884
+ ],
922
885
  "tool_call": true,
923
886
  "structured_output": true,
924
887
  "temperature": true,
@@ -942,6 +905,7 @@
942
905
  "context": 1048576,
943
906
  "output": 65536
944
907
  },
908
+ "status": "deprecated",
945
909
  "cost": {
946
910
  "input": 0.25,
947
911
  "output": 1.5,
@@ -949,231 +913,10 @@
949
913
  "input_audio": 0.5
950
914
  }
951
915
  },
952
- "gemini-3.1-pro-preview": {
953
- "id": "gemini-3.1-pro-preview",
954
- "name": "Gemini 3.1 Pro Preview",
955
- "family": "gemini-pro",
956
- "attachment": true,
957
- "reasoning": true,
958
- "tool_call": true,
959
- "structured_output": true,
960
- "temperature": true,
961
- "knowledge": "2025-01",
962
- "release_date": "2026-02-19",
963
- "last_updated": "2026-02-19",
964
- "modalities": {
965
- "input": [
966
- "text",
967
- "image",
968
- "video",
969
- "audio",
970
- "pdf"
971
- ],
972
- "output": [
973
- "text"
974
- ]
975
- },
976
- "open_weights": false,
977
- "limit": {
978
- "context": 1048576,
979
- "output": 65536
980
- },
981
- "cost": {
982
- "input": 2,
983
- "output": 12,
984
- "cache_read": 0.2,
985
- "tiers": [
986
- {
987
- "input": 4,
988
- "output": 18,
989
- "cache_read": 0.4,
990
- "tier": {
991
- "type": "context",
992
- "size": 200000
993
- }
994
- }
995
- ],
996
- "context_over_200k": {
997
- "input": 4,
998
- "output": 18,
999
- "cache_read": 0.4
1000
- }
1001
- }
1002
- },
1003
- "gemini-3-flash-preview": {
1004
- "id": "gemini-3-flash-preview",
1005
- "name": "Gemini 3 Flash Preview",
1006
- "family": "gemini-flash",
1007
- "attachment": true,
1008
- "reasoning": true,
1009
- "tool_call": true,
1010
- "structured_output": true,
1011
- "temperature": true,
1012
- "knowledge": "2025-01",
1013
- "release_date": "2025-12-17",
1014
- "last_updated": "2025-12-17",
1015
- "modalities": {
1016
- "input": [
1017
- "text",
1018
- "image",
1019
- "video",
1020
- "audio",
1021
- "pdf"
1022
- ],
1023
- "output": [
1024
- "text"
1025
- ]
1026
- },
1027
- "open_weights": false,
1028
- "limit": {
1029
- "context": 1048576,
1030
- "output": 65536
1031
- },
1032
- "cost": {
1033
- "input": 0.5,
1034
- "output": 3,
1035
- "cache_read": 0.05,
1036
- "input_audio": 1
1037
- }
1038
- },
1039
- "gemini-live-2.5-flash": {
1040
- "id": "gemini-live-2.5-flash",
1041
- "name": "Gemini Live 2.5 Flash",
1042
- "family": "gemini-flash",
1043
- "attachment": true,
1044
- "reasoning": true,
1045
- "tool_call": true,
1046
- "temperature": true,
1047
- "knowledge": "2025-01",
1048
- "release_date": "2025-09-01",
1049
- "last_updated": "2025-09-01",
1050
- "modalities": {
1051
- "input": [
1052
- "text",
1053
- "image",
1054
- "audio",
1055
- "video"
1056
- ],
1057
- "output": [
1058
- "text",
1059
- "audio"
1060
- ]
1061
- },
1062
- "open_weights": false,
1063
- "limit": {
1064
- "context": 128000,
1065
- "output": 8000
1066
- },
1067
- "cost": {
1068
- "input": 0.5,
1069
- "output": 2,
1070
- "input_audio": 3,
1071
- "output_audio": 12
1072
- }
1073
- },
1074
- "gemma-3-12b-it": {
1075
- "id": "gemma-3-12b-it",
1076
- "name": "Gemma 3 12B",
1077
- "family": "gemma",
1078
- "attachment": true,
1079
- "reasoning": false,
1080
- "tool_call": false,
1081
- "structured_output": true,
1082
- "temperature": true,
1083
- "knowledge": "2024-10",
1084
- "release_date": "2025-03-13",
1085
- "last_updated": "2025-03-13",
1086
- "modalities": {
1087
- "input": [
1088
- "text",
1089
- "image"
1090
- ],
1091
- "output": [
1092
- "text"
1093
- ]
1094
- },
1095
- "open_weights": true,
1096
- "limit": {
1097
- "context": 32768,
1098
- "output": 8192
1099
- },
1100
- "cost": {
1101
- "input": 0,
1102
- "output": 0
1103
- }
1104
- },
1105
- "gemini-2.5-flash": {
1106
- "id": "gemini-2.5-flash",
1107
- "name": "Gemini 2.5 Flash",
1108
- "family": "gemini-flash",
1109
- "attachment": true,
1110
- "reasoning": true,
1111
- "tool_call": true,
1112
- "structured_output": true,
1113
- "temperature": true,
1114
- "knowledge": "2025-01",
1115
- "release_date": "2025-03-20",
1116
- "last_updated": "2025-06-05",
1117
- "modalities": {
1118
- "input": [
1119
- "text",
1120
- "image",
1121
- "audio",
1122
- "video",
1123
- "pdf"
1124
- ],
1125
- "output": [
1126
- "text"
1127
- ]
1128
- },
1129
- "open_weights": false,
1130
- "limit": {
1131
- "context": 1048576,
1132
- "output": 65536
1133
- },
1134
- "cost": {
1135
- "input": 0.3,
1136
- "output": 2.5,
1137
- "cache_read": 0.03,
1138
- "input_audio": 1
1139
- }
1140
- },
1141
- "gemini-2.5-flash-image": {
1142
- "id": "gemini-2.5-flash-image",
1143
- "name": "Gemini 2.5 Flash Image",
1144
- "family": "gemini-flash",
1145
- "attachment": true,
1146
- "reasoning": true,
1147
- "tool_call": false,
1148
- "temperature": true,
1149
- "knowledge": "2025-06",
1150
- "release_date": "2025-08-26",
1151
- "last_updated": "2025-08-26",
1152
- "modalities": {
1153
- "input": [
1154
- "text",
1155
- "image"
1156
- ],
1157
- "output": [
1158
- "text",
1159
- "image"
1160
- ]
1161
- },
1162
- "open_weights": false,
1163
- "limit": {
1164
- "context": 32768,
1165
- "output": 32768
1166
- },
1167
- "cost": {
1168
- "input": 0.3,
1169
- "output": 30,
1170
- "cache_read": 0.075
1171
- }
1172
- },
1173
- "gemini-2.0-flash": {
1174
- "id": "gemini-2.0-flash",
1175
- "name": "Gemini 2.0 Flash",
1176
- "family": "gemini-flash",
916
+ "gemini-2.0-flash-lite": {
917
+ "id": "gemini-2.0-flash-lite",
918
+ "name": "Gemini 2.0 Flash-Lite",
919
+ "family": "gemini-flash-lite",
1177
920
  "attachment": true,
1178
921
  "reasoning": false,
1179
922
  "tool_call": true,
@@ -1199,135 +942,10 @@
1199
942
  "context": 1048576,
1200
943
  "output": 8192
1201
944
  },
945
+ "status": "deprecated",
1202
946
  "cost": {
1203
- "input": 0.1,
1204
- "output": 0.4,
1205
- "cache_read": 0.025
1206
- }
1207
- },
1208
- "gemini-1.5-pro": {
1209
- "id": "gemini-1.5-pro",
1210
- "name": "Gemini 1.5 Pro",
1211
- "family": "gemini-pro",
1212
- "attachment": true,
1213
- "reasoning": false,
1214
- "tool_call": true,
1215
- "temperature": true,
1216
- "knowledge": "2024-04",
1217
- "release_date": "2024-02-15",
1218
- "last_updated": "2024-02-15",
1219
- "modalities": {
1220
- "input": [
1221
- "text",
1222
- "image",
1223
- "audio",
1224
- "video"
1225
- ],
1226
- "output": [
1227
- "text"
1228
- ]
1229
- },
1230
- "open_weights": false,
1231
- "limit": {
1232
- "context": 1000000,
1233
- "output": 8192
1234
- },
1235
- "cost": {
1236
- "input": 1.25,
1237
- "output": 5,
1238
- "cache_read": 0.3125
1239
- }
1240
- },
1241
- "gemini-embedding-001": {
1242
- "id": "gemini-embedding-001",
1243
- "name": "Gemini Embedding 001",
1244
- "family": "gemini",
1245
- "attachment": false,
1246
- "reasoning": false,
1247
- "tool_call": false,
1248
- "temperature": false,
1249
- "knowledge": "2025-05",
1250
- "release_date": "2025-05-20",
1251
- "last_updated": "2025-05-20",
1252
- "modalities": {
1253
- "input": [
1254
- "text"
1255
- ],
1256
- "output": [
1257
- "text"
1258
- ]
1259
- },
1260
- "open_weights": false,
1261
- "limit": {
1262
- "context": 2048,
1263
- "output": 3072
1264
- },
1265
- "cost": {
1266
- "input": 0.15,
1267
- "output": 0
1268
- }
1269
- },
1270
- "gemma-3-4b-it": {
1271
- "id": "gemma-3-4b-it",
1272
- "name": "Gemma 3 4B",
1273
- "family": "gemma",
1274
- "attachment": true,
1275
- "reasoning": false,
1276
- "tool_call": false,
1277
- "temperature": true,
1278
- "knowledge": "2024-10",
1279
- "release_date": "2025-03-13",
1280
- "last_updated": "2025-03-13",
1281
- "modalities": {
1282
- "input": [
1283
- "text",
1284
- "image"
1285
- ],
1286
- "output": [
1287
- "text"
1288
- ]
1289
- },
1290
- "open_weights": true,
1291
- "limit": {
1292
- "context": 32768,
1293
- "output": 8192
1294
- },
1295
- "cost": {
1296
- "input": 0,
1297
- "output": 0
1298
- }
1299
- },
1300
- "gemini-1.5-flash-8b": {
1301
- "id": "gemini-1.5-flash-8b",
1302
- "name": "Gemini 1.5 Flash-8B",
1303
- "family": "gemini-flash",
1304
- "attachment": true,
1305
- "reasoning": false,
1306
- "tool_call": true,
1307
- "temperature": true,
1308
- "knowledge": "2024-04",
1309
- "release_date": "2024-10-03",
1310
- "last_updated": "2024-10-03",
1311
- "modalities": {
1312
- "input": [
1313
- "text",
1314
- "image",
1315
- "audio",
1316
- "video"
1317
- ],
1318
- "output": [
1319
- "text"
1320
- ]
1321
- },
1322
- "open_weights": false,
1323
- "limit": {
1324
- "context": 1000000,
1325
- "output": 8192
1326
- },
1327
- "cost": {
1328
- "input": 0.0375,
1329
- "output": 0.15,
1330
- "cache_read": 0.01
947
+ "input": 0.075,
948
+ "output": 0.3
1331
949
  }
1332
950
  }
1333
951
  }