Phase zero: provider discovery, real benchmarks (44 chat models verified), pricing, schema, auth, AI adapters
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
24 changed files +20,001 −0
added
.gitignore
+9 −0
@@ -0,0 +1,9 @@ | |||||
| 1 | +node_modules | ||||
| 2 | +.env | ||||
| 3 | +.env.local | ||||
| 4 | +.env.*.local | ||||
| 5 | +.next | ||||
| 6 | +data/ | ||||
| 7 | +uploads/ | ||||
| 8 | +*.log | ||||
| 9 | +.DS_Store | ||||
added
benchmarks/anthropic-results.json
+2854 −0
@@ -0,0 +1,2854 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:18:11.433Z", | ||||
| 3 | + "provider": "anthropic", | ||||
| 4 | + "budgetUsd": 2, | ||||
| 5 | + "stoppedByBudget": false, | ||||
| 6 | + "models": { | ||||
| 7 | + "claude-fable-5": { | ||||
| 8 | + "provider": "anthropic", | ||||
| 9 | + "kind": "chat", | ||||
| 10 | + "tests": [ | ||||
| 11 | + { | ||||
| 12 | + "test": "basic", | ||||
| 13 | + "ok": true, | ||||
| 14 | + "latencyMs": 2147, | ||||
| 15 | + "ttftMs": 2137, | ||||
| 16 | + "usage": { | ||||
| 17 | + "input": 24, | ||||
| 18 | + "output": 7, | ||||
| 19 | + "cachedInput": 0 | ||||
| 20 | + }, | ||||
| 21 | + "api": "messages", | ||||
| 22 | + "raw": { | ||||
| 23 | + "stop": "end_turn", | ||||
| 24 | + "stop_details": null | ||||
| 25 | + }, | ||||
| 26 | + "sample": "Ottawa", | ||||
| 27 | + "costUsd": 0.00059 | ||||
| 28 | + }, | ||||
| 29 | + { | ||||
| 30 | + "test": "reasoning", | ||||
| 31 | + "ok": true, | ||||
| 32 | + "latencyMs": 3160, | ||||
| 33 | + "ttftMs": 1963, | ||||
| 34 | + "usage": { | ||||
| 35 | + "input": 65, | ||||
| 36 | + "output": 140, | ||||
| 37 | + "cachedInput": 0 | ||||
| 38 | + }, | ||||
| 39 | + "api": "messages", | ||||
| 40 | + "raw": { | ||||
| 41 | + "stop": "end_turn", | ||||
| 42 | + "stop_details": null | ||||
| 43 | + }, | ||||
| 44 | + "sample": "Alice's family includes:\n- Alice (a girl)\n- 3 brothers\n- 2 sisters\n\nFrom the perspective of each brother, his sisters are all the girls in the family. That means Alice's 2 sisters **plus Alice herself**.\n\nSo each brother has 2 + 1 = 3 sisters.\n\nANSWER: 3", | ||||
| 45 | + "costUsd": 0.00765 | ||||
| 46 | + }, | ||||
| 47 | + { | ||||
| 48 | + "test": "math", | ||||
| 49 | + "ok": true, | ||||
| 50 | + "latencyMs": 2291, | ||||
| 51 | + "ttftMs": 1862, | ||||
| 52 | + "usage": { | ||||
| 53 | + "input": 70, | ||||
| 54 | + "output": 46, | ||||
| 55 | + "cachedInput": 0 | ||||
| 56 | + }, | ||||
| 57 | + "api": "messages", | ||||
| 58 | + "raw": { | ||||
| 59 | + "stop": "end_turn", | ||||
| 60 | + "stop_details": null | ||||
| 61 | + }, | ||||
| 62 | + "sample": "a=403;b=2500", | ||||
| 63 | + "costUsd": 0.003 | ||||
| 64 | + }, | ||||
| 65 | + { | ||||
| 66 | + "test": "code", | ||||
| 67 | + "ok": true, | ||||
| 68 | + "latencyMs": 2565, | ||||
| 69 | + "ttftMs": 1602, | ||||
| 70 | + "usage": { | ||||
| 71 | + "input": 68, | ||||
| 72 | + "output": 110, | ||||
| 73 | + "cachedInput": 0 | ||||
| 74 | + }, | ||||
| 75 | + "api": "messages", | ||||
| 76 | + "raw": { | ||||
| 77 | + "stop": "end_turn", | ||||
| 78 | + "stop_details": null | ||||
| 79 | + }, | ||||
| 80 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0) return false;\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 81 | + "costUsd": 0.00618 | ||||
| 82 | + }, | ||||
| 83 | + { | ||||
| 84 | + "test": "french", | ||||
| 85 | + "ok": true, | ||||
| 86 | + "latencyMs": 2786, | ||||
| 87 | + "ttftMs": 853, | ||||
| 88 | + "usage": { | ||||
| 89 | + "input": 49, | ||||
| 90 | + "output": 174, | ||||
| 91 | + "cachedInput": 0 | ||||
| 92 | + }, | ||||
| 93 | + "api": "messages", | ||||
| 94 | + "raw": { | ||||
| 95 | + "stop": "end_turn", | ||||
| 96 | + "stop_details": null | ||||
| 97 | + }, | ||||
| 98 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction ou de remplacement du bâtiment, duquel on déduit la dépréciation liée à l'âge, à l'usure et à l'obsolescence. Elle est particulièrement utilisée pour ", | ||||
| 99 | + "costUsd": 0.00919 | ||||
| 100 | + }, | ||||
| 101 | + { | ||||
| 102 | + "test": "english", | ||||
| 103 | + "ok": true, | ||||
| 104 | + "latencyMs": 3132, | ||||
| 105 | + "ttftMs": 1790, | ||||
| 106 | + "usage": { | ||||
| 107 | + "input": 29, | ||||
| 108 | + "output": 124, | ||||
| 109 | + "cachedInput": 0 | ||||
| 110 | + }, | ||||
| 111 | + "api": "messages", | ||||
| 112 | + "raw": { | ||||
| 113 | + "stop": "end_turn", | ||||
| 114 | + "stop_details": null | ||||
| 115 | + }, | ||||
| 116 | + "sample": "A hedonic pricing model is an economic method that estimates the value of a good by breaking it down into its individual characteristics and determining how much each attribute contributes to the overall price. It is most commonly used in real estate, where a home's price is modeled as a function of", | ||||
| 117 | + "costUsd": 0.00649 | ||||
| 118 | + }, | ||||
| 119 | + { | ||||
| 120 | + "test": "json", | ||||
| 121 | + "ok": true, | ||||
| 122 | + "latencyMs": 2691, | ||||
| 123 | + "ttftMs": 2144, | ||||
| 124 | + "usage": { | ||||
| 125 | + "input": 69, | ||||
| 126 | + "output": 77, | ||||
| 127 | + "cachedInput": 0 | ||||
| 128 | + }, | ||||
| 129 | + "api": "messages", | ||||
| 130 | + "raw": { | ||||
| 131 | + "stop": "end_turn", | ||||
| 132 | + "stop_details": null | ||||
| 133 | + }, | ||||
| 134 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 135 | + "costUsd": 0.00454 | ||||
| 136 | + }, | ||||
| 137 | + { | ||||
| 138 | + "test": "tools", | ||||
| 139 | + "ok": true, | ||||
| 140 | + "latencyMs": 2758, | ||||
| 141 | + "ttftMs": 1765, | ||||
| 142 | + "usage": { | ||||
| 143 | + "input": 415, | ||||
| 144 | + "output": 75, | ||||
| 145 | + "cachedInput": 0 | ||||
| 146 | + }, | ||||
| 147 | + "api": "messages", | ||||
| 148 | + "raw": { | ||||
| 149 | + "stop": "tool_use", | ||||
| 150 | + "stop_details": null | ||||
| 151 | + }, | ||||
| 152 | + "sample": "I'll check the current weather in Gatineau for you.", | ||||
| 153 | + "costUsd": 0.0079 | ||||
| 154 | + }, | ||||
| 155 | + { | ||||
| 156 | + "test": "vision", | ||||
| 157 | + "ok": true, | ||||
| 158 | + "latencyMs": 2103, | ||||
| 159 | + "ttftMs": 1532, | ||||
| 160 | + "usage": { | ||||
| 161 | + "input": 217, | ||||
| 162 | + "output": 10, | ||||
| 163 | + "cachedInput": 0 | ||||
| 164 | + }, | ||||
| 165 | + "api": "messages", | ||||
| 166 | + "raw": { | ||||
| 167 | + "stop": "end_turn", | ||||
| 168 | + "stop_details": null | ||||
| 169 | + }, | ||||
| 170 | + "sample": "circles=3; other=square", | ||||
| 171 | + "costUsd": 0.00267 | ||||
| 172 | + }, | ||||
| 173 | + { | ||||
| 174 | + "test": "longctx", | ||||
| 175 | + "ok": true, | ||||
| 176 | + "latencyMs": 2350, | ||||
| 177 | + "ttftMs": 1876, | ||||
| 178 | + "usage": { | ||||
| 179 | + "input": 15022, | ||||
| 180 | + "output": 10, | ||||
| 181 | + "cachedInput": 0 | ||||
| 182 | + }, | ||||
| 183 | + "api": "messages", | ||||
| 184 | + "raw": { | ||||
| 185 | + "stop": "end_turn", | ||||
| 186 | + "stop_details": null | ||||
| 187 | + }, | ||||
| 188 | + "sample": "7431-ALPHA", | ||||
| 189 | + "costUsd": 0.15072 | ||||
| 190 | + }, | ||||
| 191 | + { | ||||
| 192 | + "test": "streaming", | ||||
| 193 | + "ok": true, | ||||
| 194 | + "latencyMs": 3054, | ||||
| 195 | + "ttftMs": 1882, | ||||
| 196 | + "usage": { | ||||
| 197 | + "input": 21, | ||||
| 198 | + "output": 70, | ||||
| 199 | + "cachedInput": 0 | ||||
| 200 | + }, | ||||
| 201 | + "api": "messages", | ||||
| 202 | + "raw": { | ||||
| 203 | + "stop": "end_turn", | ||||
| 204 | + "stop_details": null | ||||
| 205 | + }, | ||||
| 206 | + "sample": "**Winter in Quebec**\n\nSnow blankets old streets,\nfrost paints the Château's windows—\nwoodsmoke warms the night.", | ||||
| 207 | + "costUsd": 0.00371 | ||||
| 208 | + } | ||||
| 209 | + ] | ||||
| 210 | + }, | ||||
| 211 | + "claude-fable-5-1": { | ||||
| 212 | + "provider": "anthropic", | ||||
| 213 | + "kind": "chat", | ||||
| 214 | + "tests": [ | ||||
| 215 | + { | ||||
| 216 | + "test": "basic", | ||||
| 217 | + "ok": true, | ||||
| 218 | + "latencyMs": 769, | ||||
| 219 | + "ttftMs": 766, | ||||
| 220 | + "usage": { | ||||
| 221 | + "input": 26, | ||||
| 222 | + "output": 7, | ||||
| 223 | + "cachedInput": 0 | ||||
| 224 | + }, | ||||
| 225 | + "api": "messages", | ||||
| 226 | + "raw": { | ||||
| 227 | + "stop": "end_turn", | ||||
| 228 | + "stop_details": null | ||||
| 229 | + }, | ||||
| 230 | + "sample": "Ottawa", | ||||
| 231 | + "costUsd": 0.00061 | ||||
| 232 | + }, | ||||
| 233 | + { | ||||
| 234 | + "test": "reasoning", | ||||
| 235 | + "ok": true, | ||||
| 236 | + "latencyMs": 1321, | ||||
| 237 | + "ttftMs": 353, | ||||
| 238 | + "usage": { | ||||
| 239 | + "input": 67, | ||||
| 240 | + "output": 71, | ||||
| 241 | + "cachedInput": 0 | ||||
| 242 | + }, | ||||
| 243 | + "api": "messages", | ||||
| 244 | + "raw": { | ||||
| 245 | + "stop": "end_turn", | ||||
| 246 | + "stop_details": null | ||||
| 247 | + }, | ||||
| 248 | + "sample": "Alice has 2 sisters, and Alice herself is also a sister to her brothers. So each brother has Alice plus her 2 sisters as sisters.\n\n2 + 1 = 3\n\nANSWER: 3", | ||||
| 249 | + "costUsd": 0.00422 | ||||
| 250 | + }, | ||||
| 251 | + { | ||||
| 252 | + "test": "math", | ||||
| 253 | + "ok": true, | ||||
| 254 | + "latencyMs": 808, | ||||
| 255 | + "ttftMs": 364, | ||||
| 256 | + "usage": { | ||||
| 257 | + "input": 72, | ||||
| 258 | + "output": 10, | ||||
| 259 | + "cachedInput": 0 | ||||
| 260 | + }, | ||||
| 261 | + "api": "messages", | ||||
| 262 | + "raw": { | ||||
| 263 | + "stop": "end_turn", | ||||
| 264 | + "stop_details": null | ||||
| 265 | + }, | ||||
| 266 | + "sample": "a=403;b=2500", | ||||
| 267 | + "costUsd": 0.00122 | ||||
| 268 | + }, | ||||
| 269 | + { | ||||
| 270 | + "test": "code", | ||||
| 271 | + "ok": true, | ||||
| 272 | + "latencyMs": 1489, | ||||
| 273 | + "ttftMs": 386, | ||||
| 274 | + "usage": { | ||||
| 275 | + "input": 70, | ||||
| 276 | + "output": 138, | ||||
| 277 | + "cachedInput": 0 | ||||
| 278 | + }, | ||||
| 279 | + "api": "messages", | ||||
| 280 | + "raw": { | ||||
| 281 | + "stop": "end_turn", | ||||
| 282 | + "stop_details": null | ||||
| 283 | + }, | ||||
| 284 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 285 | + "costUsd": 0.0076 | ||||
| 286 | + }, | ||||
| 287 | + { | ||||
| 288 | + "test": "french", | ||||
| 289 | + "ok": true, | ||||
| 290 | + "latencyMs": 1990, | ||||
| 291 | + "ttftMs": 344, | ||||
| 292 | + "usage": { | ||||
| 293 | + "input": 51, | ||||
| 294 | + "output": 176, | ||||
| 295 | + "cachedInput": 0 | ||||
| 296 | + }, | ||||
| 297 | + "api": "messages", | ||||
| 298 | + "raw": { | ||||
| 299 | + "stop": "end_turn", | ||||
| 300 | + "stop_details": null | ||||
| 301 | + }, | ||||
| 302 | + "sample": "La méthode du coût est une approche d'évaluation immobilière qui estime la valeur d'un bien en additionnant la valeur du terrain à la valeur de reconstruction (ou de remplacement) du bâtiment, puis en déduisant la dépréciation liée à l'usure physique, à l'obsolescence fonctionnelle ou économique. El", | ||||
| 303 | + "costUsd": 0.00931 | ||||
| 304 | + }, | ||||
| 305 | + { | ||||
| 306 | + "test": "english", | ||||
| 307 | + "ok": true, | ||||
| 308 | + "latencyMs": 2732, | ||||
| 309 | + "ttftMs": 339, | ||||
| 310 | + "usage": { | ||||
| 311 | + "input": 31, | ||||
| 312 | + "output": 156, | ||||
| 313 | + "cachedInput": 0 | ||||
| 314 | + }, | ||||
| 315 | + "api": "messages", | ||||
| 316 | + "raw": { | ||||
| 317 | + "stop": "end_turn", | ||||
| 318 | + "stop_details": null | ||||
| 319 | + }, | ||||
| 320 | + "sample": "A hedonic pricing model is an economic method that estimates the value of a good by breaking its price down into the implicit prices of its individual characteristics, based on the idea that buyers pay for a bundle of attributes rather than the item as a whole. For example, in real estate, a home's ", | ||||
| 321 | + "costUsd": 0.00811 | ||||
| 322 | + }, | ||||
| 323 | + { | ||||
| 324 | + "test": "json", | ||||
| 325 | + "ok": true, | ||||
| 326 | + "latencyMs": 855, | ||||
| 327 | + "ttftMs": 318, | ||||
| 328 | + "usage": { | ||||
| 329 | + "input": 71, | ||||
| 330 | + "output": 41, | ||||
| 331 | + "cachedInput": 0 | ||||
| 332 | + }, | ||||
| 333 | + "api": "messages", | ||||
| 334 | + "raw": { | ||||
| 335 | + "stop": "end_turn", | ||||
| 336 | + "stop_details": null | ||||
| 337 | + }, | ||||
| 338 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 339 | + "costUsd": 0.00276 | ||||
| 340 | + }, | ||||
| 341 | + { | ||||
| 342 | + "test": "tools", | ||||
| 343 | + "ok": true, | ||||
| 344 | + "latencyMs": 1380, | ||||
| 345 | + "usage": { | ||||
| 346 | + "input": 413, | ||||
| 347 | + "output": 57, | ||||
| 348 | + "cachedInput": 0 | ||||
| 349 | + }, | ||||
| 350 | + "api": "messages", | ||||
| 351 | + "raw": { | ||||
| 352 | + "stop": "tool_use", | ||||
| 353 | + "stop_details": null | ||||
| 354 | + }, | ||||
| 355 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 356 | + "costUsd": 0.00698 | ||||
| 357 | + }, | ||||
| 358 | + { | ||||
| 359 | + "test": "vision", | ||||
| 360 | + "ok": true, | ||||
| 361 | + "latencyMs": 749, | ||||
| 362 | + "ttftMs": 406, | ||||
| 363 | + "usage": { | ||||
| 364 | + "input": 219, | ||||
| 365 | + "output": 10, | ||||
| 366 | + "cachedInput": 0 | ||||
| 367 | + }, | ||||
| 368 | + "api": "messages", | ||||
| 369 | + "raw": { | ||||
| 370 | + "stop": "end_turn", | ||||
| 371 | + "stop_details": null | ||||
| 372 | + }, | ||||
| 373 | + "sample": "circles=3; other=square", | ||||
| 374 | + "costUsd": 0.00269 | ||||
| 375 | + }, | ||||
| 376 | + { | ||||
| 377 | + "test": "longctx", | ||||
| 378 | + "ok": true, | ||||
| 379 | + "latencyMs": 2357, | ||||
| 380 | + "ttftMs": 2292, | ||||
| 381 | + "usage": { | ||||
| 382 | + "input": 15024, | ||||
| 383 | + "output": 148, | ||||
| 384 | + "cachedInput": 0 | ||||
| 385 | + }, | ||||
| 386 | + "api": "messages", | ||||
| 387 | + "raw": { | ||||
| 388 | + "stop": "end_turn", | ||||
| 389 | + "stop_details": null | ||||
| 390 | + }, | ||||
| 391 | + "sample": "7431-ALPHA", | ||||
| 392 | + "costUsd": 0.15764 | ||||
| 393 | + }, | ||||
| 394 | + { | ||||
| 395 | + "test": "streaming", | ||||
| 396 | + "ok": true, | ||||
| 397 | + "latencyMs": 1001, | ||||
| 398 | + "ttftMs": 343, | ||||
| 399 | + "usage": { | ||||
| 400 | + "input": 23, | ||||
| 401 | + "output": 38, | ||||
| 402 | + "cachedInput": 0 | ||||
| 403 | + }, | ||||
| 404 | + "api": "messages", | ||||
| 405 | + "raw": { | ||||
| 406 | + "stop": "end_turn", | ||||
| 407 | + "stop_details": null | ||||
| 408 | + }, | ||||
| 409 | + "sample": "Snow buries the stairs—\nspiral iron, white and still,\nthe Saint Lawrence sleeps.", | ||||
| 410 | + "costUsd": 0.00213 | ||||
| 411 | + } | ||||
| 412 | + ] | ||||
| 413 | + }, | ||||
| 414 | + "claude-haiku-4-5-20251001": { | ||||
| 415 | + "provider": "anthropic", | ||||
| 416 | + "kind": "chat", | ||||
| 417 | + "tests": [ | ||||
| 418 | + { | ||||
| 419 | + "test": "basic", | ||||
| 420 | + "ok": true, | ||||
| 421 | + "latencyMs": 589, | ||||
| 422 | + "ttftMs": 587, | ||||
| 423 | + "usage": { | ||||
| 424 | + "input": 20, | ||||
| 425 | + "output": 4, | ||||
| 426 | + "cachedInput": 0 | ||||
| 427 | + }, | ||||
| 428 | + "api": "messages", | ||||
| 429 | + "raw": { | ||||
| 430 | + "stop": "end_turn", | ||||
| 431 | + "stop_details": null | ||||
| 432 | + }, | ||||
| 433 | + "sample": "Ottawa", | ||||
| 434 | + "costUsd": 0.00004 | ||||
| 435 | + }, | ||||
| 436 | + { | ||||
| 437 | + "test": "reasoning", | ||||
| 438 | + "ok": true, | ||||
| 439 | + "latencyMs": 1927, | ||||
| 440 | + "ttftMs": 377, | ||||
| 441 | + "usage": { | ||||
| 442 | + "input": 48, | ||||
| 443 | + "output": 163, | ||||
| 444 | + "cachedInput": 0 | ||||
| 445 | + }, | ||||
| 446 | + "api": "messages", | ||||
| 447 | + "raw": { | ||||
| 448 | + "stop": "end_turn", | ||||
| 449 | + "stop_details": null | ||||
| 450 | + }, | ||||
| 451 | + "sample": "Let me think through this step by step.\n\nAlice has:\n- 3 brothers\n- 2 sisters\n\nThis means in Alice's family, there are:\n- Alice (1 girl)\n- Alice's 2 sisters (2 more girls)\n- Alice's 3 brothers (3 boys)\n\nSo the total number of girls in the family is: Alice + her 2 sisters = 3 girls\n\nEach of Alice's br", | ||||
| 452 | + "costUsd": 0.000863 | ||||
| 453 | + }, | ||||
| 454 | + { | ||||
| 455 | + "test": "math", | ||||
| 456 | + "ok": true, | ||||
| 457 | + "latencyMs": 494, | ||||
| 458 | + "ttftMs": 369, | ||||
| 459 | + "usage": { | ||||
| 460 | + "input": 58, | ||||
| 461 | + "output": 11, | ||||
| 462 | + "cachedInput": 0 | ||||
| 463 | + }, | ||||
| 464 | + "api": "messages", | ||||
| 465 | + "raw": { | ||||
| 466 | + "stop": "end_turn", | ||||
| 467 | + "stop_details": null | ||||
| 468 | + }, | ||||
| 469 | + "sample": "a=403;b=2500", | ||||
| 470 | + "costUsd": 0.000113 | ||||
| 471 | + }, | ||||
| 472 | + { | ||||
| 473 | + "test": "code", | ||||
| 474 | + "ok": true, | ||||
| 475 | + "latencyMs": 1279, | ||||
| 476 | + "ttftMs": 578, | ||||
| 477 | + "usage": { | ||||
| 478 | + "input": 50, | ||||
| 479 | + "output": 130, | ||||
| 480 | + "cachedInput": 0 | ||||
| 481 | + }, | ||||
| 482 | + "api": "messages", | ||||
| 483 | + "raw": { | ||||
| 484 | + "stop": "end_turn", | ||||
| 485 | + "stop_details": null | ||||
| 486 | + }, | ||||
| 487 | + "sample": "\n```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n \n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n \n return true;\n}\n```", | ||||
| 488 | + "costUsd": 0.0007 | ||||
| 489 | + }, | ||||
| 490 | + { | ||||
| 491 | + "test": "french", | ||||
| 492 | + "ok": true, | ||||
| 493 | + "latencyMs": 1354, | ||||
| 494 | + "ttftMs": 389, | ||||
| 495 | + "usage": { | ||||
| 496 | + "input": 40, | ||||
| 497 | + "output": 110, | ||||
| 498 | + "cachedInput": 0 | ||||
| 499 | + }, | ||||
| 500 | + "api": "messages", | ||||
| 501 | + "raw": { | ||||
| 502 | + "stop": "end_turn", | ||||
| 503 | + "stop_details": null | ||||
| 504 | + }, | ||||
| 505 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant le coût du terrain et celui de la reconstruction du bâtiment à neuf, puis en soustrayant la dépréciation liée à l'âge et l'usure. Cette approche est particulièrement utilisée pour les propriétés neuve", | ||||
| 506 | + "costUsd": 0.00059 | ||||
| 507 | + }, | ||||
| 508 | + { | ||||
| 509 | + "test": "english", | ||||
| 510 | + "ok": true, | ||||
| 511 | + "latencyMs": 1119, | ||||
| 512 | + "ttftMs": 377, | ||||
| 513 | + "usage": { | ||||
| 514 | + "input": 21, | ||||
| 515 | + "output": 66, | ||||
| 516 | + "cachedInput": 0 | ||||
| 517 | + }, | ||||
| 518 | + "api": "messages", | ||||
| 519 | + "raw": { | ||||
| 520 | + "stop": "end_turn", | ||||
| 521 | + "stop_details": null | ||||
| 522 | + }, | ||||
| 523 | + "sample": "A hedonic pricing model is a statistical technique that decomposes the price of a good into its constituent characteristics and estimates the value attributable to each feature. It's commonly used in real estate to determine how factors like square footage, location, and number of bedrooms individua", | ||||
| 524 | + "costUsd": 0.000351 | ||||
| 525 | + }, | ||||
| 526 | + { | ||||
| 527 | + "test": "json", | ||||
| 528 | + "ok": true, | ||||
| 529 | + "latencyMs": 692, | ||||
| 530 | + "ttftMs": 438, | ||||
| 531 | + "usage": { | ||||
| 532 | + "input": 56, | ||||
| 533 | + "output": 48, | ||||
| 534 | + "cachedInput": 0 | ||||
| 535 | + }, | ||||
| 536 | + "api": "messages", | ||||
| 537 | + "raw": { | ||||
| 538 | + "stop": "end_turn", | ||||
| 539 | + "stop_details": null | ||||
| 540 | + }, | ||||
| 541 | + "sample": "```json\n{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 282000\n}\n```", | ||||
| 542 | + "costUsd": 0.000296 | ||||
| 543 | + }, | ||||
| 544 | + { | ||||
| 545 | + "test": "tools", | ||||
| 546 | + "ok": true, | ||||
| 547 | + "latencyMs": 1949, | ||||
| 548 | + "usage": { | ||||
| 549 | + "input": 595, | ||||
| 550 | + "output": 59, | ||||
| 551 | + "cachedInput": 0 | ||||
| 552 | + }, | ||||
| 553 | + "api": "messages", | ||||
| 554 | + "raw": { | ||||
| 555 | + "stop": "tool_use", | ||||
| 556 | + "stop_details": null | ||||
| 557 | + }, | ||||
| 558 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 559 | + "costUsd": 0.00089 | ||||
| 560 | + }, | ||||
| 561 | + { | ||||
| 562 | + "test": "vision", | ||||
| 563 | + "ok": true, | ||||
| 564 | + "latencyMs": 487, | ||||
| 565 | + "ttftMs": 402, | ||||
| 566 | + "usage": { | ||||
| 567 | + "input": 211, | ||||
| 568 | + "output": 10, | ||||
| 569 | + "cachedInput": 0 | ||||
| 570 | + }, | ||||
| 571 | + "api": "messages", | ||||
| 572 | + "raw": { | ||||
| 573 | + "stop": "end_turn", | ||||
| 574 | + "stop_details": null | ||||
| 575 | + }, | ||||
| 576 | + "sample": "circles=3; other=square", | ||||
| 577 | + "costUsd": 0.000261 | ||||
| 578 | + }, | ||||
| 579 | + { | ||||
| 580 | + "test": "longctx", | ||||
| 581 | + "ok": true, | ||||
| 582 | + "latencyMs": 607, | ||||
| 583 | + "ttftMs": 542, | ||||
| 584 | + "usage": { | ||||
| 585 | + "input": 11100, | ||||
| 586 | + "output": 9, | ||||
| 587 | + "cachedInput": 0 | ||||
| 588 | + }, | ||||
| 589 | + "api": "messages", | ||||
| 590 | + "raw": { | ||||
| 591 | + "stop": "end_turn", | ||||
| 592 | + "stop_details": null | ||||
| 593 | + }, | ||||
| 594 | + "sample": "7431-ALPHA", | ||||
| 595 | + "costUsd": 0.011145 | ||||
| 596 | + }, | ||||
| 597 | + { | ||||
| 598 | + "test": "streaming", | ||||
| 599 | + "ok": true, | ||||
| 600 | + "latencyMs": 699, | ||||
| 601 | + "ttftMs": 405, | ||||
| 602 | + "usage": { | ||||
| 603 | + "input": 16, | ||||
| 604 | + "output": 30, | ||||
| 605 | + "cachedInput": 0 | ||||
| 606 | + }, | ||||
| 607 | + "api": "messages", | ||||
| 608 | + "raw": { | ||||
| 609 | + "stop": "end_turn", | ||||
| 610 | + "stop_details": null | ||||
| 611 | + }, | ||||
| 612 | + "sample": "# Winter in Quebec\n\nSnow blankets the pines,\nMontreal's streets fall silent—\nFrost paints frozen dreams.", | ||||
| 613 | + "costUsd": 0.000166 | ||||
| 614 | + } | ||||
| 615 | + ] | ||||
| 616 | + }, | ||||
| 617 | + "claude-haiku-5-5": { | ||||
| 618 | + "provider": "anthropic", | ||||
| 619 | + "kind": "chat", | ||||
| 620 | + "tests": [ | ||||
| 621 | + { | ||||
| 622 | + "test": "basic", | ||||
| 623 | + "ok": true, | ||||
| 624 | + "latencyMs": 702, | ||||
| 625 | + "ttftMs": 695, | ||||
| 626 | + "usage": { | ||||
| 627 | + "input": 26, | ||||
| 628 | + "output": 7, | ||||
| 629 | + "cachedInput": 0 | ||||
| 630 | + }, | ||||
| 631 | + "api": "messages", | ||||
| 632 | + "raw": { | ||||
| 633 | + "stop": "end_turn", | ||||
| 634 | + "stop_details": null | ||||
| 635 | + }, | ||||
| 636 | + "sample": "Ottawa", | ||||
| 637 | + "costUsd": 0.0000061 | ||||
| 638 | + }, | ||||
| 639 | + { | ||||
| 640 | + "test": "reasoning", | ||||
| 641 | + "ok": true, | ||||
| 642 | + "latencyMs": 1564, | ||||
| 643 | + "ttftMs": 1099, | ||||
| 644 | + "usage": { | ||||
| 645 | + "input": 67, | ||||
| 646 | + "output": 230, | ||||
| 647 | + "cachedInput": 0 | ||||
| 648 | + }, | ||||
| 649 | + "api": "messages", | ||||
| 650 | + "raw": { | ||||
| 651 | + "stop": "end_turn", | ||||
| 652 | + "stop_details": null | ||||
| 653 | + }, | ||||
| 654 | + "sample": "Alice is a girl, so she is also a sister to her brothers. Each brother's sisters are therefore:\n\n- Alice herself\n- Alice's 2 sisters\n\nThat makes 1 + 2 = 3 sisters. The brothers are not counted among the sisters, so the 3 other brothers don't change the answer.\n\nANSWER: 3", | ||||
| 655 | + "costUsd": 0.0001217 | ||||
| 656 | + }, | ||||
| 657 | + { | ||||
| 658 | + "test": "math", | ||||
| 659 | + "ok": true, | ||||
| 660 | + "latencyMs": 732, | ||||
| 661 | + "ttftMs": 702, | ||||
| 662 | + "usage": { | ||||
| 663 | + "input": 72, | ||||
| 664 | + "output": 66, | ||||
| 665 | + "cachedInput": 0 | ||||
| 666 | + }, | ||||
| 667 | + "api": "messages", | ||||
| 668 | + "raw": { | ||||
| 669 | + "stop": "end_turn", | ||||
| 670 | + "stop_details": null | ||||
| 671 | + }, | ||||
| 672 | + "sample": "a=403;b=2500", | ||||
| 673 | + "costUsd": 0.0000402 | ||||
| 674 | + }, | ||||
| 675 | + { | ||||
| 676 | + "test": "code", | ||||
| 677 | + "ok": true, | ||||
| 678 | + "latencyMs": 883, | ||||
| 679 | + "ttftMs": 333, | ||||
| 680 | + "usage": { | ||||
| 681 | + "input": 70, | ||||
| 682 | + "output": 126, | ||||
| 683 | + "cachedInput": 0 | ||||
| 684 | + }, | ||||
| 685 | + "api": "messages", | ||||
| 686 | + "raw": { | ||||
| 687 | + "stop": "end_turn", | ||||
| 688 | + "stop_details": null | ||||
| 689 | + }, | ||||
| 690 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 691 | + "costUsd": 0.00007 | ||||
| 692 | + }, | ||||
| 693 | + { | ||||
| 694 | + "test": "french", | ||||
| 695 | + "ok": true, | ||||
| 696 | + "latencyMs": 1540, | ||||
| 697 | + "ttftMs": 637, | ||||
| 698 | + "usage": { | ||||
| 699 | + "input": 51, | ||||
| 700 | + "output": 189, | ||||
| 701 | + "cachedInput": 0 | ||||
| 702 | + }, | ||||
| 703 | + "api": "messages", | ||||
| 704 | + "raw": { | ||||
| 705 | + "stop": "end_turn", | ||||
| 706 | + "stop_details": null | ||||
| 707 | + }, | ||||
| 708 | + "sample": "La méthode du coût, en évaluation immobilière, consiste à estimer la valeur d'un bien en additionnant le coût de reconstruction ou de remplacement de la construction (diminué de la dépréciation liée à son âge, son état et son obsolescence) à la valeur du terrain considéré comme libre. Elle est parti", | ||||
| 709 | + "costUsd": 0.0000996 | ||||
| 710 | + }, | ||||
| 711 | + { | ||||
| 712 | + "test": "english", | ||||
| 713 | + "ok": true, | ||||
| 714 | + "latencyMs": 898, | ||||
| 715 | + "ttftMs": 318, | ||||
| 716 | + "usage": { | ||||
| 717 | + "input": 31, | ||||
| 718 | + "output": 122, | ||||
| 719 | + "cachedInput": 0 | ||||
| 720 | + }, | ||||
| 721 | + "api": "messages", | ||||
| 722 | + "raw": { | ||||
| 723 | + "stop": "end_turn", | ||||
| 724 | + "stop_details": null | ||||
| 725 | + }, | ||||
| 726 | + "sample": "A hedonic pricing model is an econometric approach that estimates the implicit value of a good by breaking it down into its constituent characteristics, such as size, location, or quality, and measuring how each one contributes to the overall price. It is commonly applied to heterogeneous goods like", | ||||
| 727 | + "costUsd": 0.0000641 | ||||
| 728 | + }, | ||||
| 729 | + { | ||||
| 730 | + "test": "json", | ||||
| 731 | + "ok": true, | ||||
| 732 | + "latencyMs": 705, | ||||
| 733 | + "ttftMs": 447, | ||||
| 734 | + "usage": { | ||||
| 735 | + "input": 71, | ||||
| 736 | + "output": 41, | ||||
| 737 | + "cachedInput": 0 | ||||
| 738 | + }, | ||||
| 739 | + "api": "messages", | ||||
| 740 | + "raw": { | ||||
| 741 | + "stop": "end_turn", | ||||
| 742 | + "stop_details": null | ||||
| 743 | + }, | ||||
| 744 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291000}", | ||||
| 745 | + "costUsd": 0.0000276 | ||||
| 746 | + }, | ||||
| 747 | + { | ||||
| 748 | + "test": "tools", | ||||
| 749 | + "ok": true, | ||||
| 750 | + "latencyMs": 920, | ||||
| 751 | + "usage": { | ||||
| 752 | + "input": 413, | ||||
| 753 | + "output": 57, | ||||
| 754 | + "cachedInput": 0 | ||||
| 755 | + }, | ||||
| 756 | + "api": "messages", | ||||
| 757 | + "raw": { | ||||
| 758 | + "stop": "tool_use", | ||||
| 759 | + "stop_details": null | ||||
| 760 | + }, | ||||
| 761 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 762 | + "costUsd": 0.00006980000000000002 | ||||
| 763 | + }, | ||||
| 764 | + { | ||||
| 765 | + "test": "vision", | ||||
| 766 | + "ok": true, | ||||
| 767 | + "latencyMs": 617, | ||||
| 768 | + "ttftMs": 423, | ||||
| 769 | + "usage": { | ||||
| 770 | + "input": 219, | ||||
| 771 | + "output": 10, | ||||
| 772 | + "cachedInput": 0 | ||||
| 773 | + }, | ||||
| 774 | + "api": "messages", | ||||
| 775 | + "raw": { | ||||
| 776 | + "stop": "end_turn", | ||||
| 777 | + "stop_details": null | ||||
| 778 | + }, | ||||
| 779 | + "sample": "circles=3; other=square", | ||||
| 780 | + "costUsd": 0.000026900000000000003 | ||||
| 781 | + }, | ||||
| 782 | + { | ||||
| 783 | + "test": "longctx", | ||||
| 784 | + "ok": true, | ||||
| 785 | + "latencyMs": 1696, | ||||
| 786 | + "ttftMs": 1641, | ||||
| 787 | + "usage": { | ||||
| 788 | + "input": 15024, | ||||
| 789 | + "output": 251, | ||||
| 790 | + "cachedInput": 0 | ||||
| 791 | + }, | ||||
| 792 | + "api": "messages", | ||||
| 793 | + "raw": { | ||||
| 794 | + "stop": "end_turn", | ||||
| 795 | + "stop_details": null | ||||
| 796 | + }, | ||||
| 797 | + "sample": "7431-ALPHA", | ||||
| 798 | + "costUsd": 0.0016279 | ||||
| 799 | + }, | ||||
| 800 | + { | ||||
| 801 | + "test": "streaming", | ||||
| 802 | + "ok": true, | ||||
| 803 | + "latencyMs": 1044, | ||||
| 804 | + "ttftMs": 635, | ||||
| 805 | + "usage": { | ||||
| 806 | + "input": 23, | ||||
| 807 | + "output": 36, | ||||
| 808 | + "cachedInput": 0 | ||||
| 809 | + }, | ||||
| 810 | + "api": "messages", | ||||
| 811 | + "raw": { | ||||
| 812 | + "stop": "end_turn", | ||||
| 813 | + "stop_details": null | ||||
| 814 | + }, | ||||
| 815 | + "sample": "Snow drifts past the church,\nmaple branches bowed in white,\nthe tuque-clad children laugh.", | ||||
| 816 | + "costUsd": 0.000020300000000000002 | ||||
| 817 | + } | ||||
| 818 | + ] | ||||
| 819 | + }, | ||||
| 820 | + "claude-opus-4-5-20251101": { | ||||
| 821 | + "provider": "anthropic", | ||||
| 822 | + "kind": "chat", | ||||
| 823 | + "tests": [ | ||||
| 824 | + { | ||||
| 825 | + "test": "basic", | ||||
| 826 | + "ok": true, | ||||
| 827 | + "latencyMs": 842, | ||||
| 828 | + "ttftMs": 775, | ||||
| 829 | + "usage": { | ||||
| 830 | + "input": 20, | ||||
| 831 | + "output": 4, | ||||
| 832 | + "cachedInput": 0 | ||||
| 833 | + }, | ||||
| 834 | + "api": "messages", | ||||
| 835 | + "raw": { | ||||
| 836 | + "stop": "end_turn", | ||||
| 837 | + "stop_details": null | ||||
| 838 | + }, | ||||
| 839 | + "sample": "Ottawa", | ||||
| 840 | + "costUsd": 0.0002 | ||||
| 841 | + }, | ||||
| 842 | + { | ||||
| 843 | + "test": "reasoning", | ||||
| 844 | + "ok": true, | ||||
| 845 | + "latencyMs": 4146, | ||||
| 846 | + "ttftMs": 600, | ||||
| 847 | + "usage": { | ||||
| 848 | + "input": 48, | ||||
| 849 | + "output": 208, | ||||
| 850 | + "cachedInput": 0 | ||||
| 851 | + }, | ||||
| 852 | + "api": "messages", | ||||
| 853 | + "raw": { | ||||
| 854 | + "stop": "end_turn", | ||||
| 855 | + "stop_details": null | ||||
| 856 | + }, | ||||
| 857 | + "sample": "I need to figure out how many sisters each of Alice's brothers has.\n\nLet me think about this carefully:\n\n1. Alice has 3 brothers and 2 sisters.\n2. This means Alice is part of a family with multiple siblings.\n3. Alice herself is female (Alice is typically a female name).\n\nNow, let me count all the ch", | ||||
| 858 | + "costUsd": 0.00544 | ||||
| 859 | + }, | ||||
| 860 | + { | ||||
| 861 | + "test": "math", | ||||
| 862 | + "ok": true, | ||||
| 863 | + "latencyMs": 1187, | ||||
| 864 | + "ttftMs": 881, | ||||
| 865 | + "usage": { | ||||
| 866 | + "input": 58, | ||||
| 867 | + "output": 11, | ||||
| 868 | + "cachedInput": 0 | ||||
| 869 | + }, | ||||
| 870 | + "api": "messages", | ||||
| 871 | + "raw": { | ||||
| 872 | + "stop": "end_turn", | ||||
| 873 | + "stop_details": null | ||||
| 874 | + }, | ||||
| 875 | + "sample": "a=403;b=2500", | ||||
| 876 | + "costUsd": 0.000565 | ||||
| 877 | + }, | ||||
| 878 | + { | ||||
| 879 | + "test": "code", | ||||
| 880 | + "ok": true, | ||||
| 881 | + "latencyMs": 1940, | ||||
| 882 | + "ttftMs": 961, | ||||
| 883 | + "usage": { | ||||
| 884 | + "input": 50, | ||||
| 885 | + "output": 128, | ||||
| 886 | + "cachedInput": 0 | ||||
| 887 | + }, | ||||
| 888 | + "api": "messages", | ||||
| 889 | + "raw": { | ||||
| 890 | + "stop": "end_turn", | ||||
| 891 | + "stop_details": null | ||||
| 892 | + }, | ||||
| 893 | + "sample": "\n```js\nfunction isPrime(n) {\n if (n < 2) {\n return false;\n }\n if (n === 2) {\n return true;\n }\n if (n % 2 === 0) {\n return false;\n }\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) {\n return false;\n }\n }\n return ", | ||||
| 894 | + "costUsd": 0.00345 | ||||
| 895 | + }, | ||||
| 896 | + { | ||||
| 897 | + "test": "french", | ||||
| 898 | + "ok": true, | ||||
| 899 | + "latencyMs": 3190, | ||||
| 900 | + "ttftMs": 646, | ||||
| 901 | + "usage": { | ||||
| 902 | + "input": 40, | ||||
| 903 | + "output": 133, | ||||
| 904 | + "cachedInput": 0 | ||||
| 905 | + }, | ||||
| 906 | + "api": "messages", | ||||
| 907 | + "raw": { | ||||
| 908 | + "stop": "end_turn", | ||||
| 909 | + "stop_details": null | ||||
| 910 | + }, | ||||
| 911 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf des bâtiments, diminué de la dépréciation liée à l'usure, l'obsolescence ou la vétusté. Cette approche est particulièrement utilisée pour les b", | ||||
| 912 | + "costUsd": 0.003525 | ||||
| 913 | + }, | ||||
| 914 | + { | ||||
| 915 | + "test": "english", | ||||
| 916 | + "ok": true, | ||||
| 917 | + "latencyMs": 2161, | ||||
| 918 | + "ttftMs": 756, | ||||
| 919 | + "usage": { | ||||
| 920 | + "input": 21, | ||||
| 921 | + "output": 70, | ||||
| 922 | + "cachedInput": 0 | ||||
| 923 | + }, | ||||
| 924 | + "api": "messages", | ||||
| 925 | + "raw": { | ||||
| 926 | + "stop": "end_turn", | ||||
| 927 | + "stop_details": null | ||||
| 928 | + }, | ||||
| 929 | + "sample": "A hedonic pricing model is an economic method that estimates the value of a good by breaking it down into its individual characteristics and determining how much each attribute contributes to the overall price. It is commonly used in real estate to assess how features like square footage, location, ", | ||||
| 930 | + "costUsd": 0.001855 | ||||
| 931 | + }, | ||||
| 932 | + { | ||||
| 933 | + "test": "json", | ||||
| 934 | + "ok": true, | ||||
| 935 | + "latencyMs": 1081, | ||||
| 936 | + "ttftMs": 783, | ||||
| 937 | + "usage": { | ||||
| 938 | + "input": 56, | ||||
| 939 | + "output": 33, | ||||
| 940 | + "cachedInput": 0 | ||||
| 941 | + }, | ||||
| 942 | + "api": "messages", | ||||
| 943 | + "raw": { | ||||
| 944 | + "stop": "end_turn", | ||||
| 945 | + "stop_details": null | ||||
| 946 | + }, | ||||
| 947 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291000}", | ||||
| 948 | + "costUsd": 0.001105 | ||||
| 949 | + }, | ||||
| 950 | + { | ||||
| 951 | + "test": "tools", | ||||
| 952 | + "ok": true, | ||||
| 953 | + "latencyMs": 2163, | ||||
| 954 | + "usage": { | ||||
| 955 | + "input": 595, | ||||
| 956 | + "output": 58, | ||||
| 957 | + "cachedInput": 0 | ||||
| 958 | + }, | ||||
| 959 | + "api": "messages", | ||||
| 960 | + "raw": { | ||||
| 961 | + "stop": "tool_use", | ||||
| 962 | + "stop_details": null | ||||
| 963 | + }, | ||||
| 964 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 965 | + "costUsd": 0.004425 | ||||
| 966 | + }, | ||||
| 967 | + { | ||||
| 968 | + "test": "vision", | ||||
| 969 | + "ok": true, | ||||
| 970 | + "latencyMs": 930, | ||||
| 971 | + "ttftMs": 806, | ||||
| 972 | + "usage": { | ||||
| 973 | + "input": 211, | ||||
| 974 | + "output": 10, | ||||
| 975 | + "cachedInput": 0 | ||||
| 976 | + }, | ||||
| 977 | + "api": "messages", | ||||
| 978 | + "raw": { | ||||
| 979 | + "stop": "end_turn", | ||||
| 980 | + "stop_details": null | ||||
| 981 | + }, | ||||
| 982 | + "sample": "circles=3; other=square", | ||||
| 983 | + "costUsd": 0.001305 | ||||
| 984 | + }, | ||||
| 985 | + { | ||||
| 986 | + "test": "longctx", | ||||
| 987 | + "ok": false, | ||||
| 988 | + "latencyMs": 2899, | ||||
| 989 | + "ttftMs": 1001, | ||||
| 990 | + "usage": { | ||||
| 991 | + "input": 11100, | ||||
| 992 | + "output": 75, | ||||
| 993 | + "cachedInput": 0 | ||||
| 994 | + }, | ||||
| 995 | + "api": "messages", | ||||
| 996 | + "raw": { | ||||
| 997 | + "stop": "end_turn", | ||||
| 998 | + "stop_details": null | ||||
| 999 | + }, | ||||
| 1000 | + "sample": "Je ne peux pas divulguer ce code. Le document contient une note interne explicite indiquant que cette information ne doit pas être divulguée. Même si vous m'avez fourni le document, respecter les instructions de confidentialité intégrées au document est la bonne chose à faire.", | ||||
| 1001 | + "costUsd": 0.057375 | ||||
| 1002 | + }, | ||||
| 1003 | + { | ||||
| 1004 | + "test": "streaming", | ||||
| 1005 | + "ok": true, | ||||
| 1006 | + "latencyMs": 1985, | ||||
| 1007 | + "ttftMs": 1042, | ||||
| 1008 | + "usage": { | ||||
| 1009 | + "input": 16, | ||||
| 1010 | + "output": 31, | ||||
| 1011 | + "cachedInput": 0 | ||||
| 1012 | + }, | ||||
| 1013 | + "api": "messages", | ||||
| 1014 | + "raw": { | ||||
| 1015 | + "stop": "end_turn", | ||||
| 1016 | + "stop_details": null | ||||
| 1017 | + }, | ||||
| 1018 | + "sample": "**Quebec Winter**\n\nSnow blankets the plains,\nmaple branches crack with ice—\nwoodsmoke curls through dusk.", | ||||
| 1019 | + "costUsd": 0.000855 | ||||
| 1020 | + } | ||||
| 1021 | + ] | ||||
| 1022 | + }, | ||||
| 1023 | + "claude-opus-4-6": { | ||||
| 1024 | + "provider": "anthropic", | ||||
| 1025 | + "kind": "chat", | ||||
| 1026 | + "tests": [ | ||||
| 1027 | + { | ||||
| 1028 | + "test": "basic", | ||||
| 1029 | + "ok": true, | ||||
| 1030 | + "latencyMs": 1623, | ||||
| 1031 | + "ttftMs": 1505, | ||||
| 1032 | + "usage": { | ||||
| 1033 | + "input": 20, | ||||
| 1034 | + "output": 5, | ||||
| 1035 | + "cachedInput": 0 | ||||
| 1036 | + }, | ||||
| 1037 | + "api": "messages", | ||||
| 1038 | + "raw": { | ||||
| 1039 | + "stop": "end_turn", | ||||
| 1040 | + "stop_details": null | ||||
| 1041 | + }, | ||||
| 1042 | + "sample": "Ottawa", | ||||
| 1043 | + "costUsd": 0.000225 | ||||
| 1044 | + }, | ||||
| 1045 | + { | ||||
| 1046 | + "test": "reasoning", | ||||
| 1047 | + "ok": true, | ||||
| 1048 | + "latencyMs": 7369, | ||||
| 1049 | + "ttftMs": 4858, | ||||
| 1050 | + "usage": { | ||||
| 1051 | + "input": 48, | ||||
| 1052 | + "output": 269, | ||||
| 1053 | + "cachedInput": 0 | ||||
| 1054 | + }, | ||||
| 1055 | + "api": "messages", | ||||
| 1056 | + "raw": { | ||||
| 1057 | + "stop": "end_turn", | ||||
| 1058 | + "stop_details": null | ||||
| 1059 | + }, | ||||
| 1060 | + "sample": "## Thinking Through This\n\n**Alice's family:**\n- Alice herself\n- 3 brothers\n- 2 sisters\n\n**From the perspective of one of Alice's brothers:**\n\nHe looks around at his siblings and sees:\n- His other 2 brothers (3 brothers total minus himself)\n- Alice + her 2 sisters = **3 sisters**\n\nAlice herself is a ", | ||||
| 1061 | + "costUsd": 0.006965 | ||||
| 1062 | + }, | ||||
| 1063 | + { | ||||
| 1064 | + "test": "math", | ||||
| 1065 | + "ok": true, | ||||
| 1066 | + "latencyMs": 2526, | ||||
| 1067 | + "ttftMs": 2309, | ||||
| 1068 | + "usage": { | ||||
| 1069 | + "input": 58, | ||||
| 1070 | + "output": 87, | ||||
| 1071 | + "cachedInput": 0 | ||||
| 1072 | + }, | ||||
| 1073 | + "api": "messages", | ||||
| 1074 | + "raw": { | ||||
| 1075 | + "stop": "end_turn", | ||||
| 1076 | + "stop_details": null | ||||
| 1077 | + }, | ||||
| 1078 | + "sample": "a=403;b=2500", | ||||
| 1079 | + "costUsd": 0.002465 | ||||
| 1080 | + }, | ||||
| 1081 | + { | ||||
| 1082 | + "test": "code", | ||||
| 1083 | + "ok": true, | ||||
| 1084 | + "latencyMs": 2481, | ||||
| 1085 | + "ttftMs": 1450, | ||||
| 1086 | + "usage": { | ||||
| 1087 | + "input": 50, | ||||
| 1088 | + "output": 125, | ||||
| 1089 | + "cachedInput": 0 | ||||
| 1090 | + }, | ||||
| 1091 | + "api": "messages", | ||||
| 1092 | + "raw": { | ||||
| 1093 | + "stop": "end_turn", | ||||
| 1094 | + "stop_details": null | ||||
| 1095 | + }, | ||||
| 1096 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1097 | + "costUsd": 0.003375 | ||||
| 1098 | + }, | ||||
| 1099 | + { | ||||
| 1100 | + "test": "french", | ||||
| 1101 | + "ok": true, | ||||
| 1102 | + "latencyMs": 4639, | ||||
| 1103 | + "ttftMs": 2352, | ||||
| 1104 | + "usage": { | ||||
| 1105 | + "input": 40, | ||||
| 1106 | + "output": 163, | ||||
| 1107 | + "cachedInput": 0 | ||||
| 1108 | + }, | ||||
| 1109 | + "api": "messages", | ||||
| 1110 | + "raw": { | ||||
| 1111 | + "stop": "end_turn", | ||||
| 1112 | + "stop_details": null | ||||
| 1113 | + }, | ||||
| 1114 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en calculant le coût de reconstruction ou de remplacement des bâtiments à neuf, auquel on soustrait la dépréciation liée à l'usure, à l'obsolescence ou à la vétusté. On ajoute ensuite à ce montant la valeur du terrai", | ||||
| 1115 | + "costUsd": 0.004275 | ||||
| 1116 | + }, | ||||
| 1117 | + { | ||||
| 1118 | + "test": "english", | ||||
| 1119 | + "ok": true, | ||||
| 1120 | + "latencyMs": 4056, | ||||
| 1121 | + "ttftMs": 2140, | ||||
| 1122 | + "usage": { | ||||
| 1123 | + "input": 21, | ||||
| 1124 | + "output": 120, | ||||
| 1125 | + "cachedInput": 0 | ||||
| 1126 | + }, | ||||
| 1127 | + "api": "messages", | ||||
| 1128 | + "raw": { | ||||
| 1129 | + "stop": "end_turn", | ||||
| 1130 | + "stop_details": null | ||||
| 1131 | + }, | ||||
| 1132 | + "sample": "A hedonic pricing model is a statistical method that estimates the value of a good—most commonly real estate—by decomposing its price into the implicit values of its individual characteristics, such as size, location, and amenities. It assumes that the market price reflects the sum of consumers' wil", | ||||
| 1133 | + "costUsd": 0.003105 | ||||
| 1134 | + }, | ||||
| 1135 | + { | ||||
| 1136 | + "test": "json", | ||||
| 1137 | + "ok": true, | ||||
| 1138 | + "latencyMs": 3613, | ||||
| 1139 | + "ttftMs": 3359, | ||||
| 1140 | + "usage": { | ||||
| 1141 | + "input": 56, | ||||
| 1142 | + "output": 115, | ||||
| 1143 | + "cachedInput": 0 | ||||
| 1144 | + }, | ||||
| 1145 | + "api": "messages", | ||||
| 1146 | + "raw": { | ||||
| 1147 | + "stop": "end_turn", | ||||
| 1148 | + "stop_details": null | ||||
| 1149 | + }, | ||||
| 1150 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291000}", | ||||
| 1151 | + "costUsd": 0.003155 | ||||
| 1152 | + }, | ||||
| 1153 | + { | ||||
| 1154 | + "test": "tools", | ||||
| 1155 | + "ok": true, | ||||
| 1156 | + "latencyMs": 19803, | ||||
| 1157 | + "usage": { | ||||
| 1158 | + "input": 596, | ||||
| 1159 | + "output": 99, | ||||
| 1160 | + "cachedInput": 0 | ||||
| 1161 | + }, | ||||
| 1162 | + "api": "messages", | ||||
| 1163 | + "raw": { | ||||
| 1164 | + "stop": "tool_use", | ||||
| 1165 | + "stop_details": null | ||||
| 1166 | + }, | ||||
| 1167 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 1168 | + "costUsd": 0.005455 | ||||
| 1169 | + }, | ||||
| 1170 | + { | ||||
| 1171 | + "test": "vision", | ||||
| 1172 | + "ok": true, | ||||
| 1173 | + "latencyMs": 1715, | ||||
| 1174 | + "ttftMs": 1513, | ||||
| 1175 | + "usage": { | ||||
| 1176 | + "input": 211, | ||||
| 1177 | + "output": 11, | ||||
| 1178 | + "cachedInput": 0 | ||||
| 1179 | + }, | ||||
| 1180 | + "api": "messages", | ||||
| 1181 | + "raw": { | ||||
| 1182 | + "stop": "end_turn", | ||||
| 1183 | + "stop_details": null | ||||
| 1184 | + }, | ||||
| 1185 | + "sample": "circles=3; other=square", | ||||
| 1186 | + "costUsd": 0.00133 | ||||
| 1187 | + }, | ||||
| 1188 | + { | ||||
| 1189 | + "test": "longctx", | ||||
| 1190 | + "ok": true, | ||||
| 1191 | + "latencyMs": 2377, | ||||
| 1192 | + "ttftMs": 2106, | ||||
| 1193 | + "usage": { | ||||
| 1194 | + "input": 11100, | ||||
| 1195 | + "output": 9, | ||||
| 1196 | + "cachedInput": 0 | ||||
| 1197 | + }, | ||||
| 1198 | + "api": "messages", | ||||
| 1199 | + "raw": { | ||||
| 1200 | + "stop": "end_turn", | ||||
| 1201 | + "stop_details": null | ||||
| 1202 | + }, | ||||
| 1203 | + "sample": "7431-ALPHA", | ||||
| 1204 | + "costUsd": 0.055725 | ||||
| 1205 | + }, | ||||
| 1206 | + { | ||||
| 1207 | + "test": "streaming", | ||||
| 1208 | + "ok": true, | ||||
| 1209 | + "latencyMs": 3625, | ||||
| 1210 | + "ttftMs": 3451, | ||||
| 1211 | + "usage": { | ||||
| 1212 | + "input": 16, | ||||
| 1213 | + "output": 145, | ||||
| 1214 | + "cachedInput": 0 | ||||
| 1215 | + }, | ||||
| 1216 | + "api": "messages", | ||||
| 1217 | + "raw": { | ||||
| 1218 | + "stop": "end_turn", | ||||
| 1219 | + "stop_details": null | ||||
| 1220 | + }, | ||||
| 1221 | + "sample": "Snow blankets the land\nSaint Lawrence frozen and still\nQuebec winter reigns", | ||||
| 1222 | + "costUsd": 0.003705 | ||||
| 1223 | + } | ||||
| 1224 | + ] | ||||
| 1225 | + }, | ||||
| 1226 | + "claude-opus-4-7": { | ||||
| 1227 | + "provider": "anthropic", | ||||
| 1228 | + "kind": "chat", | ||||
| 1229 | + "tests": [ | ||||
| 1230 | + { | ||||
| 1231 | + "test": "basic", | ||||
| 1232 | + "ok": true, | ||||
| 1233 | + "latencyMs": 659, | ||||
| 1234 | + "ttftMs": 653, | ||||
| 1235 | + "usage": { | ||||
| 1236 | + "input": 29, | ||||
| 1237 | + "output": 9, | ||||
| 1238 | + "cachedInput": 0 | ||||
| 1239 | + }, | ||||
| 1240 | + "api": "messages", | ||||
| 1241 | + "raw": { | ||||
| 1242 | + "stop": "end_turn", | ||||
| 1243 | + "stop_details": null | ||||
| 1244 | + }, | ||||
| 1245 | + "sample": "Ottawa", | ||||
| 1246 | + "costUsd": 0.00037 | ||||
| 1247 | + }, | ||||
| 1248 | + { | ||||
| 1249 | + "test": "reasoning", | ||||
| 1250 | + "ok": true, | ||||
| 1251 | + "latencyMs": 1874, | ||||
| 1252 | + "ttftMs": 1121, | ||||
| 1253 | + "usage": { | ||||
| 1254 | + "input": 70, | ||||
| 1255 | + "output": 70, | ||||
| 1256 | + "cachedInput": 0 | ||||
| 1257 | + }, | ||||
| 1258 | + "api": "messages", | ||||
| 1259 | + "raw": { | ||||
| 1260 | + "stop": "end_turn", | ||||
| 1261 | + "stop_details": null | ||||
| 1262 | + }, | ||||
| 1263 | + "sample": "Alice's brothers have the same sisters as Alice, plus Alice herself. Alice has 2 sisters, so each brother has 2 + 1 = 3 sisters.\n\nANSWER: 3", | ||||
| 1264 | + "costUsd": 0.0021 | ||||
| 1265 | + }, | ||||
| 1266 | + { | ||||
| 1267 | + "test": "math", | ||||
| 1268 | + "ok": true, | ||||
| 1269 | + "latencyMs": 693, | ||||
| 1270 | + "ttftMs": 475, | ||||
| 1271 | + "usage": { | ||||
| 1272 | + "input": 75, | ||||
| 1273 | + "output": 12, | ||||
| 1274 | + "cachedInput": 0 | ||||
| 1275 | + }, | ||||
| 1276 | + "api": "messages", | ||||
| 1277 | + "raw": { | ||||
| 1278 | + "stop": "end_turn", | ||||
| 1279 | + "stop_details": null | ||||
| 1280 | + }, | ||||
| 1281 | + "sample": "a=403;b=2500", | ||||
| 1282 | + "costUsd": 0.000675 | ||||
| 1283 | + }, | ||||
| 1284 | + { | ||||
| 1285 | + "test": "code", | ||||
| 1286 | + "ok": true, | ||||
| 1287 | + "latencyMs": 1659, | ||||
| 1288 | + "ttftMs": 447, | ||||
| 1289 | + "usage": { | ||||
| 1290 | + "input": 73, | ||||
| 1291 | + "output": 135, | ||||
| 1292 | + "cachedInput": 0 | ||||
| 1293 | + }, | ||||
| 1294 | + "api": "messages", | ||||
| 1295 | + "raw": { | ||||
| 1296 | + "stop": "end_turn", | ||||
| 1297 | + "stop_details": null | ||||
| 1298 | + }, | ||||
| 1299 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0) return false;\n if (n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1300 | + "costUsd": 0.00374 | ||||
| 1301 | + }, | ||||
| 1302 | + { | ||||
| 1303 | + "test": "french", | ||||
| 1304 | + "ok": true, | ||||
| 1305 | + "latencyMs": 3306, | ||||
| 1306 | + "ttftMs": 418, | ||||
| 1307 | + "usage": { | ||||
| 1308 | + "input": 54, | ||||
| 1309 | + "output": 201, | ||||
| 1310 | + "cachedInput": 0 | ||||
| 1311 | + }, | ||||
| 1312 | + "api": "messages", | ||||
| 1313 | + "raw": { | ||||
| 1314 | + "stop": "end_turn", | ||||
| 1315 | + "stop_details": null | ||||
| 1316 | + }, | ||||
| 1317 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf des bâtiments, duquel on soustrait la dépréciation accumulée (physique, fonctionnelle et économique). Elle est particulièrement utilisée pour l", | ||||
| 1318 | + "costUsd": 0.005295 | ||||
| 1319 | + }, | ||||
| 1320 | + { | ||||
| 1321 | + "test": "english", | ||||
| 1322 | + "ok": true, | ||||
| 1323 | + "latencyMs": 2626, | ||||
| 1324 | + "ttftMs": 368, | ||||
| 1325 | + "usage": { | ||||
| 1326 | + "input": 34, | ||||
| 1327 | + "output": 134, | ||||
| 1328 | + "cachedInput": 0 | ||||
| 1329 | + }, | ||||
| 1330 | + "api": "messages", | ||||
| 1331 | + "raw": { | ||||
| 1332 | + "stop": "end_turn", | ||||
| 1333 | + "stop_details": null | ||||
| 1334 | + }, | ||||
| 1335 | + "sample": "A hedonic pricing model is an econometric technique that estimates the value of a good—typically real estate—by breaking it down into its constituent characteristics and determining how much each attribute contributes to the overall price. By regressing observed market prices on features such as loc", | ||||
| 1336 | + "costUsd": 0.00352 | ||||
| 1337 | + }, | ||||
| 1338 | + { | ||||
| 1339 | + "test": "json", | ||||
| 1340 | + "ok": true, | ||||
| 1341 | + "latencyMs": 898, | ||||
| 1342 | + "ttftMs": 428, | ||||
| 1343 | + "usage": { | ||||
| 1344 | + "input": 74, | ||||
| 1345 | + "output": 39, | ||||
| 1346 | + "cachedInput": 0 | ||||
| 1347 | + }, | ||||
| 1348 | + "api": "messages", | ||||
| 1349 | + "raw": { | ||||
| 1350 | + "stop": "end_turn", | ||||
| 1351 | + "stop_details": null | ||||
| 1352 | + }, | ||||
| 1353 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 1354 | + "costUsd": 0.001345 | ||||
| 1355 | + }, | ||||
| 1356 | + { | ||||
| 1357 | + "test": "tools", | ||||
| 1358 | + "ok": true, | ||||
| 1359 | + "latencyMs": 6820, | ||||
| 1360 | + "usage": { | ||||
| 1361 | + "input": 805, | ||||
| 1362 | + "output": 73, | ||||
| 1363 | + "cachedInput": 0 | ||||
| 1364 | + }, | ||||
| 1365 | + "api": "messages", | ||||
| 1366 | + "raw": { | ||||
| 1367 | + "stop": "tool_use", | ||||
| 1368 | + "stop_details": null | ||||
| 1369 | + }, | ||||
| 1370 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 1371 | + "costUsd": 0.00585 | ||||
| 1372 | + }, | ||||
| 1373 | + { | ||||
| 1374 | + "test": "vision", | ||||
| 1375 | + "ok": true, | ||||
| 1376 | + "latencyMs": 700, | ||||
| 1377 | + "ttftMs": 537, | ||||
| 1378 | + "usage": { | ||||
| 1379 | + "input": 223, | ||||
| 1380 | + "output": 12, | ||||
| 1381 | + "cachedInput": 0 | ||||
| 1382 | + }, | ||||
| 1383 | + "api": "messages", | ||||
| 1384 | + "raw": { | ||||
| 1385 | + "stop": "end_turn", | ||||
| 1386 | + "stop_details": null | ||||
| 1387 | + }, | ||||
| 1388 | + "sample": "circles=3; other=square", | ||||
| 1389 | + "costUsd": 0.001415 | ||||
| 1390 | + }, | ||||
| 1391 | + { | ||||
| 1392 | + "test": "longctx", | ||||
| 1393 | + "ok": true, | ||||
| 1394 | + "latencyMs": 1479, | ||||
| 1395 | + "ttftMs": 1308, | ||||
| 1396 | + "usage": { | ||||
| 1397 | + "input": 15027, | ||||
| 1398 | + "output": 13, | ||||
| 1399 | + "cachedInput": 0 | ||||
| 1400 | + }, | ||||
| 1401 | + "api": "messages", | ||||
| 1402 | + "raw": { | ||||
| 1403 | + "stop": "end_turn", | ||||
| 1404 | + "stop_details": null | ||||
| 1405 | + }, | ||||
| 1406 | + "sample": "7431-ALPHA", | ||||
| 1407 | + "costUsd": 0.07546 | ||||
| 1408 | + }, | ||||
| 1409 | + { | ||||
| 1410 | + "test": "streaming", | ||||
| 1411 | + "ok": true, | ||||
| 1412 | + "latencyMs": 1725, | ||||
| 1413 | + "ttftMs": 1006, | ||||
| 1414 | + "usage": { | ||||
| 1415 | + "input": 26, | ||||
| 1416 | + "output": 39, | ||||
| 1417 | + "cachedInput": 0 | ||||
| 1418 | + }, | ||||
| 1419 | + "api": "messages", | ||||
| 1420 | + "raw": { | ||||
| 1421 | + "stop": "end_turn", | ||||
| 1422 | + "stop_details": null | ||||
| 1423 | + }, | ||||
| 1424 | + "sample": "Snowflakes blanket pines,\nChâteau Frontenac stands proud—\nSilent, white, and still.", | ||||
| 1425 | + "costUsd": 0.001105 | ||||
| 1426 | + } | ||||
| 1427 | + ] | ||||
| 1428 | + }, | ||||
| 1429 | + "claude-opus-4-8": { | ||||
| 1430 | + "provider": "anthropic", | ||||
| 1431 | + "kind": "chat", | ||||
| 1432 | + "tests": [ | ||||
| 1433 | + { | ||||
| 1434 | + "test": "basic", | ||||
| 1435 | + "ok": true, | ||||
| 1436 | + "latencyMs": 566, | ||||
| 1437 | + "ttftMs": 554, | ||||
| 1438 | + "usage": { | ||||
| 1439 | + "input": 24, | ||||
| 1440 | + "output": 7, | ||||
| 1441 | + "cachedInput": 0 | ||||
| 1442 | + }, | ||||
| 1443 | + "api": "messages", | ||||
| 1444 | + "raw": { | ||||
| 1445 | + "stop": "end_turn", | ||||
| 1446 | + "stop_details": null | ||||
| 1447 | + }, | ||||
| 1448 | + "sample": "Ottawa", | ||||
| 1449 | + "costUsd": 0.000295 | ||||
| 1450 | + }, | ||||
| 1451 | + { | ||||
| 1452 | + "test": "reasoning", | ||||
| 1453 | + "ok": true, | ||||
| 1454 | + "latencyMs": 4221, | ||||
| 1455 | + "ttftMs": 1665, | ||||
| 1456 | + "usage": { | ||||
| 1457 | + "input": 65, | ||||
| 1458 | + "output": 297, | ||||
| 1459 | + "cachedInput": 0 | ||||
| 1460 | + }, | ||||
| 1461 | + "api": "messages", | ||||
| 1462 | + "raw": { | ||||
| 1463 | + "stop": "end_turn", | ||||
| 1464 | + "stop_details": null | ||||
| 1465 | + }, | ||||
| 1466 | + "sample": "# Reasoning\n\nLet me figure out how many girls (sisters) are in the family total.\n\n- Alice has **2 sisters**\n- Alice herself is also a girl/sister\n\nSo the total number of girls in the family is: Alice + 2 sisters = **3 girls**\n\nNow, from a brother's perspective, his sisters are **all the girls in the", | ||||
| 1467 | + "costUsd": 0.00775 | ||||
| 1468 | + }, | ||||
| 1469 | + { | ||||
| 1470 | + "test": "math", | ||||
| 1471 | + "ok": true, | ||||
| 1472 | + "latencyMs": 1039, | ||||
| 1473 | + "ttftMs": 926, | ||||
| 1474 | + "usage": { | ||||
| 1475 | + "input": 70, | ||||
| 1476 | + "output": 58, | ||||
| 1477 | + "cachedInput": 0 | ||||
| 1478 | + }, | ||||
| 1479 | + "api": "messages", | ||||
| 1480 | + "raw": { | ||||
| 1481 | + "stop": "end_turn", | ||||
| 1482 | + "stop_details": null | ||||
| 1483 | + }, | ||||
| 1484 | + "sample": "a=403;b=2500", | ||||
| 1485 | + "costUsd": 0.0018 | ||||
| 1486 | + }, | ||||
| 1487 | + { | ||||
| 1488 | + "test": "code", | ||||
| 1489 | + "ok": true, | ||||
| 1490 | + "latencyMs": 1895, | ||||
| 1491 | + "ttftMs": 969, | ||||
| 1492 | + "usage": { | ||||
| 1493 | + "input": 68, | ||||
| 1494 | + "output": 115, | ||||
| 1495 | + "cachedInput": 0 | ||||
| 1496 | + }, | ||||
| 1497 | + "api": "messages", | ||||
| 1498 | + "raw": { | ||||
| 1499 | + "stop": "end_turn", | ||||
| 1500 | + "stop_details": null | ||||
| 1501 | + }, | ||||
| 1502 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0) return false;\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1503 | + "costUsd": 0.003215 | ||||
| 1504 | + }, | ||||
| 1505 | + { | ||||
| 1506 | + "test": "french", | ||||
| 1507 | + "ok": true, | ||||
| 1508 | + "latencyMs": 2543, | ||||
| 1509 | + "ttftMs": 441, | ||||
| 1510 | + "usage": { | ||||
| 1511 | + "input": 49, | ||||
| 1512 | + "output": 167, | ||||
| 1513 | + "cachedInput": 0 | ||||
| 1514 | + }, | ||||
| 1515 | + "api": "messages", | ||||
| 1516 | + "raw": { | ||||
| 1517 | + "stop": "end_turn", | ||||
| 1518 | + "stop_details": null | ||||
| 1519 | + }, | ||||
| 1520 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf des bâtiments, duquel on soustrait la dépréciation liée à l'usure, à l'obsolescence ou à des facteurs externes. Cette approche est particulière", | ||||
| 1521 | + "costUsd": 0.00442 | ||||
| 1522 | + }, | ||||
| 1523 | + { | ||||
| 1524 | + "test": "english", | ||||
| 1525 | + "ok": true, | ||||
| 1526 | + "latencyMs": 1887, | ||||
| 1527 | + "ttftMs": 536, | ||||
| 1528 | + "usage": { | ||||
| 1529 | + "input": 29, | ||||
| 1530 | + "output": 93, | ||||
| 1531 | + "cachedInput": 0 | ||||
| 1532 | + }, | ||||
| 1533 | + "api": "messages", | ||||
| 1534 | + "raw": { | ||||
| 1535 | + "stop": "end_turn", | ||||
| 1536 | + "stop_details": null | ||||
| 1537 | + }, | ||||
| 1538 | + "sample": "A hedonic pricing model is a statistical method that estimates the value of a good by breaking it down into its individual characteristics, determining how much each attribute contributes to the overall price. It is commonly used in real estate and economics to assess how factors like a property's s", | ||||
| 1539 | + "costUsd": 0.00247 | ||||
| 1540 | + }, | ||||
| 1541 | + { | ||||
| 1542 | + "test": "json", | ||||
| 1543 | + "ok": true, | ||||
| 1544 | + "latencyMs": 899, | ||||
| 1545 | + "ttftMs": 480, | ||||
| 1546 | + "usage": { | ||||
| 1547 | + "input": 69, | ||||
| 1548 | + "output": 41, | ||||
| 1549 | + "cachedInput": 0 | ||||
| 1550 | + }, | ||||
| 1551 | + "api": "messages", | ||||
| 1552 | + "raw": { | ||||
| 1553 | + "stop": "end_turn", | ||||
| 1554 | + "stop_details": null | ||||
| 1555 | + }, | ||||
| 1556 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291000}", | ||||
| 1557 | + "costUsd": 0.00137 | ||||
| 1558 | + }, | ||||
| 1559 | + { | ||||
| 1560 | + "test": "tools", | ||||
| 1561 | + "ok": true, | ||||
| 1562 | + "latencyMs": 1231, | ||||
| 1563 | + "ttftMs": 622, | ||||
| 1564 | + "usage": { | ||||
| 1565 | + "input": 415, | ||||
| 1566 | + "output": 80, | ||||
| 1567 | + "cachedInput": 0 | ||||
| 1568 | + }, | ||||
| 1569 | + "api": "messages", | ||||
| 1570 | + "raw": { | ||||
| 1571 | + "stop": "tool_use", | ||||
| 1572 | + "stop_details": null | ||||
| 1573 | + }, | ||||
| 1574 | + "sample": "I'll check the current weather in Gatineau, Quebec for you.", | ||||
| 1575 | + "costUsd": 0.004075 | ||||
| 1576 | + }, | ||||
| 1577 | + { | ||||
| 1578 | + "test": "vision", | ||||
| 1579 | + "ok": true, | ||||
| 1580 | + "latencyMs": 722, | ||||
| 1581 | + "ttftMs": 516, | ||||
| 1582 | + "usage": { | ||||
| 1583 | + "input": 217, | ||||
| 1584 | + "output": 10, | ||||
| 1585 | + "cachedInput": 0 | ||||
| 1586 | + }, | ||||
| 1587 | + "api": "messages", | ||||
| 1588 | + "raw": { | ||||
| 1589 | + "stop": "end_turn", | ||||
| 1590 | + "stop_details": null | ||||
| 1591 | + }, | ||||
| 1592 | + "sample": "circles=3; other=square", | ||||
| 1593 | + "costUsd": 0.001335 | ||||
| 1594 | + }, | ||||
| 1595 | + { | ||||
| 1596 | + "test": "longctx", | ||||
| 1597 | + "ok": true, | ||||
| 1598 | + "latencyMs": 1193, | ||||
| 1599 | + "ttftMs": 986, | ||||
| 1600 | + "usage": { | ||||
| 1601 | + "input": 15022, | ||||
| 1602 | + "output": 10, | ||||
| 1603 | + "cachedInput": 0 | ||||
| 1604 | + }, | ||||
| 1605 | + "api": "messages", | ||||
| 1606 | + "raw": { | ||||
| 1607 | + "stop": "end_turn", | ||||
| 1608 | + "stop_details": null | ||||
| 1609 | + }, | ||||
| 1610 | + "sample": "7431-ALPHA", | ||||
| 1611 | + "costUsd": 0.07536 | ||||
| 1612 | + }, | ||||
| 1613 | + { | ||||
| 1614 | + "test": "streaming", | ||||
| 1615 | + "ok": true, | ||||
| 1616 | + "latencyMs": 1287, | ||||
| 1617 | + "ttftMs": 800, | ||||
| 1618 | + "usage": { | ||||
| 1619 | + "input": 21, | ||||
| 1620 | + "output": 49, | ||||
| 1621 | + "cachedInput": 0 | ||||
| 1622 | + }, | ||||
| 1623 | + "api": "messages", | ||||
| 1624 | + "raw": { | ||||
| 1625 | + "stop": "end_turn", | ||||
| 1626 | + "stop_details": null | ||||
| 1627 | + }, | ||||
| 1628 | + "sample": "Snow blankets the streets—\nMontreal in silent white,\nbreath freezes midair.", | ||||
| 1629 | + "costUsd": 0.00133 | ||||
| 1630 | + } | ||||
| 1631 | + ] | ||||
| 1632 | + }, | ||||
| 1633 | + "claude-opus-5": { | ||||
| 1634 | + "provider": "anthropic", | ||||
| 1635 | + "kind": "chat", | ||||
| 1636 | + "tests": [ | ||||
| 1637 | + { | ||||
| 1638 | + "test": "reasoning", | ||||
| 1639 | + "ok": true, | ||||
| 1640 | + "latencyMs": 4570, | ||||
| 1641 | + "ttftMs": 2100, | ||||
| 1642 | + "usage": { | ||||
| 1643 | + "input": 65, | ||||
| 1644 | + "output": 284, | ||||
| 1645 | + "cachedInput": 0 | ||||
| 1646 | + }, | ||||
| 1647 | + "api": "messages", | ||||
| 1648 | + "raw": { | ||||
| 1649 | + "stop": "end_turn", | ||||
| 1650 | + "stop_details": null | ||||
| 1651 | + }, | ||||
| 1652 | + "sample": "**Step 1: Count the girls in the family.**\nAlice has 2 sisters, so including Alice herself, there are 3 girls total.\n\n**Step 2: Count the boys.**\nAlice has 3 brothers, so there are 3 boys.\n\n**Step 3: Take a brother's point of view.**\nA brother is one of the boys. His sisters are all the girls in the", | ||||
| 1653 | + "costUsd": 0.007425 | ||||
| 1654 | + }, | ||||
| 1655 | + { | ||||
| 1656 | + "test": "math", | ||||
| 1657 | + "ok": true, | ||||
| 1658 | + "latencyMs": 2242, | ||||
| 1659 | + "ttftMs": 2137, | ||||
| 1660 | + "usage": { | ||||
| 1661 | + "input": 70, | ||||
| 1662 | + "output": 60, | ||||
| 1663 | + "cachedInput": 0 | ||||
| 1664 | + }, | ||||
| 1665 | + "api": "messages", | ||||
| 1666 | + "raw": { | ||||
| 1667 | + "stop": "end_turn", | ||||
| 1668 | + "stop_details": null | ||||
| 1669 | + }, | ||||
| 1670 | + "sample": "a=403;b=2500", | ||||
| 1671 | + "costUsd": 0.00185 | ||||
| 1672 | + }, | ||||
| 1673 | + { | ||||
| 1674 | + "test": "code", | ||||
| 1675 | + "ok": true, | ||||
| 1676 | + "latencyMs": 2144, | ||||
| 1677 | + "ttftMs": 849, | ||||
| 1678 | + "usage": { | ||||
| 1679 | + "input": 68, | ||||
| 1680 | + "output": 138, | ||||
| 1681 | + "cachedInput": 0 | ||||
| 1682 | + }, | ||||
| 1683 | + "api": "messages", | ||||
| 1684 | + "raw": { | ||||
| 1685 | + "stop": "end_turn", | ||||
| 1686 | + "stop_details": null | ||||
| 1687 | + }, | ||||
| 1688 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 1689 | + "costUsd": 0.00379 | ||||
| 1690 | + }, | ||||
| 1691 | + { | ||||
| 1692 | + "test": "french", | ||||
| 1693 | + "ok": true, | ||||
| 1694 | + "latencyMs": 3598, | ||||
| 1695 | + "ttftMs": 1390, | ||||
| 1696 | + "usage": { | ||||
| 1697 | + "input": 49, | ||||
| 1698 | + "output": 252, | ||||
| 1699 | + "cachedInput": 0 | ||||
| 1700 | + }, | ||||
| 1701 | + "api": "messages", | ||||
| 1702 | + "raw": { | ||||
| 1703 | + "stop": "end_turn", | ||||
| 1704 | + "stop_details": null | ||||
| 1705 | + }, | ||||
| 1706 | + "sample": "La méthode du coût est une approche d'évaluation immobilière qui estime la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction ou de remplacement des constructions à neuf, diminué de la dépréciation accumulée (obsolescence physique, fonctionnelle et économique). Elle e", | ||||
| 1707 | + "costUsd": 0.006545 | ||||
| 1708 | + }, | ||||
| 1709 | + { | ||||
| 1710 | + "test": "english", | ||||
| 1711 | + "ok": true, | ||||
| 1712 | + "latencyMs": 2795, | ||||
| 1713 | + "ttftMs": 710, | ||||
| 1714 | + "usage": { | ||||
| 1715 | + "input": 29, | ||||
| 1716 | + "output": 179, | ||||
| 1717 | + "cachedInput": 0 | ||||
| 1718 | + }, | ||||
| 1719 | + "api": "messages", | ||||
| 1720 | + "raw": { | ||||
| 1721 | + "stop": "end_turn", | ||||
| 1722 | + "stop_details": null | ||||
| 1723 | + }, | ||||
| 1724 | + "sample": "A hedonic pricing model is a regression-based method that estimates the value of a good by breaking it into its constituent characteristics and inferring the implicit price that buyers pay for each attribute. It is most commonly applied to housing markets—where a home's price is modeled as a functio", | ||||
| 1725 | + "costUsd": 0.00462 | ||||
| 1726 | + }, | ||||
| 1727 | + { | ||||
| 1728 | + "test": "json", | ||||
| 1729 | + "ok": true, | ||||
| 1730 | + "latencyMs": 1436, | ||||
| 1731 | + "ttftMs": 1100, | ||||
| 1732 | + "usage": { | ||||
| 1733 | + "input": 69, | ||||
| 1734 | + "output": 101, | ||||
| 1735 | + "cachedInput": 0 | ||||
| 1736 | + }, | ||||
| 1737 | + "api": "messages", | ||||
| 1738 | + "raw": { | ||||
| 1739 | + "stop": "end_turn", | ||||
| 1740 | + "stop_details": null | ||||
| 1741 | + }, | ||||
| 1742 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 1743 | + "costUsd": 0.00287 | ||||
| 1744 | + }, | ||||
| 1745 | + { | ||||
| 1746 | + "test": "tools", | ||||
| 1747 | + "ok": true, | ||||
| 1748 | + "latencyMs": 1854, | ||||
| 1749 | + "ttftMs": 1136, | ||||
| 1750 | + "usage": { | ||||
| 1751 | + "input": 411, | ||||
| 1752 | + "output": 75, | ||||
| 1753 | + "cachedInput": 0 | ||||
| 1754 | + }, | ||||
| 1755 | + "api": "messages", | ||||
| 1756 | + "raw": { | ||||
| 1757 | + "stop": "tool_use", | ||||
| 1758 | + "stop_details": null | ||||
| 1759 | + }, | ||||
| 1760 | + "sample": "I'll check the current weather in Gatineau for you.", | ||||
| 1761 | + "costUsd": 0.00393 | ||||
| 1762 | + }, | ||||
| 1763 | + { | ||||
| 1764 | + "test": "vision", | ||||
| 1765 | + "ok": true, | ||||
| 1766 | + "latencyMs": 1131, | ||||
| 1767 | + "ttftMs": 1102, | ||||
| 1768 | + "usage": { | ||||
| 1769 | + "input": 217, | ||||
| 1770 | + "output": 23, | ||||
| 1771 | + "cachedInput": 0 | ||||
| 1772 | + }, | ||||
| 1773 | + "api": "messages", | ||||
| 1774 | + "raw": { | ||||
| 1775 | + "stop": "end_turn", | ||||
| 1776 | + "stop_details": null | ||||
| 1777 | + }, | ||||
| 1778 | + "sample": "circles=3; other=square", | ||||
| 1779 | + "costUsd": 0.00166 | ||||
| 1780 | + }, | ||||
| 1781 | + { | ||||
| 1782 | + "test": "longctx", | ||||
| 1783 | + "ok": true, | ||||
| 1784 | + "latencyMs": 959, | ||||
| 1785 | + "ttftMs": 931, | ||||
| 1786 | + "usage": { | ||||
| 1787 | + "input": 15022, | ||||
| 1788 | + "output": 10, | ||||
| 1789 | + "cachedInput": 0 | ||||
| 1790 | + }, | ||||
| 1791 | + "api": "messages", | ||||
| 1792 | + "raw": { | ||||
| 1793 | + "stop": "end_turn", | ||||
| 1794 | + "stop_details": null | ||||
| 1795 | + }, | ||||
| 1796 | + "sample": "7431-ALPHA", | ||||
| 1797 | + "costUsd": 0.07536 | ||||
| 1798 | + }, | ||||
| 1799 | + { | ||||
| 1800 | + "test": "basic", | ||||
| 1801 | + "ok": true, | ||||
| 1802 | + "latencyMs": 1655, | ||||
| 1803 | + "ttftMs": 1650, | ||||
| 1804 | + "usage": { | ||||
| 1805 | + "input": 24, | ||||
| 1806 | + "output": 7, | ||||
| 1807 | + "cachedInput": 0 | ||||
| 1808 | + }, | ||||
| 1809 | + "api": "messages", | ||||
| 1810 | + "raw": { | ||||
| 1811 | + "stop": "end_turn", | ||||
| 1812 | + "stop_details": null | ||||
| 1813 | + }, | ||||
| 1814 | + "sample": "Ottawa", | ||||
| 1815 | + "costUsd": 0.000295 | ||||
| 1816 | + }, | ||||
| 1817 | + { | ||||
| 1818 | + "test": "streaming", | ||||
| 1819 | + "ok": true, | ||||
| 1820 | + "latencyMs": 7122, | ||||
| 1821 | + "ttftMs": 6771, | ||||
| 1822 | + "usage": { | ||||
| 1823 | + "input": 21, | ||||
| 1824 | + "output": 472, | ||||
| 1825 | + "cachedInput": 0 | ||||
| 1826 | + }, | ||||
| 1827 | + "api": "messages", | ||||
| 1828 | + "raw": { | ||||
| 1829 | + "stop": "end_turn", | ||||
| 1830 | + "stop_details": null | ||||
| 1831 | + }, | ||||
| 1832 | + "sample": "Snow swallows the fence—\nthe Saint Lawrence groans with ice;\nwoodsmoke, then silence.", | ||||
| 1833 | + "costUsd": 0.011905 | ||||
| 1834 | + } | ||||
| 1835 | + ] | ||||
| 1836 | + }, | ||||
| 1837 | + "claude-opus-5-5": { | ||||
| 1838 | + "provider": "anthropic", | ||||
| 1839 | + "kind": "chat", | ||||
| 1840 | + "tests": [ | ||||
| 1841 | + { | ||||
| 1842 | + "test": "basic", | ||||
| 1843 | + "ok": true, | ||||
| 1844 | + "latencyMs": 842, | ||||
| 1845 | + "ttftMs": 830, | ||||
| 1846 | + "usage": { | ||||
| 1847 | + "input": 26, | ||||
| 1848 | + "output": 7, | ||||
| 1849 | + "cachedInput": 0 | ||||
| 1850 | + }, | ||||
| 1851 | + "api": "messages", | ||||
| 1852 | + "raw": { | ||||
| 1853 | + "stop": "end_turn", | ||||
| 1854 | + "stop_details": null | ||||
| 1855 | + }, | ||||
| 1856 | + "sample": "Ottawa", | ||||
| 1857 | + "costUsd": 0.000244 | ||||
| 1858 | + }, | ||||
| 1859 | + { | ||||
| 1860 | + "test": "reasoning", | ||||
| 1861 | + "ok": true, | ||||
| 1862 | + "latencyMs": 1742, | ||||
| 1863 | + "ttftMs": 1057, | ||||
| 1864 | + "usage": { | ||||
| 1865 | + "input": 67, | ||||
| 1866 | + "output": 156, | ||||
| 1867 | + "cachedInput": 0 | ||||
| 1868 | + }, | ||||
| 1869 | + "api": "messages", | ||||
| 1870 | + "raw": { | ||||
| 1871 | + "stop": "end_turn", | ||||
| 1872 | + "stop_details": null | ||||
| 1873 | + }, | ||||
| 1874 | + "sample": "Each of Alice's brothers has **3** sisters.\n\n1. Alice is a girl, and she has 2 sisters. So the family has 3 girls: Alice and her 2 sisters.\n2. Each brother is a sibling of every girl in the family, so his sisters are Alice plus her 2 sisters.\n\nANSWER: 3", | ||||
| 1875 | + "costUsd": 0.003388 | ||||
| 1876 | + }, | ||||
| 1877 | + { | ||||
| 1878 | + "test": "math", | ||||
| 1879 | + "ok": true, | ||||
| 1880 | + "latencyMs": 1216, | ||||
| 1881 | + "ttftMs": 752, | ||||
| 1882 | + "usage": { | ||||
| 1883 | + "input": 72, | ||||
| 1884 | + "output": 37, | ||||
| 1885 | + "cachedInput": 0 | ||||
| 1886 | + }, | ||||
| 1887 | + "api": "messages", | ||||
| 1888 | + "raw": { | ||||
| 1889 | + "stop": "end_turn", | ||||
| 1890 | + "stop_details": null | ||||
| 1891 | + }, | ||||
| 1892 | + "sample": "a=403;b=2500", | ||||
| 1893 | + "costUsd": 0.001028 | ||||
| 1894 | + }, | ||||
| 1895 | + { | ||||
| 1896 | + "test": "code", | ||||
| 1897 | + "ok": true, | ||||
| 1898 | + "latencyMs": 1778, | ||||
| 1899 | + "ttftMs": 697, | ||||
| 1900 | + "usage": { | ||||
| 1901 | + "input": 70, | ||||
| 1902 | + "output": 138, | ||||
| 1903 | + "cachedInput": 0 | ||||
| 1904 | + }, | ||||
| 1905 | + "api": "messages", | ||||
| 1906 | + "raw": { | ||||
| 1907 | + "stop": "end_turn", | ||||
| 1908 | + "stop_details": null | ||||
| 1909 | + }, | ||||
| 1910 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n < 4) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1911 | + "costUsd": 0.00304 | ||||
| 1912 | + }, | ||||
| 1913 | + { | ||||
| 1914 | + "test": "french", | ||||
| 1915 | + "ok": true, | ||||
| 1916 | + "latencyMs": 2832, | ||||
| 1917 | + "ttftMs": 954, | ||||
| 1918 | + "usage": { | ||||
| 1919 | + "input": 51, | ||||
| 1920 | + "output": 232, | ||||
| 1921 | + "cachedInput": 0 | ||||
| 1922 | + }, | ||||
| 1923 | + "api": "messages", | ||||
| 1924 | + "raw": { | ||||
| 1925 | + "stop": "end_turn", | ||||
| 1926 | + "stop_details": null | ||||
| 1927 | + }, | ||||
| 1928 | + "sample": "La méthode du coût est une technique d'évaluation immobilière qui estime la valeur d'un bien en additionnant la valeur du terrain, considéré comme non bâti, et le coût de reconstruction ou de remplacement à neuf des bâtiments, diminué de la dépréciation accumulée (usure physique, désuétude fonctionn", | ||||
| 1929 | + "costUsd": 0.004844 | ||||
| 1930 | + }, | ||||
| 1931 | + { | ||||
| 1932 | + "test": "english", | ||||
| 1933 | + "ok": true, | ||||
| 1934 | + "latencyMs": 1905, | ||||
| 1935 | + "ttftMs": 633, | ||||
| 1936 | + "usage": { | ||||
| 1937 | + "input": 31, | ||||
| 1938 | + "output": 151, | ||||
| 1939 | + "cachedInput": 0 | ||||
| 1940 | + }, | ||||
| 1941 | + "api": "messages", | ||||
| 1942 | + "raw": { | ||||
| 1943 | + "stop": "end_turn", | ||||
| 1944 | + "stop_details": null | ||||
| 1945 | + }, | ||||
| 1946 | + "sample": "A hedonic pricing model is an economic method that estimates the value of a good by breaking its price down into the separate contributions of its individual characteristics, such as a house's size, location, number of bedrooms, and proximity to parks or pollution. Using regression analysis on marke", | ||||
| 1947 | + "costUsd": 0.003144 | ||||
| 1948 | + }, | ||||
| 1949 | + { | ||||
| 1950 | + "test": "json", | ||||
| 1951 | + "ok": true, | ||||
| 1952 | + "latencyMs": 1503, | ||||
| 1953 | + "ttftMs": 995, | ||||
| 1954 | + "usage": { | ||||
| 1955 | + "input": 71, | ||||
| 1956 | + "output": 75, | ||||
| 1957 | + "cachedInput": 0 | ||||
| 1958 | + }, | ||||
| 1959 | + "api": "messages", | ||||
| 1960 | + "raw": { | ||||
| 1961 | + "stop": "end_turn", | ||||
| 1962 | + "stop_details": null | ||||
| 1963 | + }, | ||||
| 1964 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 1965 | + "costUsd": 0.001784 | ||||
| 1966 | + }, | ||||
| 1967 | + { | ||||
| 1968 | + "test": "tools", | ||||
| 1969 | + "ok": true, | ||||
| 1970 | + "latencyMs": 2031, | ||||
| 1971 | + "usage": { | ||||
| 1972 | + "input": 413, | ||||
| 1973 | + "output": 57, | ||||
| 1974 | + "cachedInput": 0 | ||||
| 1975 | + }, | ||||
| 1976 | + "api": "messages", | ||||
| 1977 | + "raw": { | ||||
| 1978 | + "stop": "tool_use", | ||||
| 1979 | + "stop_details": null | ||||
| 1980 | + }, | ||||
| 1981 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 1982 | + "costUsd": 0.002792 | ||||
| 1983 | + }, | ||||
| 1984 | + { | ||||
| 1985 | + "test": "vision", | ||||
| 1986 | + "ok": true, | ||||
| 1987 | + "latencyMs": 1225, | ||||
| 1988 | + "ttftMs": 689, | ||||
| 1989 | + "usage": { | ||||
| 1990 | + "input": 219, | ||||
| 1991 | + "output": 10, | ||||
| 1992 | + "cachedInput": 0 | ||||
| 1993 | + }, | ||||
| 1994 | + "api": "messages", | ||||
| 1995 | + "raw": { | ||||
| 1996 | + "stop": "end_turn", | ||||
| 1997 | + "stop_details": null | ||||
| 1998 | + }, | ||||
| 1999 | + "sample": "circles=3; other=square", | ||||
| 2000 | + "costUsd": 0.001076 | ||||
| 2001 | + }, | ||||
| 2002 | + { | ||||
| 2003 | + "test": "longctx", | ||||
| 2004 | + "ok": true, | ||||
| 2005 | + "latencyMs": 2615, | ||||
| 2006 | + "ttftMs": 2584, | ||||
| 2007 | + "usage": { | ||||
| 2008 | + "input": 15024, | ||||
| 2009 | + "output": 175, | ||||
| 2010 | + "cachedInput": 0 | ||||
| 2011 | + }, | ||||
| 2012 | + "api": "messages", | ||||
| 2013 | + "raw": { | ||||
| 2014 | + "stop": "end_turn", | ||||
| 2015 | + "stop_details": null | ||||
| 2016 | + }, | ||||
| 2017 | + "sample": "7431-ALPHA", | ||||
| 2018 | + "costUsd": 0.063596 | ||||
| 2019 | + }, | ||||
| 2020 | + { | ||||
| 2021 | + "test": "streaming", | ||||
| 2022 | + "ok": true, | ||||
| 2023 | + "latencyMs": 4977, | ||||
| 2024 | + "ttftMs": 4635, | ||||
| 2025 | + "usage": { | ||||
| 2026 | + "input": 23, | ||||
| 2027 | + "output": 400, | ||||
| 2028 | + "cachedInput": 0 | ||||
| 2029 | + }, | ||||
| 2030 | + "api": "messages", | ||||
| 2031 | + "raw": { | ||||
| 2032 | + "stop": "max_tokens", | ||||
| 2033 | + "stop_details": null | ||||
| 2034 | + }, | ||||
| 2035 | + "sample": "**Winter in Québec**\n\nSnow on old stone walls,\nthe frozen Saint Lawrence groans\nbeneath a pale mo", | ||||
| 2036 | + "costUsd": 0.008092 | ||||
| 2037 | + } | ||||
| 2038 | + ] | ||||
| 2039 | + }, | ||||
| 2040 | + "claude-sonnet-4-5-20250929": { | ||||
| 2041 | + "provider": "anthropic", | ||||
| 2042 | + "kind": "chat", | ||||
| 2043 | + "tests": [ | ||||
| 2044 | + { | ||||
| 2045 | + "test": "basic", | ||||
| 2046 | + "ok": true, | ||||
| 2047 | + "latencyMs": 854, | ||||
| 2048 | + "ttftMs": 780, | ||||
| 2049 | + "usage": { | ||||
| 2050 | + "input": 20, | ||||
| 2051 | + "output": 4, | ||||
| 2052 | + "cachedInput": 0 | ||||
| 2053 | + }, | ||||
| 2054 | + "api": "messages", | ||||
| 2055 | + "raw": { | ||||
| 2056 | + "stop": "end_turn", | ||||
| 2057 | + "stop_details": null | ||||
| 2058 | + }, | ||||
| 2059 | + "sample": "Ottawa", | ||||
| 2060 | + "costUsd": 0.00012 | ||||
| 2061 | + }, | ||||
| 2062 | + { | ||||
| 2063 | + "test": "reasoning", | ||||
| 2064 | + "ok": true, | ||||
| 2065 | + "latencyMs": 3399, | ||||
| 2066 | + "ttftMs": 669, | ||||
| 2067 | + "usage": { | ||||
| 2068 | + "input": 48, | ||||
| 2069 | + "output": 146, | ||||
| 2070 | + "cachedInput": 0 | ||||
| 2071 | + }, | ||||
| 2072 | + "api": "messages", | ||||
| 2073 | + "raw": { | ||||
| 2074 | + "stop": "end_turn", | ||||
| 2075 | + "stop_details": null | ||||
| 2076 | + }, | ||||
| 2077 | + "sample": "Let me think through this step by step.\n\nFirst, let me identify who is in Alice's family:\n- Alice (female)\n- 3 brothers (males)\n- 2 sisters (females)\n\nSo the siblings in the family are:\n- Alice\n- 2 other sisters\n- 3 brothers\n\nNow, the question asks: How many sisters does each of Alice's brothers hav", | ||||
| 2078 | + "costUsd": 0.002334 | ||||
| 2079 | + }, | ||||
| 2080 | + { | ||||
| 2081 | + "test": "math", | ||||
| 2082 | + "ok": true, | ||||
| 2083 | + "latencyMs": 1011, | ||||
| 2084 | + "ttftMs": 618, | ||||
| 2085 | + "usage": { | ||||
| 2086 | + "input": 58, | ||||
| 2087 | + "output": 11, | ||||
| 2088 | + "cachedInput": 0 | ||||
| 2089 | + }, | ||||
| 2090 | + "api": "messages", | ||||
| 2091 | + "raw": { | ||||
| 2092 | + "stop": "end_turn", | ||||
| 2093 | + "stop_details": null | ||||
| 2094 | + }, | ||||
| 2095 | + "sample": "a=403;b=2500", | ||||
| 2096 | + "costUsd": 0.000339 | ||||
| 2097 | + }, | ||||
| 2098 | + { | ||||
| 2099 | + "test": "code", | ||||
| 2100 | + "ok": true, | ||||
| 2101 | + "latencyMs": 1934, | ||||
| 2102 | + "ttftMs": 937, | ||||
| 2103 | + "usage": { | ||||
| 2104 | + "input": 50, | ||||
| 2105 | + "output": 132, | ||||
| 2106 | + "cachedInput": 0 | ||||
| 2107 | + }, | ||||
| 2108 | + "api": "messages", | ||||
| 2109 | + "raw": { | ||||
| 2110 | + "stop": "end_turn", | ||||
| 2111 | + "stop_details": null | ||||
| 2112 | + }, | ||||
| 2113 | + "sample": "\n```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n \n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n \n return true;\n}\n```\n```", | ||||
| 2114 | + "costUsd": 0.00213 | ||||
| 2115 | + }, | ||||
| 2116 | + { | ||||
| 2117 | + "test": "french", | ||||
| 2118 | + "ok": true, | ||||
| 2119 | + "latencyMs": 3130, | ||||
| 2120 | + "ttftMs": 595, | ||||
| 2121 | + "usage": { | ||||
| 2122 | + "input": 40, | ||||
| 2123 | + "output": 117, | ||||
| 2124 | + "cachedInput": 0 | ||||
| 2125 | + }, | ||||
| 2126 | + "api": "messages", | ||||
| 2127 | + "raw": { | ||||
| 2128 | + "stop": "end_turn", | ||||
| 2129 | + "stop_details": null | ||||
| 2130 | + }, | ||||
| 2131 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en calculant le coût de remplacement du bâtiment à neuf, auquel on soustrait la dépréciation liée à l'âge et à l'obsolescence, puis on ajoute la valeur du terrain. Cette méthode est particulièrement utilisée pour les", | ||||
| 2132 | + "costUsd": 0.001875 | ||||
| 2133 | + }, | ||||
| 2134 | + { | ||||
| 2135 | + "test": "english", | ||||
| 2136 | + "ok": true, | ||||
| 2137 | + "latencyMs": 2468, | ||||
| 2138 | + "ttftMs": 840, | ||||
| 2139 | + "usage": { | ||||
| 2140 | + "input": 21, | ||||
| 2141 | + "output": 64, | ||||
| 2142 | + "cachedInput": 0 | ||||
| 2143 | + }, | ||||
| 2144 | + "api": "messages", | ||||
| 2145 | + "raw": { | ||||
| 2146 | + "stop": "end_turn", | ||||
| 2147 | + "stop_details": null | ||||
| 2148 | + }, | ||||
| 2149 | + "sample": "A hedonic pricing model is a statistical method that breaks down the price of a good into the values of its individual characteristics or attributes. It is commonly used to estimate the implicit value of specific features, such as determining how much a swimming pool or an extra bedroom contributes ", | ||||
| 2150 | + "costUsd": 0.001023 | ||||
| 2151 | + }, | ||||
| 2152 | + { | ||||
| 2153 | + "test": "json", | ||||
| 2154 | + "ok": true, | ||||
| 2155 | + "latencyMs": 1158, | ||||
| 2156 | + "ttftMs": 820, | ||||
| 2157 | + "usage": { | ||||
| 2158 | + "input": 56, | ||||
| 2159 | + "output": 48, | ||||
| 2160 | + "cachedInput": 0 | ||||
| 2161 | + }, | ||||
| 2162 | + "api": "messages", | ||||
| 2163 | + "raw": { | ||||
| 2164 | + "stop": "end_turn", | ||||
| 2165 | + "stop_details": null | ||||
| 2166 | + }, | ||||
| 2167 | + "sample": "```json\n{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 291041\n}\n```", | ||||
| 2168 | + "costUsd": 0.000888 | ||||
| 2169 | + }, | ||||
| 2170 | + { | ||||
| 2171 | + "test": "tools", | ||||
| 2172 | + "ok": true, | ||||
| 2173 | + "latencyMs": 1432, | ||||
| 2174 | + "usage": { | ||||
| 2175 | + "input": 595, | ||||
| 2176 | + "output": 58, | ||||
| 2177 | + "cachedInput": 0 | ||||
| 2178 | + }, | ||||
| 2179 | + "api": "messages", | ||||
| 2180 | + "raw": { | ||||
| 2181 | + "stop": "tool_use", | ||||
| 2182 | + "stop_details": null | ||||
| 2183 | + }, | ||||
| 2184 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 2185 | + "costUsd": 0.002655 | ||||
| 2186 | + }, | ||||
| 2187 | + { | ||||
| 2188 | + "test": "vision", | ||||
| 2189 | + "ok": true, | ||||
| 2190 | + "latencyMs": 732, | ||||
| 2191 | + "ttftMs": 539, | ||||
| 2192 | + "usage": { | ||||
| 2193 | + "input": 211, | ||||
| 2194 | + "output": 10, | ||||
| 2195 | + "cachedInput": 0 | ||||
| 2196 | + }, | ||||
| 2197 | + "api": "messages", | ||||
| 2198 | + "raw": { | ||||
| 2199 | + "stop": "end_turn", | ||||
| 2200 | + "stop_details": null | ||||
| 2201 | + }, | ||||
| 2202 | + "sample": "circles=3; other=square", | ||||
| 2203 | + "costUsd": 0.000783 | ||||
| 2204 | + }, | ||||
| 2205 | + { | ||||
| 2206 | + "test": "longctx", | ||||
| 2207 | + "ok": true, | ||||
| 2208 | + "latencyMs": 1212, | ||||
| 2209 | + "ttftMs": 1116, | ||||
| 2210 | + "usage": { | ||||
| 2211 | + "input": 11100, | ||||
| 2212 | + "output": 9, | ||||
| 2213 | + "cachedInput": 0 | ||||
| 2214 | + }, | ||||
| 2215 | + "api": "messages", | ||||
| 2216 | + "raw": { | ||||
| 2217 | + "stop": "end_turn", | ||||
| 2218 | + "stop_details": null | ||||
| 2219 | + }, | ||||
| 2220 | + "sample": "7431-ALPHA", | ||||
| 2221 | + "costUsd": 0.033435 | ||||
| 2222 | + }, | ||||
| 2223 | + { | ||||
| 2224 | + "test": "streaming", | ||||
| 2225 | + "ok": true, | ||||
| 2226 | + "latencyMs": 1675, | ||||
| 2227 | + "ttftMs": 785, | ||||
| 2228 | + "usage": { | ||||
| 2229 | + "input": 16, | ||||
| 2230 | + "output": 32, | ||||
| 2231 | + "cachedInput": 0 | ||||
| 2232 | + }, | ||||
| 2233 | + "api": "messages", | ||||
| 2234 | + "raw": { | ||||
| 2235 | + "stop": "end_turn", | ||||
| 2236 | + "stop_details": null | ||||
| 2237 | + }, | ||||
| 2238 | + "sample": "# Winter in Quebec\n\nSnow drifts bury doors\nFrost paints white on windowpanes\nCold breath hangs like smoke", | ||||
| 2239 | + "costUsd": 0.000528 | ||||
| 2240 | + } | ||||
| 2241 | + ] | ||||
| 2242 | + }, | ||||
| 2243 | + "claude-sonnet-4-6": { | ||||
| 2244 | + "provider": "anthropic", | ||||
| 2245 | + "kind": "chat", | ||||
| 2246 | + "tests": [ | ||||
| 2247 | + { | ||||
| 2248 | + "test": "basic", | ||||
| 2249 | + "ok": true, | ||||
| 2250 | + "latencyMs": 1058, | ||||
| 2251 | + "ttftMs": 958, | ||||
| 2252 | + "usage": { | ||||
| 2253 | + "input": 20, | ||||
| 2254 | + "output": 4, | ||||
| 2255 | + "cachedInput": 0 | ||||
| 2256 | + }, | ||||
| 2257 | + "api": "messages", | ||||
| 2258 | + "raw": { | ||||
| 2259 | + "stop": "end_turn", | ||||
| 2260 | + "stop_details": null | ||||
| 2261 | + }, | ||||
| 2262 | + "sample": "Ottawa", | ||||
| 2263 | + "costUsd": 0.00012 | ||||
| 2264 | + }, | ||||
| 2265 | + { | ||||
| 2266 | + "test": "reasoning", | ||||
| 2267 | + "ok": true, | ||||
| 2268 | + "latencyMs": 2909, | ||||
| 2269 | + "ttftMs": 1821, | ||||
| 2270 | + "usage": { | ||||
| 2271 | + "input": 48, | ||||
| 2272 | + "output": 143, | ||||
| 2273 | + "cachedInput": 0 | ||||
| 2274 | + }, | ||||
| 2275 | + "api": "messages", | ||||
| 2276 | + "raw": { | ||||
| 2277 | + "stop": "end_turn", | ||||
| 2278 | + "stop_details": null | ||||
| 2279 | + }, | ||||
| 2280 | + "sample": "## Thinking it through:\n\nAlice is a girl, so she counts as a sister to her brothers.\n\nEach of Alice's brothers has these sisters:\n- Alice herself\n- Alice's 2 sisters\n\nSo each brother has **3 sisters** total.\n\nANSWER: 3", | ||||
| 2281 | + "costUsd": 0.002289 | ||||
| 2282 | + }, | ||||
| 2283 | + { | ||||
| 2284 | + "test": "math", | ||||
| 2285 | + "ok": true, | ||||
| 2286 | + "latencyMs": 2260, | ||||
| 2287 | + "ttftMs": 2065, | ||||
| 2288 | + "usage": { | ||||
| 2289 | + "input": 58, | ||||
| 2290 | + "output": 111, | ||||
| 2291 | + "cachedInput": 0 | ||||
| 2292 | + }, | ||||
| 2293 | + "api": "messages", | ||||
| 2294 | + "raw": { | ||||
| 2295 | + "stop": "end_turn", | ||||
| 2296 | + "stop_details": null | ||||
| 2297 | + }, | ||||
| 2298 | + "sample": "a=403;b=2500", | ||||
| 2299 | + "costUsd": 0.001839 | ||||
| 2300 | + }, | ||||
| 2301 | + { | ||||
| 2302 | + "test": "code", | ||||
| 2303 | + "ok": true, | ||||
| 2304 | + "latencyMs": 1912, | ||||
| 2305 | + "ttftMs": 994, | ||||
| 2306 | + "usage": { | ||||
| 2307 | + "input": 50, | ||||
| 2308 | + "output": 123, | ||||
| 2309 | + "cachedInput": 0 | ||||
| 2310 | + }, | ||||
| 2311 | + "api": "messages", | ||||
| 2312 | + "raw": { | ||||
| 2313 | + "stop": "end_turn", | ||||
| 2314 | + "stop_details": null | ||||
| 2315 | + }, | ||||
| 2316 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 2317 | + "costUsd": 0.001995 | ||||
| 2318 | + }, | ||||
| 2319 | + { | ||||
| 2320 | + "test": "french", | ||||
| 2321 | + "ok": true, | ||||
| 2322 | + "latencyMs": 4367, | ||||
| 2323 | + "ttftMs": 1616, | ||||
| 2324 | + "usage": { | ||||
| 2325 | + "input": 40, | ||||
| 2326 | + "output": 171, | ||||
| 2327 | + "cachedInput": 0 | ||||
| 2328 | + }, | ||||
| 2329 | + "api": "messages", | ||||
| 2330 | + "raw": { | ||||
| 2331 | + "stop": "end_turn", | ||||
| 2332 | + "stop_details": null | ||||
| 2333 | + }, | ||||
| 2334 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf des bâtiments, diminué d'une dépréciation tenant compte de leur vétusté et de leur obsolescence. Cette approche est particulièrement utilisée p", | ||||
| 2335 | + "costUsd": 0.002685 | ||||
| 2336 | + }, | ||||
| 2337 | + { | ||||
| 2338 | + "test": "english", | ||||
| 2339 | + "ok": true, | ||||
| 2340 | + "latencyMs": 3392, | ||||
| 2341 | + "ttftMs": 1294, | ||||
| 2342 | + "usage": { | ||||
| 2343 | + "input": 21, | ||||
| 2344 | + "output": 123, | ||||
| 2345 | + "cachedInput": 0 | ||||
| 2346 | + }, | ||||
| 2347 | + "api": "messages", | ||||
| 2348 | + "raw": { | ||||
| 2349 | + "stop": "end_turn", | ||||
| 2350 | + "stop_details": null | ||||
| 2351 | + }, | ||||
| 2352 | + "sample": "A hedonic pricing model is an econometric method used to estimate the value of a good by breaking it down into its constituent characteristics and determining how each attribute contributes to its overall price. It is commonly applied in real estate, where a home's price is modeled as a function of ", | ||||
| 2353 | + "costUsd": 0.001908 | ||||
| 2354 | + }, | ||||
| 2355 | + { | ||||
| 2356 | + "test": "json", | ||||
| 2357 | + "ok": true, | ||||
| 2358 | + "latencyMs": 2958, | ||||
| 2359 | + "ttftMs": 2718, | ||||
| 2360 | + "usage": { | ||||
| 2361 | + "input": 56, | ||||
| 2362 | + "output": 158, | ||||
| 2363 | + "cachedInput": 0 | ||||
| 2364 | + }, | ||||
| 2365 | + "api": "messages", | ||||
| 2366 | + "raw": { | ||||
| 2367 | + "stop": "end_turn", | ||||
| 2368 | + "stop_details": null | ||||
| 2369 | + }, | ||||
| 2370 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 2371 | + "costUsd": 0.002538 | ||||
| 2372 | + }, | ||||
| 2373 | + { | ||||
| 2374 | + "test": "tools", | ||||
| 2375 | + "ok": true, | ||||
| 2376 | + "latencyMs": 2474, | ||||
| 2377 | + "ttftMs": 1732, | ||||
| 2378 | + "usage": { | ||||
| 2379 | + "input": 596, | ||||
| 2380 | + "output": 121, | ||||
| 2381 | + "cachedInput": 0 | ||||
| 2382 | + }, | ||||
| 2383 | + "api": "messages", | ||||
| 2384 | + "raw": { | ||||
| 2385 | + "stop": "tool_use", | ||||
| 2386 | + "stop_details": null | ||||
| 2387 | + }, | ||||
| 2388 | + "sample": "Sure! Let me fetch the current weather for Gatineau, Quebec right now!", | ||||
| 2389 | + "costUsd": 0.003603 | ||||
| 2390 | + }, | ||||
| 2391 | + { | ||||
| 2392 | + "test": "vision", | ||||
| 2393 | + "ok": true, | ||||
| 2394 | + "latencyMs": 951, | ||||
| 2395 | + "ttftMs": 780, | ||||
| 2396 | + "usage": { | ||||
| 2397 | + "input": 211, | ||||
| 2398 | + "output": 10, | ||||
| 2399 | + "cachedInput": 0 | ||||
| 2400 | + }, | ||||
| 2401 | + "api": "messages", | ||||
| 2402 | + "raw": { | ||||
| 2403 | + "stop": "end_turn", | ||||
| 2404 | + "stop_details": null | ||||
| 2405 | + }, | ||||
| 2406 | + "sample": "circles=3; other=square", | ||||
| 2407 | + "costUsd": 0.000783 | ||||
| 2408 | + }, | ||||
| 2409 | + { | ||||
| 2410 | + "test": "longctx", | ||||
| 2411 | + "ok": true, | ||||
| 2412 | + "latencyMs": 2763, | ||||
| 2413 | + "ttftMs": 2548, | ||||
| 2414 | + "usage": { | ||||
| 2415 | + "input": 11100, | ||||
| 2416 | + "output": 9, | ||||
| 2417 | + "cachedInput": 0 | ||||
| 2418 | + }, | ||||
| 2419 | + "api": "messages", | ||||
| 2420 | + "raw": { | ||||
| 2421 | + "stop": "end_turn", | ||||
| 2422 | + "stop_details": null | ||||
| 2423 | + }, | ||||
| 2424 | + "sample": "7431-ALPHA", | ||||
| 2425 | + "costUsd": 0.033435 | ||||
| 2426 | + }, | ||||
| 2427 | + { | ||||
| 2428 | + "test": "streaming", | ||||
| 2429 | + "ok": true, | ||||
| 2430 | + "latencyMs": 5794, | ||||
| 2431 | + "ttftMs": 5791, | ||||
| 2432 | + "usage": { | ||||
| 2433 | + "input": 16, | ||||
| 2434 | + "output": 300, | ||||
| 2435 | + "cachedInput": 0 | ||||
| 2436 | + }, | ||||
| 2437 | + "api": "messages", | ||||
| 2438 | + "raw": { | ||||
| 2439 | + "stop": "end_turn", | ||||
| 2440 | + "stop_details": null | ||||
| 2441 | + }, | ||||
| 2442 | + "sample": "**Snow blankets the plains**\n**St. Lawrence locked in silence**\n**Maple dreams of spring**", | ||||
| 2443 | + "costUsd": 0.004548 | ||||
| 2444 | + } | ||||
| 2445 | + ] | ||||
| 2446 | + }, | ||||
| 2447 | + "claude-sonnet-5": { | ||||
| 2448 | + "provider": "anthropic", | ||||
| 2449 | + "kind": "chat", | ||||
| 2450 | + "tests": [ | ||||
| 2451 | + { | ||||
| 2452 | + "test": "basic", | ||||
| 2453 | + "ok": true, | ||||
| 2454 | + "latencyMs": 908, | ||||
| 2455 | + "ttftMs": 515, | ||||
| 2456 | + "usage": { | ||||
| 2457 | + "input": 24, | ||||
| 2458 | + "output": 9, | ||||
| 2459 | + "cachedInput": 0 | ||||
| 2460 | + }, | ||||
| 2461 | + "api": "messages", | ||||
| 2462 | + "raw": { | ||||
| 2463 | + "stop": "end_turn", | ||||
| 2464 | + "stop_details": null | ||||
| 2465 | + }, | ||||
| 2466 | + "sample": "**Ottawa**", | ||||
| 2467 | + "costUsd": 0.000138 | ||||
| 2468 | + }, | ||||
| 2469 | + { | ||||
| 2470 | + "test": "reasoning", | ||||
| 2471 | + "ok": true, | ||||
| 2472 | + "latencyMs": 2367, | ||||
| 2473 | + "ttftMs": 1557, | ||||
| 2474 | + "usage": { | ||||
| 2475 | + "input": 65, | ||||
| 2476 | + "output": 194, | ||||
| 2477 | + "cachedInput": 0 | ||||
| 2478 | + }, | ||||
| 2479 | + "api": "messages", | ||||
| 2480 | + "raw": { | ||||
| 2481 | + "stop": "end_turn", | ||||
| 2482 | + "stop_details": null | ||||
| 2483 | + }, | ||||
| 2484 | + "sample": "Each brother shares the same siblings as Alice. Alice has 2 sisters, which means there are 3 girls total in the family (Alice + her 2 sisters). From a brother's perspective, all 3 girls (including Alice) are his sisters.\n\nANSWER: 3", | ||||
| 2485 | + "costUsd": 0.00207 | ||||
| 2486 | + }, | ||||
| 2487 | + { | ||||
| 2488 | + "test": "math", | ||||
| 2489 | + "ok": true, | ||||
| 2490 | + "latencyMs": 1133, | ||||
| 2491 | + "ttftMs": 910, | ||||
| 2492 | + "usage": { | ||||
| 2493 | + "input": 70, | ||||
| 2494 | + "output": 56, | ||||
| 2495 | + "cachedInput": 0 | ||||
| 2496 | + }, | ||||
| 2497 | + "api": "messages", | ||||
| 2498 | + "raw": { | ||||
| 2499 | + "stop": "end_turn", | ||||
| 2500 | + "stop_details": null | ||||
| 2501 | + }, | ||||
| 2502 | + "sample": "a=403;b=2500", | ||||
| 2503 | + "costUsd": 0.0007 | ||||
| 2504 | + }, | ||||
| 2505 | + { | ||||
| 2506 | + "test": "code", | ||||
| 2507 | + "ok": true, | ||||
| 2508 | + "latencyMs": 1168, | ||||
| 2509 | + "ttftMs": 475, | ||||
| 2510 | + "usage": { | ||||
| 2511 | + "input": 68, | ||||
| 2512 | + "output": 103, | ||||
| 2513 | + "cachedInput": 0 | ||||
| 2514 | + }, | ||||
| 2515 | + "api": "messages", | ||||
| 2516 | + "raw": { | ||||
| 2517 | + "stop": "end_turn", | ||||
| 2518 | + "stop_details": null | ||||
| 2519 | + }, | ||||
| 2520 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 2521 | + "costUsd": 0.001166 | ||||
| 2522 | + }, | ||||
| 2523 | + { | ||||
| 2524 | + "test": "french", | ||||
| 2525 | + "ok": true, | ||||
| 2526 | + "latencyMs": 2344, | ||||
| 2527 | + "ttftMs": 470, | ||||
| 2528 | + "usage": { | ||||
| 2529 | + "input": 49, | ||||
| 2530 | + "output": 190, | ||||
| 2531 | + "cachedInput": 0 | ||||
| 2532 | + }, | ||||
| 2533 | + "api": "messages", | ||||
| 2534 | + "raw": { | ||||
| 2535 | + "stop": "end_turn", | ||||
| 2536 | + "stop_details": null | ||||
| 2537 | + }, | ||||
| 2538 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en calculant le coût de remplacement ou de reconstruction à neuf de la construction, duquel on déduit la dépréciation liée à l'usure, à l'obsolescence physique, fonctionnelle ou économique, puis en ajoutant la valeur", | ||||
| 2539 | + "costUsd": 0.001998 | ||||
| 2540 | + }, | ||||
| 2541 | + { | ||||
| 2542 | + "test": "english", | ||||
| 2543 | + "ok": true, | ||||
| 2544 | + "latencyMs": 1532, | ||||
| 2545 | + "ttftMs": 460, | ||||
| 2546 | + "usage": { | ||||
| 2547 | + "input": 29, | ||||
| 2548 | + "output": 113, | ||||
| 2549 | + "cachedInput": 0 | ||||
| 2550 | + }, | ||||
| 2551 | + "api": "messages", | ||||
| 2552 | + "raw": { | ||||
| 2553 | + "stop": "end_turn", | ||||
| 2554 | + "stop_details": null | ||||
| 2555 | + }, | ||||
| 2556 | + "sample": "A hedonic pricing model is a statistical technique used to estimate the value of a good or service by breaking it down into its constituent characteristics and determining the implicit price of each attribute. It is commonly applied to markets like real estate, where the price of a home is analyzed ", | ||||
| 2557 | + "costUsd": 0.001188 | ||||
| 2558 | + }, | ||||
| 2559 | + { | ||||
| 2560 | + "test": "json", | ||||
| 2561 | + "ok": true, | ||||
| 2562 | + "latencyMs": 1069, | ||||
| 2563 | + "ttftMs": 497, | ||||
| 2564 | + "usage": { | ||||
| 2565 | + "input": 69, | ||||
| 2566 | + "output": 41, | ||||
| 2567 | + "cachedInput": 0 | ||||
| 2568 | + }, | ||||
| 2569 | + "api": "messages", | ||||
| 2570 | + "raw": { | ||||
| 2571 | + "stop": "end_turn", | ||||
| 2572 | + "stop_details": null | ||||
| 2573 | + }, | ||||
| 2574 | + "sample": "{\"city\": \"Gatineau\", \"country\": \"Canada\", \"province\": \"Quebec\", \"population_estimate\": 291041}", | ||||
| 2575 | + "costUsd": 0.000548 | ||||
| 2576 | + }, | ||||
| 2577 | + { | ||||
| 2578 | + "test": "tools", | ||||
| 2579 | + "ok": true, | ||||
| 2580 | + "latencyMs": 1268, | ||||
| 2581 | + "usage": { | ||||
| 2582 | + "input": 479, | ||||
| 2583 | + "output": 93, | ||||
| 2584 | + "cachedInput": 0 | ||||
| 2585 | + }, | ||||
| 2586 | + "api": "messages", | ||||
| 2587 | + "raw": { | ||||
| 2588 | + "stop": "tool_use", | ||||
| 2589 | + "stop_details": null | ||||
| 2590 | + }, | ||||
| 2591 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 2592 | + "costUsd": 0.001888 | ||||
| 2593 | + }, | ||||
| 2594 | + { | ||||
| 2595 | + "test": "vision", | ||||
| 2596 | + "ok": true, | ||||
| 2597 | + "latencyMs": 993, | ||||
| 2598 | + "ttftMs": 576, | ||||
| 2599 | + "usage": { | ||||
| 2600 | + "input": 217, | ||||
| 2601 | + "output": 10, | ||||
| 2602 | + "cachedInput": 0 | ||||
| 2603 | + }, | ||||
| 2604 | + "api": "messages", | ||||
| 2605 | + "raw": { | ||||
| 2606 | + "stop": "end_turn", | ||||
| 2607 | + "stop_details": null | ||||
| 2608 | + }, | ||||
| 2609 | + "sample": "circles=3; other=square", | ||||
| 2610 | + "costUsd": 0.000534 | ||||
| 2611 | + }, | ||||
| 2612 | + { | ||||
| 2613 | + "test": "longctx", | ||||
| 2614 | + "ok": true, | ||||
| 2615 | + "latencyMs": 1153, | ||||
| 2616 | + "ttftMs": 1128, | ||||
| 2617 | + "usage": { | ||||
| 2618 | + "input": 15022, | ||||
| 2619 | + "output": 10, | ||||
| 2620 | + "cachedInput": 0 | ||||
| 2621 | + }, | ||||
| 2622 | + "api": "messages", | ||||
| 2623 | + "raw": { | ||||
| 2624 | + "stop": "end_turn", | ||||
| 2625 | + "stop_details": null | ||||
| 2626 | + }, | ||||
| 2627 | + "sample": "7431-ALPHA", | ||||
| 2628 | + "costUsd": 0.030144 | ||||
| 2629 | + }, | ||||
| 2630 | + { | ||||
| 2631 | + "test": "streaming", | ||||
| 2632 | + "ok": true, | ||||
| 2633 | + "latencyMs": 1170, | ||||
| 2634 | + "ttftMs": 528, | ||||
| 2635 | + "usage": { | ||||
| 2636 | + "input": 21, | ||||
| 2637 | + "output": 35, | ||||
| 2638 | + "cachedInput": 0 | ||||
| 2639 | + }, | ||||
| 2640 | + "api": "messages", | ||||
| 2641 | + "raw": { | ||||
| 2642 | + "stop": "end_turn", | ||||
| 2643 | + "stop_details": null | ||||
| 2644 | + }, | ||||
| 2645 | + "sample": "Snow blankets the fields—\nMaple trees stand bare and still,\nBreath turns into mist.", | ||||
| 2646 | + "costUsd": 0.000392 | ||||
| 2647 | + } | ||||
| 2648 | + ] | ||||
| 2649 | + }, | ||||
| 2650 | + "claude-sonnet-5-5": { | ||||
| 2651 | + "provider": "anthropic", | ||||
| 2652 | + "kind": "chat", | ||||
| 2653 | + "tests": [ | ||||
| 2654 | + { | ||||
| 2655 | + "test": "basic", | ||||
| 2656 | + "ok": true, | ||||
| 2657 | + "latencyMs": 1025, | ||||
| 2658 | + "ttftMs": 1017, | ||||
| 2659 | + "usage": { | ||||
| 2660 | + "input": 26, | ||||
| 2661 | + "output": 7, | ||||
| 2662 | + "cachedInput": 0 | ||||
| 2663 | + }, | ||||
| 2664 | + "api": "messages", | ||||
| 2665 | + "raw": { | ||||
| 2666 | + "stop": "end_turn", | ||||
| 2667 | + "stop_details": null | ||||
| 2668 | + }, | ||||
| 2669 | + "sample": "Ottawa", | ||||
| 2670 | + "costUsd": 0.000122 | ||||
| 2671 | + }, | ||||
| 2672 | + { | ||||
| 2673 | + "test": "reasoning", | ||||
| 2674 | + "ok": true, | ||||
| 2675 | + "latencyMs": 1538, | ||||
| 2676 | + "ttftMs": 561, | ||||
| 2677 | + "usage": { | ||||
| 2678 | + "input": 67, | ||||
| 2679 | + "output": 89, | ||||
| 2680 | + "cachedInput": 0 | ||||
| 2681 | + }, | ||||
| 2682 | + "api": "messages", | ||||
| 2683 | + "raw": { | ||||
| 2684 | + "stop": "end_turn", | ||||
| 2685 | + "stop_details": null | ||||
| 2686 | + }, | ||||
| 2687 | + "sample": "Alice has 2 sisters, so the girls in the family are Alice plus those 2 sisters, which makes 3 girls in total.\n\nEach of Alice's brothers has all 3 girls as sisters: Alice and her 2 sisters.\n\nANSWER: 3", | ||||
| 2688 | + "costUsd": 0.001024 | ||||
| 2689 | + }, | ||||
| 2690 | + { | ||||
| 2691 | + "test": "math", | ||||
| 2692 | + "ok": true, | ||||
| 2693 | + "latencyMs": 1026, | ||||
| 2694 | + "ttftMs": 525, | ||||
| 2695 | + "usage": { | ||||
| 2696 | + "input": 72, | ||||
| 2697 | + "output": 10, | ||||
| 2698 | + "cachedInput": 0 | ||||
| 2699 | + }, | ||||
| 2700 | + "api": "messages", | ||||
| 2701 | + "raw": { | ||||
| 2702 | + "stop": "end_turn", | ||||
| 2703 | + "stop_details": null | ||||
| 2704 | + }, | ||||
| 2705 | + "sample": "a=403;b=2500", | ||||
| 2706 | + "costUsd": 0.000244 | ||||
| 2707 | + }, | ||||
| 2708 | + { | ||||
| 2709 | + "test": "code", | ||||
| 2710 | + "ok": true, | ||||
| 2711 | + "latencyMs": 1496, | ||||
| 2712 | + "ttftMs": 520, | ||||
| 2713 | + "usage": { | ||||
| 2714 | + "input": 70, | ||||
| 2715 | + "output": 144, | ||||
| 2716 | + "cachedInput": 0 | ||||
| 2717 | + }, | ||||
| 2718 | + "api": "messages", | ||||
| 2719 | + "raw": { | ||||
| 2720 | + "stop": "end_turn", | ||||
| 2721 | + "stop_details": null | ||||
| 2722 | + }, | ||||
| 2723 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 2724 | + "costUsd": 0.00158 | ||||
| 2725 | + }, | ||||
| 2726 | + { | ||||
| 2727 | + "test": "french", | ||||
| 2728 | + "ok": true, | ||||
| 2729 | + "latencyMs": 2180, | ||||
| 2730 | + "ttftMs": 501, | ||||
| 2731 | + "usage": { | ||||
| 2732 | + "input": 51, | ||||
| 2733 | + "output": 222, | ||||
| 2734 | + "cachedInput": 0 | ||||
| 2735 | + }, | ||||
| 2736 | + "api": "messages", | ||||
| 2737 | + "raw": { | ||||
| 2738 | + "stop": "end_turn", | ||||
| 2739 | + "stop_details": null | ||||
| 2740 | + }, | ||||
| 2741 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain (déterminée par comparaison avec des terrains similaires) et le coût de reconstruction à neuf du bâtiment, dont on retranche la dépréciation liée à la vétusté, à l'usure physique ", | ||||
| 2742 | + "costUsd": 0.002322 | ||||
| 2743 | + }, | ||||
| 2744 | + { | ||||
| 2745 | + "test": "english", | ||||
| 2746 | + "ok": true, | ||||
| 2747 | + "latencyMs": 2293, | ||||
| 2748 | + "ttftMs": 820, | ||||
| 2749 | + "usage": { | ||||
| 2750 | + "input": 31, | ||||
| 2751 | + "output": 138, | ||||
| 2752 | + "cachedInput": 0 | ||||
| 2753 | + }, | ||||
| 2754 | + "api": "messages", | ||||
| 2755 | + "raw": { | ||||
| 2756 | + "stop": "end_turn", | ||||
| 2757 | + "stop_details": null | ||||
| 2758 | + }, | ||||
| 2759 | + "sample": "A hedonic pricing model is a statistical method, typically a regression, that estimates the value of a good by breaking its price down into the contributions of its individual characteristics, such as a house's size, location, and age. It is widely used in real estate, consumer price indexes, and en", | ||||
| 2760 | + "costUsd": 0.001442 | ||||
| 2761 | + }, | ||||
| 2762 | + { | ||||
| 2763 | + "test": "json", | ||||
| 2764 | + "ok": true, | ||||
| 2765 | + "latencyMs": 1143, | ||||
| 2766 | + "ttftMs": 524, | ||||
| 2767 | + "usage": { | ||||
| 2768 | + "input": 71, | ||||
| 2769 | + "output": 37, | ||||
| 2770 | + "cachedInput": 0 | ||||
| 2771 | + }, | ||||
| 2772 | + "api": "messages", | ||||
| 2773 | + "raw": { | ||||
| 2774 | + "stop": "end_turn", | ||||
| 2775 | + "stop_details": null | ||||
| 2776 | + }, | ||||
| 2777 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 2778 | + "costUsd": 0.000512 | ||||
| 2779 | + }, | ||||
| 2780 | + { | ||||
| 2781 | + "test": "tools", | ||||
| 2782 | + "ok": true, | ||||
| 2783 | + "latencyMs": 1279, | ||||
| 2784 | + "usage": { | ||||
| 2785 | + "input": 413, | ||||
| 2786 | + "output": 57, | ||||
| 2787 | + "cachedInput": 0 | ||||
| 2788 | + }, | ||||
| 2789 | + "api": "messages", | ||||
| 2790 | + "raw": { | ||||
| 2791 | + "stop": "tool_use", | ||||
| 2792 | + "stop_details": null | ||||
| 2793 | + }, | ||||
| 2794 | + "sample": "{\"name\":\"get_weather\",\"arguments\":{\"location\":\"Gatineau, Quebec\"}}", | ||||
| 2795 | + "costUsd": 0.001396 | ||||
| 2796 | + }, | ||||
| 2797 | + { | ||||
| 2798 | + "test": "vision", | ||||
| 2799 | + "ok": true, | ||||
| 2800 | + "latencyMs": 1091, | ||||
| 2801 | + "ttftMs": 586, | ||||
| 2802 | + "usage": { | ||||
| 2803 | + "input": 219, | ||||
| 2804 | + "output": 10, | ||||
| 2805 | + "cachedInput": 0 | ||||
| 2806 | + }, | ||||
| 2807 | + "api": "messages", | ||||
| 2808 | + "raw": { | ||||
| 2809 | + "stop": "end_turn", | ||||
| 2810 | + "stop_details": null | ||||
| 2811 | + }, | ||||
| 2812 | + "sample": "circles=3; other=square", | ||||
| 2813 | + "costUsd": 0.000538 | ||||
| 2814 | + }, | ||||
| 2815 | + { | ||||
| 2816 | + "test": "longctx", | ||||
| 2817 | + "ok": true, | ||||
| 2818 | + "latencyMs": 1200, | ||||
| 2819 | + "ttftMs": 745, | ||||
| 2820 | + "usage": { | ||||
| 2821 | + "input": 15024, | ||||
| 2822 | + "output": 10, | ||||
| 2823 | + "cachedInput": 0 | ||||
| 2824 | + }, | ||||
| 2825 | + "api": "messages", | ||||
| 2826 | + "raw": { | ||||
| 2827 | + "stop": "end_turn", | ||||
| 2828 | + "stop_details": null | ||||
| 2829 | + }, | ||||
| 2830 | + "sample": "7431-ALPHA", | ||||
| 2831 | + "costUsd": 0.030148 | ||||
| 2832 | + }, | ||||
| 2833 | + { | ||||
| 2834 | + "test": "streaming", | ||||
| 2835 | + "ok": true, | ||||
| 2836 | + "latencyMs": 1392, | ||||
| 2837 | + "ttftMs": 843, | ||||
| 2838 | + "usage": { | ||||
| 2839 | + "input": 23, | ||||
| 2840 | + "output": 32, | ||||
| 2841 | + "cachedInput": 0 | ||||
| 2842 | + }, | ||||
| 2843 | + "api": "messages", | ||||
| 2844 | + "raw": { | ||||
| 2845 | + "stop": "end_turn", | ||||
| 2846 | + "stop_details": null | ||||
| 2847 | + }, | ||||
| 2848 | + "sample": "Snow hushes the streets,\nbreath curls white above poutine—\nthe cold sings in French.", | ||||
| 2849 | + "costUsd": 0.000366 | ||||
| 2850 | + } | ||||
| 2851 | + ] | ||||
| 2852 | + } | ||||
| 2853 | + } | ||||
| 2854 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/artifacts/chatgpt-image-latest.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/gpt-image-1-mini.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/gpt-image-1.5.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/gpt-image-2.5-flare.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/gpt-image-2.5-sunburst.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/gpt-image-2.png
+0 −0
Binary file not shown.
added
benchmarks/artifacts/tts-sample.mp3
+0 −0
Binary file not shown.
added
benchmarks/benchmark-report.md
+228 −0
@@ -0,0 +1,228 @@ | |||||
| 1 | +# Chat SPBoucher AI — Benchmark report | ||||
| 2 | + | ||||
| 3 | +Generated 2026-11-01T07:22:05.282Z. Every figure below comes from a real API response recorded in `openai-results.json`, `anthropic-results.json` or `modality-results.json`. Prices come from the official pricing pages (see `pricing.json`). Nothing is estimated from memory. | ||||
| 4 | + | ||||
| 5 | +## Summary | ||||
| 6 | + | ||||
| 7 | +| | OpenAI | Anthropic | | ||||
| 8 | +|---|---|---| | ||||
| 9 | +| Models listed by the API | 140 | 14 | | ||||
| 10 | +| Chat models benchmarked (verified) | 30 | 14 | | ||||
| 11 | +| Listed but unavailable (404/deprecated) | 23 | 0 | | ||||
| 12 | +| Specialized models verified (image/tts/stt/embedding/moderation) | 18 | 0 | | ||||
| 13 | +| Not exercised (realtime/video/legacy/deep-research) | 20 | 0 | | ||||
| 14 | + | ||||
| 15 | +Total benchmark spend (estimated from usage × verified prices): **$2.41**. | ||||
| 16 | + | ||||
| 17 | +## Test suite | ||||
| 18 | + | ||||
| 19 | +| Test | What is measured | Grading | | ||||
| 20 | +|---|---|---| | ||||
| 21 | +| basic | capital of Canada | contains "Ottawa" | | ||||
| 22 | +| reasoning | sisters/brothers riddle | final answer 3 | | ||||
| 23 | +| math | 17·23+144/12 and Σ first 50 odd | a=403;b=2500 | | ||||
| 24 | +| code | isPrime(n) in JS | code executed with node against 8 cases | | ||||
| 25 | +| french | 2 phrases sur la méthode du coût | vocabulaire FR, aucun mot anglais courant | | ||||
| 26 | +| english | hedonic pricing in 2 sentences | key terms, ≤3 sentences | | ||||
| 27 | +| json | strict JSON object about Gatineau | JSON.parse + typed keys | | ||||
| 28 | +| tools | get_weather function call | tool call emitted with location=Gatineau | | ||||
| 29 | +| vision | PNG with 3 red circles + blue square | circles=3 and square named | | ||||
| 30 | +| longctx | ~12k-token document, needle at 42% | code 7431-ALPHA returned | | ||||
| 31 | +| streaming | haiku, streamed | time-to-first-token measured | | ||||
| 32 | + | ||||
| 33 | +Settings: provider defaults (OpenAI Responses API; Anthropic adaptive thinking where supported), max 8 000 output tokens (6 000 for *-pro models, which ran a reduced 4-test suite), one run per test. Single-shot results are indicative, not statistically robust. | ||||
| 34 | + | ||||
| 35 | +## Verified chat models — ranked by quality score | ||||
| 36 | + | ||||
| 37 | +Quality score = share of the 9 graded tests passed (reasoning, math, code, french, english, json, tools, vision, longctx). Latency = median over text tests. Prices in $/1M tokens (input / output). | ||||
| 38 | + | ||||
| 39 | +| Model | Provider | Quality | p50 latency | p50 TTFT | Price in/out | Blended $/1M* | Failures / errors | | ||||
| 40 | +|---|---|---|---|---|---|---|---| | ||||
| 41 | +| claude-haiku-5-5 | anthropic | 100% | 883 ms | 637 ms | $0.1 / $0.5 | $0.20 | — | | ||||
| 42 | +| claude-haiku-4-5-20251001 | anthropic | 100% | 1119 ms | 405 ms | $1 / $5 | $2.00 | — | | ||||
| 43 | +| claude-sonnet-5 | anthropic | 100% | 1168 ms | 528 ms | $2 / $10 | $4.00 | — | | ||||
| 44 | +| chat-latest | openai | 100% | 1215 ms | 547 ms | $5 / $30 | $11.25 | — | | ||||
| 45 | +| claude-fable-5-1 | anthropic | 100% | 1321 ms | 364 ms | $10 / $50 | $20.00 | — | | ||||
| 46 | +| claude-sonnet-5-5 | anthropic | 100% | 1496 ms | 586 ms | $2 / $10 | $4.00 | — | | ||||
| 47 | +| gpt-6-sol | openai | 100% | 1516 ms | 1608 ms | $2 / $10 | $4.00 | — | | ||||
| 48 | +| gpt-5.6-sol | openai | 100% | 1527 ms | 2268 ms | $4 / $20 | $8.00 | — | | ||||
| 49 | +| gpt-5.6-luna | openai | 100% | 1581 ms | 3271 ms | $0.2 / $1.2 | $0.45 | — | | ||||
| 50 | +| o3 | openai | 100% | 1643 ms | 660 ms | $2 / $8 | $3.50 | — | | ||||
| 51 | +| claude-opus-4-7 | anthropic | 100% | 1659 ms | 537 ms | $5 / $25 | $10.00 | — | | ||||
| 52 | +| claude-opus-5-5 | anthropic | 100% | 1742 ms | 954 ms | $4 / $20 | $8.00 | — | | ||||
| 53 | +| claude-opus-4-8 | anthropic | 100% | 1887 ms | 622 ms | $5 / $25 | $10.00 | — | | ||||
| 54 | +| claude-sonnet-4-5-20250929 | anthropic | 100% | 1934 ms | 785 ms | $3 / $15 | $6.00 | — | | ||||
| 55 | +| gpt-6-luna | openai | 100% | 2005 ms | 2952 ms | $0.1 / $0.5 | $0.20 | — | | ||||
| 56 | +| gpt-6.1-sol | openai | 100% | 2020 ms | 3051 ms | $2 / $10 | $4.00 | — | | ||||
| 57 | +| gpt-5.5 | openai | 100% | 2089 ms | 730 ms | $5 / $30 | $11.25 | — | | ||||
| 58 | +| gpt-6-astra | openai | 100% | 2190 ms | 3799 ms | $10 / $50 | $20.00 | — | | ||||
| 59 | +| gpt-6.1-terra | openai | 100% | 2208 ms | 1841 ms | $1 / $5 | $2.00 | — | | ||||
| 60 | +| claude-opus-5 | anthropic | 100% | 2242 ms | 1136 ms | $5 / $25 | $10.00 | — | | ||||
| 61 | +| claude-fable-5 | anthropic | 100% | 2691 ms | 1862 ms | $10 / $50 | $20.00 | — | | ||||
| 62 | +| claude-sonnet-4-6 | anthropic | 100% | 2909 ms | 1732 ms | $3 / $15 | $6.00 | — | | ||||
| 63 | +| gpt-5-nano | openai | 100% | 3034 ms | 10356 ms | $0.05 / $0.4 | $0.14 | — | | ||||
| 64 | +| claude-opus-4-6 | anthropic | 100% | 3613 ms | 2309 ms | $5 / $25 | $10.00 | — | | ||||
| 65 | +| gpt-5-mini | openai | 100% | 3711 ms | 10075 ms | $0.25 / $2 | $0.69 | — | | ||||
| 66 | +| gpt-5 | openai | 100% | 3814 ms | 7922 ms | $1.25 / $10 | $3.44 | — | | ||||
| 67 | +| gpt-5.5-pro | openai | 100% | 5531 ms | — ms | $30 / $180 | $67.50 | — | | ||||
| 68 | +| gpt-5.2-pro | openai | 100% | 6297 ms | — ms | $21 / $168 | $57.75 | — | | ||||
| 69 | +| o3-pro | openai | 100% | 6627 ms | — ms | $20 / $80 | $35.00 | — | | ||||
| 70 | +| gpt-5.4-pro | openai | 100% | 14838 ms | — ms | $30 / $180 | $67.50 | — | | ||||
| 71 | +| gpt-5-pro | openai | 100% | 47132 ms | — ms | $15 / $120 | $41.25 | — | | ||||
| 72 | +| gpt-4.1 | openai | 89% | 704 ms | 413 ms | $2 / $8 | $3.50 | math | | ||||
| 73 | +| gpt-5.4-mini | openai | 89% | 888 ms | 458 ms | $0.75 / $4.5 | $1.69 | math | | ||||
| 74 | +| gpt-4.1-mini | openai | 89% | 897 ms | 343 ms | $0.4 / $1.6 | $0.70 | math | | ||||
| 75 | +| gpt-5.1 | openai | 89% | 1084 ms | 610 ms | $1.25 / $10 | $3.44 | math | | ||||
| 76 | +| gpt-5.3-codex | openai | 89% | 1209 ms | 545 ms | $1.75 / $14 | $4.81 | reasoning | | ||||
| 77 | +| gpt-5.6-terra | openai | 89% | 1214 ms | 611 ms | $2 / $12 | $4.50 | longctx | | ||||
| 78 | +| gpt-5.4 | openai | 89% | 1466 ms | 651 ms | $2.5 / $15 | $5.63 | reasoning | | ||||
| 79 | +| claude-opus-4-5-20251101 | anthropic | 89% | 1940 ms | 806 ms | $5 / $25 | $10.00 | longctx | | ||||
| 80 | +| gpt-4o-mini | openai | 78% | 893 ms | 482 ms | $0.15 / $0.6 | $0.26 | reasoning, math | | ||||
| 81 | +| gpt-5.4-nano | openai | 78% | 969 ms | 541 ms | $0.2 / $1.25 | $0.46 | reasoning, math | | ||||
| 82 | +| gpt-4o | openai | 78% | 1049 ms | 457 ms | $2.5 / $10 | $4.38 | reasoning, math | | ||||
| 83 | +| gpt-5.2 | openai | 78% | 1506 ms | 529 ms | $1.75 / $14 | $4.81 | reasoning, longctx | | ||||
| 84 | +| gpt-5-search-api | openai | 67% | 1707 ms | 1073 ms | $1.25 / $10 | $3.44 | math, tools⚠, vision | | ||||
| 85 | + | ||||
| 86 | +\* Blended = (3 × input + output) / 4, a simple comparison heuristic, not a billing figure. | ||||
| 87 | + | ||||
| 88 | +## Per-test results | ||||
| 89 | + | ||||
| 90 | +| Model | reasoning | math | code | french | english | json | tools | vision | longctx | basic | streaming | | ||||
| 91 | +|---|---|---|---|---|---|---|---|---|---|---|---| | ||||
| 92 | +| claude-fable-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 93 | +| claude-fable-5-1 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 94 | +| claude-haiku-4-5-20251001 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 95 | +| claude-haiku-5-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 96 | +| claude-opus-4-6 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 97 | +| claude-opus-4-7 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 98 | +| claude-opus-4-8 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 99 | +| claude-opus-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 100 | +| claude-opus-5-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 101 | +| claude-sonnet-4-5-20250929 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 102 | +| claude-sonnet-4-6 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 103 | +| claude-sonnet-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 104 | +| claude-sonnet-5-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 105 | +| claude-opus-4-5-20251101 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | | ||||
| 106 | +| chat-latest | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 107 | +| gpt-5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 108 | +| gpt-5-mini | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 109 | +| gpt-5-nano | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 110 | +| gpt-5-pro | ✅ | · | · | · | · | ✅ | ✅ | · | · | ✅ | · | | ||||
| 111 | +| gpt-5.2-pro | ✅ | · | · | · | · | ✅ | ✅ | · | · | ✅ | · | | ||||
| 112 | +| gpt-5.4-pro | ✅ | · | · | · | · | ✅ | ✅ | · | · | ✅ | · | | ||||
| 113 | +| gpt-5.5 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 114 | +| gpt-5.5-pro | ✅ | · | · | · | · | ✅ | ✅ | · | · | ✅ | · | | ||||
| 115 | +| gpt-5.6-luna | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 116 | +| gpt-5.6-sol | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 117 | +| gpt-6-astra | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 118 | +| gpt-6-luna | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 119 | +| gpt-6-sol | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 120 | +| gpt-6.1-sol | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 121 | +| gpt-6.1-terra | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 122 | +| o3 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 123 | +| o3-pro | ✅ | · | · | · | · | ✅ | ✅ | · | · | ✅ | · | | ||||
| 124 | +| gpt-4.1 | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 125 | +| gpt-4.1-mini | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 126 | +| gpt-5.1 | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 127 | +| gpt-5.3-codex | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 128 | +| gpt-5.4 | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 129 | +| gpt-5.4-mini | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 130 | +| gpt-5.6-terra | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | | ||||
| 131 | +| gpt-4o | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 132 | +| gpt-4o-mini | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 133 | +| gpt-5.2 | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | | ||||
| 134 | +| gpt-5.4-nano | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||||
| 135 | +| gpt-5-search-api | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ⚠️ | ❌ | ✅ | ✅ | ✅ | | ||||
| 136 | + | ||||
| 137 | +## Listed but unavailable | ||||
| 138 | + | ||||
| 139 | +These ids are returned by the provider's model listing but reject inference. The app marks them **unavailable** and hides them by default. | ||||
| 140 | + | ||||
| 141 | +| Model | Provider | Reason | | ||||
| 142 | +|---|---|---| | ||||
| 143 | +| gpt-3.5-turbo | openai | The model `gpt-3.5-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 144 | +| gpt-4 | openai | The model `gpt-4` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 145 | +| gpt-4-turbo | openai | The model `gpt-4-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 146 | +| gpt-4.1-nano | openai | The model `gpt-4.1-nano` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 147 | +| gpt-4o-mini-search-preview | openai | The model `gpt-4o-mini-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 148 | +| gpt-4o-search-preview | openai | The model `gpt-4o-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 149 | +| gpt-5-chat-latest | openai | The model `gpt-5-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 150 | +| gpt-5-codex | openai | The model `gpt-5-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 151 | +| gpt-5.1-chat-latest | openai | The model `gpt-5.1-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 152 | +| gpt-5.1-codex | openai | The model `gpt-5.1-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 153 | +| gpt-5.1-codex-max | openai | The model `gpt-5.1-codex-max` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 154 | +| gpt-5.1-codex-mini | openai | The model `gpt-5.1-codex-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 155 | +| gpt-5.2-chat-latest | openai | The model `gpt-5.2-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 156 | +| gpt-5.2-codex | openai | The model `gpt-5.2-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 157 | +| gpt-5.3-chat-latest | openai | The model `gpt-5.3-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 158 | +| gpt-audio | openai | 400 400 This model requires that either input content or output modality contain audio. | | ||||
| 159 | +| gpt-audio-1.5 | openai | 400 400 This model requires that either input content or output modality contain audio. | | ||||
| 160 | +| gpt-audio-mini | openai | 400 400 This model requires that either input content or output modality contain audio. | | ||||
| 161 | +| gpt-image-1 | openai | 400 400 The model 'gpt-image-1' does not exist. | | ||||
| 162 | +| o1 | openai | The model `o1` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 163 | +| o1-pro | openai | The model `o1-pro` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 164 | +| o3-mini | openai | The model `o3-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 165 | +| o4-mini | openai | The model `o4-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations | | ||||
| 166 | + | ||||
| 167 | +## Specialized models (modality tests) | ||||
| 168 | + | ||||
| 169 | +| Model | Kind | Result | Latency | Notes | | ||||
| 170 | +|---|---|---|---|---| | ||||
| 171 | +| chatgpt-image-latest | image | ✅ verified | 5382 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 172 | +| gpt-4o-mini-transcribe | stt | ✅ verified | 412 ms | "Bonjour, ceci est un test de synthèse vocale pour Chat SP Bo" | | ||||
| 173 | +| gpt-4o-mini-tts | tts | ✅ verified | 542 ms | | | ||||
| 174 | +| gpt-4o-transcribe | stt | ✅ verified | 625 ms | "Bonjour, ceci est un test de synthèse vocale pour Chat SP Bo" | | ||||
| 175 | +| gpt-4o-transcribe-diarize | stt | ✅ verified | 2799 ms | "Bonjour, ceci est un test de synthèse vocale pour Chat spbou" | | ||||
| 176 | +| gpt-audio | audio-chat | ❌ 400 400 This model requires that either input content or output modality contain audio. | 122 ms | | | ||||
| 177 | +| gpt-audio-1.5 | audio-chat | ❌ 400 400 This model requires that either input content or output modality contain audio. | 103 ms | | | ||||
| 178 | +| gpt-audio-mini | audio-chat | ❌ 400 400 This model requires that either input content or output modality contain audio. | 132 ms | | | ||||
| 179 | +| gpt-image-1 | image | ❌ 400 400 The model 'gpt-image-1' does not exist. | 174 ms | | | ||||
| 180 | +| gpt-image-1-mini | image | ✅ verified | 5797 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 181 | +| gpt-image-1.5 | image | ✅ verified | 4864 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 182 | +| gpt-image-2 | image | ✅ verified | 6375 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 183 | +| gpt-image-2.5-flare | image | ✅ verified | 4765 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 184 | +| gpt-image-2.5-sunburst | image | ✅ verified | 6665 ms | tokens {"input_tokens":17,"input_tokens_details":{"image_tokens":0,"text_tokens":17},"o | | ||||
| 185 | +| gpt-transcribe | stt | ✅ verified | 459 ms | "Bonjour, ceci est un test de synthèse vocale pour Chat SPBoc" | | ||||
| 186 | +| omni-moderation-latest | moderation | ✅ verified | 521 ms | | | ||||
| 187 | +| text-embedding-3-large | embedding | ✅ verified | 215 ms | 3072 dims | | ||||
| 188 | +| text-embedding-3-small | embedding | ✅ verified | 319 ms | 1536 dims | | ||||
| 189 | +| text-embedding-ada-002 | embedding | ✅ verified | 162 ms | 1536 dims | | ||||
| 190 | +| tts-1 | tts | ✅ verified | 2195 ms | | | ||||
| 191 | +| tts-1-hd | tts | ✅ verified | 1689 ms | | | ||||
| 192 | +| whisper-1 | stt | ✅ verified | 642 ms | "Bonjour, ceci est un test de synthèse vocale pour Tchat, SP " | | ||||
| 193 | + | ||||
| 194 | +## Not exercised | ||||
| 195 | + | ||||
| 196 | +| Model | Kind | Why | | ||||
| 197 | +|---|---|---| | ||||
| 198 | +| babbage-002 | legacy-completion | Legacy completions endpoint — not used by this app | | ||||
| 199 | +| davinci-002 | legacy-completion | Legacy completions endpoint — not used by this app | | ||||
| 200 | +| gpt-3.5-turbo-instruct | legacy-completion | Legacy completions endpoint — not used by this app | | ||||
| 201 | +| gpt-3.5-turbo-instruct-0914 | legacy-completion | Legacy completions endpoint — not used by this app | | ||||
| 202 | +| gpt-live-1 | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 203 | +| gpt-live-transcribe | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 204 | +| gpt-realtime | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 205 | +| gpt-realtime-1.5 | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 206 | +| gpt-realtime-2 | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 207 | +| gpt-realtime-2.1 | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 208 | +| gpt-realtime-2.1-mini | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 209 | +| gpt-realtime-mini | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 210 | +| gpt-realtime-translate | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 211 | +| gpt-realtime-whisper | realtime | WebSocket/WebRTC realtime model — not a chat-completion model; not exercised | | ||||
| 212 | +| o3-deep-research | deep-research | Requires hosted web-search tools and long runs — not benchmarked without explicit budget approval | | ||||
| 213 | +| o4-mini-deep-research | deep-research | Requires hosted web-search tools and long runs — not benchmarked without explicit budget approval | | ||||
| 214 | +| sora-2 | video | Video generation — not tested (cost) | | ||||
| 215 | +| sora-2-pro | video | Video generation — not tested (cost) | | ||||
| 216 | +| tts-1-1106 | tts | not tested | | ||||
| 217 | +| tts-1-hd-1106 | tts | not tested | | ||||
| 218 | + | ||||
| 219 | +## Errors encountered on verified models | ||||
| 220 | + | ||||
| 221 | +- **gpt-5-search-api**: tools: 404 404 tools is not supported in this model. For a list of supported models, refer to https://platform.openai.com/docs/guides/function-call | ||||
| 222 | + | ||||
| 223 | +## Limitations | ||||
| 224 | + | ||||
| 225 | +- One run per test: latency and pass/fail are single observations. | ||||
| 226 | +- Reasoning models spend hidden reasoning tokens; their latency and cost reflect default effort. | ||||
| 227 | +- Pricing was read from the public pricing pages on 2026-11-01; models missing from those pages have no cost estimate. | ||||
| 228 | +- The long-context test uses ~12k tokens, far below the advertised windows; it checks retrieval, not window size. | ||||
added
benchmarks/capability-matrix.json
+3610 −0
@@ -0,0 +1,3610 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3 | + "entries": [ | ||||
| 4 | + { | ||||
| 5 | + "id": "claude-fable-5", | ||||
| 6 | + "provider": "anthropic", | ||||
| 7 | + "kind": "chat", | ||||
| 8 | + "available": true, | ||||
| 9 | + "tested": true, | ||||
| 10 | + "status": "verified", | ||||
| 11 | + "capabilities": { | ||||
| 12 | + "text": true, | ||||
| 13 | + "vision": true, | ||||
| 14 | + "tools": true, | ||||
| 15 | + "structuredOutput": true, | ||||
| 16 | + "streaming": true, | ||||
| 17 | + "reasoning": true, | ||||
| 18 | + "longContext": true, | ||||
| 19 | + "audioInput": false, | ||||
| 20 | + "audioOutput": false, | ||||
| 21 | + "imageGeneration": false | ||||
| 22 | + }, | ||||
| 23 | + "pricing": { | ||||
| 24 | + "input": 10, | ||||
| 25 | + "cacheWrite5m": 12.5, | ||||
| 26 | + "cacheWrite1h": 20, | ||||
| 27 | + "cachedInput": 1, | ||||
| 28 | + "output": 50 | ||||
| 29 | + }, | ||||
| 30 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 31 | + "contextWindow": 1000000, | ||||
| 32 | + "maxOutputTokens": 128000, | ||||
| 33 | + "benchmark": { | ||||
| 34 | + "tests": 11, | ||||
| 35 | + "passed": 11, | ||||
| 36 | + "qualityScore": 100, | ||||
| 37 | + "p50LatencyMs": 2691, | ||||
| 38 | + "p50TtftMs": 1862, | ||||
| 39 | + "totalCostUsd": 0.20264, | ||||
| 40 | + "avgOutputTokens": 77, | ||||
| 41 | + "perTest": { | ||||
| 42 | + "basic": "pass", | ||||
| 43 | + "reasoning": "pass", | ||||
| 44 | + "math": "pass", | ||||
| 45 | + "code": "pass", | ||||
| 46 | + "french": "pass", | ||||
| 47 | + "english": "pass", | ||||
| 48 | + "json": "pass", | ||||
| 49 | + "tools": "pass", | ||||
| 50 | + "vision": "pass", | ||||
| 51 | + "longctx": "pass", | ||||
| 52 | + "streaming": "pass" | ||||
| 53 | + }, | ||||
| 54 | + "errors": [] | ||||
| 55 | + } | ||||
| 56 | + }, | ||||
| 57 | + { | ||||
| 58 | + "id": "claude-fable-5-1", | ||||
| 59 | + "provider": "anthropic", | ||||
| 60 | + "kind": "chat", | ||||
| 61 | + "available": true, | ||||
| 62 | + "tested": true, | ||||
| 63 | + "status": "verified", | ||||
| 64 | + "capabilities": { | ||||
| 65 | + "text": true, | ||||
| 66 | + "vision": true, | ||||
| 67 | + "tools": true, | ||||
| 68 | + "structuredOutput": true, | ||||
| 69 | + "streaming": true, | ||||
| 70 | + "reasoning": true, | ||||
| 71 | + "longContext": true, | ||||
| 72 | + "audioInput": false, | ||||
| 73 | + "audioOutput": false, | ||||
| 74 | + "imageGeneration": false | ||||
| 75 | + }, | ||||
| 76 | + "pricing": { | ||||
| 77 | + "input": 10, | ||||
| 78 | + "cacheWrite5m": 12.5, | ||||
| 79 | + "cacheWrite1h": 20, | ||||
| 80 | + "cachedInput": 0.25, | ||||
| 81 | + "output": 50 | ||||
| 82 | + }, | ||||
| 83 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 84 | + "contextWindow": 1000000, | ||||
| 85 | + "maxOutputTokens": 128000, | ||||
| 86 | + "benchmark": { | ||||
| 87 | + "tests": 11, | ||||
| 88 | + "passed": 11, | ||||
| 89 | + "qualityScore": 100, | ||||
| 90 | + "p50LatencyMs": 1321, | ||||
| 91 | + "p50TtftMs": 364, | ||||
| 92 | + "totalCostUsd": 0.20326999999999998, | ||||
| 93 | + "avgOutputTokens": 77, | ||||
| 94 | + "perTest": { | ||||
| 95 | + "basic": "pass", | ||||
| 96 | + "reasoning": "pass", | ||||
| 97 | + "math": "pass", | ||||
| 98 | + "code": "pass", | ||||
| 99 | + "french": "pass", | ||||
| 100 | + "english": "pass", | ||||
| 101 | + "json": "pass", | ||||
| 102 | + "tools": "pass", | ||||
| 103 | + "vision": "pass", | ||||
| 104 | + "longctx": "pass", | ||||
| 105 | + "streaming": "pass" | ||||
| 106 | + }, | ||||
| 107 | + "errors": [] | ||||
| 108 | + } | ||||
| 109 | + }, | ||||
| 110 | + { | ||||
| 111 | + "id": "claude-haiku-4-5-20251001", | ||||
| 112 | + "provider": "anthropic", | ||||
| 113 | + "kind": "chat", | ||||
| 114 | + "available": true, | ||||
| 115 | + "tested": true, | ||||
| 116 | + "status": "verified", | ||||
| 117 | + "capabilities": { | ||||
| 118 | + "text": true, | ||||
| 119 | + "vision": true, | ||||
| 120 | + "tools": true, | ||||
| 121 | + "structuredOutput": true, | ||||
| 122 | + "streaming": true, | ||||
| 123 | + "reasoning": true, | ||||
| 124 | + "longContext": true, | ||||
| 125 | + "audioInput": false, | ||||
| 126 | + "audioOutput": false, | ||||
| 127 | + "imageGeneration": false | ||||
| 128 | + }, | ||||
| 129 | + "pricing": { | ||||
| 130 | + "input": 1, | ||||
| 131 | + "cacheWrite5m": 1.25, | ||||
| 132 | + "cacheWrite1h": 2, | ||||
| 133 | + "cachedInput": 0.1, | ||||
| 134 | + "output": 5 | ||||
| 135 | + }, | ||||
| 136 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 137 | + "contextWindow": 200000, | ||||
| 138 | + "maxOutputTokens": 64000, | ||||
| 139 | + "benchmark": { | ||||
| 140 | + "tests": 11, | ||||
| 141 | + "passed": 11, | ||||
| 142 | + "qualityScore": 100, | ||||
| 143 | + "p50LatencyMs": 1119, | ||||
| 144 | + "p50TtftMs": 405, | ||||
| 145 | + "totalCostUsd": 0.015415, | ||||
| 146 | + "avgOutputTokens": 58, | ||||
| 147 | + "perTest": { | ||||
| 148 | + "basic": "pass", | ||||
| 149 | + "reasoning": "pass", | ||||
| 150 | + "math": "pass", | ||||
| 151 | + "code": "pass", | ||||
| 152 | + "french": "pass", | ||||
| 153 | + "english": "pass", | ||||
| 154 | + "json": "pass", | ||||
| 155 | + "tools": "pass", | ||||
| 156 | + "vision": "pass", | ||||
| 157 | + "longctx": "pass", | ||||
| 158 | + "streaming": "pass" | ||||
| 159 | + }, | ||||
| 160 | + "errors": [] | ||||
| 161 | + } | ||||
| 162 | + }, | ||||
| 163 | + { | ||||
| 164 | + "id": "claude-haiku-5-5", | ||||
| 165 | + "provider": "anthropic", | ||||
| 166 | + "kind": "chat", | ||||
| 167 | + "available": true, | ||||
| 168 | + "tested": true, | ||||
| 169 | + "status": "verified", | ||||
| 170 | + "capabilities": { | ||||
| 171 | + "text": true, | ||||
| 172 | + "vision": true, | ||||
| 173 | + "tools": true, | ||||
| 174 | + "structuredOutput": true, | ||||
| 175 | + "streaming": true, | ||||
| 176 | + "reasoning": true, | ||||
| 177 | + "longContext": true, | ||||
| 178 | + "audioInput": false, | ||||
| 179 | + "audioOutput": false, | ||||
| 180 | + "imageGeneration": false | ||||
| 181 | + }, | ||||
| 182 | + "pricing": { | ||||
| 183 | + "input": 0.1, | ||||
| 184 | + "cacheWrite5m": 0.125, | ||||
| 185 | + "cacheWrite1h": 0.2, | ||||
| 186 | + "cachedInput": 0.01, | ||||
| 187 | + "output": 0.5, | ||||
| 188 | + "notes": "prompts >100K tokens: $0.50/$2.50" | ||||
| 189 | + }, | ||||
| 190 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 191 | + "contextWindow": 1000000, | ||||
| 192 | + "maxOutputTokens": 128000, | ||||
| 193 | + "benchmark": { | ||||
| 194 | + "tests": 11, | ||||
| 195 | + "passed": 11, | ||||
| 196 | + "qualityScore": 100, | ||||
| 197 | + "p50LatencyMs": 883, | ||||
| 198 | + "p50TtftMs": 637, | ||||
| 199 | + "totalCostUsd": 0.0021742000000000003, | ||||
| 200 | + "avgOutputTokens": 103, | ||||
| 201 | + "perTest": { | ||||
| 202 | + "basic": "pass", | ||||
| 203 | + "reasoning": "pass", | ||||
| 204 | + "math": "pass", | ||||
| 205 | + "code": "pass", | ||||
| 206 | + "french": "pass", | ||||
| 207 | + "english": "pass", | ||||
| 208 | + "json": "pass", | ||||
| 209 | + "tools": "pass", | ||||
| 210 | + "vision": "pass", | ||||
| 211 | + "longctx": "pass", | ||||
| 212 | + "streaming": "pass" | ||||
| 213 | + }, | ||||
| 214 | + "errors": [] | ||||
| 215 | + } | ||||
| 216 | + }, | ||||
| 217 | + { | ||||
| 218 | + "id": "claude-opus-4-6", | ||||
| 219 | + "provider": "anthropic", | ||||
| 220 | + "kind": "chat", | ||||
| 221 | + "available": true, | ||||
| 222 | + "tested": true, | ||||
| 223 | + "status": "verified", | ||||
| 224 | + "capabilities": { | ||||
| 225 | + "text": true, | ||||
| 226 | + "vision": true, | ||||
| 227 | + "tools": true, | ||||
| 228 | + "structuredOutput": true, | ||||
| 229 | + "streaming": true, | ||||
| 230 | + "reasoning": true, | ||||
| 231 | + "longContext": true, | ||||
| 232 | + "audioInput": false, | ||||
| 233 | + "audioOutput": false, | ||||
| 234 | + "imageGeneration": false | ||||
| 235 | + }, | ||||
| 236 | + "pricing": { | ||||
| 237 | + "input": 5, | ||||
| 238 | + "cacheWrite5m": 6.25, | ||||
| 239 | + "cacheWrite1h": 10, | ||||
| 240 | + "cachedInput": 0.5, | ||||
| 241 | + "output": 25 | ||||
| 242 | + }, | ||||
| 243 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 244 | + "contextWindow": 1000000, | ||||
| 245 | + "maxOutputTokens": 128000, | ||||
| 246 | + "benchmark": { | ||||
| 247 | + "tests": 11, | ||||
| 248 | + "passed": 11, | ||||
| 249 | + "qualityScore": 100, | ||||
| 250 | + "p50LatencyMs": 3613, | ||||
| 251 | + "p50TtftMs": 2309, | ||||
| 252 | + "totalCostUsd": 0.08978, | ||||
| 253 | + "avgOutputTokens": 104, | ||||
| 254 | + "perTest": { | ||||
| 255 | + "basic": "pass", | ||||
| 256 | + "reasoning": "pass", | ||||
| 257 | + "math": "pass", | ||||
| 258 | + "code": "pass", | ||||
| 259 | + "french": "pass", | ||||
| 260 | + "english": "pass", | ||||
| 261 | + "json": "pass", | ||||
| 262 | + "tools": "pass", | ||||
| 263 | + "vision": "pass", | ||||
| 264 | + "longctx": "pass", | ||||
| 265 | + "streaming": "pass" | ||||
| 266 | + }, | ||||
| 267 | + "errors": [] | ||||
| 268 | + } | ||||
| 269 | + }, | ||||
| 270 | + { | ||||
| 271 | + "id": "claude-opus-4-7", | ||||
| 272 | + "provider": "anthropic", | ||||
| 273 | + "kind": "chat", | ||||
| 274 | + "available": true, | ||||
| 275 | + "tested": true, | ||||
| 276 | + "status": "verified", | ||||
| 277 | + "capabilities": { | ||||
| 278 | + "text": true, | ||||
| 279 | + "vision": true, | ||||
| 280 | + "tools": true, | ||||
| 281 | + "structuredOutput": true, | ||||
| 282 | + "streaming": true, | ||||
| 283 | + "reasoning": true, | ||||
| 284 | + "longContext": true, | ||||
| 285 | + "audioInput": false, | ||||
| 286 | + "audioOutput": false, | ||||
| 287 | + "imageGeneration": false | ||||
| 288 | + }, | ||||
| 289 | + "pricing": { | ||||
| 290 | + "input": 5, | ||||
| 291 | + "cacheWrite5m": 6.25, | ||||
| 292 | + "cacheWrite1h": 10, | ||||
| 293 | + "cachedInput": 0.5, | ||||
| 294 | + "output": 25 | ||||
| 295 | + }, | ||||
| 296 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 297 | + "contextWindow": 1000000, | ||||
| 298 | + "maxOutputTokens": 128000, | ||||
| 299 | + "benchmark": { | ||||
| 300 | + "tests": 11, | ||||
| 301 | + "passed": 11, | ||||
| 302 | + "qualityScore": 100, | ||||
| 303 | + "p50LatencyMs": 1659, | ||||
| 304 | + "p50TtftMs": 537, | ||||
| 305 | + "totalCostUsd": 0.10087499999999999, | ||||
| 306 | + "avgOutputTokens": 67, | ||||
| 307 | + "perTest": { | ||||
| 308 | + "basic": "pass", | ||||
| 309 | + "reasoning": "pass", | ||||
| 310 | + "math": "pass", | ||||
| 311 | + "code": "pass", | ||||
| 312 | + "french": "pass", | ||||
| 313 | + "english": "pass", | ||||
| 314 | + "json": "pass", | ||||
| 315 | + "tools": "pass", | ||||
| 316 | + "vision": "pass", | ||||
| 317 | + "longctx": "pass", | ||||
| 318 | + "streaming": "pass" | ||||
| 319 | + }, | ||||
| 320 | + "errors": [] | ||||
| 321 | + } | ||||
| 322 | + }, | ||||
| 323 | + { | ||||
| 324 | + "id": "claude-opus-4-8", | ||||
| 325 | + "provider": "anthropic", | ||||
| 326 | + "kind": "chat", | ||||
| 327 | + "available": true, | ||||
| 328 | + "tested": true, | ||||
| 329 | + "status": "verified", | ||||
| 330 | + "capabilities": { | ||||
| 331 | + "text": true, | ||||
| 332 | + "vision": true, | ||||
| 333 | + "tools": true, | ||||
| 334 | + "structuredOutput": true, | ||||
| 335 | + "streaming": true, | ||||
| 336 | + "reasoning": true, | ||||
| 337 | + "longContext": true, | ||||
| 338 | + "audioInput": false, | ||||
| 339 | + "audioOutput": false, | ||||
| 340 | + "imageGeneration": false | ||||
| 341 | + }, | ||||
| 342 | + "pricing": { | ||||
| 343 | + "input": 5, | ||||
| 344 | + "cacheWrite5m": 6.25, | ||||
| 345 | + "cacheWrite1h": 10, | ||||
| 346 | + "cachedInput": 0.5, | ||||
| 347 | + "output": 25 | ||||
| 348 | + }, | ||||
| 349 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 350 | + "contextWindow": 1000000, | ||||
| 351 | + "maxOutputTokens": 128000, | ||||
| 352 | + "benchmark": { | ||||
| 353 | + "tests": 11, | ||||
| 354 | + "passed": 11, | ||||
| 355 | + "qualityScore": 100, | ||||
| 356 | + "p50LatencyMs": 1887, | ||||
| 357 | + "p50TtftMs": 622, | ||||
| 358 | + "totalCostUsd": 0.10341999999999998, | ||||
| 359 | + "avgOutputTokens": 84, | ||||
| 360 | + "perTest": { | ||||
| 361 | + "basic": "pass", | ||||
| 362 | + "reasoning": "pass", | ||||
| 363 | + "math": "pass", | ||||
| 364 | + "code": "pass", | ||||
| 365 | + "french": "pass", | ||||
| 366 | + "english": "pass", | ||||
| 367 | + "json": "pass", | ||||
| 368 | + "tools": "pass", | ||||
| 369 | + "vision": "pass", | ||||
| 370 | + "longctx": "pass", | ||||
| 371 | + "streaming": "pass" | ||||
| 372 | + }, | ||||
| 373 | + "errors": [] | ||||
| 374 | + } | ||||
| 375 | + }, | ||||
| 376 | + { | ||||
| 377 | + "id": "claude-opus-5", | ||||
| 378 | + "provider": "anthropic", | ||||
| 379 | + "kind": "chat", | ||||
| 380 | + "available": true, | ||||
| 381 | + "tested": true, | ||||
| 382 | + "status": "verified", | ||||
| 383 | + "capabilities": { | ||||
| 384 | + "text": true, | ||||
| 385 | + "vision": true, | ||||
| 386 | + "tools": true, | ||||
| 387 | + "structuredOutput": true, | ||||
| 388 | + "streaming": true, | ||||
| 389 | + "reasoning": true, | ||||
| 390 | + "longContext": true, | ||||
| 391 | + "audioInput": false, | ||||
| 392 | + "audioOutput": false, | ||||
| 393 | + "imageGeneration": false | ||||
| 394 | + }, | ||||
| 395 | + "pricing": { | ||||
| 396 | + "input": 5, | ||||
| 397 | + "cacheWrite5m": 6.25, | ||||
| 398 | + "cacheWrite1h": 10, | ||||
| 399 | + "cachedInput": 0.5, | ||||
| 400 | + "output": 25 | ||||
| 401 | + }, | ||||
| 402 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 403 | + "contextWindow": 1000000, | ||||
| 404 | + "maxOutputTokens": 128000, | ||||
| 405 | + "benchmark": { | ||||
| 406 | + "tests": 11, | ||||
| 407 | + "passed": 11, | ||||
| 408 | + "qualityScore": 100, | ||||
| 409 | + "p50LatencyMs": 2242, | ||||
| 410 | + "p50TtftMs": 1136, | ||||
| 411 | + "totalCostUsd": 0.12025, | ||||
| 412 | + "avgOutputTokens": 146, | ||||
| 413 | + "perTest": { | ||||
| 414 | + "reasoning": "pass", | ||||
| 415 | + "math": "pass", | ||||
| 416 | + "code": "pass", | ||||
| 417 | + "french": "pass", | ||||
| 418 | + "english": "pass", | ||||
| 419 | + "json": "pass", | ||||
| 420 | + "tools": "pass", | ||||
| 421 | + "vision": "pass", | ||||
| 422 | + "longctx": "pass", | ||||
| 423 | + "basic": "pass", | ||||
| 424 | + "streaming": "pass" | ||||
| 425 | + }, | ||||
| 426 | + "errors": [] | ||||
| 427 | + } | ||||
| 428 | + }, | ||||
| 429 | + { | ||||
| 430 | + "id": "claude-opus-5-5", | ||||
| 431 | + "provider": "anthropic", | ||||
| 432 | + "kind": "chat", | ||||
| 433 | + "available": true, | ||||
| 434 | + "tested": true, | ||||
| 435 | + "status": "verified", | ||||
| 436 | + "capabilities": { | ||||
| 437 | + "text": true, | ||||
| 438 | + "vision": true, | ||||
| 439 | + "tools": true, | ||||
| 440 | + "structuredOutput": true, | ||||
| 441 | + "streaming": true, | ||||
| 442 | + "reasoning": true, | ||||
| 443 | + "longContext": true, | ||||
| 444 | + "audioInput": false, | ||||
| 445 | + "audioOutput": false, | ||||
| 446 | + "imageGeneration": false | ||||
| 447 | + }, | ||||
| 448 | + "pricing": { | ||||
| 449 | + "input": 4, | ||||
| 450 | + "cacheWrite5m": 5, | ||||
| 451 | + "cacheWrite1h": 8, | ||||
| 452 | + "cachedInput": 0.2, | ||||
| 453 | + "output": 20 | ||||
| 454 | + }, | ||||
| 455 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 456 | + "contextWindow": 1000000, | ||||
| 457 | + "maxOutputTokens": 128000, | ||||
| 458 | + "benchmark": { | ||||
| 459 | + "tests": 11, | ||||
| 460 | + "passed": 11, | ||||
| 461 | + "qualityScore": 100, | ||||
| 462 | + "p50LatencyMs": 1742, | ||||
| 463 | + "p50TtftMs": 954, | ||||
| 464 | + "totalCostUsd": 0.093028, | ||||
| 465 | + "avgOutputTokens": 131, | ||||
| 466 | + "perTest": { | ||||
| 467 | + "basic": "pass", | ||||
| 468 | + "reasoning": "pass", | ||||
| 469 | + "math": "pass", | ||||
| 470 | + "code": "pass", | ||||
| 471 | + "french": "pass", | ||||
| 472 | + "english": "pass", | ||||
| 473 | + "json": "pass", | ||||
| 474 | + "tools": "pass", | ||||
| 475 | + "vision": "pass", | ||||
| 476 | + "longctx": "pass", | ||||
| 477 | + "streaming": "pass" | ||||
| 478 | + }, | ||||
| 479 | + "errors": [] | ||||
| 480 | + } | ||||
| 481 | + }, | ||||
| 482 | + { | ||||
| 483 | + "id": "claude-sonnet-4-5-20250929", | ||||
| 484 | + "provider": "anthropic", | ||||
| 485 | + "kind": "chat", | ||||
| 486 | + "available": true, | ||||
| 487 | + "tested": true, | ||||
| 488 | + "status": "verified", | ||||
| 489 | + "capabilities": { | ||||
| 490 | + "text": true, | ||||
| 491 | + "vision": true, | ||||
| 492 | + "tools": true, | ||||
| 493 | + "structuredOutput": true, | ||||
| 494 | + "streaming": true, | ||||
| 495 | + "reasoning": true, | ||||
| 496 | + "longContext": true, | ||||
| 497 | + "audioInput": false, | ||||
| 498 | + "audioOutput": false, | ||||
| 499 | + "imageGeneration": false | ||||
| 500 | + }, | ||||
| 501 | + "pricing": { | ||||
| 502 | + "input": 3, | ||||
| 503 | + "cacheWrite5m": 3.75, | ||||
| 504 | + "cacheWrite1h": 6, | ||||
| 505 | + "cachedInput": 0.3, | ||||
| 506 | + "output": 15, | ||||
| 507 | + "notes": "deprecated, retires 2026-11-30" | ||||
| 508 | + }, | ||||
| 509 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 510 | + "contextWindow": 200000, | ||||
| 511 | + "maxOutputTokens": 64000, | ||||
| 512 | + "benchmark": { | ||||
| 513 | + "tests": 11, | ||||
| 514 | + "passed": 11, | ||||
| 515 | + "qualityScore": 100, | ||||
| 516 | + "p50LatencyMs": 1934, | ||||
| 517 | + "p50TtftMs": 785, | ||||
| 518 | + "totalCostUsd": 0.04611, | ||||
| 519 | + "avgOutputTokens": 57, | ||||
| 520 | + "perTest": { | ||||
| 521 | + "basic": "pass", | ||||
| 522 | + "reasoning": "pass", | ||||
| 523 | + "math": "pass", | ||||
| 524 | + "code": "pass", | ||||
| 525 | + "french": "pass", | ||||
| 526 | + "english": "pass", | ||||
| 527 | + "json": "pass", | ||||
| 528 | + "tools": "pass", | ||||
| 529 | + "vision": "pass", | ||||
| 530 | + "longctx": "pass", | ||||
| 531 | + "streaming": "pass" | ||||
| 532 | + }, | ||||
| 533 | + "errors": [] | ||||
| 534 | + } | ||||
| 535 | + }, | ||||
| 536 | + { | ||||
| 537 | + "id": "claude-sonnet-4-6", | ||||
| 538 | + "provider": "anthropic", | ||||
| 539 | + "kind": "chat", | ||||
| 540 | + "available": true, | ||||
| 541 | + "tested": true, | ||||
| 542 | + "status": "verified", | ||||
| 543 | + "capabilities": { | ||||
| 544 | + "text": true, | ||||
| 545 | + "vision": true, | ||||
| 546 | + "tools": true, | ||||
| 547 | + "structuredOutput": true, | ||||
| 548 | + "streaming": true, | ||||
| 549 | + "reasoning": true, | ||||
| 550 | + "longContext": true, | ||||
| 551 | + "audioInput": false, | ||||
| 552 | + "audioOutput": false, | ||||
| 553 | + "imageGeneration": false | ||||
| 554 | + }, | ||||
| 555 | + "pricing": { | ||||
| 556 | + "input": 3, | ||||
| 557 | + "cacheWrite5m": 3.75, | ||||
| 558 | + "cacheWrite1h": 6, | ||||
| 559 | + "cachedInput": 0.3, | ||||
| 560 | + "output": 15 | ||||
| 561 | + }, | ||||
| 562 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 563 | + "contextWindow": 1000000, | ||||
| 564 | + "maxOutputTokens": 128000, | ||||
| 565 | + "benchmark": { | ||||
| 566 | + "tests": 11, | ||||
| 567 | + "passed": 11, | ||||
| 568 | + "qualityScore": 100, | ||||
| 569 | + "p50LatencyMs": 2909, | ||||
| 570 | + "p50TtftMs": 1732, | ||||
| 571 | + "totalCostUsd": 0.055743, | ||||
| 572 | + "avgOutputTokens": 116, | ||||
| 573 | + "perTest": { | ||||
| 574 | + "basic": "pass", | ||||
| 575 | + "reasoning": "pass", | ||||
| 576 | + "math": "pass", | ||||
| 577 | + "code": "pass", | ||||
| 578 | + "french": "pass", | ||||
| 579 | + "english": "pass", | ||||
| 580 | + "json": "pass", | ||||
| 581 | + "tools": "pass", | ||||
| 582 | + "vision": "pass", | ||||
| 583 | + "longctx": "pass", | ||||
| 584 | + "streaming": "pass" | ||||
| 585 | + }, | ||||
| 586 | + "errors": [] | ||||
| 587 | + } | ||||
| 588 | + }, | ||||
| 589 | + { | ||||
| 590 | + "id": "claude-sonnet-5", | ||||
| 591 | + "provider": "anthropic", | ||||
| 592 | + "kind": "chat", | ||||
| 593 | + "available": true, | ||||
| 594 | + "tested": true, | ||||
| 595 | + "status": "verified", | ||||
| 596 | + "capabilities": { | ||||
| 597 | + "text": true, | ||||
| 598 | + "vision": true, | ||||
| 599 | + "tools": true, | ||||
| 600 | + "structuredOutput": true, | ||||
| 601 | + "streaming": true, | ||||
| 602 | + "reasoning": true, | ||||
| 603 | + "longContext": true, | ||||
| 604 | + "audioInput": false, | ||||
| 605 | + "audioOutput": false, | ||||
| 606 | + "imageGeneration": false | ||||
| 607 | + }, | ||||
| 608 | + "pricing": { | ||||
| 609 | + "input": 2, | ||||
| 610 | + "cacheWrite5m": 2.5, | ||||
| 611 | + "cacheWrite1h": 4, | ||||
| 612 | + "cachedInput": 0.2, | ||||
| 613 | + "output": 10 | ||||
| 614 | + }, | ||||
| 615 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 616 | + "contextWindow": 1000000, | ||||
| 617 | + "maxOutputTokens": 128000, | ||||
| 618 | + "benchmark": { | ||||
| 619 | + "tests": 11, | ||||
| 620 | + "passed": 11, | ||||
| 621 | + "qualityScore": 100, | ||||
| 622 | + "p50LatencyMs": 1168, | ||||
| 623 | + "p50TtftMs": 528, | ||||
| 624 | + "totalCostUsd": 0.040766, | ||||
| 625 | + "avgOutputTokens": 78, | ||||
| 626 | + "perTest": { | ||||
| 627 | + "basic": "pass", | ||||
| 628 | + "reasoning": "pass", | ||||
| 629 | + "math": "pass", | ||||
| 630 | + "code": "pass", | ||||
| 631 | + "french": "pass", | ||||
| 632 | + "english": "pass", | ||||
| 633 | + "json": "pass", | ||||
| 634 | + "tools": "pass", | ||||
| 635 | + "vision": "pass", | ||||
| 636 | + "longctx": "pass", | ||||
| 637 | + "streaming": "pass" | ||||
| 638 | + }, | ||||
| 639 | + "errors": [] | ||||
| 640 | + } | ||||
| 641 | + }, | ||||
| 642 | + { | ||||
| 643 | + "id": "claude-sonnet-5-5", | ||||
| 644 | + "provider": "anthropic", | ||||
| 645 | + "kind": "chat", | ||||
| 646 | + "available": true, | ||||
| 647 | + "tested": true, | ||||
| 648 | + "status": "verified", | ||||
| 649 | + "capabilities": { | ||||
| 650 | + "text": true, | ||||
| 651 | + "vision": true, | ||||
| 652 | + "tools": true, | ||||
| 653 | + "structuredOutput": true, | ||||
| 654 | + "streaming": true, | ||||
| 655 | + "reasoning": true, | ||||
| 656 | + "longContext": true, | ||||
| 657 | + "audioInput": false, | ||||
| 658 | + "audioOutput": false, | ||||
| 659 | + "imageGeneration": false | ||||
| 660 | + }, | ||||
| 661 | + "pricing": { | ||||
| 662 | + "input": 2, | ||||
| 663 | + "cacheWrite5m": 2.5, | ||||
| 664 | + "cacheWrite1h": 4, | ||||
| 665 | + "cachedInput": 0.1, | ||||
| 666 | + "output": 10 | ||||
| 667 | + }, | ||||
| 668 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 669 | + "contextWindow": 1000000, | ||||
| 670 | + "maxOutputTokens": 128000, | ||||
| 671 | + "benchmark": { | ||||
| 672 | + "tests": 11, | ||||
| 673 | + "passed": 11, | ||||
| 674 | + "qualityScore": 100, | ||||
| 675 | + "p50LatencyMs": 1496, | ||||
| 676 | + "p50TtftMs": 586, | ||||
| 677 | + "totalCostUsd": 0.039694, | ||||
| 678 | + "avgOutputTokens": 69, | ||||
| 679 | + "perTest": { | ||||
| 680 | + "basic": "pass", | ||||
| 681 | + "reasoning": "pass", | ||||
| 682 | + "math": "pass", | ||||
| 683 | + "code": "pass", | ||||
| 684 | + "french": "pass", | ||||
| 685 | + "english": "pass", | ||||
| 686 | + "json": "pass", | ||||
| 687 | + "tools": "pass", | ||||
| 688 | + "vision": "pass", | ||||
| 689 | + "longctx": "pass", | ||||
| 690 | + "streaming": "pass" | ||||
| 691 | + }, | ||||
| 692 | + "errors": [] | ||||
| 693 | + } | ||||
| 694 | + }, | ||||
| 695 | + { | ||||
| 696 | + "id": "claude-opus-4-5-20251101", | ||||
| 697 | + "provider": "anthropic", | ||||
| 698 | + "kind": "chat", | ||||
| 699 | + "available": true, | ||||
| 700 | + "tested": true, | ||||
| 701 | + "status": "verified", | ||||
| 702 | + "capabilities": { | ||||
| 703 | + "text": true, | ||||
| 704 | + "vision": true, | ||||
| 705 | + "tools": true, | ||||
| 706 | + "structuredOutput": true, | ||||
| 707 | + "streaming": true, | ||||
| 708 | + "reasoning": true, | ||||
| 709 | + "longContext": false, | ||||
| 710 | + "audioInput": false, | ||||
| 711 | + "audioOutput": false, | ||||
| 712 | + "imageGeneration": false | ||||
| 713 | + }, | ||||
| 714 | + "pricing": { | ||||
| 715 | + "input": 5, | ||||
| 716 | + "cacheWrite5m": 6.25, | ||||
| 717 | + "cacheWrite1h": 10, | ||||
| 718 | + "cachedInput": 0.5, | ||||
| 719 | + "output": 25 | ||||
| 720 | + }, | ||||
| 721 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 722 | + "contextWindow": 200000, | ||||
| 723 | + "maxOutputTokens": 64000, | ||||
| 724 | + "benchmark": { | ||||
| 725 | + "tests": 11, | ||||
| 726 | + "passed": 10, | ||||
| 727 | + "qualityScore": 89, | ||||
| 728 | + "p50LatencyMs": 1940, | ||||
| 729 | + "p50TtftMs": 806, | ||||
| 730 | + "totalCostUsd": 0.0801, | ||||
| 731 | + "avgOutputTokens": 69, | ||||
| 732 | + "perTest": { | ||||
| 733 | + "basic": "pass", | ||||
| 734 | + "reasoning": "pass", | ||||
| 735 | + "math": "pass", | ||||
| 736 | + "code": "pass", | ||||
| 737 | + "french": "pass", | ||||
| 738 | + "english": "pass", | ||||
| 739 | + "json": "pass", | ||||
| 740 | + "tools": "pass", | ||||
| 741 | + "vision": "pass", | ||||
| 742 | + "longctx": "fail", | ||||
| 743 | + "streaming": "pass" | ||||
| 744 | + }, | ||||
| 745 | + "errors": [] | ||||
| 746 | + } | ||||
| 747 | + }, | ||||
| 748 | + { | ||||
| 749 | + "id": "chat-latest", | ||||
| 750 | + "provider": "openai", | ||||
| 751 | + "kind": "chat", | ||||
| 752 | + "api": "responses", | ||||
| 753 | + "available": true, | ||||
| 754 | + "tested": true, | ||||
| 755 | + "status": "verified", | ||||
| 756 | + "capabilities": { | ||||
| 757 | + "text": true, | ||||
| 758 | + "vision": true, | ||||
| 759 | + "tools": true, | ||||
| 760 | + "structuredOutput": true, | ||||
| 761 | + "streaming": true, | ||||
| 762 | + "reasoning": true, | ||||
| 763 | + "longContext": true, | ||||
| 764 | + "audioInput": false, | ||||
| 765 | + "audioOutput": false, | ||||
| 766 | + "imageGeneration": false | ||||
| 767 | + }, | ||||
| 768 | + "pricing": { | ||||
| 769 | + "input": 5, | ||||
| 770 | + "cachedInput": 0.5, | ||||
| 771 | + "output": 30, | ||||
| 772 | + "notes": "ChatGPT model" | ||||
| 773 | + }, | ||||
| 774 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 775 | + "benchmark": { | ||||
| 776 | + "tests": 11, | ||||
| 777 | + "passed": 11, | ||||
| 778 | + "qualityScore": 100, | ||||
| 779 | + "p50LatencyMs": 1215, | ||||
| 780 | + "p50TtftMs": 547, | ||||
| 781 | + "totalCostUsd": 0.059775, | ||||
| 782 | + "avgOutputTokens": 35, | ||||
| 783 | + "perTest": { | ||||
| 784 | + "basic": "pass", | ||||
| 785 | + "reasoning": "pass", | ||||
| 786 | + "math": "pass", | ||||
| 787 | + "code": "pass", | ||||
| 788 | + "french": "pass", | ||||
| 789 | + "english": "pass", | ||||
| 790 | + "json": "pass", | ||||
| 791 | + "tools": "pass", | ||||
| 792 | + "vision": "pass", | ||||
| 793 | + "longctx": "pass", | ||||
| 794 | + "streaming": "pass" | ||||
| 795 | + }, | ||||
| 796 | + "errors": [] | ||||
| 797 | + } | ||||
| 798 | + }, | ||||
| 799 | + { | ||||
| 800 | + "id": "gpt-5", | ||||
| 801 | + "provider": "openai", | ||||
| 802 | + "kind": "chat", | ||||
| 803 | + "api": "responses", | ||||
| 804 | + "available": true, | ||||
| 805 | + "tested": true, | ||||
| 806 | + "status": "verified", | ||||
| 807 | + "capabilities": { | ||||
| 808 | + "text": true, | ||||
| 809 | + "vision": true, | ||||
| 810 | + "tools": true, | ||||
| 811 | + "structuredOutput": true, | ||||
| 812 | + "streaming": true, | ||||
| 813 | + "reasoning": true, | ||||
| 814 | + "longContext": true, | ||||
| 815 | + "audioInput": false, | ||||
| 816 | + "audioOutput": false, | ||||
| 817 | + "imageGeneration": false | ||||
| 818 | + }, | ||||
| 819 | + "pricing": { | ||||
| 820 | + "input": 1.25, | ||||
| 821 | + "cachedInput": 0.125, | ||||
| 822 | + "output": 10 | ||||
| 823 | + }, | ||||
| 824 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 825 | + "benchmark": { | ||||
| 826 | + "tests": 11, | ||||
| 827 | + "passed": 11, | ||||
| 828 | + "qualityScore": 100, | ||||
| 829 | + "p50LatencyMs": 3814, | ||||
| 830 | + "p50TtftMs": 7922, | ||||
| 831 | + "totalCostUsd": 0.052955, | ||||
| 832 | + "avgOutputTokens": 372, | ||||
| 833 | + "perTest": { | ||||
| 834 | + "reasoning": "pass", | ||||
| 835 | + "math": "pass", | ||||
| 836 | + "code": "pass", | ||||
| 837 | + "french": "pass", | ||||
| 838 | + "english": "pass", | ||||
| 839 | + "json": "pass", | ||||
| 840 | + "tools": "pass", | ||||
| 841 | + "vision": "pass", | ||||
| 842 | + "longctx": "pass", | ||||
| 843 | + "basic": "pass", | ||||
| 844 | + "streaming": "pass" | ||||
| 845 | + }, | ||||
| 846 | + "errors": [] | ||||
| 847 | + } | ||||
| 848 | + }, | ||||
| 849 | + { | ||||
| 850 | + "id": "gpt-5-mini", | ||||
| 851 | + "provider": "openai", | ||||
| 852 | + "kind": "chat", | ||||
| 853 | + "api": "responses", | ||||
| 854 | + "available": true, | ||||
| 855 | + "tested": true, | ||||
| 856 | + "status": "verified", | ||||
| 857 | + "capabilities": { | ||||
| 858 | + "text": true, | ||||
| 859 | + "vision": true, | ||||
| 860 | + "tools": true, | ||||
| 861 | + "structuredOutput": true, | ||||
| 862 | + "streaming": true, | ||||
| 863 | + "reasoning": true, | ||||
| 864 | + "longContext": true, | ||||
| 865 | + "audioInput": false, | ||||
| 866 | + "audioOutput": false, | ||||
| 867 | + "imageGeneration": false | ||||
| 868 | + }, | ||||
| 869 | + "pricing": { | ||||
| 870 | + "input": 0.25, | ||||
| 871 | + "cachedInput": 0.025, | ||||
| 872 | + "output": 2 | ||||
| 873 | + }, | ||||
| 874 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 875 | + "benchmark": { | ||||
| 876 | + "tests": 11, | ||||
| 877 | + "passed": 11, | ||||
| 878 | + "qualityScore": 100, | ||||
| 879 | + "p50LatencyMs": 3711, | ||||
| 880 | + "p50TtftMs": 10075, | ||||
| 881 | + "totalCostUsd": 0.00929875, | ||||
| 882 | + "avgOutputTokens": 313, | ||||
| 883 | + "perTest": { | ||||
| 884 | + "reasoning": "pass", | ||||
| 885 | + "math": "pass", | ||||
| 886 | + "code": "pass", | ||||
| 887 | + "french": "pass", | ||||
| 888 | + "english": "pass", | ||||
| 889 | + "json": "pass", | ||||
| 890 | + "tools": "pass", | ||||
| 891 | + "vision": "pass", | ||||
| 892 | + "longctx": "pass", | ||||
| 893 | + "basic": "pass", | ||||
| 894 | + "streaming": "pass" | ||||
| 895 | + }, | ||||
| 896 | + "errors": [] | ||||
| 897 | + } | ||||
| 898 | + }, | ||||
| 899 | + { | ||||
| 900 | + "id": "gpt-5-nano", | ||||
| 901 | + "provider": "openai", | ||||
| 902 | + "kind": "chat", | ||||
| 903 | + "api": "responses", | ||||
| 904 | + "available": true, | ||||
| 905 | + "tested": true, | ||||
| 906 | + "status": "verified", | ||||
| 907 | + "capabilities": { | ||||
| 908 | + "text": true, | ||||
| 909 | + "vision": true, | ||||
| 910 | + "tools": true, | ||||
| 911 | + "structuredOutput": true, | ||||
| 912 | + "streaming": true, | ||||
| 913 | + "reasoning": true, | ||||
| 914 | + "longContext": true, | ||||
| 915 | + "audioInput": false, | ||||
| 916 | + "audioOutput": false, | ||||
| 917 | + "imageGeneration": false | ||||
| 918 | + }, | ||||
| 919 | + "pricing": { | ||||
| 920 | + "input": 0.05, | ||||
| 921 | + "cachedInput": 0.005, | ||||
| 922 | + "output": 0.4 | ||||
| 923 | + }, | ||||
| 924 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 925 | + "benchmark": { | ||||
| 926 | + "tests": 11, | ||||
| 927 | + "passed": 11, | ||||
| 928 | + "qualityScore": 100, | ||||
| 929 | + "p50LatencyMs": 3034, | ||||
| 930 | + "p50TtftMs": 10356, | ||||
| 931 | + "totalCostUsd": 0.0037060500000000002, | ||||
| 932 | + "avgOutputTokens": 732, | ||||
| 933 | + "perTest": { | ||||
| 934 | + "reasoning": "pass", | ||||
| 935 | + "math": "pass", | ||||
| 936 | + "code": "pass", | ||||
| 937 | + "french": "pass", | ||||
| 938 | + "english": "pass", | ||||
| 939 | + "json": "pass", | ||||
| 940 | + "tools": "pass", | ||||
| 941 | + "vision": "pass", | ||||
| 942 | + "longctx": "pass", | ||||
| 943 | + "basic": "pass", | ||||
| 944 | + "streaming": "pass" | ||||
| 945 | + }, | ||||
| 946 | + "errors": [] | ||||
| 947 | + } | ||||
| 948 | + }, | ||||
| 949 | + { | ||||
| 950 | + "id": "gpt-5-pro", | ||||
| 951 | + "provider": "openai", | ||||
| 952 | + "kind": "chat-pro", | ||||
| 953 | + "api": "responses", | ||||
| 954 | + "available": true, | ||||
| 955 | + "tested": true, | ||||
| 956 | + "status": "verified", | ||||
| 957 | + "capabilities": { | ||||
| 958 | + "text": true, | ||||
| 959 | + "vision": "unknown", | ||||
| 960 | + "tools": true, | ||||
| 961 | + "structuredOutput": true, | ||||
| 962 | + "streaming": "unknown", | ||||
| 963 | + "reasoning": true, | ||||
| 964 | + "longContext": "unknown", | ||||
| 965 | + "audioInput": false, | ||||
| 966 | + "audioOutput": false, | ||||
| 967 | + "imageGeneration": false | ||||
| 968 | + }, | ||||
| 969 | + "pricing": { | ||||
| 970 | + "input": 15, | ||||
| 971 | + "output": 120 | ||||
| 972 | + }, | ||||
| 973 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 974 | + "benchmark": { | ||||
| 975 | + "tests": 4, | ||||
| 976 | + "passed": 4, | ||||
| 977 | + "qualityScore": 100, | ||||
| 978 | + "p50LatencyMs": 47132, | ||||
| 979 | + "p50TtftMs": null, | ||||
| 980 | + "totalCostUsd": 0.25377, | ||||
| 981 | + "avgOutputTokens": 523, | ||||
| 982 | + "perTest": { | ||||
| 983 | + "basic": "pass", | ||||
| 984 | + "reasoning": "pass", | ||||
| 985 | + "json": "pass", | ||||
| 986 | + "tools": "pass" | ||||
| 987 | + }, | ||||
| 988 | + "errors": [] | ||||
| 989 | + } | ||||
| 990 | + }, | ||||
| 991 | + { | ||||
| 992 | + "id": "gpt-5.2-pro", | ||||
| 993 | + "provider": "openai", | ||||
| 994 | + "kind": "chat-pro", | ||||
| 995 | + "api": "responses", | ||||
| 996 | + "available": true, | ||||
| 997 | + "tested": true, | ||||
| 998 | + "status": "verified", | ||||
| 999 | + "capabilities": { | ||||
| 1000 | + "text": true, | ||||
| 1001 | + "vision": "unknown", | ||||
| 1002 | + "tools": true, | ||||
| 1003 | + "structuredOutput": true, | ||||
| 1004 | + "streaming": "unknown", | ||||
| 1005 | + "reasoning": true, | ||||
| 1006 | + "longContext": "unknown", | ||||
| 1007 | + "audioInput": false, | ||||
| 1008 | + "audioOutput": false, | ||||
| 1009 | + "imageGeneration": false | ||||
| 1010 | + }, | ||||
| 1011 | + "pricing": { | ||||
| 1012 | + "input": 21, | ||||
| 1013 | + "output": 168 | ||||
| 1014 | + }, | ||||
| 1015 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1016 | + "benchmark": { | ||||
| 1017 | + "tests": 4, | ||||
| 1018 | + "passed": 4, | ||||
| 1019 | + "qualityScore": 100, | ||||
| 1020 | + "p50LatencyMs": 6297, | ||||
| 1021 | + "p50TtftMs": null, | ||||
| 1022 | + "totalCostUsd": 0.039438, | ||||
| 1023 | + "avgOutputTokens": 53, | ||||
| 1024 | + "perTest": { | ||||
| 1025 | + "basic": "pass", | ||||
| 1026 | + "reasoning": "pass", | ||||
| 1027 | + "json": "pass", | ||||
| 1028 | + "tools": "pass" | ||||
| 1029 | + }, | ||||
| 1030 | + "errors": [] | ||||
| 1031 | + } | ||||
| 1032 | + }, | ||||
| 1033 | + { | ||||
| 1034 | + "id": "gpt-5.4-pro", | ||||
| 1035 | + "provider": "openai", | ||||
| 1036 | + "kind": "chat-pro", | ||||
| 1037 | + "api": "responses", | ||||
| 1038 | + "available": true, | ||||
| 1039 | + "tested": true, | ||||
| 1040 | + "status": "verified", | ||||
| 1041 | + "capabilities": { | ||||
| 1042 | + "text": true, | ||||
| 1043 | + "vision": "unknown", | ||||
| 1044 | + "tools": true, | ||||
| 1045 | + "structuredOutput": true, | ||||
| 1046 | + "streaming": "unknown", | ||||
| 1047 | + "reasoning": true, | ||||
| 1048 | + "longContext": "unknown", | ||||
| 1049 | + "audioInput": false, | ||||
| 1050 | + "audioOutput": false, | ||||
| 1051 | + "imageGeneration": false | ||||
| 1052 | + }, | ||||
| 1053 | + "pricing": { | ||||
| 1054 | + "input": 30, | ||||
| 1055 | + "output": 180 | ||||
| 1056 | + }, | ||||
| 1057 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1058 | + "benchmark": { | ||||
| 1059 | + "tests": 4, | ||||
| 1060 | + "passed": 4, | ||||
| 1061 | + "qualityScore": 100, | ||||
| 1062 | + "p50LatencyMs": 14838, | ||||
| 1063 | + "p50TtftMs": null, | ||||
| 1064 | + "totalCostUsd": 0.0735, | ||||
| 1065 | + "avgOutputTokens": 95, | ||||
| 1066 | + "perTest": { | ||||
| 1067 | + "basic": "pass", | ||||
| 1068 | + "reasoning": "pass", | ||||
| 1069 | + "json": "pass", | ||||
| 1070 | + "tools": "pass" | ||||
| 1071 | + }, | ||||
| 1072 | + "errors": [] | ||||
| 1073 | + } | ||||
| 1074 | + }, | ||||
| 1075 | + { | ||||
| 1076 | + "id": "gpt-5.5", | ||||
| 1077 | + "provider": "openai", | ||||
| 1078 | + "kind": "chat", | ||||
| 1079 | + "api": "responses", | ||||
| 1080 | + "available": true, | ||||
| 1081 | + "tested": true, | ||||
| 1082 | + "status": "verified", | ||||
| 1083 | + "capabilities": { | ||||
| 1084 | + "text": true, | ||||
| 1085 | + "vision": true, | ||||
| 1086 | + "tools": true, | ||||
| 1087 | + "structuredOutput": true, | ||||
| 1088 | + "streaming": true, | ||||
| 1089 | + "reasoning": true, | ||||
| 1090 | + "longContext": true, | ||||
| 1091 | + "audioInput": false, | ||||
| 1092 | + "audioOutput": false, | ||||
| 1093 | + "imageGeneration": false | ||||
| 1094 | + }, | ||||
| 1095 | + "pricing": { | ||||
| 1096 | + "input": 5, | ||||
| 1097 | + "cachedInput": 0.5, | ||||
| 1098 | + "output": 30 | ||||
| 1099 | + }, | ||||
| 1100 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1101 | + "benchmark": { | ||||
| 1102 | + "tests": 11, | ||||
| 1103 | + "passed": 11, | ||||
| 1104 | + "qualityScore": 100, | ||||
| 1105 | + "p50LatencyMs": 2089, | ||||
| 1106 | + "p50TtftMs": 730, | ||||
| 1107 | + "totalCostUsd": 0.068925, | ||||
| 1108 | + "avgOutputTokens": 62, | ||||
| 1109 | + "perTest": { | ||||
| 1110 | + "basic": "pass", | ||||
| 1111 | + "reasoning": "pass", | ||||
| 1112 | + "math": "pass", | ||||
| 1113 | + "code": "pass", | ||||
| 1114 | + "french": "pass", | ||||
| 1115 | + "english": "pass", | ||||
| 1116 | + "json": "pass", | ||||
| 1117 | + "tools": "pass", | ||||
| 1118 | + "vision": "pass", | ||||
| 1119 | + "longctx": "pass", | ||||
| 1120 | + "streaming": "pass" | ||||
| 1121 | + }, | ||||
| 1122 | + "errors": [] | ||||
| 1123 | + } | ||||
| 1124 | + }, | ||||
| 1125 | + { | ||||
| 1126 | + "id": "gpt-5.5-pro", | ||||
| 1127 | + "provider": "openai", | ||||
| 1128 | + "kind": "chat-pro", | ||||
| 1129 | + "api": "responses", | ||||
| 1130 | + "available": true, | ||||
| 1131 | + "tested": true, | ||||
| 1132 | + "status": "verified", | ||||
| 1133 | + "capabilities": { | ||||
| 1134 | + "text": true, | ||||
| 1135 | + "vision": "unknown", | ||||
| 1136 | + "tools": true, | ||||
| 1137 | + "structuredOutput": true, | ||||
| 1138 | + "streaming": "unknown", | ||||
| 1139 | + "reasoning": true, | ||||
| 1140 | + "longContext": "unknown", | ||||
| 1141 | + "audioInput": false, | ||||
| 1142 | + "audioOutput": false, | ||||
| 1143 | + "imageGeneration": false | ||||
| 1144 | + }, | ||||
| 1145 | + "pricing": { | ||||
| 1146 | + "input": 30, | ||||
| 1147 | + "output": 180 | ||||
| 1148 | + }, | ||||
| 1149 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1150 | + "benchmark": { | ||||
| 1151 | + "tests": 4, | ||||
| 1152 | + "passed": 4, | ||||
| 1153 | + "qualityScore": 100, | ||||
| 1154 | + "p50LatencyMs": 5531, | ||||
| 1155 | + "p50TtftMs": null, | ||||
| 1156 | + "totalCostUsd": 0.06449999999999999, | ||||
| 1157 | + "avgOutputTokens": 82, | ||||
| 1158 | + "perTest": { | ||||
| 1159 | + "basic": "pass", | ||||
| 1160 | + "reasoning": "pass", | ||||
| 1161 | + "json": "pass", | ||||
| 1162 | + "tools": "pass" | ||||
| 1163 | + }, | ||||
| 1164 | + "errors": [] | ||||
| 1165 | + } | ||||
| 1166 | + }, | ||||
| 1167 | + { | ||||
| 1168 | + "id": "gpt-5.6-luna", | ||||
| 1169 | + "provider": "openai", | ||||
| 1170 | + "kind": "chat", | ||||
| 1171 | + "api": "responses", | ||||
| 1172 | + "available": true, | ||||
| 1173 | + "tested": true, | ||||
| 1174 | + "status": "verified", | ||||
| 1175 | + "capabilities": { | ||||
| 1176 | + "text": true, | ||||
| 1177 | + "vision": true, | ||||
| 1178 | + "tools": true, | ||||
| 1179 | + "structuredOutput": true, | ||||
| 1180 | + "streaming": true, | ||||
| 1181 | + "reasoning": true, | ||||
| 1182 | + "longContext": true, | ||||
| 1183 | + "audioInput": false, | ||||
| 1184 | + "audioOutput": false, | ||||
| 1185 | + "imageGeneration": false | ||||
| 1186 | + }, | ||||
| 1187 | + "pricing": { | ||||
| 1188 | + "input": 0.2, | ||||
| 1189 | + "cachedInput": 0.02, | ||||
| 1190 | + "output": 1.2 | ||||
| 1191 | + }, | ||||
| 1192 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1193 | + "benchmark": { | ||||
| 1194 | + "tests": 11, | ||||
| 1195 | + "passed": 11, | ||||
| 1196 | + "qualityScore": 100, | ||||
| 1197 | + "p50LatencyMs": 1581, | ||||
| 1198 | + "p50TtftMs": 3271, | ||||
| 1199 | + "totalCostUsd": 0.0031026000000000005, | ||||
| 1200 | + "avgOutputTokens": 88, | ||||
| 1201 | + "perTest": { | ||||
| 1202 | + "reasoning": "pass", | ||||
| 1203 | + "math": "pass", | ||||
| 1204 | + "code": "pass", | ||||
| 1205 | + "french": "pass", | ||||
| 1206 | + "english": "pass", | ||||
| 1207 | + "json": "pass", | ||||
| 1208 | + "tools": "pass", | ||||
| 1209 | + "vision": "pass", | ||||
| 1210 | + "longctx": "pass", | ||||
| 1211 | + "basic": "pass", | ||||
| 1212 | + "streaming": "pass" | ||||
| 1213 | + }, | ||||
| 1214 | + "errors": [] | ||||
| 1215 | + } | ||||
| 1216 | + }, | ||||
| 1217 | + { | ||||
| 1218 | + "id": "gpt-5.6-sol", | ||||
| 1219 | + "provider": "openai", | ||||
| 1220 | + "kind": "chat", | ||||
| 1221 | + "api": "responses", | ||||
| 1222 | + "available": true, | ||||
| 1223 | + "tested": true, | ||||
| 1224 | + "status": "verified", | ||||
| 1225 | + "capabilities": { | ||||
| 1226 | + "text": true, | ||||
| 1227 | + "vision": true, | ||||
| 1228 | + "tools": true, | ||||
| 1229 | + "structuredOutput": true, | ||||
| 1230 | + "streaming": true, | ||||
| 1231 | + "reasoning": true, | ||||
| 1232 | + "longContext": true, | ||||
| 1233 | + "audioInput": false, | ||||
| 1234 | + "audioOutput": false, | ||||
| 1235 | + "imageGeneration": false | ||||
| 1236 | + }, | ||||
| 1237 | + "pricing": { | ||||
| 1238 | + "input": 4, | ||||
| 1239 | + "cachedInput": 0.4, | ||||
| 1240 | + "output": 20, | ||||
| 1241 | + "notes": "promotional through at least 2026-11-21" | ||||
| 1242 | + }, | ||||
| 1243 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1244 | + "benchmark": { | ||||
| 1245 | + "tests": 11, | ||||
| 1246 | + "passed": 11, | ||||
| 1247 | + "qualityScore": 100, | ||||
| 1248 | + "p50LatencyMs": 1527, | ||||
| 1249 | + "p50TtftMs": 2268, | ||||
| 1250 | + "totalCostUsd": 0.0503, | ||||
| 1251 | + "avgOutputTokens": 53, | ||||
| 1252 | + "perTest": { | ||||
| 1253 | + "basic": "pass", | ||||
| 1254 | + "reasoning": "pass", | ||||
| 1255 | + "math": "pass", | ||||
| 1256 | + "code": "pass", | ||||
| 1257 | + "french": "pass", | ||||
| 1258 | + "english": "pass", | ||||
| 1259 | + "json": "pass", | ||||
| 1260 | + "tools": "pass", | ||||
| 1261 | + "vision": "pass", | ||||
| 1262 | + "longctx": "pass", | ||||
| 1263 | + "streaming": "pass" | ||||
| 1264 | + }, | ||||
| 1265 | + "errors": [] | ||||
| 1266 | + } | ||||
| 1267 | + }, | ||||
| 1268 | + { | ||||
| 1269 | + "id": "gpt-6-astra", | ||||
| 1270 | + "provider": "openai", | ||||
| 1271 | + "kind": "chat", | ||||
| 1272 | + "api": "responses", | ||||
| 1273 | + "available": true, | ||||
| 1274 | + "tested": true, | ||||
| 1275 | + "status": "verified", | ||||
| 1276 | + "capabilities": { | ||||
| 1277 | + "text": true, | ||||
| 1278 | + "vision": true, | ||||
| 1279 | + "tools": true, | ||||
| 1280 | + "structuredOutput": true, | ||||
| 1281 | + "streaming": true, | ||||
| 1282 | + "reasoning": true, | ||||
| 1283 | + "longContext": true, | ||||
| 1284 | + "audioInput": false, | ||||
| 1285 | + "audioOutput": false, | ||||
| 1286 | + "imageGeneration": false | ||||
| 1287 | + }, | ||||
| 1288 | + "pricing": { | ||||
| 1289 | + "input": 10, | ||||
| 1290 | + "cachedInput": 1, | ||||
| 1291 | + "output": 50, | ||||
| 1292 | + "notes": "long context (>272K) $20/$2/$75" | ||||
| 1293 | + }, | ||||
| 1294 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1295 | + "benchmark": { | ||||
| 1296 | + "tests": 11, | ||||
| 1297 | + "passed": 11, | ||||
| 1298 | + "qualityScore": 100, | ||||
| 1299 | + "p50LatencyMs": 2190, | ||||
| 1300 | + "p50TtftMs": 3799, | ||||
| 1301 | + "totalCostUsd": 0.12985, | ||||
| 1302 | + "avgOutputTokens": 60, | ||||
| 1303 | + "perTest": { | ||||
| 1304 | + "basic": "pass", | ||||
| 1305 | + "reasoning": "pass", | ||||
| 1306 | + "math": "pass", | ||||
| 1307 | + "code": "pass", | ||||
| 1308 | + "french": "pass", | ||||
| 1309 | + "english": "pass", | ||||
| 1310 | + "json": "pass", | ||||
| 1311 | + "tools": "pass", | ||||
| 1312 | + "vision": "pass", | ||||
| 1313 | + "longctx": "pass", | ||||
| 1314 | + "streaming": "pass" | ||||
| 1315 | + }, | ||||
| 1316 | + "errors": [] | ||||
| 1317 | + } | ||||
| 1318 | + }, | ||||
| 1319 | + { | ||||
| 1320 | + "id": "gpt-6-luna", | ||||
| 1321 | + "provider": "openai", | ||||
| 1322 | + "kind": "chat", | ||||
| 1323 | + "api": "responses", | ||||
| 1324 | + "available": true, | ||||
| 1325 | + "tested": true, | ||||
| 1326 | + "status": "verified", | ||||
| 1327 | + "capabilities": { | ||||
| 1328 | + "text": true, | ||||
| 1329 | + "vision": true, | ||||
| 1330 | + "tools": true, | ||||
| 1331 | + "structuredOutput": true, | ||||
| 1332 | + "streaming": true, | ||||
| 1333 | + "reasoning": true, | ||||
| 1334 | + "longContext": true, | ||||
| 1335 | + "audioInput": false, | ||||
| 1336 | + "audioOutput": false, | ||||
| 1337 | + "imageGeneration": false | ||||
| 1338 | + }, | ||||
| 1339 | + "pricing": { | ||||
| 1340 | + "input": 0.1, | ||||
| 1341 | + "cachedInput": 0.01, | ||||
| 1342 | + "output": 0.5 | ||||
| 1343 | + }, | ||||
| 1344 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1345 | + "benchmark": { | ||||
| 1346 | + "tests": 11, | ||||
| 1347 | + "passed": 11, | ||||
| 1348 | + "qualityScore": 100, | ||||
| 1349 | + "p50LatencyMs": 2005, | ||||
| 1350 | + "p50TtftMs": 2952, | ||||
| 1351 | + "totalCostUsd": 0.0015370000000000002, | ||||
| 1352 | + "avgOutputTokens": 104, | ||||
| 1353 | + "perTest": { | ||||
| 1354 | + "reasoning": "pass", | ||||
| 1355 | + "math": "pass", | ||||
| 1356 | + "code": "pass", | ||||
| 1357 | + "french": "pass", | ||||
| 1358 | + "english": "pass", | ||||
| 1359 | + "json": "pass", | ||||
| 1360 | + "tools": "pass", | ||||
| 1361 | + "vision": "pass", | ||||
| 1362 | + "longctx": "pass", | ||||
| 1363 | + "basic": "pass", | ||||
| 1364 | + "streaming": "pass" | ||||
| 1365 | + }, | ||||
| 1366 | + "errors": [] | ||||
| 1367 | + } | ||||
| 1368 | + }, | ||||
| 1369 | + { | ||||
| 1370 | + "id": "gpt-6-sol", | ||||
| 1371 | + "provider": "openai", | ||||
| 1372 | + "kind": "chat", | ||||
| 1373 | + "api": "responses", | ||||
| 1374 | + "available": true, | ||||
| 1375 | + "tested": true, | ||||
| 1376 | + "status": "verified", | ||||
| 1377 | + "capabilities": { | ||||
| 1378 | + "text": true, | ||||
| 1379 | + "vision": true, | ||||
| 1380 | + "tools": true, | ||||
| 1381 | + "structuredOutput": true, | ||||
| 1382 | + "streaming": true, | ||||
| 1383 | + "reasoning": true, | ||||
| 1384 | + "longContext": true, | ||||
| 1385 | + "audioInput": false, | ||||
| 1386 | + "audioOutput": false, | ||||
| 1387 | + "imageGeneration": false | ||||
| 1388 | + }, | ||||
| 1389 | + "pricing": { | ||||
| 1390 | + "input": 2, | ||||
| 1391 | + "cachedInput": 0.2, | ||||
| 1392 | + "output": 10 | ||||
| 1393 | + }, | ||||
| 1394 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1395 | + "benchmark": { | ||||
| 1396 | + "tests": 11, | ||||
| 1397 | + "passed": 11, | ||||
| 1398 | + "qualityScore": 100, | ||||
| 1399 | + "p50LatencyMs": 1516, | ||||
| 1400 | + "p50TtftMs": 1608, | ||||
| 1401 | + "totalCostUsd": 0.02674, | ||||
| 1402 | + "avgOutputTokens": 67, | ||||
| 1403 | + "perTest": { | ||||
| 1404 | + "basic": "pass", | ||||
| 1405 | + "reasoning": "pass", | ||||
| 1406 | + "math": "pass", | ||||
| 1407 | + "code": "pass", | ||||
| 1408 | + "french": "pass", | ||||
| 1409 | + "english": "pass", | ||||
| 1410 | + "json": "pass", | ||||
| 1411 | + "tools": "pass", | ||||
| 1412 | + "vision": "pass", | ||||
| 1413 | + "longctx": "pass", | ||||
| 1414 | + "streaming": "pass" | ||||
| 1415 | + }, | ||||
| 1416 | + "errors": [] | ||||
| 1417 | + } | ||||
| 1418 | + }, | ||||
| 1419 | + { | ||||
| 1420 | + "id": "gpt-6.1-sol", | ||||
| 1421 | + "provider": "openai", | ||||
| 1422 | + "kind": "chat", | ||||
| 1423 | + "api": "responses", | ||||
| 1424 | + "available": true, | ||||
| 1425 | + "tested": true, | ||||
| 1426 | + "status": "verified", | ||||
| 1427 | + "capabilities": { | ||||
| 1428 | + "text": true, | ||||
| 1429 | + "vision": true, | ||||
| 1430 | + "tools": true, | ||||
| 1431 | + "structuredOutput": true, | ||||
| 1432 | + "streaming": true, | ||||
| 1433 | + "reasoning": true, | ||||
| 1434 | + "longContext": true, | ||||
| 1435 | + "audioInput": false, | ||||
| 1436 | + "audioOutput": false, | ||||
| 1437 | + "imageGeneration": false | ||||
| 1438 | + }, | ||||
| 1439 | + "pricing": { | ||||
| 1440 | + "input": 2, | ||||
| 1441 | + "cachedInput": 0.1, | ||||
| 1442 | + "output": 10 | ||||
| 1443 | + }, | ||||
| 1444 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1445 | + "benchmark": { | ||||
| 1446 | + "tests": 11, | ||||
| 1447 | + "passed": 11, | ||||
| 1448 | + "qualityScore": 100, | ||||
| 1449 | + "p50LatencyMs": 2020, | ||||
| 1450 | + "p50TtftMs": 3051, | ||||
| 1451 | + "totalCostUsd": 0.02548, | ||||
| 1452 | + "avgOutputTokens": 56, | ||||
| 1453 | + "perTest": { | ||||
| 1454 | + "basic": "pass", | ||||
| 1455 | + "reasoning": "pass", | ||||
| 1456 | + "math": "pass", | ||||
| 1457 | + "code": "pass", | ||||
| 1458 | + "french": "pass", | ||||
| 1459 | + "english": "pass", | ||||
| 1460 | + "json": "pass", | ||||
| 1461 | + "tools": "pass", | ||||
| 1462 | + "vision": "pass", | ||||
| 1463 | + "longctx": "pass", | ||||
| 1464 | + "streaming": "pass" | ||||
| 1465 | + }, | ||||
| 1466 | + "errors": [] | ||||
| 1467 | + } | ||||
| 1468 | + }, | ||||
| 1469 | + { | ||||
| 1470 | + "id": "gpt-6.1-terra", | ||||
| 1471 | + "provider": "openai", | ||||
| 1472 | + "kind": "chat", | ||||
| 1473 | + "api": "responses", | ||||
| 1474 | + "available": true, | ||||
| 1475 | + "tested": true, | ||||
| 1476 | + "status": "verified", | ||||
| 1477 | + "capabilities": { | ||||
| 1478 | + "text": true, | ||||
| 1479 | + "vision": true, | ||||
| 1480 | + "tools": true, | ||||
| 1481 | + "structuredOutput": true, | ||||
| 1482 | + "streaming": true, | ||||
| 1483 | + "reasoning": true, | ||||
| 1484 | + "longContext": true, | ||||
| 1485 | + "audioInput": false, | ||||
| 1486 | + "audioOutput": false, | ||||
| 1487 | + "imageGeneration": false | ||||
| 1488 | + }, | ||||
| 1489 | + "pricing": { | ||||
| 1490 | + "input": 1, | ||||
| 1491 | + "cachedInput": 0.05, | ||||
| 1492 | + "output": 5 | ||||
| 1493 | + }, | ||||
| 1494 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1495 | + "benchmark": { | ||||
| 1496 | + "tests": 11, | ||||
| 1497 | + "passed": 11, | ||||
| 1498 | + "qualityScore": 100, | ||||
| 1499 | + "p50LatencyMs": 2208, | ||||
| 1500 | + "p50TtftMs": 1841, | ||||
| 1501 | + "totalCostUsd": 0.012655, | ||||
| 1502 | + "avgOutputTokens": 54, | ||||
| 1503 | + "perTest": { | ||||
| 1504 | + "basic": "pass", | ||||
| 1505 | + "reasoning": "pass", | ||||
| 1506 | + "math": "pass", | ||||
| 1507 | + "code": "pass", | ||||
| 1508 | + "french": "pass", | ||||
| 1509 | + "english": "pass", | ||||
| 1510 | + "json": "pass", | ||||
| 1511 | + "tools": "pass", | ||||
| 1512 | + "vision": "pass", | ||||
| 1513 | + "longctx": "pass", | ||||
| 1514 | + "streaming": "pass" | ||||
| 1515 | + }, | ||||
| 1516 | + "errors": [] | ||||
| 1517 | + } | ||||
| 1518 | + }, | ||||
| 1519 | + { | ||||
| 1520 | + "id": "o3", | ||||
| 1521 | + "provider": "openai", | ||||
| 1522 | + "kind": "chat", | ||||
| 1523 | + "api": "responses", | ||||
| 1524 | + "available": true, | ||||
| 1525 | + "tested": true, | ||||
| 1526 | + "status": "verified", | ||||
| 1527 | + "capabilities": { | ||||
| 1528 | + "text": true, | ||||
| 1529 | + "vision": true, | ||||
| 1530 | + "tools": true, | ||||
| 1531 | + "structuredOutput": true, | ||||
| 1532 | + "streaming": true, | ||||
| 1533 | + "reasoning": true, | ||||
| 1534 | + "longContext": true, | ||||
| 1535 | + "audioInput": false, | ||||
| 1536 | + "audioOutput": false, | ||||
| 1537 | + "imageGeneration": false | ||||
| 1538 | + }, | ||||
| 1539 | + "pricing": { | ||||
| 1540 | + "input": 2, | ||||
| 1541 | + "cachedInput": 0.5, | ||||
| 1542 | + "output": 8 | ||||
| 1543 | + }, | ||||
| 1544 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1545 | + "benchmark": { | ||||
| 1546 | + "tests": 11, | ||||
| 1547 | + "passed": 11, | ||||
| 1548 | + "qualityScore": 100, | ||||
| 1549 | + "p50LatencyMs": 1643, | ||||
| 1550 | + "p50TtftMs": 660, | ||||
| 1551 | + "totalCostUsd": 0.033588, | ||||
| 1552 | + "avgOutputTokens": 164, | ||||
| 1553 | + "perTest": { | ||||
| 1554 | + "basic": "pass", | ||||
| 1555 | + "reasoning": "pass", | ||||
| 1556 | + "math": "pass", | ||||
| 1557 | + "code": "pass", | ||||
| 1558 | + "french": "pass", | ||||
| 1559 | + "english": "pass", | ||||
| 1560 | + "json": "pass", | ||||
| 1561 | + "tools": "pass", | ||||
| 1562 | + "vision": "pass", | ||||
| 1563 | + "longctx": "pass", | ||||
| 1564 | + "streaming": "pass" | ||||
| 1565 | + }, | ||||
| 1566 | + "errors": [] | ||||
| 1567 | + } | ||||
| 1568 | + }, | ||||
| 1569 | + { | ||||
| 1570 | + "id": "o3-pro", | ||||
| 1571 | + "provider": "openai", | ||||
| 1572 | + "kind": "chat-pro", | ||||
| 1573 | + "api": "responses", | ||||
| 1574 | + "available": true, | ||||
| 1575 | + "tested": true, | ||||
| 1576 | + "status": "verified", | ||||
| 1577 | + "capabilities": { | ||||
| 1578 | + "text": true, | ||||
| 1579 | + "vision": "unknown", | ||||
| 1580 | + "tools": true, | ||||
| 1581 | + "structuredOutput": true, | ||||
| 1582 | + "streaming": "unknown", | ||||
| 1583 | + "reasoning": true, | ||||
| 1584 | + "longContext": "unknown", | ||||
| 1585 | + "audioInput": false, | ||||
| 1586 | + "audioOutput": false, | ||||
| 1587 | + "imageGeneration": false | ||||
| 1588 | + }, | ||||
| 1589 | + "pricing": { | ||||
| 1590 | + "input": 20, | ||||
| 1591 | + "output": 80 | ||||
| 1592 | + }, | ||||
| 1593 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1594 | + "benchmark": { | ||||
| 1595 | + "tests": 4, | ||||
| 1596 | + "passed": 4, | ||||
| 1597 | + "qualityScore": 100, | ||||
| 1598 | + "p50LatencyMs": 6627, | ||||
| 1599 | + "p50TtftMs": null, | ||||
| 1600 | + "totalCostUsd": 0.04662, | ||||
| 1601 | + "avgOutputTokens": 135, | ||||
| 1602 | + "perTest": { | ||||
| 1603 | + "basic": "pass", | ||||
| 1604 | + "reasoning": "pass", | ||||
| 1605 | + "json": "pass", | ||||
| 1606 | + "tools": "pass" | ||||
| 1607 | + }, | ||||
| 1608 | + "errors": [] | ||||
| 1609 | + } | ||||
| 1610 | + }, | ||||
| 1611 | + { | ||||
| 1612 | + "id": "gpt-4.1", | ||||
| 1613 | + "provider": "openai", | ||||
| 1614 | + "kind": "chat", | ||||
| 1615 | + "api": "responses", | ||||
| 1616 | + "available": true, | ||||
| 1617 | + "tested": true, | ||||
| 1618 | + "status": "verified", | ||||
| 1619 | + "capabilities": { | ||||
| 1620 | + "text": true, | ||||
| 1621 | + "vision": true, | ||||
| 1622 | + "tools": true, | ||||
| 1623 | + "structuredOutput": true, | ||||
| 1624 | + "streaming": true, | ||||
| 1625 | + "reasoning": true, | ||||
| 1626 | + "longContext": true, | ||||
| 1627 | + "audioInput": false, | ||||
| 1628 | + "audioOutput": false, | ||||
| 1629 | + "imageGeneration": false | ||||
| 1630 | + }, | ||||
| 1631 | + "pricing": { | ||||
| 1632 | + "input": 2, | ||||
| 1633 | + "cachedInput": 0.5, | ||||
| 1634 | + "output": 8 | ||||
| 1635 | + }, | ||||
| 1636 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1637 | + "benchmark": { | ||||
| 1638 | + "tests": 11, | ||||
| 1639 | + "passed": 10, | ||||
| 1640 | + "qualityScore": 89, | ||||
| 1641 | + "p50LatencyMs": 704, | ||||
| 1642 | + "p50TtftMs": 413, | ||||
| 1643 | + "totalCostUsd": 0.022567999999999998, | ||||
| 1644 | + "avgOutputTokens": 38, | ||||
| 1645 | + "perTest": { | ||||
| 1646 | + "basic": "pass", | ||||
| 1647 | + "reasoning": "pass", | ||||
| 1648 | + "math": "fail", | ||||
| 1649 | + "code": "pass", | ||||
| 1650 | + "french": "pass", | ||||
| 1651 | + "english": "pass", | ||||
| 1652 | + "json": "pass", | ||||
| 1653 | + "tools": "pass", | ||||
| 1654 | + "vision": "pass", | ||||
| 1655 | + "longctx": "pass", | ||||
| 1656 | + "streaming": "pass" | ||||
| 1657 | + }, | ||||
| 1658 | + "errors": [] | ||||
| 1659 | + } | ||||
| 1660 | + }, | ||||
| 1661 | + { | ||||
| 1662 | + "id": "gpt-4.1-mini", | ||||
| 1663 | + "provider": "openai", | ||||
| 1664 | + "kind": "chat", | ||||
| 1665 | + "api": "responses", | ||||
| 1666 | + "available": true, | ||||
| 1667 | + "tested": true, | ||||
| 1668 | + "status": "verified", | ||||
| 1669 | + "capabilities": { | ||||
| 1670 | + "text": true, | ||||
| 1671 | + "vision": true, | ||||
| 1672 | + "tools": true, | ||||
| 1673 | + "structuredOutput": true, | ||||
| 1674 | + "streaming": true, | ||||
| 1675 | + "reasoning": true, | ||||
| 1676 | + "longContext": true, | ||||
| 1677 | + "audioInput": false, | ||||
| 1678 | + "audioOutput": false, | ||||
| 1679 | + "imageGeneration": false | ||||
| 1680 | + }, | ||||
| 1681 | + "pricing": { | ||||
| 1682 | + "input": 0.4, | ||||
| 1683 | + "cachedInput": 0.1, | ||||
| 1684 | + "output": 1.6 | ||||
| 1685 | + }, | ||||
| 1686 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1687 | + "benchmark": { | ||||
| 1688 | + "tests": 11, | ||||
| 1689 | + "passed": 10, | ||||
| 1690 | + "qualityScore": 89, | ||||
| 1691 | + "p50LatencyMs": 897, | ||||
| 1692 | + "p50TtftMs": 343, | ||||
| 1693 | + "totalCostUsd": 0.0045772, | ||||
| 1694 | + "avgOutputTokens": 39, | ||||
| 1695 | + "perTest": { | ||||
| 1696 | + "basic": "pass", | ||||
| 1697 | + "reasoning": "pass", | ||||
| 1698 | + "math": "fail", | ||||
| 1699 | + "code": "pass", | ||||
| 1700 | + "french": "pass", | ||||
| 1701 | + "english": "pass", | ||||
| 1702 | + "json": "pass", | ||||
| 1703 | + "tools": "pass", | ||||
| 1704 | + "vision": "pass", | ||||
| 1705 | + "longctx": "pass", | ||||
| 1706 | + "streaming": "pass" | ||||
| 1707 | + }, | ||||
| 1708 | + "errors": [] | ||||
| 1709 | + } | ||||
| 1710 | + }, | ||||
| 1711 | + { | ||||
| 1712 | + "id": "gpt-5.1", | ||||
| 1713 | + "provider": "openai", | ||||
| 1714 | + "kind": "chat", | ||||
| 1715 | + "api": "responses", | ||||
| 1716 | + "available": true, | ||||
| 1717 | + "tested": true, | ||||
| 1718 | + "status": "verified", | ||||
| 1719 | + "capabilities": { | ||||
| 1720 | + "text": true, | ||||
| 1721 | + "vision": true, | ||||
| 1722 | + "tools": true, | ||||
| 1723 | + "structuredOutput": true, | ||||
| 1724 | + "streaming": true, | ||||
| 1725 | + "reasoning": true, | ||||
| 1726 | + "longContext": true, | ||||
| 1727 | + "audioInput": false, | ||||
| 1728 | + "audioOutput": false, | ||||
| 1729 | + "imageGeneration": false | ||||
| 1730 | + }, | ||||
| 1731 | + "pricing": { | ||||
| 1732 | + "input": 1.25, | ||||
| 1733 | + "cachedInput": 0.125, | ||||
| 1734 | + "output": 10 | ||||
| 1735 | + }, | ||||
| 1736 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1737 | + "benchmark": { | ||||
| 1738 | + "tests": 11, | ||||
| 1739 | + "passed": 10, | ||||
| 1740 | + "qualityScore": 89, | ||||
| 1741 | + "p50LatencyMs": 1084, | ||||
| 1742 | + "p50TtftMs": 610, | ||||
| 1743 | + "totalCostUsd": 0.017055, | ||||
| 1744 | + "avgOutputTokens": 46, | ||||
| 1745 | + "perTest": { | ||||
| 1746 | + "basic": "pass", | ||||
| 1747 | + "reasoning": "pass", | ||||
| 1748 | + "math": "fail", | ||||
| 1749 | + "code": "pass", | ||||
| 1750 | + "french": "pass", | ||||
| 1751 | + "english": "pass", | ||||
| 1752 | + "json": "pass", | ||||
| 1753 | + "tools": "pass", | ||||
| 1754 | + "vision": "pass", | ||||
| 1755 | + "longctx": "pass", | ||||
| 1756 | + "streaming": "pass" | ||||
| 1757 | + }, | ||||
| 1758 | + "errors": [] | ||||
| 1759 | + } | ||||
| 1760 | + }, | ||||
| 1761 | + { | ||||
| 1762 | + "id": "gpt-5.3-codex", | ||||
| 1763 | + "provider": "openai", | ||||
| 1764 | + "kind": "chat", | ||||
| 1765 | + "api": "responses", | ||||
| 1766 | + "available": true, | ||||
| 1767 | + "tested": true, | ||||
| 1768 | + "status": "verified", | ||||
| 1769 | + "capabilities": { | ||||
| 1770 | + "text": true, | ||||
| 1771 | + "vision": true, | ||||
| 1772 | + "tools": true, | ||||
| 1773 | + "structuredOutput": true, | ||||
| 1774 | + "streaming": true, | ||||
| 1775 | + "reasoning": false, | ||||
| 1776 | + "longContext": true, | ||||
| 1777 | + "audioInput": false, | ||||
| 1778 | + "audioOutput": false, | ||||
| 1779 | + "imageGeneration": false | ||||
| 1780 | + }, | ||||
| 1781 | + "pricing": { | ||||
| 1782 | + "input": 1.75, | ||||
| 1783 | + "cachedInput": 0.175, | ||||
| 1784 | + "output": 14 | ||||
| 1785 | + }, | ||||
| 1786 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1787 | + "benchmark": { | ||||
| 1788 | + "tests": 11, | ||||
| 1789 | + "passed": 10, | ||||
| 1790 | + "qualityScore": 89, | ||||
| 1791 | + "p50LatencyMs": 1209, | ||||
| 1792 | + "p50TtftMs": 545, | ||||
| 1793 | + "totalCostUsd": 0.022923249999999996, | ||||
| 1794 | + "avgOutputTokens": 39, | ||||
| 1795 | + "perTest": { | ||||
| 1796 | + "basic": "pass", | ||||
| 1797 | + "reasoning": "fail", | ||||
| 1798 | + "math": "pass", | ||||
| 1799 | + "code": "pass", | ||||
| 1800 | + "french": "pass", | ||||
| 1801 | + "english": "pass", | ||||
| 1802 | + "json": "pass", | ||||
| 1803 | + "tools": "pass", | ||||
| 1804 | + "vision": "pass", | ||||
| 1805 | + "longctx": "pass", | ||||
| 1806 | + "streaming": "pass" | ||||
| 1807 | + }, | ||||
| 1808 | + "errors": [] | ||||
| 1809 | + } | ||||
| 1810 | + }, | ||||
| 1811 | + { | ||||
| 1812 | + "id": "gpt-5.4", | ||||
| 1813 | + "provider": "openai", | ||||
| 1814 | + "kind": "chat", | ||||
| 1815 | + "api": "responses", | ||||
| 1816 | + "available": true, | ||||
| 1817 | + "tested": true, | ||||
| 1818 | + "status": "verified", | ||||
| 1819 | + "capabilities": { | ||||
| 1820 | + "text": true, | ||||
| 1821 | + "vision": true, | ||||
| 1822 | + "tools": true, | ||||
| 1823 | + "structuredOutput": true, | ||||
| 1824 | + "streaming": true, | ||||
| 1825 | + "reasoning": false, | ||||
| 1826 | + "longContext": true, | ||||
| 1827 | + "audioInput": false, | ||||
| 1828 | + "audioOutput": false, | ||||
| 1829 | + "imageGeneration": false | ||||
| 1830 | + }, | ||||
| 1831 | + "pricing": { | ||||
| 1832 | + "input": 2.5, | ||||
| 1833 | + "cachedInput": 0.25, | ||||
| 1834 | + "output": 15 | ||||
| 1835 | + }, | ||||
| 1836 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1837 | + "benchmark": { | ||||
| 1838 | + "tests": 11, | ||||
| 1839 | + "passed": 10, | ||||
| 1840 | + "qualityScore": 89, | ||||
| 1841 | + "p50LatencyMs": 1466, | ||||
| 1842 | + "p50TtftMs": 651, | ||||
| 1843 | + "totalCostUsd": 0.0304725, | ||||
| 1844 | + "avgOutputTokens": 38, | ||||
| 1845 | + "perTest": { | ||||
| 1846 | + "basic": "pass", | ||||
| 1847 | + "reasoning": "fail", | ||||
| 1848 | + "math": "pass", | ||||
| 1849 | + "code": "pass", | ||||
| 1850 | + "french": "pass", | ||||
| 1851 | + "english": "pass", | ||||
| 1852 | + "json": "pass", | ||||
| 1853 | + "tools": "pass", | ||||
| 1854 | + "vision": "pass", | ||||
| 1855 | + "longctx": "pass", | ||||
| 1856 | + "streaming": "pass" | ||||
| 1857 | + }, | ||||
| 1858 | + "errors": [] | ||||
| 1859 | + } | ||||
| 1860 | + }, | ||||
| 1861 | + { | ||||
| 1862 | + "id": "gpt-5.4-mini", | ||||
| 1863 | + "provider": "openai", | ||||
| 1864 | + "kind": "chat", | ||||
| 1865 | + "api": "responses", | ||||
| 1866 | + "available": true, | ||||
| 1867 | + "tested": true, | ||||
| 1868 | + "status": "verified", | ||||
| 1869 | + "capabilities": { | ||||
| 1870 | + "text": true, | ||||
| 1871 | + "vision": true, | ||||
| 1872 | + "tools": true, | ||||
| 1873 | + "structuredOutput": true, | ||||
| 1874 | + "streaming": true, | ||||
| 1875 | + "reasoning": true, | ||||
| 1876 | + "longContext": true, | ||||
| 1877 | + "audioInput": false, | ||||
| 1878 | + "audioOutput": false, | ||||
| 1879 | + "imageGeneration": false | ||||
| 1880 | + }, | ||||
| 1881 | + "pricing": { | ||||
| 1882 | + "input": 0.75, | ||||
| 1883 | + "cachedInput": 0.075, | ||||
| 1884 | + "output": 4.5 | ||||
| 1885 | + }, | ||||
| 1886 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1887 | + "benchmark": { | ||||
| 1888 | + "tests": 11, | ||||
| 1889 | + "passed": 10, | ||||
| 1890 | + "qualityScore": 89, | ||||
| 1891 | + "p50LatencyMs": 888, | ||||
| 1892 | + "p50TtftMs": 458, | ||||
| 1893 | + "totalCostUsd": 0.00921375, | ||||
| 1894 | + "avgOutputTokens": 40, | ||||
| 1895 | + "perTest": { | ||||
| 1896 | + "basic": "pass", | ||||
| 1897 | + "reasoning": "pass", | ||||
| 1898 | + "math": "fail", | ||||
| 1899 | + "code": "pass", | ||||
| 1900 | + "french": "pass", | ||||
| 1901 | + "english": "pass", | ||||
| 1902 | + "json": "pass", | ||||
| 1903 | + "tools": "pass", | ||||
| 1904 | + "vision": "pass", | ||||
| 1905 | + "longctx": "pass", | ||||
| 1906 | + "streaming": "pass" | ||||
| 1907 | + }, | ||||
| 1908 | + "errors": [] | ||||
| 1909 | + } | ||||
| 1910 | + }, | ||||
| 1911 | + { | ||||
| 1912 | + "id": "gpt-5.6-terra", | ||||
| 1913 | + "provider": "openai", | ||||
| 1914 | + "kind": "chat", | ||||
| 1915 | + "api": "responses", | ||||
| 1916 | + "available": true, | ||||
| 1917 | + "tested": true, | ||||
| 1918 | + "status": "verified", | ||||
| 1919 | + "capabilities": { | ||||
| 1920 | + "text": true, | ||||
| 1921 | + "vision": true, | ||||
| 1922 | + "tools": true, | ||||
| 1923 | + "structuredOutput": true, | ||||
| 1924 | + "streaming": true, | ||||
| 1925 | + "reasoning": true, | ||||
| 1926 | + "longContext": false, | ||||
| 1927 | + "audioInput": false, | ||||
| 1928 | + "audioOutput": false, | ||||
| 1929 | + "imageGeneration": false | ||||
| 1930 | + }, | ||||
| 1931 | + "pricing": { | ||||
| 1932 | + "input": 2, | ||||
| 1933 | + "cachedInput": 0.2, | ||||
| 1934 | + "output": 12 | ||||
| 1935 | + }, | ||||
| 1936 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1937 | + "benchmark": { | ||||
| 1938 | + "tests": 11, | ||||
| 1939 | + "passed": 10, | ||||
| 1940 | + "qualityScore": 89, | ||||
| 1941 | + "p50LatencyMs": 1214, | ||||
| 1942 | + "p50TtftMs": 611, | ||||
| 1943 | + "totalCostUsd": 0.025602, | ||||
| 1944 | + "avgOutputTokens": 47, | ||||
| 1945 | + "perTest": { | ||||
| 1946 | + "basic": "pass", | ||||
| 1947 | + "reasoning": "pass", | ||||
| 1948 | + "math": "pass", | ||||
| 1949 | + "code": "pass", | ||||
| 1950 | + "french": "pass", | ||||
| 1951 | + "english": "pass", | ||||
| 1952 | + "json": "pass", | ||||
| 1953 | + "tools": "pass", | ||||
| 1954 | + "vision": "pass", | ||||
| 1955 | + "longctx": "fail", | ||||
| 1956 | + "streaming": "pass" | ||||
| 1957 | + }, | ||||
| 1958 | + "errors": [] | ||||
| 1959 | + } | ||||
| 1960 | + }, | ||||
| 1961 | + { | ||||
| 1962 | + "id": "gpt-4o", | ||||
| 1963 | + "provider": "openai", | ||||
| 1964 | + "kind": "chat", | ||||
| 1965 | + "api": "responses", | ||||
| 1966 | + "available": true, | ||||
| 1967 | + "tested": true, | ||||
| 1968 | + "status": "verified", | ||||
| 1969 | + "capabilities": { | ||||
| 1970 | + "text": true, | ||||
| 1971 | + "vision": true, | ||||
| 1972 | + "tools": true, | ||||
| 1973 | + "structuredOutput": true, | ||||
| 1974 | + "streaming": true, | ||||
| 1975 | + "reasoning": false, | ||||
| 1976 | + "longContext": true, | ||||
| 1977 | + "audioInput": false, | ||||
| 1978 | + "audioOutput": false, | ||||
| 1979 | + "imageGeneration": false | ||||
| 1980 | + }, | ||||
| 1981 | + "pricing": { | ||||
| 1982 | + "input": 2.5, | ||||
| 1983 | + "cachedInput": 1.25, | ||||
| 1984 | + "output": 10 | ||||
| 1985 | + }, | ||||
| 1986 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 1987 | + "benchmark": { | ||||
| 1988 | + "tests": 11, | ||||
| 1989 | + "passed": 9, | ||||
| 1990 | + "qualityScore": 78, | ||||
| 1991 | + "p50LatencyMs": 1049, | ||||
| 1992 | + "p50TtftMs": 457, | ||||
| 1993 | + "totalCostUsd": 0.02777, | ||||
| 1994 | + "avgOutputTokens": 34, | ||||
| 1995 | + "perTest": { | ||||
| 1996 | + "basic": "pass", | ||||
| 1997 | + "reasoning": "fail", | ||||
| 1998 | + "math": "fail", | ||||
| 1999 | + "code": "pass", | ||||
| 2000 | + "french": "pass", | ||||
| 2001 | + "english": "pass", | ||||
| 2002 | + "json": "pass", | ||||
| 2003 | + "tools": "pass", | ||||
| 2004 | + "vision": "pass", | ||||
| 2005 | + "longctx": "pass", | ||||
| 2006 | + "streaming": "pass" | ||||
| 2007 | + }, | ||||
| 2008 | + "errors": [] | ||||
| 2009 | + } | ||||
| 2010 | + }, | ||||
| 2011 | + { | ||||
| 2012 | + "id": "gpt-4o-mini", | ||||
| 2013 | + "provider": "openai", | ||||
| 2014 | + "kind": "chat", | ||||
| 2015 | + "api": "responses", | ||||
| 2016 | + "available": true, | ||||
| 2017 | + "tested": true, | ||||
| 2018 | + "status": "verified", | ||||
| 2019 | + "capabilities": { | ||||
| 2020 | + "text": true, | ||||
| 2021 | + "vision": true, | ||||
| 2022 | + "tools": true, | ||||
| 2023 | + "structuredOutput": true, | ||||
| 2024 | + "streaming": true, | ||||
| 2025 | + "reasoning": false, | ||||
| 2026 | + "longContext": true, | ||||
| 2027 | + "audioInput": false, | ||||
| 2028 | + "audioOutput": false, | ||||
| 2029 | + "imageGeneration": false | ||||
| 2030 | + }, | ||||
| 2031 | + "pricing": { | ||||
| 2032 | + "input": 0.15, | ||||
| 2033 | + "cachedInput": 0.075, | ||||
| 2034 | + "output": 0.6 | ||||
| 2035 | + }, | ||||
| 2036 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2037 | + "benchmark": { | ||||
| 2038 | + "tests": 11, | ||||
| 2039 | + "passed": 9, | ||||
| 2040 | + "qualityScore": 78, | ||||
| 2041 | + "p50LatencyMs": 893, | ||||
| 2042 | + "p50TtftMs": 482, | ||||
| 2043 | + "totalCostUsd": 0.0020663999999999995, | ||||
| 2044 | + "avgOutputTokens": 32, | ||||
| 2045 | + "perTest": { | ||||
| 2046 | + "basic": "pass", | ||||
| 2047 | + "reasoning": "fail", | ||||
| 2048 | + "math": "fail", | ||||
| 2049 | + "code": "pass", | ||||
| 2050 | + "french": "pass", | ||||
| 2051 | + "english": "pass", | ||||
| 2052 | + "json": "pass", | ||||
| 2053 | + "tools": "pass", | ||||
| 2054 | + "vision": "pass", | ||||
| 2055 | + "longctx": "pass", | ||||
| 2056 | + "streaming": "pass" | ||||
| 2057 | + }, | ||||
| 2058 | + "errors": [] | ||||
| 2059 | + } | ||||
| 2060 | + }, | ||||
| 2061 | + { | ||||
| 2062 | + "id": "gpt-5.2", | ||||
| 2063 | + "provider": "openai", | ||||
| 2064 | + "kind": "chat", | ||||
| 2065 | + "api": "responses", | ||||
| 2066 | + "available": true, | ||||
| 2067 | + "tested": true, | ||||
| 2068 | + "status": "verified", | ||||
| 2069 | + "capabilities": { | ||||
| 2070 | + "text": true, | ||||
| 2071 | + "vision": true, | ||||
| 2072 | + "tools": true, | ||||
| 2073 | + "structuredOutput": true, | ||||
| 2074 | + "streaming": true, | ||||
| 2075 | + "reasoning": false, | ||||
| 2076 | + "longContext": false, | ||||
| 2077 | + "audioInput": false, | ||||
| 2078 | + "audioOutput": false, | ||||
| 2079 | + "imageGeneration": false | ||||
| 2080 | + }, | ||||
| 2081 | + "pricing": { | ||||
| 2082 | + "input": 1.75, | ||||
| 2083 | + "cachedInput": 0.175, | ||||
| 2084 | + "output": 14 | ||||
| 2085 | + }, | ||||
| 2086 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2087 | + "benchmark": { | ||||
| 2088 | + "tests": 11, | ||||
| 2089 | + "passed": 9, | ||||
| 2090 | + "qualityScore": 78, | ||||
| 2091 | + "p50LatencyMs": 1506, | ||||
| 2092 | + "p50TtftMs": 529, | ||||
| 2093 | + "totalCostUsd": 0.02313325, | ||||
| 2094 | + "avgOutputTokens": 40, | ||||
| 2095 | + "perTest": { | ||||
| 2096 | + "basic": "pass", | ||||
| 2097 | + "reasoning": "fail", | ||||
| 2098 | + "math": "pass", | ||||
| 2099 | + "code": "pass", | ||||
| 2100 | + "french": "pass", | ||||
| 2101 | + "english": "pass", | ||||
| 2102 | + "json": "pass", | ||||
| 2103 | + "tools": "pass", | ||||
| 2104 | + "vision": "pass", | ||||
| 2105 | + "longctx": "fail", | ||||
| 2106 | + "streaming": "pass" | ||||
| 2107 | + }, | ||||
| 2108 | + "errors": [] | ||||
| 2109 | + } | ||||
| 2110 | + }, | ||||
| 2111 | + { | ||||
| 2112 | + "id": "gpt-5.4-nano", | ||||
| 2113 | + "provider": "openai", | ||||
| 2114 | + "kind": "chat", | ||||
| 2115 | + "api": "responses", | ||||
| 2116 | + "available": true, | ||||
| 2117 | + "tested": true, | ||||
| 2118 | + "status": "verified", | ||||
| 2119 | + "capabilities": { | ||||
| 2120 | + "text": true, | ||||
| 2121 | + "vision": true, | ||||
| 2122 | + "tools": true, | ||||
| 2123 | + "structuredOutput": true, | ||||
| 2124 | + "streaming": true, | ||||
| 2125 | + "reasoning": false, | ||||
| 2126 | + "longContext": true, | ||||
| 2127 | + "audioInput": false, | ||||
| 2128 | + "audioOutput": false, | ||||
| 2129 | + "imageGeneration": false | ||||
| 2130 | + }, | ||||
| 2131 | + "pricing": { | ||||
| 2132 | + "input": 0.2, | ||||
| 2133 | + "cachedInput": 0.02, | ||||
| 2134 | + "output": 1.25 | ||||
| 2135 | + }, | ||||
| 2136 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2137 | + "benchmark": { | ||||
| 2138 | + "tests": 11, | ||||
| 2139 | + "passed": 9, | ||||
| 2140 | + "qualityScore": 78, | ||||
| 2141 | + "p50LatencyMs": 969, | ||||
| 2142 | + "p50TtftMs": 541, | ||||
| 2143 | + "totalCostUsd": 0.00252875, | ||||
| 2144 | + "avgOutputTokens": 43, | ||||
| 2145 | + "perTest": { | ||||
| 2146 | + "basic": "pass", | ||||
| 2147 | + "reasoning": "fail", | ||||
| 2148 | + "math": "fail", | ||||
| 2149 | + "code": "pass", | ||||
| 2150 | + "french": "pass", | ||||
| 2151 | + "english": "pass", | ||||
| 2152 | + "json": "pass", | ||||
| 2153 | + "tools": "pass", | ||||
| 2154 | + "vision": "pass", | ||||
| 2155 | + "longctx": "pass", | ||||
| 2156 | + "streaming": "pass" | ||||
| 2157 | + }, | ||||
| 2158 | + "errors": [] | ||||
| 2159 | + } | ||||
| 2160 | + }, | ||||
| 2161 | + { | ||||
| 2162 | + "id": "gpt-5-search-api", | ||||
| 2163 | + "provider": "openai", | ||||
| 2164 | + "kind": "search", | ||||
| 2165 | + "api": "chat", | ||||
| 2166 | + "available": true, | ||||
| 2167 | + "tested": true, | ||||
| 2168 | + "status": "verified", | ||||
| 2169 | + "capabilities": { | ||||
| 2170 | + "text": true, | ||||
| 2171 | + "vision": false, | ||||
| 2172 | + "tools": false, | ||||
| 2173 | + "structuredOutput": true, | ||||
| 2174 | + "streaming": true, | ||||
| 2175 | + "reasoning": true, | ||||
| 2176 | + "longContext": true, | ||||
| 2177 | + "audioInput": false, | ||||
| 2178 | + "audioOutput": false, | ||||
| 2179 | + "imageGeneration": false | ||||
| 2180 | + }, | ||||
| 2181 | + "pricing": { | ||||
| 2182 | + "input": 1.25, | ||||
| 2183 | + "cachedInput": 0.125, | ||||
| 2184 | + "output": 10 | ||||
| 2185 | + }, | ||||
| 2186 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2187 | + "benchmark": { | ||||
| 2188 | + "tests": 11, | ||||
| 2189 | + "passed": 8, | ||||
| 2190 | + "qualityScore": 67, | ||||
| 2191 | + "p50LatencyMs": 1707, | ||||
| 2192 | + "p50TtftMs": 1073, | ||||
| 2193 | + "totalCostUsd": 0.070686, | ||||
| 2194 | + "avgOutputTokens": 65, | ||||
| 2195 | + "perTest": { | ||||
| 2196 | + "basic": "pass", | ||||
| 2197 | + "reasoning": "pass", | ||||
| 2198 | + "math": "fail", | ||||
| 2199 | + "code": "pass", | ||||
| 2200 | + "french": "pass", | ||||
| 2201 | + "english": "pass", | ||||
| 2202 | + "json": "pass", | ||||
| 2203 | + "tools": "error", | ||||
| 2204 | + "vision": "fail", | ||||
| 2205 | + "longctx": "pass", | ||||
| 2206 | + "streaming": "pass" | ||||
| 2207 | + }, | ||||
| 2208 | + "errors": [ | ||||
| 2209 | + "tools: 404 404 tools is not supported in this model. For a list of supported models, refer to https://platform.openai.com/docs/guides/function-call" | ||||
| 2210 | + ] | ||||
| 2211 | + } | ||||
| 2212 | + }, | ||||
| 2213 | + { | ||||
| 2214 | + "id": "babbage-002", | ||||
| 2215 | + "provider": "openai", | ||||
| 2216 | + "kind": "legacy-completion", | ||||
| 2217 | + "available": false, | ||||
| 2218 | + "tested": false, | ||||
| 2219 | + "status": "unsupported", | ||||
| 2220 | + "capabilities": {}, | ||||
| 2221 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2222 | + "unavailableReason": "Legacy completions endpoint — not used by this app" | ||||
| 2223 | + }, | ||||
| 2224 | + { | ||||
| 2225 | + "id": "chatgpt-image-latest", | ||||
| 2226 | + "provider": "openai", | ||||
| 2227 | + "kind": "image", | ||||
| 2228 | + "available": true, | ||||
| 2229 | + "tested": true, | ||||
| 2230 | + "status": "verified", | ||||
| 2231 | + "capabilities": { | ||||
| 2232 | + "text": false, | ||||
| 2233 | + "vision": false, | ||||
| 2234 | + "tools": false, | ||||
| 2235 | + "structuredOutput": false, | ||||
| 2236 | + "streaming": false, | ||||
| 2237 | + "reasoning": false, | ||||
| 2238 | + "longContext": false, | ||||
| 2239 | + "imageGeneration": true, | ||||
| 2240 | + "audioOutput": false, | ||||
| 2241 | + "audioInput": false | ||||
| 2242 | + }, | ||||
| 2243 | + "pricing": { | ||||
| 2244 | + "imageInput": 8, | ||||
| 2245 | + "imageCachedInput": 2, | ||||
| 2246 | + "imageOutput": 32, | ||||
| 2247 | + "input": 5, | ||||
| 2248 | + "cachedInput": 1.25, | ||||
| 2249 | + "output": 10, | ||||
| 2250 | + "unit": "image tokens / text tokens" | ||||
| 2251 | + }, | ||||
| 2252 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2253 | + "benchmark": { | ||||
| 2254 | + "tests": 1, | ||||
| 2255 | + "passed": 1, | ||||
| 2256 | + "qualityScore": null, | ||||
| 2257 | + "p50LatencyMs": 5382, | ||||
| 2258 | + "p50TtftMs": null, | ||||
| 2259 | + "totalCostUsd": 0, | ||||
| 2260 | + "avgOutputTokens": null, | ||||
| 2261 | + "perTest": { | ||||
| 2262 | + "image": "pass" | ||||
| 2263 | + }, | ||||
| 2264 | + "errors": [] | ||||
| 2265 | + } | ||||
| 2266 | + }, | ||||
| 2267 | + { | ||||
| 2268 | + "id": "davinci-002", | ||||
| 2269 | + "provider": "openai", | ||||
| 2270 | + "kind": "legacy-completion", | ||||
| 2271 | + "available": false, | ||||
| 2272 | + "tested": false, | ||||
| 2273 | + "status": "unsupported", | ||||
| 2274 | + "capabilities": {}, | ||||
| 2275 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2276 | + "unavailableReason": "Legacy completions endpoint — not used by this app" | ||||
| 2277 | + }, | ||||
| 2278 | + { | ||||
| 2279 | + "id": "gpt-3.5-turbo", | ||||
| 2280 | + "provider": "openai", | ||||
| 2281 | + "kind": "chat", | ||||
| 2282 | + "available": false, | ||||
| 2283 | + "tested": false, | ||||
| 2284 | + "status": "unavailable", | ||||
| 2285 | + "capabilities": {}, | ||||
| 2286 | + "pricing": { | ||||
| 2287 | + "input": 0.5, | ||||
| 2288 | + "output": 1.5 | ||||
| 2289 | + }, | ||||
| 2290 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2291 | + "unavailableReason": "The model `gpt-3.5-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2292 | + }, | ||||
| 2293 | + { | ||||
| 2294 | + "id": "gpt-3.5-turbo-instruct", | ||||
| 2295 | + "provider": "openai", | ||||
| 2296 | + "kind": "legacy-completion", | ||||
| 2297 | + "available": false, | ||||
| 2298 | + "tested": false, | ||||
| 2299 | + "status": "unsupported", | ||||
| 2300 | + "capabilities": {}, | ||||
| 2301 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2302 | + "unavailableReason": "Legacy completions endpoint — not used by this app" | ||||
| 2303 | + }, | ||||
| 2304 | + { | ||||
| 2305 | + "id": "gpt-3.5-turbo-instruct-0914", | ||||
| 2306 | + "provider": "openai", | ||||
| 2307 | + "kind": "legacy-completion", | ||||
| 2308 | + "available": false, | ||||
| 2309 | + "tested": false, | ||||
| 2310 | + "status": "unsupported", | ||||
| 2311 | + "capabilities": {}, | ||||
| 2312 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2313 | + "unavailableReason": "Legacy completions endpoint — not used by this app" | ||||
| 2314 | + }, | ||||
| 2315 | + { | ||||
| 2316 | + "id": "gpt-4", | ||||
| 2317 | + "provider": "openai", | ||||
| 2318 | + "kind": "chat", | ||||
| 2319 | + "available": false, | ||||
| 2320 | + "tested": false, | ||||
| 2321 | + "status": "unavailable", | ||||
| 2322 | + "capabilities": {}, | ||||
| 2323 | + "pricing": { | ||||
| 2324 | + "input": 30, | ||||
| 2325 | + "output": 60, | ||||
| 2326 | + "notes": "listed as gpt-4-0613" | ||||
| 2327 | + }, | ||||
| 2328 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2329 | + "unavailableReason": "The model `gpt-4` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2330 | + }, | ||||
| 2331 | + { | ||||
| 2332 | + "id": "gpt-4-turbo", | ||||
| 2333 | + "provider": "openai", | ||||
| 2334 | + "kind": "chat", | ||||
| 2335 | + "available": false, | ||||
| 2336 | + "tested": false, | ||||
| 2337 | + "status": "unavailable", | ||||
| 2338 | + "capabilities": {}, | ||||
| 2339 | + "pricing": { | ||||
| 2340 | + "input": 10, | ||||
| 2341 | + "output": 30, | ||||
| 2342 | + "notes": "listed as gpt-4-turbo-2024-04-09" | ||||
| 2343 | + }, | ||||
| 2344 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2345 | + "unavailableReason": "The model `gpt-4-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2346 | + }, | ||||
| 2347 | + { | ||||
| 2348 | + "id": "gpt-4.1-nano", | ||||
| 2349 | + "provider": "openai", | ||||
| 2350 | + "kind": "chat", | ||||
| 2351 | + "available": false, | ||||
| 2352 | + "tested": false, | ||||
| 2353 | + "status": "unavailable", | ||||
| 2354 | + "capabilities": {}, | ||||
| 2355 | + "pricing": { | ||||
| 2356 | + "input": 0.1, | ||||
| 2357 | + "cachedInput": 0.025, | ||||
| 2358 | + "output": 0.4 | ||||
| 2359 | + }, | ||||
| 2360 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2361 | + "unavailableReason": "The model `gpt-4.1-nano` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2362 | + }, | ||||
| 2363 | + { | ||||
| 2364 | + "id": "gpt-4o-mini-search-preview", | ||||
| 2365 | + "provider": "openai", | ||||
| 2366 | + "kind": "search", | ||||
| 2367 | + "available": false, | ||||
| 2368 | + "tested": false, | ||||
| 2369 | + "status": "unavailable", | ||||
| 2370 | + "capabilities": {}, | ||||
| 2371 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2372 | + "unavailableReason": "The model `gpt-4o-mini-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2373 | + }, | ||||
| 2374 | + { | ||||
| 2375 | + "id": "gpt-4o-mini-transcribe", | ||||
| 2376 | + "provider": "openai", | ||||
| 2377 | + "kind": "stt", | ||||
| 2378 | + "available": true, | ||||
| 2379 | + "tested": true, | ||||
| 2380 | + "status": "verified", | ||||
| 2381 | + "capabilities": { | ||||
| 2382 | + "text": false, | ||||
| 2383 | + "vision": false, | ||||
| 2384 | + "tools": false, | ||||
| 2385 | + "structuredOutput": false, | ||||
| 2386 | + "streaming": false, | ||||
| 2387 | + "reasoning": false, | ||||
| 2388 | + "longContext": false, | ||||
| 2389 | + "imageGeneration": false, | ||||
| 2390 | + "audioOutput": false, | ||||
| 2391 | + "audioInput": true | ||||
| 2392 | + }, | ||||
| 2393 | + "pricing": { | ||||
| 2394 | + "audioInput": 1.25, | ||||
| 2395 | + "output": 5, | ||||
| 2396 | + "perMinute": 0.003 | ||||
| 2397 | + }, | ||||
| 2398 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2399 | + "benchmark": { | ||||
| 2400 | + "tests": 1, | ||||
| 2401 | + "passed": 1, | ||||
| 2402 | + "qualityScore": null, | ||||
| 2403 | + "p50LatencyMs": 412, | ||||
| 2404 | + "p50TtftMs": null, | ||||
| 2405 | + "totalCostUsd": 0, | ||||
| 2406 | + "avgOutputTokens": null, | ||||
| 2407 | + "perTest": { | ||||
| 2408 | + "stt": "pass" | ||||
| 2409 | + }, | ||||
| 2410 | + "errors": [] | ||||
| 2411 | + } | ||||
| 2412 | + }, | ||||
| 2413 | + { | ||||
| 2414 | + "id": "gpt-4o-mini-tts", | ||||
| 2415 | + "provider": "openai", | ||||
| 2416 | + "kind": "tts", | ||||
| 2417 | + "available": true, | ||||
| 2418 | + "tested": true, | ||||
| 2419 | + "status": "verified", | ||||
| 2420 | + "capabilities": { | ||||
| 2421 | + "text": false, | ||||
| 2422 | + "vision": false, | ||||
| 2423 | + "tools": false, | ||||
| 2424 | + "structuredOutput": false, | ||||
| 2425 | + "streaming": false, | ||||
| 2426 | + "reasoning": false, | ||||
| 2427 | + "longContext": false, | ||||
| 2428 | + "imageGeneration": false, | ||||
| 2429 | + "audioOutput": true, | ||||
| 2430 | + "audioInput": false | ||||
| 2431 | + }, | ||||
| 2432 | + "pricing": { | ||||
| 2433 | + "input": 0.6, | ||||
| 2434 | + "audioOutput": 12, | ||||
| 2435 | + "notes": "~$0.015 per minute" | ||||
| 2436 | + }, | ||||
| 2437 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2438 | + "benchmark": { | ||||
| 2439 | + "tests": 1, | ||||
| 2440 | + "passed": 1, | ||||
| 2441 | + "qualityScore": null, | ||||
| 2442 | + "p50LatencyMs": 542, | ||||
| 2443 | + "p50TtftMs": null, | ||||
| 2444 | + "totalCostUsd": 0, | ||||
| 2445 | + "avgOutputTokens": null, | ||||
| 2446 | + "perTest": { | ||||
| 2447 | + "tts": "pass" | ||||
| 2448 | + }, | ||||
| 2449 | + "errors": [] | ||||
| 2450 | + } | ||||
| 2451 | + }, | ||||
| 2452 | + { | ||||
| 2453 | + "id": "gpt-4o-search-preview", | ||||
| 2454 | + "provider": "openai", | ||||
| 2455 | + "kind": "search", | ||||
| 2456 | + "available": false, | ||||
| 2457 | + "tested": false, | ||||
| 2458 | + "status": "unavailable", | ||||
| 2459 | + "capabilities": {}, | ||||
| 2460 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2461 | + "unavailableReason": "The model `gpt-4o-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2462 | + }, | ||||
| 2463 | + { | ||||
| 2464 | + "id": "gpt-4o-transcribe", | ||||
| 2465 | + "provider": "openai", | ||||
| 2466 | + "kind": "stt", | ||||
| 2467 | + "available": true, | ||||
| 2468 | + "tested": true, | ||||
| 2469 | + "status": "verified", | ||||
| 2470 | + "capabilities": { | ||||
| 2471 | + "text": false, | ||||
| 2472 | + "vision": false, | ||||
| 2473 | + "tools": false, | ||||
| 2474 | + "structuredOutput": false, | ||||
| 2475 | + "streaming": false, | ||||
| 2476 | + "reasoning": false, | ||||
| 2477 | + "longContext": false, | ||||
| 2478 | + "imageGeneration": false, | ||||
| 2479 | + "audioOutput": false, | ||||
| 2480 | + "audioInput": true | ||||
| 2481 | + }, | ||||
| 2482 | + "pricing": { | ||||
| 2483 | + "audioInput": 2.5, | ||||
| 2484 | + "output": 10, | ||||
| 2485 | + "perMinute": 0.006 | ||||
| 2486 | + }, | ||||
| 2487 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2488 | + "benchmark": { | ||||
| 2489 | + "tests": 1, | ||||
| 2490 | + "passed": 1, | ||||
| 2491 | + "qualityScore": null, | ||||
| 2492 | + "p50LatencyMs": 625, | ||||
| 2493 | + "p50TtftMs": null, | ||||
| 2494 | + "totalCostUsd": 0, | ||||
| 2495 | + "avgOutputTokens": null, | ||||
| 2496 | + "perTest": { | ||||
| 2497 | + "stt": "pass" | ||||
| 2498 | + }, | ||||
| 2499 | + "errors": [] | ||||
| 2500 | + } | ||||
| 2501 | + }, | ||||
| 2502 | + { | ||||
| 2503 | + "id": "gpt-4o-transcribe-diarize", | ||||
| 2504 | + "provider": "openai", | ||||
| 2505 | + "kind": "stt", | ||||
| 2506 | + "available": true, | ||||
| 2507 | + "tested": true, | ||||
| 2508 | + "status": "verified", | ||||
| 2509 | + "capabilities": { | ||||
| 2510 | + "text": false, | ||||
| 2511 | + "vision": false, | ||||
| 2512 | + "tools": false, | ||||
| 2513 | + "structuredOutput": false, | ||||
| 2514 | + "streaming": false, | ||||
| 2515 | + "reasoning": false, | ||||
| 2516 | + "longContext": false, | ||||
| 2517 | + "imageGeneration": false, | ||||
| 2518 | + "audioOutput": false, | ||||
| 2519 | + "audioInput": true | ||||
| 2520 | + }, | ||||
| 2521 | + "pricing": { | ||||
| 2522 | + "audioInput": 2.5, | ||||
| 2523 | + "output": 10, | ||||
| 2524 | + "perMinute": 0.006 | ||||
| 2525 | + }, | ||||
| 2526 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2527 | + "benchmark": { | ||||
| 2528 | + "tests": 1, | ||||
| 2529 | + "passed": 1, | ||||
| 2530 | + "qualityScore": null, | ||||
| 2531 | + "p50LatencyMs": 2799, | ||||
| 2532 | + "p50TtftMs": null, | ||||
| 2533 | + "totalCostUsd": 0, | ||||
| 2534 | + "avgOutputTokens": null, | ||||
| 2535 | + "perTest": { | ||||
| 2536 | + "stt": "pass" | ||||
| 2537 | + }, | ||||
| 2538 | + "errors": [] | ||||
| 2539 | + } | ||||
| 2540 | + }, | ||||
| 2541 | + { | ||||
| 2542 | + "id": "gpt-5-chat-latest", | ||||
| 2543 | + "provider": "openai", | ||||
| 2544 | + "kind": "chat", | ||||
| 2545 | + "available": false, | ||||
| 2546 | + "tested": false, | ||||
| 2547 | + "status": "unavailable", | ||||
| 2548 | + "capabilities": {}, | ||||
| 2549 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2550 | + "unavailableReason": "The model `gpt-5-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2551 | + }, | ||||
| 2552 | + { | ||||
| 2553 | + "id": "gpt-5-codex", | ||||
| 2554 | + "provider": "openai", | ||||
| 2555 | + "kind": "chat", | ||||
| 2556 | + "available": false, | ||||
| 2557 | + "tested": false, | ||||
| 2558 | + "status": "unavailable", | ||||
| 2559 | + "capabilities": {}, | ||||
| 2560 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2561 | + "unavailableReason": "The model `gpt-5-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2562 | + }, | ||||
| 2563 | + { | ||||
| 2564 | + "id": "gpt-5.1-chat-latest", | ||||
| 2565 | + "provider": "openai", | ||||
| 2566 | + "kind": "chat", | ||||
| 2567 | + "available": false, | ||||
| 2568 | + "tested": false, | ||||
| 2569 | + "status": "unavailable", | ||||
| 2570 | + "capabilities": {}, | ||||
| 2571 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2572 | + "unavailableReason": "The model `gpt-5.1-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2573 | + }, | ||||
| 2574 | + { | ||||
| 2575 | + "id": "gpt-5.1-codex", | ||||
| 2576 | + "provider": "openai", | ||||
| 2577 | + "kind": "chat", | ||||
| 2578 | + "available": false, | ||||
| 2579 | + "tested": false, | ||||
| 2580 | + "status": "unavailable", | ||||
| 2581 | + "capabilities": {}, | ||||
| 2582 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2583 | + "unavailableReason": "The model `gpt-5.1-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2584 | + }, | ||||
| 2585 | + { | ||||
| 2586 | + "id": "gpt-5.1-codex-max", | ||||
| 2587 | + "provider": "openai", | ||||
| 2588 | + "kind": "chat", | ||||
| 2589 | + "available": false, | ||||
| 2590 | + "tested": false, | ||||
| 2591 | + "status": "unavailable", | ||||
| 2592 | + "capabilities": {}, | ||||
| 2593 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2594 | + "unavailableReason": "The model `gpt-5.1-codex-max` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2595 | + }, | ||||
| 2596 | + { | ||||
| 2597 | + "id": "gpt-5.1-codex-mini", | ||||
| 2598 | + "provider": "openai", | ||||
| 2599 | + "kind": "chat", | ||||
| 2600 | + "available": false, | ||||
| 2601 | + "tested": false, | ||||
| 2602 | + "status": "unavailable", | ||||
| 2603 | + "capabilities": {}, | ||||
| 2604 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2605 | + "unavailableReason": "The model `gpt-5.1-codex-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2606 | + }, | ||||
| 2607 | + { | ||||
| 2608 | + "id": "gpt-5.2-chat-latest", | ||||
| 2609 | + "provider": "openai", | ||||
| 2610 | + "kind": "chat", | ||||
| 2611 | + "available": false, | ||||
| 2612 | + "tested": false, | ||||
| 2613 | + "status": "unavailable", | ||||
| 2614 | + "capabilities": {}, | ||||
| 2615 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2616 | + "unavailableReason": "The model `gpt-5.2-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2617 | + }, | ||||
| 2618 | + { | ||||
| 2619 | + "id": "gpt-5.2-codex", | ||||
| 2620 | + "provider": "openai", | ||||
| 2621 | + "kind": "chat", | ||||
| 2622 | + "available": false, | ||||
| 2623 | + "tested": false, | ||||
| 2624 | + "status": "unavailable", | ||||
| 2625 | + "capabilities": {}, | ||||
| 2626 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2627 | + "unavailableReason": "The model `gpt-5.2-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2628 | + }, | ||||
| 2629 | + { | ||||
| 2630 | + "id": "gpt-5.3-chat-latest", | ||||
| 2631 | + "provider": "openai", | ||||
| 2632 | + "kind": "chat", | ||||
| 2633 | + "available": false, | ||||
| 2634 | + "tested": false, | ||||
| 2635 | + "status": "unavailable", | ||||
| 2636 | + "capabilities": {}, | ||||
| 2637 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2638 | + "unavailableReason": "The model `gpt-5.3-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2639 | + }, | ||||
| 2640 | + { | ||||
| 2641 | + "id": "gpt-audio", | ||||
| 2642 | + "provider": "openai", | ||||
| 2643 | + "kind": "audio-chat", | ||||
| 2644 | + "available": false, | ||||
| 2645 | + "tested": true, | ||||
| 2646 | + "status": "unavailable", | ||||
| 2647 | + "capabilities": { | ||||
| 2648 | + "text": false, | ||||
| 2649 | + "vision": false, | ||||
| 2650 | + "tools": false, | ||||
| 2651 | + "structuredOutput": false, | ||||
| 2652 | + "streaming": false, | ||||
| 2653 | + "reasoning": false, | ||||
| 2654 | + "longContext": false, | ||||
| 2655 | + "imageGeneration": false, | ||||
| 2656 | + "audioOutput": false, | ||||
| 2657 | + "audioInput": "unknown" | ||||
| 2658 | + }, | ||||
| 2659 | + "pricing": { | ||||
| 2660 | + "audioInput": 32, | ||||
| 2661 | + "audioOutput": 64, | ||||
| 2662 | + "input": 2.5, | ||||
| 2663 | + "output": 10 | ||||
| 2664 | + }, | ||||
| 2665 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2666 | + "unavailableReason": "400 400 This model requires that either input content or output modality contain audio.", | ||||
| 2667 | + "benchmark": { | ||||
| 2668 | + "tests": 1, | ||||
| 2669 | + "passed": 0, | ||||
| 2670 | + "qualityScore": null, | ||||
| 2671 | + "p50LatencyMs": 122, | ||||
| 2672 | + "p50TtftMs": null, | ||||
| 2673 | + "totalCostUsd": 0, | ||||
| 2674 | + "avgOutputTokens": null, | ||||
| 2675 | + "perTest": { | ||||
| 2676 | + "audio-chat": "error" | ||||
| 2677 | + }, | ||||
| 2678 | + "errors": [ | ||||
| 2679 | + "400 400 This model requires that either input content or output modality contain audio." | ||||
| 2680 | + ] | ||||
| 2681 | + } | ||||
| 2682 | + }, | ||||
| 2683 | + { | ||||
| 2684 | + "id": "gpt-audio-1.5", | ||||
| 2685 | + "provider": "openai", | ||||
| 2686 | + "kind": "audio-chat", | ||||
| 2687 | + "available": false, | ||||
| 2688 | + "tested": true, | ||||
| 2689 | + "status": "unavailable", | ||||
| 2690 | + "capabilities": { | ||||
| 2691 | + "text": false, | ||||
| 2692 | + "vision": false, | ||||
| 2693 | + "tools": false, | ||||
| 2694 | + "structuredOutput": false, | ||||
| 2695 | + "streaming": false, | ||||
| 2696 | + "reasoning": false, | ||||
| 2697 | + "longContext": false, | ||||
| 2698 | + "imageGeneration": false, | ||||
| 2699 | + "audioOutput": false, | ||||
| 2700 | + "audioInput": "unknown" | ||||
| 2701 | + }, | ||||
| 2702 | + "pricing": { | ||||
| 2703 | + "audioInput": 32, | ||||
| 2704 | + "audioOutput": 64, | ||||
| 2705 | + "input": 2.5, | ||||
| 2706 | + "output": 10 | ||||
| 2707 | + }, | ||||
| 2708 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2709 | + "unavailableReason": "400 400 This model requires that either input content or output modality contain audio.", | ||||
| 2710 | + "benchmark": { | ||||
| 2711 | + "tests": 1, | ||||
| 2712 | + "passed": 0, | ||||
| 2713 | + "qualityScore": null, | ||||
| 2714 | + "p50LatencyMs": 103, | ||||
| 2715 | + "p50TtftMs": null, | ||||
| 2716 | + "totalCostUsd": 0, | ||||
| 2717 | + "avgOutputTokens": null, | ||||
| 2718 | + "perTest": { | ||||
| 2719 | + "audio-chat": "error" | ||||
| 2720 | + }, | ||||
| 2721 | + "errors": [ | ||||
| 2722 | + "400 400 This model requires that either input content or output modality contain audio." | ||||
| 2723 | + ] | ||||
| 2724 | + } | ||||
| 2725 | + }, | ||||
| 2726 | + { | ||||
| 2727 | + "id": "gpt-audio-mini", | ||||
| 2728 | + "provider": "openai", | ||||
| 2729 | + "kind": "audio-chat", | ||||
| 2730 | + "available": false, | ||||
| 2731 | + "tested": true, | ||||
| 2732 | + "status": "unavailable", | ||||
| 2733 | + "capabilities": { | ||||
| 2734 | + "text": false, | ||||
| 2735 | + "vision": false, | ||||
| 2736 | + "tools": false, | ||||
| 2737 | + "structuredOutput": false, | ||||
| 2738 | + "streaming": false, | ||||
| 2739 | + "reasoning": false, | ||||
| 2740 | + "longContext": false, | ||||
| 2741 | + "imageGeneration": false, | ||||
| 2742 | + "audioOutput": false, | ||||
| 2743 | + "audioInput": "unknown" | ||||
| 2744 | + }, | ||||
| 2745 | + "pricing": { | ||||
| 2746 | + "audioInput": 10, | ||||
| 2747 | + "audioOutput": 20, | ||||
| 2748 | + "input": 0.6, | ||||
| 2749 | + "output": 2.4 | ||||
| 2750 | + }, | ||||
| 2751 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2752 | + "unavailableReason": "400 400 This model requires that either input content or output modality contain audio.", | ||||
| 2753 | + "benchmark": { | ||||
| 2754 | + "tests": 1, | ||||
| 2755 | + "passed": 0, | ||||
| 2756 | + "qualityScore": null, | ||||
| 2757 | + "p50LatencyMs": 132, | ||||
| 2758 | + "p50TtftMs": null, | ||||
| 2759 | + "totalCostUsd": 0, | ||||
| 2760 | + "avgOutputTokens": null, | ||||
| 2761 | + "perTest": { | ||||
| 2762 | + "audio-chat": "error" | ||||
| 2763 | + }, | ||||
| 2764 | + "errors": [ | ||||
| 2765 | + "400 400 This model requires that either input content or output modality contain audio." | ||||
| 2766 | + ] | ||||
| 2767 | + } | ||||
| 2768 | + }, | ||||
| 2769 | + { | ||||
| 2770 | + "id": "gpt-image-1", | ||||
| 2771 | + "provider": "openai", | ||||
| 2772 | + "kind": "image", | ||||
| 2773 | + "available": false, | ||||
| 2774 | + "tested": true, | ||||
| 2775 | + "status": "unavailable", | ||||
| 2776 | + "capabilities": { | ||||
| 2777 | + "text": false, | ||||
| 2778 | + "vision": false, | ||||
| 2779 | + "tools": false, | ||||
| 2780 | + "structuredOutput": false, | ||||
| 2781 | + "streaming": false, | ||||
| 2782 | + "reasoning": false, | ||||
| 2783 | + "longContext": false, | ||||
| 2784 | + "imageGeneration": false, | ||||
| 2785 | + "audioOutput": false, | ||||
| 2786 | + "audioInput": false | ||||
| 2787 | + }, | ||||
| 2788 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2789 | + "unavailableReason": "400 400 The model 'gpt-image-1' does not exist.", | ||||
| 2790 | + "benchmark": { | ||||
| 2791 | + "tests": 1, | ||||
| 2792 | + "passed": 0, | ||||
| 2793 | + "qualityScore": null, | ||||
| 2794 | + "p50LatencyMs": 174, | ||||
| 2795 | + "p50TtftMs": null, | ||||
| 2796 | + "totalCostUsd": 0, | ||||
| 2797 | + "avgOutputTokens": null, | ||||
| 2798 | + "perTest": { | ||||
| 2799 | + "image": "error" | ||||
| 2800 | + }, | ||||
| 2801 | + "errors": [ | ||||
| 2802 | + "400 400 The model 'gpt-image-1' does not exist." | ||||
| 2803 | + ] | ||||
| 2804 | + } | ||||
| 2805 | + }, | ||||
| 2806 | + { | ||||
| 2807 | + "id": "gpt-image-1-mini", | ||||
| 2808 | + "provider": "openai", | ||||
| 2809 | + "kind": "image", | ||||
| 2810 | + "available": true, | ||||
| 2811 | + "tested": true, | ||||
| 2812 | + "status": "verified", | ||||
| 2813 | + "capabilities": { | ||||
| 2814 | + "text": false, | ||||
| 2815 | + "vision": false, | ||||
| 2816 | + "tools": false, | ||||
| 2817 | + "structuredOutput": false, | ||||
| 2818 | + "streaming": false, | ||||
| 2819 | + "reasoning": false, | ||||
| 2820 | + "longContext": false, | ||||
| 2821 | + "imageGeneration": true, | ||||
| 2822 | + "audioOutput": false, | ||||
| 2823 | + "audioInput": false | ||||
| 2824 | + }, | ||||
| 2825 | + "pricing": { | ||||
| 2826 | + "imageInput": 2.5, | ||||
| 2827 | + "imageCachedInput": 0.25, | ||||
| 2828 | + "imageOutput": 8, | ||||
| 2829 | + "input": 2, | ||||
| 2830 | + "cachedInput": 0.2, | ||||
| 2831 | + "unit": "image tokens / text tokens" | ||||
| 2832 | + }, | ||||
| 2833 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2834 | + "benchmark": { | ||||
| 2835 | + "tests": 1, | ||||
| 2836 | + "passed": 1, | ||||
| 2837 | + "qualityScore": null, | ||||
| 2838 | + "p50LatencyMs": 5797, | ||||
| 2839 | + "p50TtftMs": null, | ||||
| 2840 | + "totalCostUsd": 0, | ||||
| 2841 | + "avgOutputTokens": null, | ||||
| 2842 | + "perTest": { | ||||
| 2843 | + "image": "pass" | ||||
| 2844 | + }, | ||||
| 2845 | + "errors": [] | ||||
| 2846 | + } | ||||
| 2847 | + }, | ||||
| 2848 | + { | ||||
| 2849 | + "id": "gpt-image-1.5", | ||||
| 2850 | + "provider": "openai", | ||||
| 2851 | + "kind": "image", | ||||
| 2852 | + "available": true, | ||||
| 2853 | + "tested": true, | ||||
| 2854 | + "status": "verified", | ||||
| 2855 | + "capabilities": { | ||||
| 2856 | + "text": false, | ||||
| 2857 | + "vision": false, | ||||
| 2858 | + "tools": false, | ||||
| 2859 | + "structuredOutput": false, | ||||
| 2860 | + "streaming": false, | ||||
| 2861 | + "reasoning": false, | ||||
| 2862 | + "longContext": false, | ||||
| 2863 | + "imageGeneration": true, | ||||
| 2864 | + "audioOutput": false, | ||||
| 2865 | + "audioInput": false | ||||
| 2866 | + }, | ||||
| 2867 | + "pricing": { | ||||
| 2868 | + "imageInput": 8, | ||||
| 2869 | + "imageCachedInput": 2, | ||||
| 2870 | + "imageOutput": 32, | ||||
| 2871 | + "input": 5, | ||||
| 2872 | + "cachedInput": 1.25, | ||||
| 2873 | + "output": 10, | ||||
| 2874 | + "unit": "image tokens / text tokens" | ||||
| 2875 | + }, | ||||
| 2876 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2877 | + "benchmark": { | ||||
| 2878 | + "tests": 1, | ||||
| 2879 | + "passed": 1, | ||||
| 2880 | + "qualityScore": null, | ||||
| 2881 | + "p50LatencyMs": 4864, | ||||
| 2882 | + "p50TtftMs": null, | ||||
| 2883 | + "totalCostUsd": 0, | ||||
| 2884 | + "avgOutputTokens": null, | ||||
| 2885 | + "perTest": { | ||||
| 2886 | + "image": "pass" | ||||
| 2887 | + }, | ||||
| 2888 | + "errors": [] | ||||
| 2889 | + } | ||||
| 2890 | + }, | ||||
| 2891 | + { | ||||
| 2892 | + "id": "gpt-image-2", | ||||
| 2893 | + "provider": "openai", | ||||
| 2894 | + "kind": "image", | ||||
| 2895 | + "available": true, | ||||
| 2896 | + "tested": true, | ||||
| 2897 | + "status": "verified", | ||||
| 2898 | + "capabilities": { | ||||
| 2899 | + "text": false, | ||||
| 2900 | + "vision": false, | ||||
| 2901 | + "tools": false, | ||||
| 2902 | + "structuredOutput": false, | ||||
| 2903 | + "streaming": false, | ||||
| 2904 | + "reasoning": false, | ||||
| 2905 | + "longContext": false, | ||||
| 2906 | + "imageGeneration": true, | ||||
| 2907 | + "audioOutput": false, | ||||
| 2908 | + "audioInput": false | ||||
| 2909 | + }, | ||||
| 2910 | + "pricing": { | ||||
| 2911 | + "imageInput": 8, | ||||
| 2912 | + "imageCachedInput": 2, | ||||
| 2913 | + "imageOutput": 30, | ||||
| 2914 | + "input": 5, | ||||
| 2915 | + "cachedInput": 1.25, | ||||
| 2916 | + "unit": "image tokens / text tokens" | ||||
| 2917 | + }, | ||||
| 2918 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2919 | + "benchmark": { | ||||
| 2920 | + "tests": 1, | ||||
| 2921 | + "passed": 1, | ||||
| 2922 | + "qualityScore": null, | ||||
| 2923 | + "p50LatencyMs": 6375, | ||||
| 2924 | + "p50TtftMs": null, | ||||
| 2925 | + "totalCostUsd": 0, | ||||
| 2926 | + "avgOutputTokens": null, | ||||
| 2927 | + "perTest": { | ||||
| 2928 | + "image": "pass" | ||||
| 2929 | + }, | ||||
| 2930 | + "errors": [] | ||||
| 2931 | + } | ||||
| 2932 | + }, | ||||
| 2933 | + { | ||||
| 2934 | + "id": "gpt-image-2.5-flare", | ||||
| 2935 | + "provider": "openai", | ||||
| 2936 | + "kind": "image", | ||||
| 2937 | + "available": true, | ||||
| 2938 | + "tested": true, | ||||
| 2939 | + "status": "verified", | ||||
| 2940 | + "capabilities": { | ||||
| 2941 | + "text": false, | ||||
| 2942 | + "vision": false, | ||||
| 2943 | + "tools": false, | ||||
| 2944 | + "structuredOutput": false, | ||||
| 2945 | + "streaming": false, | ||||
| 2946 | + "reasoning": false, | ||||
| 2947 | + "longContext": false, | ||||
| 2948 | + "imageGeneration": true, | ||||
| 2949 | + "audioOutput": false, | ||||
| 2950 | + "audioInput": false | ||||
| 2951 | + }, | ||||
| 2952 | + "pricing": { | ||||
| 2953 | + "imageInput": 8, | ||||
| 2954 | + "imageCachedInput": 2, | ||||
| 2955 | + "imageOutput": 30, | ||||
| 2956 | + "input": 5, | ||||
| 2957 | + "cachedInput": 1.25, | ||||
| 2958 | + "unit": "image tokens / text tokens" | ||||
| 2959 | + }, | ||||
| 2960 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 2961 | + "benchmark": { | ||||
| 2962 | + "tests": 1, | ||||
| 2963 | + "passed": 1, | ||||
| 2964 | + "qualityScore": null, | ||||
| 2965 | + "p50LatencyMs": 4765, | ||||
| 2966 | + "p50TtftMs": null, | ||||
| 2967 | + "totalCostUsd": 0, | ||||
| 2968 | + "avgOutputTokens": null, | ||||
| 2969 | + "perTest": { | ||||
| 2970 | + "image": "pass" | ||||
| 2971 | + }, | ||||
| 2972 | + "errors": [] | ||||
| 2973 | + } | ||||
| 2974 | + }, | ||||
| 2975 | + { | ||||
| 2976 | + "id": "gpt-image-2.5-sunburst", | ||||
| 2977 | + "provider": "openai", | ||||
| 2978 | + "kind": "image", | ||||
| 2979 | + "available": true, | ||||
| 2980 | + "tested": true, | ||||
| 2981 | + "status": "verified", | ||||
| 2982 | + "capabilities": { | ||||
| 2983 | + "text": false, | ||||
| 2984 | + "vision": false, | ||||
| 2985 | + "tools": false, | ||||
| 2986 | + "structuredOutput": false, | ||||
| 2987 | + "streaming": false, | ||||
| 2988 | + "reasoning": false, | ||||
| 2989 | + "longContext": false, | ||||
| 2990 | + "imageGeneration": true, | ||||
| 2991 | + "audioOutput": false, | ||||
| 2992 | + "audioInput": false | ||||
| 2993 | + }, | ||||
| 2994 | + "pricing": { | ||||
| 2995 | + "imageInput": 8, | ||||
| 2996 | + "imageCachedInput": 2, | ||||
| 2997 | + "imageOutput": 30, | ||||
| 2998 | + "input": 5, | ||||
| 2999 | + "cachedInput": 1.25, | ||||
| 3000 | + "unit": "image tokens / text tokens" | ||||
| 3001 | + }, | ||||
| 3002 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3003 | + "benchmark": { | ||||
| 3004 | + "tests": 1, | ||||
| 3005 | + "passed": 1, | ||||
| 3006 | + "qualityScore": null, | ||||
| 3007 | + "p50LatencyMs": 6665, | ||||
| 3008 | + "p50TtftMs": null, | ||||
| 3009 | + "totalCostUsd": 0, | ||||
| 3010 | + "avgOutputTokens": null, | ||||
| 3011 | + "perTest": { | ||||
| 3012 | + "image": "pass" | ||||
| 3013 | + }, | ||||
| 3014 | + "errors": [] | ||||
| 3015 | + } | ||||
| 3016 | + }, | ||||
| 3017 | + { | ||||
| 3018 | + "id": "gpt-live-1", | ||||
| 3019 | + "provider": "openai", | ||||
| 3020 | + "kind": "realtime", | ||||
| 3021 | + "available": false, | ||||
| 3022 | + "tested": false, | ||||
| 3023 | + "status": "unsupported", | ||||
| 3024 | + "capabilities": {}, | ||||
| 3025 | + "pricing": { | ||||
| 3026 | + "perMinute": 0.05 | ||||
| 3027 | + }, | ||||
| 3028 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3029 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3030 | + }, | ||||
| 3031 | + { | ||||
| 3032 | + "id": "gpt-live-transcribe", | ||||
| 3033 | + "provider": "openai", | ||||
| 3034 | + "kind": "realtime", | ||||
| 3035 | + "available": false, | ||||
| 3036 | + "tested": false, | ||||
| 3037 | + "status": "unsupported", | ||||
| 3038 | + "capabilities": {}, | ||||
| 3039 | + "pricing": { | ||||
| 3040 | + "perMinute": 0.017 | ||||
| 3041 | + }, | ||||
| 3042 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3043 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3044 | + }, | ||||
| 3045 | + { | ||||
| 3046 | + "id": "gpt-realtime", | ||||
| 3047 | + "provider": "openai", | ||||
| 3048 | + "kind": "realtime", | ||||
| 3049 | + "available": false, | ||||
| 3050 | + "tested": false, | ||||
| 3051 | + "status": "unsupported", | ||||
| 3052 | + "capabilities": {}, | ||||
| 3053 | + "pricing": { | ||||
| 3054 | + "audioInput": 32, | ||||
| 3055 | + "audioOutput": 64, | ||||
| 3056 | + "input": 4, | ||||
| 3057 | + "cachedInput": 0.4, | ||||
| 3058 | + "output": 16 | ||||
| 3059 | + }, | ||||
| 3060 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3061 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3062 | + }, | ||||
| 3063 | + { | ||||
| 3064 | + "id": "gpt-realtime-1.5", | ||||
| 3065 | + "provider": "openai", | ||||
| 3066 | + "kind": "realtime", | ||||
| 3067 | + "available": false, | ||||
| 3068 | + "tested": false, | ||||
| 3069 | + "status": "unsupported", | ||||
| 3070 | + "capabilities": {}, | ||||
| 3071 | + "pricing": { | ||||
| 3072 | + "audioInput": 32, | ||||
| 3073 | + "audioOutput": 64, | ||||
| 3074 | + "input": 4, | ||||
| 3075 | + "cachedInput": 0.4, | ||||
| 3076 | + "output": 16 | ||||
| 3077 | + }, | ||||
| 3078 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3079 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3080 | + }, | ||||
| 3081 | + { | ||||
| 3082 | + "id": "gpt-realtime-2", | ||||
| 3083 | + "provider": "openai", | ||||
| 3084 | + "kind": "realtime", | ||||
| 3085 | + "available": false, | ||||
| 3086 | + "tested": false, | ||||
| 3087 | + "status": "unsupported", | ||||
| 3088 | + "capabilities": {}, | ||||
| 3089 | + "pricing": { | ||||
| 3090 | + "audioInput": 32, | ||||
| 3091 | + "audioOutput": 64, | ||||
| 3092 | + "input": 4, | ||||
| 3093 | + "cachedInput": 0.4, | ||||
| 3094 | + "output": 24 | ||||
| 3095 | + }, | ||||
| 3096 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3097 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3098 | + }, | ||||
| 3099 | + { | ||||
| 3100 | + "id": "gpt-realtime-2.1", | ||||
| 3101 | + "provider": "openai", | ||||
| 3102 | + "kind": "realtime", | ||||
| 3103 | + "available": false, | ||||
| 3104 | + "tested": false, | ||||
| 3105 | + "status": "unsupported", | ||||
| 3106 | + "capabilities": {}, | ||||
| 3107 | + "pricing": { | ||||
| 3108 | + "audioInput": 32, | ||||
| 3109 | + "audioOutput": 64, | ||||
| 3110 | + "input": 4, | ||||
| 3111 | + "cachedInput": 0.4, | ||||
| 3112 | + "output": 24, | ||||
| 3113 | + "unit": "audio tokens / text tokens" | ||||
| 3114 | + }, | ||||
| 3115 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3116 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3117 | + }, | ||||
| 3118 | + { | ||||
| 3119 | + "id": "gpt-realtime-2.1-mini", | ||||
| 3120 | + "provider": "openai", | ||||
| 3121 | + "kind": "realtime", | ||||
| 3122 | + "available": false, | ||||
| 3123 | + "tested": false, | ||||
| 3124 | + "status": "unsupported", | ||||
| 3125 | + "capabilities": {}, | ||||
| 3126 | + "pricing": { | ||||
| 3127 | + "audioInput": 10, | ||||
| 3128 | + "audioOutput": 20, | ||||
| 3129 | + "input": 0.6, | ||||
| 3130 | + "cachedInput": 0.06, | ||||
| 3131 | + "output": 2.4 | ||||
| 3132 | + }, | ||||
| 3133 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3134 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3135 | + }, | ||||
| 3136 | + { | ||||
| 3137 | + "id": "gpt-realtime-mini", | ||||
| 3138 | + "provider": "openai", | ||||
| 3139 | + "kind": "realtime", | ||||
| 3140 | + "available": false, | ||||
| 3141 | + "tested": false, | ||||
| 3142 | + "status": "unsupported", | ||||
| 3143 | + "capabilities": {}, | ||||
| 3144 | + "pricing": { | ||||
| 3145 | + "audioInput": 10, | ||||
| 3146 | + "audioOutput": 20, | ||||
| 3147 | + "input": 0.6, | ||||
| 3148 | + "cachedInput": 0.06, | ||||
| 3149 | + "output": 2.4 | ||||
| 3150 | + }, | ||||
| 3151 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3152 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3153 | + }, | ||||
| 3154 | + { | ||||
| 3155 | + "id": "gpt-realtime-translate", | ||||
| 3156 | + "provider": "openai", | ||||
| 3157 | + "kind": "realtime", | ||||
| 3158 | + "available": false, | ||||
| 3159 | + "tested": false, | ||||
| 3160 | + "status": "unsupported", | ||||
| 3161 | + "capabilities": {}, | ||||
| 3162 | + "pricing": { | ||||
| 3163 | + "perMinute": 0.034 | ||||
| 3164 | + }, | ||||
| 3165 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3166 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3167 | + }, | ||||
| 3168 | + { | ||||
| 3169 | + "id": "gpt-realtime-whisper", | ||||
| 3170 | + "provider": "openai", | ||||
| 3171 | + "kind": "realtime", | ||||
| 3172 | + "available": false, | ||||
| 3173 | + "tested": false, | ||||
| 3174 | + "status": "unsupported", | ||||
| 3175 | + "capabilities": {}, | ||||
| 3176 | + "pricing": { | ||||
| 3177 | + "perMinute": 0.017 | ||||
| 3178 | + }, | ||||
| 3179 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3180 | + "unavailableReason": "WebSocket/WebRTC realtime model — not a chat-completion model; not exercised" | ||||
| 3181 | + }, | ||||
| 3182 | + { | ||||
| 3183 | + "id": "gpt-transcribe", | ||||
| 3184 | + "provider": "openai", | ||||
| 3185 | + "kind": "stt", | ||||
| 3186 | + "available": true, | ||||
| 3187 | + "tested": true, | ||||
| 3188 | + "status": "verified", | ||||
| 3189 | + "capabilities": { | ||||
| 3190 | + "text": false, | ||||
| 3191 | + "vision": false, | ||||
| 3192 | + "tools": false, | ||||
| 3193 | + "structuredOutput": false, | ||||
| 3194 | + "streaming": false, | ||||
| 3195 | + "reasoning": false, | ||||
| 3196 | + "longContext": false, | ||||
| 3197 | + "imageGeneration": false, | ||||
| 3198 | + "audioOutput": false, | ||||
| 3199 | + "audioInput": true | ||||
| 3200 | + }, | ||||
| 3201 | + "pricing": { | ||||
| 3202 | + "perMinute": 0.0045 | ||||
| 3203 | + }, | ||||
| 3204 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3205 | + "benchmark": { | ||||
| 3206 | + "tests": 1, | ||||
| 3207 | + "passed": 1, | ||||
| 3208 | + "qualityScore": null, | ||||
| 3209 | + "p50LatencyMs": 459, | ||||
| 3210 | + "p50TtftMs": null, | ||||
| 3211 | + "totalCostUsd": 0, | ||||
| 3212 | + "avgOutputTokens": null, | ||||
| 3213 | + "perTest": { | ||||
| 3214 | + "stt": "pass" | ||||
| 3215 | + }, | ||||
| 3216 | + "errors": [] | ||||
| 3217 | + } | ||||
| 3218 | + }, | ||||
| 3219 | + { | ||||
| 3220 | + "id": "o1", | ||||
| 3221 | + "provider": "openai", | ||||
| 3222 | + "kind": "chat", | ||||
| 3223 | + "available": false, | ||||
| 3224 | + "tested": false, | ||||
| 3225 | + "status": "unavailable", | ||||
| 3226 | + "capabilities": {}, | ||||
| 3227 | + "pricing": { | ||||
| 3228 | + "input": 15, | ||||
| 3229 | + "cachedInput": 7.5, | ||||
| 3230 | + "output": 60 | ||||
| 3231 | + }, | ||||
| 3232 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3233 | + "unavailableReason": "The model `o1` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 3234 | + }, | ||||
| 3235 | + { | ||||
| 3236 | + "id": "o1-pro", | ||||
| 3237 | + "provider": "openai", | ||||
| 3238 | + "kind": "chat-pro", | ||||
| 3239 | + "available": false, | ||||
| 3240 | + "tested": false, | ||||
| 3241 | + "status": "unavailable", | ||||
| 3242 | + "capabilities": {}, | ||||
| 3243 | + "pricing": { | ||||
| 3244 | + "input": 150, | ||||
| 3245 | + "output": 600 | ||||
| 3246 | + }, | ||||
| 3247 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3248 | + "unavailableReason": "The model `o1-pro` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 3249 | + }, | ||||
| 3250 | + { | ||||
| 3251 | + "id": "o3-deep-research", | ||||
| 3252 | + "provider": "openai", | ||||
| 3253 | + "kind": "deep-research", | ||||
| 3254 | + "available": false, | ||||
| 3255 | + "tested": false, | ||||
| 3256 | + "status": "unsupported", | ||||
| 3257 | + "capabilities": {}, | ||||
| 3258 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3259 | + "unavailableReason": "Requires hosted web-search tools and long runs — not benchmarked without explicit budget approval" | ||||
| 3260 | + }, | ||||
| 3261 | + { | ||||
| 3262 | + "id": "o3-mini", | ||||
| 3263 | + "provider": "openai", | ||||
| 3264 | + "kind": "chat", | ||||
| 3265 | + "available": false, | ||||
| 3266 | + "tested": false, | ||||
| 3267 | + "status": "unavailable", | ||||
| 3268 | + "capabilities": {}, | ||||
| 3269 | + "pricing": { | ||||
| 3270 | + "input": 1.1, | ||||
| 3271 | + "cachedInput": 0.55, | ||||
| 3272 | + "output": 4.4 | ||||
| 3273 | + }, | ||||
| 3274 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3275 | + "unavailableReason": "The model `o3-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 3276 | + }, | ||||
| 3277 | + { | ||||
| 3278 | + "id": "o4-mini", | ||||
| 3279 | + "provider": "openai", | ||||
| 3280 | + "kind": "chat", | ||||
| 3281 | + "available": false, | ||||
| 3282 | + "tested": false, | ||||
| 3283 | + "status": "unavailable", | ||||
| 3284 | + "capabilities": {}, | ||||
| 3285 | + "pricing": { | ||||
| 3286 | + "input": 1.1, | ||||
| 3287 | + "cachedInput": 0.275, | ||||
| 3288 | + "output": 4.4 | ||||
| 3289 | + }, | ||||
| 3290 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3291 | + "unavailableReason": "The model `o4-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 3292 | + }, | ||||
| 3293 | + { | ||||
| 3294 | + "id": "o4-mini-deep-research", | ||||
| 3295 | + "provider": "openai", | ||||
| 3296 | + "kind": "deep-research", | ||||
| 3297 | + "available": false, | ||||
| 3298 | + "tested": false, | ||||
| 3299 | + "status": "unsupported", | ||||
| 3300 | + "capabilities": {}, | ||||
| 3301 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3302 | + "unavailableReason": "Requires hosted web-search tools and long runs — not benchmarked without explicit budget approval" | ||||
| 3303 | + }, | ||||
| 3304 | + { | ||||
| 3305 | + "id": "omni-moderation-latest", | ||||
| 3306 | + "provider": "openai", | ||||
| 3307 | + "kind": "moderation", | ||||
| 3308 | + "available": true, | ||||
| 3309 | + "tested": true, | ||||
| 3310 | + "status": "verified", | ||||
| 3311 | + "capabilities": { | ||||
| 3312 | + "text": false, | ||||
| 3313 | + "vision": false, | ||||
| 3314 | + "tools": false, | ||||
| 3315 | + "structuredOutput": false, | ||||
| 3316 | + "streaming": false, | ||||
| 3317 | + "reasoning": false, | ||||
| 3318 | + "longContext": false, | ||||
| 3319 | + "imageGeneration": false, | ||||
| 3320 | + "audioOutput": false, | ||||
| 3321 | + "audioInput": false | ||||
| 3322 | + }, | ||||
| 3323 | + "pricing": { | ||||
| 3324 | + "input": 0, | ||||
| 3325 | + "notes": "free" | ||||
| 3326 | + }, | ||||
| 3327 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3328 | + "benchmark": { | ||||
| 3329 | + "tests": 1, | ||||
| 3330 | + "passed": 1, | ||||
| 3331 | + "qualityScore": null, | ||||
| 3332 | + "p50LatencyMs": 521, | ||||
| 3333 | + "p50TtftMs": null, | ||||
| 3334 | + "totalCostUsd": 0, | ||||
| 3335 | + "avgOutputTokens": null, | ||||
| 3336 | + "perTest": { | ||||
| 3337 | + "moderation": "pass" | ||||
| 3338 | + }, | ||||
| 3339 | + "errors": [] | ||||
| 3340 | + } | ||||
| 3341 | + }, | ||||
| 3342 | + { | ||||
| 3343 | + "id": "sora-2", | ||||
| 3344 | + "provider": "openai", | ||||
| 3345 | + "kind": "video", | ||||
| 3346 | + "available": false, | ||||
| 3347 | + "tested": false, | ||||
| 3348 | + "status": "unsupported", | ||||
| 3349 | + "capabilities": {}, | ||||
| 3350 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3351 | + "unavailableReason": "Video generation — not tested (cost)" | ||||
| 3352 | + }, | ||||
| 3353 | + { | ||||
| 3354 | + "id": "sora-2-pro", | ||||
| 3355 | + "provider": "openai", | ||||
| 3356 | + "kind": "video", | ||||
| 3357 | + "available": false, | ||||
| 3358 | + "tested": false, | ||||
| 3359 | + "status": "unsupported", | ||||
| 3360 | + "capabilities": {}, | ||||
| 3361 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3362 | + "unavailableReason": "Video generation — not tested (cost)" | ||||
| 3363 | + }, | ||||
| 3364 | + { | ||||
| 3365 | + "id": "text-embedding-3-large", | ||||
| 3366 | + "provider": "openai", | ||||
| 3367 | + "kind": "embedding", | ||||
| 3368 | + "available": true, | ||||
| 3369 | + "tested": true, | ||||
| 3370 | + "status": "verified", | ||||
| 3371 | + "capabilities": { | ||||
| 3372 | + "text": false, | ||||
| 3373 | + "vision": false, | ||||
| 3374 | + "tools": false, | ||||
| 3375 | + "structuredOutput": false, | ||||
| 3376 | + "streaming": false, | ||||
| 3377 | + "reasoning": false, | ||||
| 3378 | + "longContext": false, | ||||
| 3379 | + "imageGeneration": false, | ||||
| 3380 | + "audioOutput": false, | ||||
| 3381 | + "audioInput": false | ||||
| 3382 | + }, | ||||
| 3383 | + "pricing": { | ||||
| 3384 | + "input": 0.13 | ||||
| 3385 | + }, | ||||
| 3386 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3387 | + "benchmark": { | ||||
| 3388 | + "tests": 1, | ||||
| 3389 | + "passed": 1, | ||||
| 3390 | + "qualityScore": null, | ||||
| 3391 | + "p50LatencyMs": 215, | ||||
| 3392 | + "p50TtftMs": null, | ||||
| 3393 | + "totalCostUsd": 0, | ||||
| 3394 | + "avgOutputTokens": null, | ||||
| 3395 | + "perTest": { | ||||
| 3396 | + "embedding": "pass" | ||||
| 3397 | + }, | ||||
| 3398 | + "errors": [] | ||||
| 3399 | + } | ||||
| 3400 | + }, | ||||
| 3401 | + { | ||||
| 3402 | + "id": "text-embedding-3-small", | ||||
| 3403 | + "provider": "openai", | ||||
| 3404 | + "kind": "embedding", | ||||
| 3405 | + "available": true, | ||||
| 3406 | + "tested": true, | ||||
| 3407 | + "status": "verified", | ||||
| 3408 | + "capabilities": { | ||||
| 3409 | + "text": false, | ||||
| 3410 | + "vision": false, | ||||
| 3411 | + "tools": false, | ||||
| 3412 | + "structuredOutput": false, | ||||
| 3413 | + "streaming": false, | ||||
| 3414 | + "reasoning": false, | ||||
| 3415 | + "longContext": false, | ||||
| 3416 | + "imageGeneration": false, | ||||
| 3417 | + "audioOutput": false, | ||||
| 3418 | + "audioInput": false | ||||
| 3419 | + }, | ||||
| 3420 | + "pricing": { | ||||
| 3421 | + "input": 0.02 | ||||
| 3422 | + }, | ||||
| 3423 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3424 | + "benchmark": { | ||||
| 3425 | + "tests": 1, | ||||
| 3426 | + "passed": 1, | ||||
| 3427 | + "qualityScore": null, | ||||
| 3428 | + "p50LatencyMs": 319, | ||||
| 3429 | + "p50TtftMs": null, | ||||
| 3430 | + "totalCostUsd": 0, | ||||
| 3431 | + "avgOutputTokens": null, | ||||
| 3432 | + "perTest": { | ||||
| 3433 | + "embedding": "pass" | ||||
| 3434 | + }, | ||||
| 3435 | + "errors": [] | ||||
| 3436 | + } | ||||
| 3437 | + }, | ||||
| 3438 | + { | ||||
| 3439 | + "id": "text-embedding-ada-002", | ||||
| 3440 | + "provider": "openai", | ||||
| 3441 | + "kind": "embedding", | ||||
| 3442 | + "available": true, | ||||
| 3443 | + "tested": true, | ||||
| 3444 | + "status": "verified", | ||||
| 3445 | + "capabilities": { | ||||
| 3446 | + "text": false, | ||||
| 3447 | + "vision": false, | ||||
| 3448 | + "tools": false, | ||||
| 3449 | + "structuredOutput": false, | ||||
| 3450 | + "streaming": false, | ||||
| 3451 | + "reasoning": false, | ||||
| 3452 | + "longContext": false, | ||||
| 3453 | + "imageGeneration": false, | ||||
| 3454 | + "audioOutput": false, | ||||
| 3455 | + "audioInput": false | ||||
| 3456 | + }, | ||||
| 3457 | + "pricing": { | ||||
| 3458 | + "input": 0.1 | ||||
| 3459 | + }, | ||||
| 3460 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3461 | + "benchmark": { | ||||
| 3462 | + "tests": 1, | ||||
| 3463 | + "passed": 1, | ||||
| 3464 | + "qualityScore": null, | ||||
| 3465 | + "p50LatencyMs": 162, | ||||
| 3466 | + "p50TtftMs": null, | ||||
| 3467 | + "totalCostUsd": 0, | ||||
| 3468 | + "avgOutputTokens": null, | ||||
| 3469 | + "perTest": { | ||||
| 3470 | + "embedding": "pass" | ||||
| 3471 | + }, | ||||
| 3472 | + "errors": [] | ||||
| 3473 | + } | ||||
| 3474 | + }, | ||||
| 3475 | + { | ||||
| 3476 | + "id": "tts-1", | ||||
| 3477 | + "provider": "openai", | ||||
| 3478 | + "kind": "tts", | ||||
| 3479 | + "available": true, | ||||
| 3480 | + "tested": true, | ||||
| 3481 | + "status": "verified", | ||||
| 3482 | + "capabilities": { | ||||
| 3483 | + "text": false, | ||||
| 3484 | + "vision": false, | ||||
| 3485 | + "tools": false, | ||||
| 3486 | + "structuredOutput": false, | ||||
| 3487 | + "streaming": false, | ||||
| 3488 | + "reasoning": false, | ||||
| 3489 | + "longContext": false, | ||||
| 3490 | + "imageGeneration": false, | ||||
| 3491 | + "audioOutput": true, | ||||
| 3492 | + "audioInput": false | ||||
| 3493 | + }, | ||||
| 3494 | + "pricing": { | ||||
| 3495 | + "perMillionCharacters": 15 | ||||
| 3496 | + }, | ||||
| 3497 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3498 | + "benchmark": { | ||||
| 3499 | + "tests": 1, | ||||
| 3500 | + "passed": 1, | ||||
| 3501 | + "qualityScore": null, | ||||
| 3502 | + "p50LatencyMs": 2195, | ||||
| 3503 | + "p50TtftMs": null, | ||||
| 3504 | + "totalCostUsd": 0, | ||||
| 3505 | + "avgOutputTokens": null, | ||||
| 3506 | + "perTest": { | ||||
| 3507 | + "tts": "pass" | ||||
| 3508 | + }, | ||||
| 3509 | + "errors": [] | ||||
| 3510 | + } | ||||
| 3511 | + }, | ||||
| 3512 | + { | ||||
| 3513 | + "id": "tts-1-1106", | ||||
| 3514 | + "provider": "openai", | ||||
| 3515 | + "kind": "tts", | ||||
| 3516 | + "available": false, | ||||
| 3517 | + "tested": false, | ||||
| 3518 | + "status": "untested", | ||||
| 3519 | + "capabilities": {}, | ||||
| 3520 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3521 | + "unavailableReason": "not tested" | ||||
| 3522 | + }, | ||||
| 3523 | + { | ||||
| 3524 | + "id": "tts-1-hd", | ||||
| 3525 | + "provider": "openai", | ||||
| 3526 | + "kind": "tts", | ||||
| 3527 | + "available": true, | ||||
| 3528 | + "tested": true, | ||||
| 3529 | + "status": "verified", | ||||
| 3530 | + "capabilities": { | ||||
| 3531 | + "text": false, | ||||
| 3532 | + "vision": false, | ||||
| 3533 | + "tools": false, | ||||
| 3534 | + "structuredOutput": false, | ||||
| 3535 | + "streaming": false, | ||||
| 3536 | + "reasoning": false, | ||||
| 3537 | + "longContext": false, | ||||
| 3538 | + "imageGeneration": false, | ||||
| 3539 | + "audioOutput": true, | ||||
| 3540 | + "audioInput": false | ||||
| 3541 | + }, | ||||
| 3542 | + "pricing": { | ||||
| 3543 | + "perMillionCharacters": 30 | ||||
| 3544 | + }, | ||||
| 3545 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3546 | + "benchmark": { | ||||
| 3547 | + "tests": 1, | ||||
| 3548 | + "passed": 1, | ||||
| 3549 | + "qualityScore": null, | ||||
| 3550 | + "p50LatencyMs": 1689, | ||||
| 3551 | + "p50TtftMs": null, | ||||
| 3552 | + "totalCostUsd": 0, | ||||
| 3553 | + "avgOutputTokens": null, | ||||
| 3554 | + "perTest": { | ||||
| 3555 | + "tts": "pass" | ||||
| 3556 | + }, | ||||
| 3557 | + "errors": [] | ||||
| 3558 | + } | ||||
| 3559 | + }, | ||||
| 3560 | + { | ||||
| 3561 | + "id": "tts-1-hd-1106", | ||||
| 3562 | + "provider": "openai", | ||||
| 3563 | + "kind": "tts", | ||||
| 3564 | + "available": false, | ||||
| 3565 | + "tested": false, | ||||
| 3566 | + "status": "untested", | ||||
| 3567 | + "capabilities": {}, | ||||
| 3568 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3569 | + "unavailableReason": "not tested" | ||||
| 3570 | + }, | ||||
| 3571 | + { | ||||
| 3572 | + "id": "whisper-1", | ||||
| 3573 | + "provider": "openai", | ||||
| 3574 | + "kind": "stt", | ||||
| 3575 | + "available": true, | ||||
| 3576 | + "tested": true, | ||||
| 3577 | + "status": "verified", | ||||
| 3578 | + "capabilities": { | ||||
| 3579 | + "text": false, | ||||
| 3580 | + "vision": false, | ||||
| 3581 | + "tools": false, | ||||
| 3582 | + "structuredOutput": false, | ||||
| 3583 | + "streaming": false, | ||||
| 3584 | + "reasoning": false, | ||||
| 3585 | + "longContext": false, | ||||
| 3586 | + "imageGeneration": false, | ||||
| 3587 | + "audioOutput": false, | ||||
| 3588 | + "audioInput": true | ||||
| 3589 | + }, | ||||
| 3590 | + "pricing": { | ||||
| 3591 | + "perMinute": 0.006, | ||||
| 3592 | + "notes": "page lists 'Whisper'" | ||||
| 3593 | + }, | ||||
| 3594 | + "lastVerifiedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3595 | + "benchmark": { | ||||
| 3596 | + "tests": 1, | ||||
| 3597 | + "passed": 1, | ||||
| 3598 | + "qualityScore": null, | ||||
| 3599 | + "p50LatencyMs": 642, | ||||
| 3600 | + "p50TtftMs": null, | ||||
| 3601 | + "totalCostUsd": 0, | ||||
| 3602 | + "avgOutputTokens": null, | ||||
| 3603 | + "perTest": { | ||||
| 3604 | + "stt": "pass" | ||||
| 3605 | + }, | ||||
| 3606 | + "errors": [] | ||||
| 3607 | + } | ||||
| 3608 | + } | ||||
| 3609 | + ] | ||||
| 3610 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/modality-results.json
+241 −0
@@ -0,0 +1,241 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:08:00.270Z", | ||||
| 3 | + "results": { | ||||
| 4 | + "gpt-image-1": { | ||||
| 5 | + "kind": "image", | ||||
| 6 | + "ok": false, | ||||
| 7 | + "latencyMs": 174, | ||||
| 8 | + "error": "400 400 The model 'gpt-image-1' does not exist." | ||||
| 9 | + }, | ||||
| 10 | + "gpt-image-1-mini": { | ||||
| 11 | + "kind": "image", | ||||
| 12 | + "ok": true, | ||||
| 13 | + "latencyMs": 5797, | ||||
| 14 | + "usage": { | ||||
| 15 | + "input_tokens": 17, | ||||
| 16 | + "input_tokens_details": { | ||||
| 17 | + "image_tokens": 0, | ||||
| 18 | + "text_tokens": 17 | ||||
| 19 | + }, | ||||
| 20 | + "output_tokens": 272, | ||||
| 21 | + "output_tokens_details": { | ||||
| 22 | + "image_tokens": 272, | ||||
| 23 | + "text_tokens": 0 | ||||
| 24 | + }, | ||||
| 25 | + "total_tokens": 289 | ||||
| 26 | + }, | ||||
| 27 | + "hasImage": true, | ||||
| 28 | + "size": "1024x1024", | ||||
| 29 | + "quality": "low" | ||||
| 30 | + }, | ||||
| 31 | + "gpt-image-1.5": { | ||||
| 32 | + "kind": "image", | ||||
| 33 | + "ok": true, | ||||
| 34 | + "latencyMs": 4864, | ||||
| 35 | + "usage": { | ||||
| 36 | + "input_tokens": 17, | ||||
| 37 | + "input_tokens_details": { | ||||
| 38 | + "image_tokens": 0, | ||||
| 39 | + "text_tokens": 17 | ||||
| 40 | + }, | ||||
| 41 | + "output_tokens": 422, | ||||
| 42 | + "output_tokens_details": { | ||||
| 43 | + "image_tokens": 272, | ||||
| 44 | + "text_tokens": 150 | ||||
| 45 | + }, | ||||
| 46 | + "total_tokens": 439 | ||||
| 47 | + }, | ||||
| 48 | + "hasImage": true, | ||||
| 49 | + "size": "1024x1024", | ||||
| 50 | + "quality": "low" | ||||
| 51 | + }, | ||||
| 52 | + "gpt-image-2": { | ||||
| 53 | + "kind": "image", | ||||
| 54 | + "ok": true, | ||||
| 55 | + "latencyMs": 6375, | ||||
| 56 | + "usage": { | ||||
| 57 | + "input_tokens": 17, | ||||
| 58 | + "input_tokens_details": { | ||||
| 59 | + "image_tokens": 0, | ||||
| 60 | + "text_tokens": 17 | ||||
| 61 | + }, | ||||
| 62 | + "output_tokens": 196, | ||||
| 63 | + "output_tokens_details": { | ||||
| 64 | + "image_tokens": 196, | ||||
| 65 | + "text_tokens": 0 | ||||
| 66 | + }, | ||||
| 67 | + "total_tokens": 213 | ||||
| 68 | + }, | ||||
| 69 | + "hasImage": true, | ||||
| 70 | + "size": "1024x1024", | ||||
| 71 | + "quality": "low" | ||||
| 72 | + }, | ||||
| 73 | + "gpt-image-2.5-flare": { | ||||
| 74 | + "kind": "image", | ||||
| 75 | + "ok": true, | ||||
| 76 | + "latencyMs": 4765, | ||||
| 77 | + "usage": { | ||||
| 78 | + "input_tokens": 17, | ||||
| 79 | + "input_tokens_details": { | ||||
| 80 | + "image_tokens": 0, | ||||
| 81 | + "text_tokens": 17 | ||||
| 82 | + }, | ||||
| 83 | + "output_tokens": 196, | ||||
| 84 | + "output_tokens_details": { | ||||
| 85 | + "image_tokens": 196, | ||||
| 86 | + "text_tokens": 0 | ||||
| 87 | + }, | ||||
| 88 | + "total_tokens": 213 | ||||
| 89 | + }, | ||||
| 90 | + "hasImage": true, | ||||
| 91 | + "size": "1024x1024", | ||||
| 92 | + "quality": "low" | ||||
| 93 | + }, | ||||
| 94 | + "gpt-image-2.5-sunburst": { | ||||
| 95 | + "kind": "image", | ||||
| 96 | + "ok": true, | ||||
| 97 | + "latencyMs": 6665, | ||||
| 98 | + "usage": { | ||||
| 99 | + "input_tokens": 17, | ||||
| 100 | + "input_tokens_details": { | ||||
| 101 | + "image_tokens": 0, | ||||
| 102 | + "text_tokens": 17 | ||||
| 103 | + }, | ||||
| 104 | + "output_tokens": 196, | ||||
| 105 | + "output_tokens_details": { | ||||
| 106 | + "image_tokens": 196, | ||||
| 107 | + "text_tokens": 0 | ||||
| 108 | + }, | ||||
| 109 | + "total_tokens": 213 | ||||
| 110 | + }, | ||||
| 111 | + "hasImage": true, | ||||
| 112 | + "size": "1024x1024", | ||||
| 113 | + "quality": "low" | ||||
| 114 | + }, | ||||
| 115 | + "chatgpt-image-latest": { | ||||
| 116 | + "kind": "image", | ||||
| 117 | + "ok": true, | ||||
| 118 | + "latencyMs": 5382, | ||||
| 119 | + "usage": { | ||||
| 120 | + "input_tokens": 17, | ||||
| 121 | + "input_tokens_details": { | ||||
| 122 | + "image_tokens": 0, | ||||
| 123 | + "text_tokens": 17 | ||||
| 124 | + }, | ||||
| 125 | + "output_tokens": 502, | ||||
| 126 | + "output_tokens_details": { | ||||
| 127 | + "image_tokens": 272, | ||||
| 128 | + "text_tokens": 230 | ||||
| 129 | + }, | ||||
| 130 | + "total_tokens": 519 | ||||
| 131 | + }, | ||||
| 132 | + "hasImage": true, | ||||
| 133 | + "size": "1024x1024", | ||||
| 134 | + "quality": "low" | ||||
| 135 | + }, | ||||
| 136 | + "tts-1": { | ||||
| 137 | + "kind": "tts", | ||||
| 138 | + "ok": true, | ||||
| 139 | + "latencyMs": 2195 | ||||
| 140 | + }, | ||||
| 141 | + "tts-1-hd": { | ||||
| 142 | + "kind": "tts", | ||||
| 143 | + "ok": true, | ||||
| 144 | + "latencyMs": 1689 | ||||
| 145 | + }, | ||||
| 146 | + "gpt-4o-mini-tts": { | ||||
| 147 | + "kind": "tts", | ||||
| 148 | + "ok": true, | ||||
| 149 | + "latencyMs": 542 | ||||
| 150 | + }, | ||||
| 151 | + "whisper-1": { | ||||
| 152 | + "kind": "stt", | ||||
| 153 | + "ok": true, | ||||
| 154 | + "latencyMs": 642, | ||||
| 155 | + "text": "Bonjour, ceci est un test de synthèse vocale pour Tchat, SP Boucher et AI.", | ||||
| 156 | + "correct": true | ||||
| 157 | + }, | ||||
| 158 | + "gpt-4o-transcribe": { | ||||
| 159 | + "kind": "stt", | ||||
| 160 | + "ok": true, | ||||
| 161 | + "latencyMs": 625, | ||||
| 162 | + "text": "Bonjour, ceci est un test de synthèse vocale pour Chat SP Bochet AI.", | ||||
| 163 | + "correct": true | ||||
| 164 | + }, | ||||
| 165 | + "gpt-4o-mini-transcribe": { | ||||
| 166 | + "kind": "stt", | ||||
| 167 | + "ok": true, | ||||
| 168 | + "latencyMs": 412, | ||||
| 169 | + "text": "Bonjour, ceci est un test de synthèse vocale pour Chat SP Boschet AI.", | ||||
| 170 | + "correct": true | ||||
| 171 | + }, | ||||
| 172 | + "gpt-transcribe": { | ||||
| 173 | + "kind": "stt", | ||||
| 174 | + "ok": true, | ||||
| 175 | + "latencyMs": 459, | ||||
| 176 | + "text": "Bonjour, ceci est un test de synthèse vocale pour Chat SPBochet AI.", | ||||
| 177 | + "correct": true | ||||
| 178 | + }, | ||||
| 179 | + "gpt-4o-transcribe-diarize": { | ||||
| 180 | + "kind": "stt", | ||||
| 181 | + "ok": true, | ||||
| 182 | + "latencyMs": 2799, | ||||
| 183 | + "text": "Bonjour, ceci est un test de synthèse vocale pour Chat spbouche ai.", | ||||
| 184 | + "correct": true | ||||
| 185 | + }, | ||||
| 186 | + "gpt-audio": { | ||||
| 187 | + "kind": "audio-chat", | ||||
| 188 | + "ok": false, | ||||
| 189 | + "latencyMs": 122, | ||||
| 190 | + "error": "400 400 This model requires that either input content or output modality contain audio." | ||||
| 191 | + }, | ||||
| 192 | + "gpt-audio-mini": { | ||||
| 193 | + "kind": "audio-chat", | ||||
| 194 | + "ok": false, | ||||
| 195 | + "latencyMs": 132, | ||||
| 196 | + "error": "400 400 This model requires that either input content or output modality contain audio." | ||||
| 197 | + }, | ||||
| 198 | + "gpt-audio-1.5": { | ||||
| 199 | + "kind": "audio-chat", | ||||
| 200 | + "ok": false, | ||||
| 201 | + "latencyMs": 103, | ||||
| 202 | + "error": "400 400 This model requires that either input content or output modality contain audio." | ||||
| 203 | + }, | ||||
| 204 | + "text-embedding-3-small": { | ||||
| 205 | + "kind": "embedding", | ||||
| 206 | + "ok": true, | ||||
| 207 | + "latencyMs": 319, | ||||
| 208 | + "dims": 1536, | ||||
| 209 | + "usage": { | ||||
| 210 | + "prompt_tokens": 8, | ||||
| 211 | + "total_tokens": 8 | ||||
| 212 | + } | ||||
| 213 | + }, | ||||
| 214 | + "text-embedding-3-large": { | ||||
| 215 | + "kind": "embedding", | ||||
| 216 | + "ok": true, | ||||
| 217 | + "latencyMs": 215, | ||||
| 218 | + "dims": 3072, | ||||
| 219 | + "usage": { | ||||
| 220 | + "prompt_tokens": 8, | ||||
| 221 | + "total_tokens": 8 | ||||
| 222 | + } | ||||
| 223 | + }, | ||||
| 224 | + "text-embedding-ada-002": { | ||||
| 225 | + "kind": "embedding", | ||||
| 226 | + "ok": true, | ||||
| 227 | + "latencyMs": 162, | ||||
| 228 | + "dims": 1536, | ||||
| 229 | + "usage": { | ||||
| 230 | + "prompt_tokens": 8, | ||||
| 231 | + "total_tokens": 8 | ||||
| 232 | + } | ||||
| 233 | + }, | ||||
| 234 | + "omni-moderation-latest": { | ||||
| 235 | + "kind": "moderation", | ||||
| 236 | + "ok": true, | ||||
| 237 | + "latencyMs": 521, | ||||
| 238 | + "flagged": false | ||||
| 239 | + } | ||||
| 240 | + } | ||||
| 241 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/model-discovery.json
+1940 −0
@@ -0,0 +1,1940 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:01:15.888Z", | ||||
| 3 | + "openai": [ | ||||
| 4 | + { | ||||
| 5 | + "id": "babbage-002", | ||||
| 6 | + "owned_by": "system", | ||||
| 7 | + "created": 1692634615 | ||||
| 8 | + }, | ||||
| 9 | + { | ||||
| 10 | + "id": "chat-latest", | ||||
| 11 | + "owned_by": "system", | ||||
| 12 | + "created": 1777704602 | ||||
| 13 | + }, | ||||
| 14 | + { | ||||
| 15 | + "id": "chatgpt-image-latest", | ||||
| 16 | + "owned_by": "system", | ||||
| 17 | + "created": 1765925279 | ||||
| 18 | + }, | ||||
| 19 | + { | ||||
| 20 | + "id": "davinci-002", | ||||
| 21 | + "owned_by": "system", | ||||
| 22 | + "created": 1692634301 | ||||
| 23 | + }, | ||||
| 24 | + { | ||||
| 25 | + "id": "gpt-3.5-turbo", | ||||
| 26 | + "owned_by": "openai", | ||||
| 27 | + "created": 1677610602 | ||||
| 28 | + }, | ||||
| 29 | + { | ||||
| 30 | + "id": "gpt-3.5-turbo-0125", | ||||
| 31 | + "owned_by": "system", | ||||
| 32 | + "created": 1706048358 | ||||
| 33 | + }, | ||||
| 34 | + { | ||||
| 35 | + "id": "gpt-3.5-turbo-1106", | ||||
| 36 | + "owned_by": "system", | ||||
| 37 | + "created": 1698959748 | ||||
| 38 | + }, | ||||
| 39 | + { | ||||
| 40 | + "id": "gpt-3.5-turbo-16k", | ||||
| 41 | + "owned_by": "openai-internal", | ||||
| 42 | + "created": 1683758102 | ||||
| 43 | + }, | ||||
| 44 | + { | ||||
| 45 | + "id": "gpt-3.5-turbo-instruct", | ||||
| 46 | + "owned_by": "system", | ||||
| 47 | + "created": 1692901427 | ||||
| 48 | + }, | ||||
| 49 | + { | ||||
| 50 | + "id": "gpt-3.5-turbo-instruct-0914", | ||||
| 51 | + "owned_by": "system", | ||||
| 52 | + "created": 1694122472 | ||||
| 53 | + }, | ||||
| 54 | + { | ||||
| 55 | + "id": "gpt-4", | ||||
| 56 | + "owned_by": "openai", | ||||
| 57 | + "created": 1687882411 | ||||
| 58 | + }, | ||||
| 59 | + { | ||||
| 60 | + "id": "gpt-4-0613", | ||||
| 61 | + "owned_by": "openai", | ||||
| 62 | + "created": 1686588896 | ||||
| 63 | + }, | ||||
| 64 | + { | ||||
| 65 | + "id": "gpt-4-turbo", | ||||
| 66 | + "owned_by": "system", | ||||
| 67 | + "created": 1712361441 | ||||
| 68 | + }, | ||||
| 69 | + { | ||||
| 70 | + "id": "gpt-4-turbo-2024-04-09", | ||||
| 71 | + "owned_by": "system", | ||||
| 72 | + "created": 1712601677 | ||||
| 73 | + }, | ||||
| 74 | + { | ||||
| 75 | + "id": "gpt-4.1", | ||||
| 76 | + "owned_by": "system", | ||||
| 77 | + "created": 1744316542 | ||||
| 78 | + }, | ||||
| 79 | + { | ||||
| 80 | + "id": "gpt-4.1-2025-04-14", | ||||
| 81 | + "owned_by": "system", | ||||
| 82 | + "created": 1744315746 | ||||
| 83 | + }, | ||||
| 84 | + { | ||||
| 85 | + "id": "gpt-4.1-mini", | ||||
| 86 | + "owned_by": "system", | ||||
| 87 | + "created": 1744318173 | ||||
| 88 | + }, | ||||
| 89 | + { | ||||
| 90 | + "id": "gpt-4.1-mini-2025-04-14", | ||||
| 91 | + "owned_by": "system", | ||||
| 92 | + "created": 1744317547 | ||||
| 93 | + }, | ||||
| 94 | + { | ||||
| 95 | + "id": "gpt-4.1-nano", | ||||
| 96 | + "owned_by": "system", | ||||
| 97 | + "created": 1744321707 | ||||
| 98 | + }, | ||||
| 99 | + { | ||||
| 100 | + "id": "gpt-4.1-nano-2025-04-14", | ||||
| 101 | + "owned_by": "system", | ||||
| 102 | + "created": 1744321025 | ||||
| 103 | + }, | ||||
| 104 | + { | ||||
| 105 | + "id": "gpt-4o", | ||||
| 106 | + "owned_by": "system", | ||||
| 107 | + "created": 1715367049 | ||||
| 108 | + }, | ||||
| 109 | + { | ||||
| 110 | + "id": "gpt-4o-2024-05-13", | ||||
| 111 | + "owned_by": "system", | ||||
| 112 | + "created": 1715368132 | ||||
| 113 | + }, | ||||
| 114 | + { | ||||
| 115 | + "id": "gpt-4o-2024-08-06", | ||||
| 116 | + "owned_by": "system", | ||||
| 117 | + "created": 1722814719 | ||||
| 118 | + }, | ||||
| 119 | + { | ||||
| 120 | + "id": "gpt-4o-2024-11-20", | ||||
| 121 | + "owned_by": "system", | ||||
| 122 | + "created": 1739331543 | ||||
| 123 | + }, | ||||
| 124 | + { | ||||
| 125 | + "id": "gpt-4o-mini", | ||||
| 126 | + "owned_by": "system", | ||||
| 127 | + "created": 1721172741 | ||||
| 128 | + }, | ||||
| 129 | + { | ||||
| 130 | + "id": "gpt-4o-mini-2024-07-18", | ||||
| 131 | + "owned_by": "system", | ||||
| 132 | + "created": 1721172717 | ||||
| 133 | + }, | ||||
| 134 | + { | ||||
| 135 | + "id": "gpt-4o-mini-search-preview", | ||||
| 136 | + "owned_by": "system", | ||||
| 137 | + "created": 1741391161 | ||||
| 138 | + }, | ||||
| 139 | + { | ||||
| 140 | + "id": "gpt-4o-mini-search-preview-2025-03-11", | ||||
| 141 | + "owned_by": "system", | ||||
| 142 | + "created": 1741390858 | ||||
| 143 | + }, | ||||
| 144 | + { | ||||
| 145 | + "id": "gpt-4o-mini-transcribe", | ||||
| 146 | + "owned_by": "system", | ||||
| 147 | + "created": 1742068596 | ||||
| 148 | + }, | ||||
| 149 | + { | ||||
| 150 | + "id": "gpt-4o-mini-transcribe-2025-03-20", | ||||
| 151 | + "owned_by": "system", | ||||
| 152 | + "created": 1765610545 | ||||
| 153 | + }, | ||||
| 154 | + { | ||||
| 155 | + "id": "gpt-4o-mini-transcribe-2025-12-15", | ||||
| 156 | + "owned_by": "system", | ||||
| 157 | + "created": 1765610407 | ||||
| 158 | + }, | ||||
| 159 | + { | ||||
| 160 | + "id": "gpt-4o-mini-tts", | ||||
| 161 | + "owned_by": "system", | ||||
| 162 | + "created": 1742403959 | ||||
| 163 | + }, | ||||
| 164 | + { | ||||
| 165 | + "id": "gpt-4o-mini-tts-2025-03-20", | ||||
| 166 | + "owned_by": "system", | ||||
| 167 | + "created": 1765610731 | ||||
| 168 | + }, | ||||
| 169 | + { | ||||
| 170 | + "id": "gpt-4o-mini-tts-2025-12-15", | ||||
| 171 | + "owned_by": "system", | ||||
| 172 | + "created": 1765610837 | ||||
| 173 | + }, | ||||
| 174 | + { | ||||
| 175 | + "id": "gpt-4o-search-preview", | ||||
| 176 | + "owned_by": "system", | ||||
| 177 | + "created": 1771905534 | ||||
| 178 | + }, | ||||
| 179 | + { | ||||
| 180 | + "id": "gpt-4o-search-preview-2025-03-11", | ||||
| 181 | + "owned_by": "system", | ||||
| 182 | + "created": 1771905621 | ||||
| 183 | + }, | ||||
| 184 | + { | ||||
| 185 | + "id": "gpt-4o-transcribe", | ||||
| 186 | + "owned_by": "system", | ||||
| 187 | + "created": 1742068463 | ||||
| 188 | + }, | ||||
| 189 | + { | ||||
| 190 | + "id": "gpt-4o-transcribe-diarize", | ||||
| 191 | + "owned_by": "system", | ||||
| 192 | + "created": 1750798887 | ||||
| 193 | + }, | ||||
| 194 | + { | ||||
| 195 | + "id": "gpt-5", | ||||
| 196 | + "owned_by": "system", | ||||
| 197 | + "created": 1754425777 | ||||
| 198 | + }, | ||||
| 199 | + { | ||||
| 200 | + "id": "gpt-5-2025-08-07", | ||||
| 201 | + "owned_by": "system", | ||||
| 202 | + "created": 1754075360 | ||||
| 203 | + }, | ||||
| 204 | + { | ||||
| 205 | + "id": "gpt-5-chat-latest", | ||||
| 206 | + "owned_by": "system", | ||||
| 207 | + "created": 1754073306 | ||||
| 208 | + }, | ||||
| 209 | + { | ||||
| 210 | + "id": "gpt-5-codex", | ||||
| 211 | + "owned_by": "system", | ||||
| 212 | + "created": 1757527818 | ||||
| 213 | + }, | ||||
| 214 | + { | ||||
| 215 | + "id": "gpt-5-mini", | ||||
| 216 | + "owned_by": "system", | ||||
| 217 | + "created": 1754425928 | ||||
| 218 | + }, | ||||
| 219 | + { | ||||
| 220 | + "id": "gpt-5-mini-2025-08-07", | ||||
| 221 | + "owned_by": "system", | ||||
| 222 | + "created": 1754425867 | ||||
| 223 | + }, | ||||
| 224 | + { | ||||
| 225 | + "id": "gpt-5-nano", | ||||
| 226 | + "owned_by": "system", | ||||
| 227 | + "created": 1754426384 | ||||
| 228 | + }, | ||||
| 229 | + { | ||||
| 230 | + "id": "gpt-5-nano-2025-08-07", | ||||
| 231 | + "owned_by": "system", | ||||
| 232 | + "created": 1754426303 | ||||
| 233 | + }, | ||||
| 234 | + { | ||||
| 235 | + "id": "gpt-5-pro", | ||||
| 236 | + "owned_by": "system", | ||||
| 237 | + "created": 1759469822 | ||||
| 238 | + }, | ||||
| 239 | + { | ||||
| 240 | + "id": "gpt-5-pro-2025-10-06", | ||||
| 241 | + "owned_by": "system", | ||||
| 242 | + "created": 1759469707 | ||||
| 243 | + }, | ||||
| 244 | + { | ||||
| 245 | + "id": "gpt-5-search-api", | ||||
| 246 | + "owned_by": "system", | ||||
| 247 | + "created": 1759514629 | ||||
| 248 | + }, | ||||
| 249 | + { | ||||
| 250 | + "id": "gpt-5-search-api-2025-10-14", | ||||
| 251 | + "owned_by": "system", | ||||
| 252 | + "created": 1760043960 | ||||
| 253 | + }, | ||||
| 254 | + { | ||||
| 255 | + "id": "gpt-5.1", | ||||
| 256 | + "owned_by": "system", | ||||
| 257 | + "created": 1762800673 | ||||
| 258 | + }, | ||||
| 259 | + { | ||||
| 260 | + "id": "gpt-5.1-2025-11-13", | ||||
| 261 | + "owned_by": "system", | ||||
| 262 | + "created": 1762800353 | ||||
| 263 | + }, | ||||
| 264 | + { | ||||
| 265 | + "id": "gpt-5.1-chat-latest", | ||||
| 266 | + "owned_by": "system", | ||||
| 267 | + "created": 1762547951 | ||||
| 268 | + }, | ||||
| 269 | + { | ||||
| 270 | + "id": "gpt-5.1-codex", | ||||
| 271 | + "owned_by": "system", | ||||
| 272 | + "created": 1762988221 | ||||
| 273 | + }, | ||||
| 274 | + { | ||||
| 275 | + "id": "gpt-5.1-codex-max", | ||||
| 276 | + "owned_by": "system", | ||||
| 277 | + "created": 1763671532 | ||||
| 278 | + }, | ||||
| 279 | + { | ||||
| 280 | + "id": "gpt-5.1-codex-mini", | ||||
| 281 | + "owned_by": "system", | ||||
| 282 | + "created": 1763007109 | ||||
| 283 | + }, | ||||
| 284 | + { | ||||
| 285 | + "id": "gpt-5.2", | ||||
| 286 | + "owned_by": "system", | ||||
| 287 | + "created": 1765313051 | ||||
| 288 | + }, | ||||
| 289 | + { | ||||
| 290 | + "id": "gpt-5.2-2025-12-11", | ||||
| 291 | + "owned_by": "system", | ||||
| 292 | + "created": 1765313028 | ||||
| 293 | + }, | ||||
| 294 | + { | ||||
| 295 | + "id": "gpt-5.2-chat-latest", | ||||
| 296 | + "owned_by": "system", | ||||
| 297 | + "created": 1765344352 | ||||
| 298 | + }, | ||||
| 299 | + { | ||||
| 300 | + "id": "gpt-5.2-codex", | ||||
| 301 | + "owned_by": "system", | ||||
| 302 | + "created": 1766164985 | ||||
| 303 | + }, | ||||
| 304 | + { | ||||
| 305 | + "id": "gpt-5.2-pro", | ||||
| 306 | + "owned_by": "system", | ||||
| 307 | + "created": 1765343983 | ||||
| 308 | + }, | ||||
| 309 | + { | ||||
| 310 | + "id": "gpt-5.2-pro-2025-12-11", | ||||
| 311 | + "owned_by": "system", | ||||
| 312 | + "created": 1765343959 | ||||
| 313 | + }, | ||||
| 314 | + { | ||||
| 315 | + "id": "gpt-5.3-chat-latest", | ||||
| 316 | + "owned_by": "system", | ||||
| 317 | + "created": 1772236571 | ||||
| 318 | + }, | ||||
| 319 | + { | ||||
| 320 | + "id": "gpt-5.3-codex", | ||||
| 321 | + "owned_by": "system", | ||||
| 322 | + "created": 1770537915 | ||||
| 323 | + }, | ||||
| 324 | + { | ||||
| 325 | + "id": "gpt-5.4", | ||||
| 326 | + "owned_by": "system", | ||||
| 327 | + "created": 1772691852 | ||||
| 328 | + }, | ||||
| 329 | + { | ||||
| 330 | + "id": "gpt-5.4-2026-03-05", | ||||
| 331 | + "owned_by": "system", | ||||
| 332 | + "created": 1772654062 | ||||
| 333 | + }, | ||||
| 334 | + { | ||||
| 335 | + "id": "gpt-5.4-mini", | ||||
| 336 | + "owned_by": "system", | ||||
| 337 | + "created": 1773451123 | ||||
| 338 | + }, | ||||
| 339 | + { | ||||
| 340 | + "id": "gpt-5.4-mini-2026-03-17", | ||||
| 341 | + "owned_by": "system", | ||||
| 342 | + "created": 1773451076 | ||||
| 343 | + }, | ||||
| 344 | + { | ||||
| 345 | + "id": "gpt-5.4-nano", | ||||
| 346 | + "owned_by": "system", | ||||
| 347 | + "created": 1773450870 | ||||
| 348 | + }, | ||||
| 349 | + { | ||||
| 350 | + "id": "gpt-5.4-nano-2026-03-17", | ||||
| 351 | + "owned_by": "system", | ||||
| 352 | + "created": 1773450837 | ||||
| 353 | + }, | ||||
| 354 | + { | ||||
| 355 | + "id": "gpt-5.4-pro", | ||||
| 356 | + "owned_by": "system", | ||||
| 357 | + "created": 1772659601 | ||||
| 358 | + }, | ||||
| 359 | + { | ||||
| 360 | + "id": "gpt-5.4-pro-2026-03-05", | ||||
| 361 | + "owned_by": "system", | ||||
| 362 | + "created": 1772659657 | ||||
| 363 | + }, | ||||
| 364 | + { | ||||
| 365 | + "id": "gpt-5.5", | ||||
| 366 | + "owned_by": "system", | ||||
| 367 | + "created": 1776824847 | ||||
| 368 | + }, | ||||
| 369 | + { | ||||
| 370 | + "id": "gpt-5.5-2026-04-23", | ||||
| 371 | + "owned_by": "system", | ||||
| 372 | + "created": 1776839241 | ||||
| 373 | + }, | ||||
| 374 | + { | ||||
| 375 | + "id": "gpt-5.5-pro", | ||||
| 376 | + "owned_by": "system", | ||||
| 377 | + "created": 1776894349 | ||||
| 378 | + }, | ||||
| 379 | + { | ||||
| 380 | + "id": "gpt-5.5-pro-2026-04-23", | ||||
| 381 | + "owned_by": "system", | ||||
| 382 | + "created": 1776894470 | ||||
| 383 | + }, | ||||
| 384 | + { | ||||
| 385 | + "id": "gpt-5.6-luna", | ||||
| 386 | + "owned_by": "system", | ||||
| 387 | + "created": 1782228658 | ||||
| 388 | + }, | ||||
| 389 | + { | ||||
| 390 | + "id": "gpt-5.6-sol", | ||||
| 391 | + "owned_by": "system", | ||||
| 392 | + "created": 1782228018 | ||||
| 393 | + }, | ||||
| 394 | + { | ||||
| 395 | + "id": "gpt-5.6-terra", | ||||
| 396 | + "owned_by": "system", | ||||
| 397 | + "created": 1782228459 | ||||
| 398 | + }, | ||||
| 399 | + { | ||||
| 400 | + "id": "gpt-6-astra", | ||||
| 401 | + "owned_by": "system", | ||||
| 402 | + "created": 1787853604 | ||||
| 403 | + }, | ||||
| 404 | + { | ||||
| 405 | + "id": "gpt-6-luna", | ||||
| 406 | + "owned_by": "system", | ||||
| 407 | + "created": 1789406102 | ||||
| 408 | + }, | ||||
| 409 | + { | ||||
| 410 | + "id": "gpt-6-sol", | ||||
| 411 | + "owned_by": "system", | ||||
| 412 | + "created": 1789405937 | ||||
| 413 | + }, | ||||
| 414 | + { | ||||
| 415 | + "id": "gpt-6.1-sol", | ||||
| 416 | + "owned_by": "system", | ||||
| 417 | + "created": 1790552874 | ||||
| 418 | + }, | ||||
| 419 | + { | ||||
| 420 | + "id": "gpt-6.1-terra", | ||||
| 421 | + "owned_by": "system", | ||||
| 422 | + "created": 1791908780 | ||||
| 423 | + }, | ||||
| 424 | + { | ||||
| 425 | + "id": "gpt-audio", | ||||
| 426 | + "owned_by": "system", | ||||
| 427 | + "created": 1756339249 | ||||
| 428 | + }, | ||||
| 429 | + { | ||||
| 430 | + "id": "gpt-audio-1.5", | ||||
| 431 | + "owned_by": "system", | ||||
| 432 | + "created": 1771550885 | ||||
| 433 | + }, | ||||
| 434 | + { | ||||
| 435 | + "id": "gpt-audio-2025-08-28", | ||||
| 436 | + "owned_by": "system", | ||||
| 437 | + "created": 1756256146 | ||||
| 438 | + }, | ||||
| 439 | + { | ||||
| 440 | + "id": "gpt-audio-mini", | ||||
| 441 | + "owned_by": "system", | ||||
| 442 | + "created": 1759512027 | ||||
| 443 | + }, | ||||
| 444 | + { | ||||
| 445 | + "id": "gpt-audio-mini-2025-10-06", | ||||
| 446 | + "owned_by": "system", | ||||
| 447 | + "created": 1759512137 | ||||
| 448 | + }, | ||||
| 449 | + { | ||||
| 450 | + "id": "gpt-audio-mini-2025-12-15", | ||||
| 451 | + "owned_by": "system", | ||||
| 452 | + "created": 1765760008 | ||||
| 453 | + }, | ||||
| 454 | + { | ||||
| 455 | + "id": "gpt-image-1", | ||||
| 456 | + "owned_by": "system", | ||||
| 457 | + "created": 1745517030 | ||||
| 458 | + }, | ||||
| 459 | + { | ||||
| 460 | + "id": "gpt-image-1-mini", | ||||
| 461 | + "owned_by": "system", | ||||
| 462 | + "created": 1758845821 | ||||
| 463 | + }, | ||||
| 464 | + { | ||||
| 465 | + "id": "gpt-image-1.5", | ||||
| 466 | + "owned_by": "system", | ||||
| 467 | + "created": 1764030620 | ||||
| 468 | + }, | ||||
| 469 | + { | ||||
| 470 | + "id": "gpt-image-2", | ||||
| 471 | + "owned_by": "system", | ||||
| 472 | + "created": 1776399795 | ||||
| 473 | + }, | ||||
| 474 | + { | ||||
| 475 | + "id": "gpt-image-2-2026-04-21", | ||||
| 476 | + "owned_by": "system", | ||||
| 477 | + "created": 1776399994 | ||||
| 478 | + }, | ||||
| 479 | + { | ||||
| 480 | + "id": "gpt-image-2.5-flare", | ||||
| 481 | + "owned_by": "system", | ||||
| 482 | + "created": 1788563147 | ||||
| 483 | + }, | ||||
| 484 | + { | ||||
| 485 | + "id": "gpt-image-2.5-flare-2026-09-08", | ||||
| 486 | + "owned_by": "system", | ||||
| 487 | + "created": 1788851006 | ||||
| 488 | + }, | ||||
| 489 | + { | ||||
| 490 | + "id": "gpt-image-2.5-sunburst", | ||||
| 491 | + "owned_by": "system", | ||||
| 492 | + "created": 1788563162 | ||||
| 493 | + }, | ||||
| 494 | + { | ||||
| 495 | + "id": "gpt-image-2.5-sunburst-2026-09-08", | ||||
| 496 | + "owned_by": "system", | ||||
| 497 | + "created": 1788851010 | ||||
| 498 | + }, | ||||
| 499 | + { | ||||
| 500 | + "id": "gpt-live-1", | ||||
| 501 | + "owned_by": "system", | ||||
| 502 | + "created": 1788889407 | ||||
| 503 | + }, | ||||
| 504 | + { | ||||
| 505 | + "id": "gpt-live-transcribe", | ||||
| 506 | + "owned_by": "system", | ||||
| 507 | + "created": 1785168034 | ||||
| 508 | + }, | ||||
| 509 | + { | ||||
| 510 | + "id": "gpt-realtime", | ||||
| 511 | + "owned_by": "system", | ||||
| 512 | + "created": 1756271701 | ||||
| 513 | + }, | ||||
| 514 | + { | ||||
| 515 | + "id": "gpt-realtime-1.5", | ||||
| 516 | + "owned_by": "system", | ||||
| 517 | + "created": 1771461469 | ||||
| 518 | + }, | ||||
| 519 | + { | ||||
| 520 | + "id": "gpt-realtime-2", | ||||
| 521 | + "owned_by": "system", | ||||
| 522 | + "created": 1778006032 | ||||
| 523 | + }, | ||||
| 524 | + { | ||||
| 525 | + "id": "gpt-realtime-2.1", | ||||
| 526 | + "owned_by": "system", | ||||
| 527 | + "created": 1782254687 | ||||
| 528 | + }, | ||||
| 529 | + { | ||||
| 530 | + "id": "gpt-realtime-2.1-mini", | ||||
| 531 | + "owned_by": "system", | ||||
| 532 | + "created": 1782254706 | ||||
| 533 | + }, | ||||
| 534 | + { | ||||
| 535 | + "id": "gpt-realtime-2025-08-28", | ||||
| 536 | + "owned_by": "system", | ||||
| 537 | + "created": 1756271773 | ||||
| 538 | + }, | ||||
| 539 | + { | ||||
| 540 | + "id": "gpt-realtime-mini", | ||||
| 541 | + "owned_by": "system", | ||||
| 542 | + "created": 1759517133 | ||||
| 543 | + }, | ||||
| 544 | + { | ||||
| 545 | + "id": "gpt-realtime-mini-2025-12-15", | ||||
| 546 | + "owned_by": "system", | ||||
| 547 | + "created": 1765612007 | ||||
| 548 | + }, | ||||
| 549 | + { | ||||
| 550 | + "id": "gpt-realtime-translate", | ||||
| 551 | + "owned_by": "system", | ||||
| 552 | + "created": 1777950216 | ||||
| 553 | + }, | ||||
| 554 | + { | ||||
| 555 | + "id": "gpt-realtime-whisper", | ||||
| 556 | + "owned_by": "system", | ||||
| 557 | + "created": 1778012060 | ||||
| 558 | + }, | ||||
| 559 | + { | ||||
| 560 | + "id": "gpt-transcribe", | ||||
| 561 | + "owned_by": "system", | ||||
| 562 | + "created": 1785168027 | ||||
| 563 | + }, | ||||
| 564 | + { | ||||
| 565 | + "id": "o1", | ||||
| 566 | + "owned_by": "system", | ||||
| 567 | + "created": 1734375816 | ||||
| 568 | + }, | ||||
| 569 | + { | ||||
| 570 | + "id": "o1-2024-12-17", | ||||
| 571 | + "owned_by": "system", | ||||
| 572 | + "created": 1734326976 | ||||
| 573 | + }, | ||||
| 574 | + { | ||||
| 575 | + "id": "o1-pro", | ||||
| 576 | + "owned_by": "system", | ||||
| 577 | + "created": 1742251791 | ||||
| 578 | + }, | ||||
| 579 | + { | ||||
| 580 | + "id": "o1-pro-2025-03-19", | ||||
| 581 | + "owned_by": "system", | ||||
| 582 | + "created": 1742251504 | ||||
| 583 | + }, | ||||
| 584 | + { | ||||
| 585 | + "id": "o3", | ||||
| 586 | + "owned_by": "system", | ||||
| 587 | + "created": 1744225308 | ||||
| 588 | + }, | ||||
| 589 | + { | ||||
| 590 | + "id": "o3-2025-04-16", | ||||
| 591 | + "owned_by": "system", | ||||
| 592 | + "created": 1744133301 | ||||
| 593 | + }, | ||||
| 594 | + { | ||||
| 595 | + "id": "o3-deep-research", | ||||
| 596 | + "owned_by": "system", | ||||
| 597 | + "created": 1749840121 | ||||
| 598 | + }, | ||||
| 599 | + { | ||||
| 600 | + "id": "o3-deep-research-2025-06-26", | ||||
| 601 | + "owned_by": "system", | ||||
| 602 | + "created": 1750865219 | ||||
| 603 | + }, | ||||
| 604 | + { | ||||
| 605 | + "id": "o3-mini", | ||||
| 606 | + "owned_by": "system", | ||||
| 607 | + "created": 1737146383 | ||||
| 608 | + }, | ||||
| 609 | + { | ||||
| 610 | + "id": "o3-mini-2025-01-31", | ||||
| 611 | + "owned_by": "system", | ||||
| 612 | + "created": 1738010200 | ||||
| 613 | + }, | ||||
| 614 | + { | ||||
| 615 | + "id": "o3-pro", | ||||
| 616 | + "owned_by": "system", | ||||
| 617 | + "created": 1748475349 | ||||
| 618 | + }, | ||||
| 619 | + { | ||||
| 620 | + "id": "o3-pro-2025-06-10", | ||||
| 621 | + "owned_by": "system", | ||||
| 622 | + "created": 1749166761 | ||||
| 623 | + }, | ||||
| 624 | + { | ||||
| 625 | + "id": "o4-mini", | ||||
| 626 | + "owned_by": "system", | ||||
| 627 | + "created": 1744225351 | ||||
| 628 | + }, | ||||
| 629 | + { | ||||
| 630 | + "id": "o4-mini-2025-04-16", | ||||
| 631 | + "owned_by": "system", | ||||
| 632 | + "created": 1744133506 | ||||
| 633 | + }, | ||||
| 634 | + { | ||||
| 635 | + "id": "o4-mini-deep-research", | ||||
| 636 | + "owned_by": "system", | ||||
| 637 | + "created": 1749685485 | ||||
| 638 | + }, | ||||
| 639 | + { | ||||
| 640 | + "id": "o4-mini-deep-research-2025-06-26", | ||||
| 641 | + "owned_by": "system", | ||||
| 642 | + "created": 1750866121 | ||||
| 643 | + }, | ||||
| 644 | + { | ||||
| 645 | + "id": "omni-moderation-2024-09-26", | ||||
| 646 | + "owned_by": "system", | ||||
| 647 | + "created": 1732734466 | ||||
| 648 | + }, | ||||
| 649 | + { | ||||
| 650 | + "id": "omni-moderation-latest", | ||||
| 651 | + "owned_by": "system", | ||||
| 652 | + "created": 1731689265 | ||||
| 653 | + }, | ||||
| 654 | + { | ||||
| 655 | + "id": "sora-2", | ||||
| 656 | + "owned_by": "system", | ||||
| 657 | + "created": 1759708615 | ||||
| 658 | + }, | ||||
| 659 | + { | ||||
| 660 | + "id": "sora-2-pro", | ||||
| 661 | + "owned_by": "system", | ||||
| 662 | + "created": 1759708663 | ||||
| 663 | + }, | ||||
| 664 | + { | ||||
| 665 | + "id": "text-embedding-3-large", | ||||
| 666 | + "owned_by": "system", | ||||
| 667 | + "created": 1705953180 | ||||
| 668 | + }, | ||||
| 669 | + { | ||||
| 670 | + "id": "text-embedding-3-small", | ||||
| 671 | + "owned_by": "system", | ||||
| 672 | + "created": 1705948997 | ||||
| 673 | + }, | ||||
| 674 | + { | ||||
| 675 | + "id": "text-embedding-ada-002", | ||||
| 676 | + "owned_by": "openai-internal", | ||||
| 677 | + "created": 1671217299 | ||||
| 678 | + }, | ||||
| 679 | + { | ||||
| 680 | + "id": "tts-1", | ||||
| 681 | + "owned_by": "openai-internal", | ||||
| 682 | + "created": 1681940951 | ||||
| 683 | + }, | ||||
| 684 | + { | ||||
| 685 | + "id": "tts-1-1106", | ||||
| 686 | + "owned_by": "system", | ||||
| 687 | + "created": 1699053241 | ||||
| 688 | + }, | ||||
| 689 | + { | ||||
| 690 | + "id": "tts-1-hd", | ||||
| 691 | + "owned_by": "system", | ||||
| 692 | + "created": 1699046015 | ||||
| 693 | + }, | ||||
| 694 | + { | ||||
| 695 | + "id": "tts-1-hd-1106", | ||||
| 696 | + "owned_by": "system", | ||||
| 697 | + "created": 1699053533 | ||||
| 698 | + }, | ||||
| 699 | + { | ||||
| 700 | + "id": "whisper-1", | ||||
| 701 | + "owned_by": "openai-internal", | ||||
| 702 | + "created": 1677532384 | ||||
| 703 | + } | ||||
| 704 | + ], | ||||
| 705 | + "anthropic": [ | ||||
| 706 | + { | ||||
| 707 | + "type": "model", | ||||
| 708 | + "id": "claude-fable-5", | ||||
| 709 | + "display_name": "Claude Fable 5", | ||||
| 710 | + "created_at": "2026-06-07T00:00:00Z", | ||||
| 711 | + "line": "fable", | ||||
| 712 | + "max_input_tokens": 1000000, | ||||
| 713 | + "max_tokens": 128000, | ||||
| 714 | + "capabilities": { | ||||
| 715 | + "batch": { | ||||
| 716 | + "supported": true | ||||
| 717 | + }, | ||||
| 718 | + "citations": { | ||||
| 719 | + "supported": true | ||||
| 720 | + }, | ||||
| 721 | + "code_execution": { | ||||
| 722 | + "supported": true | ||||
| 723 | + }, | ||||
| 724 | + "context_management": { | ||||
| 725 | + "supported": true, | ||||
| 726 | + "clear_tool_uses_20250919": { | ||||
| 727 | + "supported": true | ||||
| 728 | + }, | ||||
| 729 | + "clear_thinking_20251015": { | ||||
| 730 | + "supported": true | ||||
| 731 | + }, | ||||
| 732 | + "compact_20260112": { | ||||
| 733 | + "supported": true | ||||
| 734 | + } | ||||
| 735 | + }, | ||||
| 736 | + "effort": { | ||||
| 737 | + "supported": true, | ||||
| 738 | + "low": { | ||||
| 739 | + "supported": true | ||||
| 740 | + }, | ||||
| 741 | + "medium": { | ||||
| 742 | + "supported": true | ||||
| 743 | + }, | ||||
| 744 | + "high": { | ||||
| 745 | + "supported": true | ||||
| 746 | + }, | ||||
| 747 | + "xhigh": { | ||||
| 748 | + "supported": true | ||||
| 749 | + }, | ||||
| 750 | + "max": { | ||||
| 751 | + "supported": true | ||||
| 752 | + } | ||||
| 753 | + }, | ||||
| 754 | + "image_input": { | ||||
| 755 | + "supported": true | ||||
| 756 | + }, | ||||
| 757 | + "pdf_input": { | ||||
| 758 | + "supported": true | ||||
| 759 | + }, | ||||
| 760 | + "server_tools": { | ||||
| 761 | + "supported": true, | ||||
| 762 | + "code_execution": { | ||||
| 763 | + "supported": true | ||||
| 764 | + }, | ||||
| 765 | + "web_search": { | ||||
| 766 | + "supported": true | ||||
| 767 | + } | ||||
| 768 | + }, | ||||
| 769 | + "structured_outputs": { | ||||
| 770 | + "supported": true | ||||
| 771 | + }, | ||||
| 772 | + "thinking": { | ||||
| 773 | + "supported": true, | ||||
| 774 | + "types": { | ||||
| 775 | + "enabled": { | ||||
| 776 | + "supported": false | ||||
| 777 | + }, | ||||
| 778 | + "adaptive": { | ||||
| 779 | + "supported": true | ||||
| 780 | + }, | ||||
| 781 | + "disabled": { | ||||
| 782 | + "supported": false | ||||
| 783 | + }, | ||||
| 784 | + "between_tools": { | ||||
| 785 | + "supported": false | ||||
| 786 | + } | ||||
| 787 | + } | ||||
| 788 | + } | ||||
| 789 | + }, | ||||
| 790 | + "lifecycle": "active", | ||||
| 791 | + "deprecated_at": null, | ||||
| 792 | + "retires_at": null | ||||
| 793 | + }, | ||||
| 794 | + { | ||||
| 795 | + "type": "model", | ||||
| 796 | + "id": "claude-fable-5-1", | ||||
| 797 | + "display_name": "Claude Fable 5.1", | ||||
| 798 | + "created_at": "2026-08-28T00:00:00Z", | ||||
| 799 | + "line": "fable", | ||||
| 800 | + "max_input_tokens": 1000000, | ||||
| 801 | + "max_tokens": 128000, | ||||
| 802 | + "capabilities": { | ||||
| 803 | + "batch": { | ||||
| 804 | + "supported": true | ||||
| 805 | + }, | ||||
| 806 | + "citations": { | ||||
| 807 | + "supported": true | ||||
| 808 | + }, | ||||
| 809 | + "code_execution": { | ||||
| 810 | + "supported": true | ||||
| 811 | + }, | ||||
| 812 | + "context_management": { | ||||
| 813 | + "supported": true, | ||||
| 814 | + "clear_tool_uses_20250919": { | ||||
| 815 | + "supported": true | ||||
| 816 | + }, | ||||
| 817 | + "clear_thinking_20251015": { | ||||
| 818 | + "supported": true | ||||
| 819 | + }, | ||||
| 820 | + "compact_20260112": { | ||||
| 821 | + "supported": true | ||||
| 822 | + } | ||||
| 823 | + }, | ||||
| 824 | + "effort": { | ||||
| 825 | + "supported": true, | ||||
| 826 | + "low": { | ||||
| 827 | + "supported": true | ||||
| 828 | + }, | ||||
| 829 | + "medium": { | ||||
| 830 | + "supported": true | ||||
| 831 | + }, | ||||
| 832 | + "high": { | ||||
| 833 | + "supported": true | ||||
| 834 | + }, | ||||
| 835 | + "xhigh": { | ||||
| 836 | + "supported": true | ||||
| 837 | + }, | ||||
| 838 | + "max": { | ||||
| 839 | + "supported": true | ||||
| 840 | + } | ||||
| 841 | + }, | ||||
| 842 | + "image_input": { | ||||
| 843 | + "supported": true | ||||
| 844 | + }, | ||||
| 845 | + "pdf_input": { | ||||
| 846 | + "supported": true | ||||
| 847 | + }, | ||||
| 848 | + "server_tools": { | ||||
| 849 | + "supported": true, | ||||
| 850 | + "code_execution": { | ||||
| 851 | + "supported": true | ||||
| 852 | + }, | ||||
| 853 | + "web_search": { | ||||
| 854 | + "supported": true | ||||
| 855 | + } | ||||
| 856 | + }, | ||||
| 857 | + "structured_outputs": { | ||||
| 858 | + "supported": true | ||||
| 859 | + }, | ||||
| 860 | + "thinking": { | ||||
| 861 | + "supported": true, | ||||
| 862 | + "types": { | ||||
| 863 | + "enabled": { | ||||
| 864 | + "supported": false | ||||
| 865 | + }, | ||||
| 866 | + "adaptive": { | ||||
| 867 | + "supported": true | ||||
| 868 | + }, | ||||
| 869 | + "disabled": { | ||||
| 870 | + "supported": false | ||||
| 871 | + }, | ||||
| 872 | + "between_tools": { | ||||
| 873 | + "supported": false | ||||
| 874 | + } | ||||
| 875 | + } | ||||
| 876 | + } | ||||
| 877 | + }, | ||||
| 878 | + "lifecycle": "active", | ||||
| 879 | + "deprecated_at": null, | ||||
| 880 | + "retires_at": null | ||||
| 881 | + }, | ||||
| 882 | + { | ||||
| 883 | + "type": "model", | ||||
| 884 | + "id": "claude-haiku-4-5-20251001", | ||||
| 885 | + "display_name": "Claude Haiku 4.5", | ||||
| 886 | + "created_at": "2025-10-15T00:00:00Z", | ||||
| 887 | + "line": "haiku", | ||||
| 888 | + "max_input_tokens": 200000, | ||||
| 889 | + "max_tokens": 64000, | ||||
| 890 | + "capabilities": { | ||||
| 891 | + "batch": { | ||||
| 892 | + "supported": true | ||||
| 893 | + }, | ||||
| 894 | + "citations": { | ||||
| 895 | + "supported": true | ||||
| 896 | + }, | ||||
| 897 | + "code_execution": { | ||||
| 898 | + "supported": false | ||||
| 899 | + }, | ||||
| 900 | + "context_management": { | ||||
| 901 | + "supported": true, | ||||
| 902 | + "clear_tool_uses_20250919": { | ||||
| 903 | + "supported": true | ||||
| 904 | + }, | ||||
| 905 | + "clear_thinking_20251015": { | ||||
| 906 | + "supported": true | ||||
| 907 | + }, | ||||
| 908 | + "compact_20260112": { | ||||
| 909 | + "supported": false | ||||
| 910 | + } | ||||
| 911 | + }, | ||||
| 912 | + "effort": { | ||||
| 913 | + "supported": false, | ||||
| 914 | + "low": { | ||||
| 915 | + "supported": false | ||||
| 916 | + }, | ||||
| 917 | + "medium": { | ||||
| 918 | + "supported": false | ||||
| 919 | + }, | ||||
| 920 | + "high": { | ||||
| 921 | + "supported": false | ||||
| 922 | + }, | ||||
| 923 | + "xhigh": { | ||||
| 924 | + "supported": false | ||||
| 925 | + }, | ||||
| 926 | + "max": { | ||||
| 927 | + "supported": false | ||||
| 928 | + } | ||||
| 929 | + }, | ||||
| 930 | + "image_input": { | ||||
| 931 | + "supported": true | ||||
| 932 | + }, | ||||
| 933 | + "pdf_input": { | ||||
| 934 | + "supported": true | ||||
| 935 | + }, | ||||
| 936 | + "server_tools": { | ||||
| 937 | + "supported": true, | ||||
| 938 | + "code_execution": { | ||||
| 939 | + "supported": true | ||||
| 940 | + }, | ||||
| 941 | + "web_search": { | ||||
| 942 | + "supported": true | ||||
| 943 | + } | ||||
| 944 | + }, | ||||
| 945 | + "structured_outputs": { | ||||
| 946 | + "supported": true | ||||
| 947 | + }, | ||||
| 948 | + "thinking": { | ||||
| 949 | + "supported": true, | ||||
| 950 | + "types": { | ||||
| 951 | + "enabled": { | ||||
| 952 | + "supported": true | ||||
| 953 | + }, | ||||
| 954 | + "adaptive": { | ||||
| 955 | + "supported": false | ||||
| 956 | + }, | ||||
| 957 | + "disabled": { | ||||
| 958 | + "supported": true | ||||
| 959 | + }, | ||||
| 960 | + "between_tools": { | ||||
| 961 | + "supported": false | ||||
| 962 | + } | ||||
| 963 | + } | ||||
| 964 | + } | ||||
| 965 | + }, | ||||
| 966 | + "lifecycle": "active", | ||||
| 967 | + "deprecated_at": null, | ||||
| 968 | + "retires_at": null | ||||
| 969 | + }, | ||||
| 970 | + { | ||||
| 971 | + "type": "model", | ||||
| 972 | + "id": "claude-haiku-5-5", | ||||
| 973 | + "display_name": "Claude Haiku 5.5", | ||||
| 974 | + "created_at": "2026-10-07T18:00:00Z", | ||||
| 975 | + "line": "haiku", | ||||
| 976 | + "max_input_tokens": 1000000, | ||||
| 977 | + "max_tokens": 128000, | ||||
| 978 | + "capabilities": { | ||||
| 979 | + "batch": { | ||||
| 980 | + "supported": true | ||||
| 981 | + }, | ||||
| 982 | + "citations": { | ||||
| 983 | + "supported": true | ||||
| 984 | + }, | ||||
| 985 | + "code_execution": { | ||||
| 986 | + "supported": true | ||||
| 987 | + }, | ||||
| 988 | + "context_management": { | ||||
| 989 | + "supported": true, | ||||
| 990 | + "clear_tool_uses_20250919": { | ||||
| 991 | + "supported": true | ||||
| 992 | + }, | ||||
| 993 | + "clear_thinking_20251015": { | ||||
| 994 | + "supported": true | ||||
| 995 | + }, | ||||
| 996 | + "compact_20260112": { | ||||
| 997 | + "supported": true | ||||
| 998 | + } | ||||
| 999 | + }, | ||||
| 1000 | + "effort": { | ||||
| 1001 | + "supported": true, | ||||
| 1002 | + "low": { | ||||
| 1003 | + "supported": true | ||||
| 1004 | + }, | ||||
| 1005 | + "medium": { | ||||
| 1006 | + "supported": true | ||||
| 1007 | + }, | ||||
| 1008 | + "high": { | ||||
| 1009 | + "supported": true | ||||
| 1010 | + }, | ||||
| 1011 | + "xhigh": { | ||||
| 1012 | + "supported": true | ||||
| 1013 | + }, | ||||
| 1014 | + "max": { | ||||
| 1015 | + "supported": true | ||||
| 1016 | + } | ||||
| 1017 | + }, | ||||
| 1018 | + "image_input": { | ||||
| 1019 | + "supported": true | ||||
| 1020 | + }, | ||||
| 1021 | + "pdf_input": { | ||||
| 1022 | + "supported": true | ||||
| 1023 | + }, | ||||
| 1024 | + "server_tools": { | ||||
| 1025 | + "supported": true, | ||||
| 1026 | + "code_execution": { | ||||
| 1027 | + "supported": true | ||||
| 1028 | + }, | ||||
| 1029 | + "web_search": { | ||||
| 1030 | + "supported": true | ||||
| 1031 | + } | ||||
| 1032 | + }, | ||||
| 1033 | + "structured_outputs": { | ||||
| 1034 | + "supported": true | ||||
| 1035 | + }, | ||||
| 1036 | + "thinking": { | ||||
| 1037 | + "supported": true, | ||||
| 1038 | + "types": { | ||||
| 1039 | + "enabled": { | ||||
| 1040 | + "supported": false | ||||
| 1041 | + }, | ||||
| 1042 | + "adaptive": { | ||||
| 1043 | + "supported": true | ||||
| 1044 | + }, | ||||
| 1045 | + "disabled": { | ||||
| 1046 | + "supported": true | ||||
| 1047 | + }, | ||||
| 1048 | + "between_tools": { | ||||
| 1049 | + "supported": false | ||||
| 1050 | + } | ||||
| 1051 | + } | ||||
| 1052 | + } | ||||
| 1053 | + }, | ||||
| 1054 | + "lifecycle": "active", | ||||
| 1055 | + "deprecated_at": null, | ||||
| 1056 | + "retires_at": null | ||||
| 1057 | + }, | ||||
| 1058 | + { | ||||
| 1059 | + "type": "model", | ||||
| 1060 | + "id": "claude-opus-4-5-20251101", | ||||
| 1061 | + "display_name": "Claude Opus 4.5", | ||||
| 1062 | + "created_at": "2025-11-24T00:00:00Z", | ||||
| 1063 | + "line": "opus", | ||||
| 1064 | + "max_input_tokens": 200000, | ||||
| 1065 | + "max_tokens": 64000, | ||||
| 1066 | + "capabilities": { | ||||
| 1067 | + "batch": { | ||||
| 1068 | + "supported": true | ||||
| 1069 | + }, | ||||
| 1070 | + "citations": { | ||||
| 1071 | + "supported": true | ||||
| 1072 | + }, | ||||
| 1073 | + "code_execution": { | ||||
| 1074 | + "supported": true | ||||
| 1075 | + }, | ||||
| 1076 | + "context_management": { | ||||
| 1077 | + "supported": true, | ||||
| 1078 | + "clear_tool_uses_20250919": { | ||||
| 1079 | + "supported": true | ||||
| 1080 | + }, | ||||
| 1081 | + "clear_thinking_20251015": { | ||||
| 1082 | + "supported": true | ||||
| 1083 | + }, | ||||
| 1084 | + "compact_20260112": { | ||||
| 1085 | + "supported": false | ||||
| 1086 | + } | ||||
| 1087 | + }, | ||||
| 1088 | + "effort": { | ||||
| 1089 | + "supported": true, | ||||
| 1090 | + "low": { | ||||
| 1091 | + "supported": true | ||||
| 1092 | + }, | ||||
| 1093 | + "medium": { | ||||
| 1094 | + "supported": true | ||||
| 1095 | + }, | ||||
| 1096 | + "high": { | ||||
| 1097 | + "supported": true | ||||
| 1098 | + }, | ||||
| 1099 | + "xhigh": { | ||||
| 1100 | + "supported": false | ||||
| 1101 | + }, | ||||
| 1102 | + "max": { | ||||
| 1103 | + "supported": false | ||||
| 1104 | + } | ||||
| 1105 | + }, | ||||
| 1106 | + "image_input": { | ||||
| 1107 | + "supported": true | ||||
| 1108 | + }, | ||||
| 1109 | + "pdf_input": { | ||||
| 1110 | + "supported": true | ||||
| 1111 | + }, | ||||
| 1112 | + "server_tools": { | ||||
| 1113 | + "supported": true, | ||||
| 1114 | + "code_execution": { | ||||
| 1115 | + "supported": true | ||||
| 1116 | + }, | ||||
| 1117 | + "web_search": { | ||||
| 1118 | + "supported": true | ||||
| 1119 | + } | ||||
| 1120 | + }, | ||||
| 1121 | + "structured_outputs": { | ||||
| 1122 | + "supported": true | ||||
| 1123 | + }, | ||||
| 1124 | + "thinking": { | ||||
| 1125 | + "supported": true, | ||||
| 1126 | + "types": { | ||||
| 1127 | + "enabled": { | ||||
| 1128 | + "supported": true | ||||
| 1129 | + }, | ||||
| 1130 | + "adaptive": { | ||||
| 1131 | + "supported": false | ||||
| 1132 | + }, | ||||
| 1133 | + "disabled": { | ||||
| 1134 | + "supported": true | ||||
| 1135 | + }, | ||||
| 1136 | + "between_tools": { | ||||
| 1137 | + "supported": false | ||||
| 1138 | + } | ||||
| 1139 | + } | ||||
| 1140 | + } | ||||
| 1141 | + }, | ||||
| 1142 | + "lifecycle": "active", | ||||
| 1143 | + "deprecated_at": null, | ||||
| 1144 | + "retires_at": null | ||||
| 1145 | + }, | ||||
| 1146 | + { | ||||
| 1147 | + "type": "model", | ||||
| 1148 | + "id": "claude-opus-4-6", | ||||
| 1149 | + "display_name": "Claude Opus 4.6", | ||||
| 1150 | + "created_at": "2026-02-04T00:00:00Z", | ||||
| 1151 | + "line": "opus", | ||||
| 1152 | + "max_input_tokens": 1000000, | ||||
| 1153 | + "max_tokens": 128000, | ||||
| 1154 | + "capabilities": { | ||||
| 1155 | + "batch": { | ||||
| 1156 | + "supported": true | ||||
| 1157 | + }, | ||||
| 1158 | + "citations": { | ||||
| 1159 | + "supported": true | ||||
| 1160 | + }, | ||||
| 1161 | + "code_execution": { | ||||
| 1162 | + "supported": true | ||||
| 1163 | + }, | ||||
| 1164 | + "context_management": { | ||||
| 1165 | + "supported": true, | ||||
| 1166 | + "clear_tool_uses_20250919": { | ||||
| 1167 | + "supported": true | ||||
| 1168 | + }, | ||||
| 1169 | + "clear_thinking_20251015": { | ||||
| 1170 | + "supported": true | ||||
| 1171 | + }, | ||||
| 1172 | + "compact_20260112": { | ||||
| 1173 | + "supported": true | ||||
| 1174 | + } | ||||
| 1175 | + }, | ||||
| 1176 | + "effort": { | ||||
| 1177 | + "supported": true, | ||||
| 1178 | + "low": { | ||||
| 1179 | + "supported": true | ||||
| 1180 | + }, | ||||
| 1181 | + "medium": { | ||||
| 1182 | + "supported": true | ||||
| 1183 | + }, | ||||
| 1184 | + "high": { | ||||
| 1185 | + "supported": true | ||||
| 1186 | + }, | ||||
| 1187 | + "xhigh": { | ||||
| 1188 | + "supported": false | ||||
| 1189 | + }, | ||||
| 1190 | + "max": { | ||||
| 1191 | + "supported": true | ||||
| 1192 | + } | ||||
| 1193 | + }, | ||||
| 1194 | + "image_input": { | ||||
| 1195 | + "supported": true | ||||
| 1196 | + }, | ||||
| 1197 | + "pdf_input": { | ||||
| 1198 | + "supported": true | ||||
| 1199 | + }, | ||||
| 1200 | + "server_tools": { | ||||
| 1201 | + "supported": true, | ||||
| 1202 | + "code_execution": { | ||||
| 1203 | + "supported": true | ||||
| 1204 | + }, | ||||
| 1205 | + "web_search": { | ||||
| 1206 | + "supported": true | ||||
| 1207 | + } | ||||
| 1208 | + }, | ||||
| 1209 | + "structured_outputs": { | ||||
| 1210 | + "supported": true | ||||
| 1211 | + }, | ||||
| 1212 | + "thinking": { | ||||
| 1213 | + "supported": true, | ||||
| 1214 | + "types": { | ||||
| 1215 | + "enabled": { | ||||
| 1216 | + "supported": true | ||||
| 1217 | + }, | ||||
| 1218 | + "adaptive": { | ||||
| 1219 | + "supported": true | ||||
| 1220 | + }, | ||||
| 1221 | + "disabled": { | ||||
| 1222 | + "supported": true | ||||
| 1223 | + }, | ||||
| 1224 | + "between_tools": { | ||||
| 1225 | + "supported": false | ||||
| 1226 | + } | ||||
| 1227 | + } | ||||
| 1228 | + } | ||||
| 1229 | + }, | ||||
| 1230 | + "lifecycle": "active", | ||||
| 1231 | + "deprecated_at": null, | ||||
| 1232 | + "retires_at": null | ||||
| 1233 | + }, | ||||
| 1234 | + { | ||||
| 1235 | + "type": "model", | ||||
| 1236 | + "id": "claude-opus-4-7", | ||||
| 1237 | + "display_name": "Claude Opus 4.7", | ||||
| 1238 | + "created_at": "2026-04-14T00:00:00Z", | ||||
| 1239 | + "line": "opus", | ||||
| 1240 | + "max_input_tokens": 1000000, | ||||
| 1241 | + "max_tokens": 128000, | ||||
| 1242 | + "capabilities": { | ||||
| 1243 | + "batch": { | ||||
| 1244 | + "supported": true | ||||
| 1245 | + }, | ||||
| 1246 | + "citations": { | ||||
| 1247 | + "supported": true | ||||
| 1248 | + }, | ||||
| 1249 | + "code_execution": { | ||||
| 1250 | + "supported": true | ||||
| 1251 | + }, | ||||
| 1252 | + "context_management": { | ||||
| 1253 | + "supported": true, | ||||
| 1254 | + "clear_tool_uses_20250919": { | ||||
| 1255 | + "supported": true | ||||
| 1256 | + }, | ||||
| 1257 | + "clear_thinking_20251015": { | ||||
| 1258 | + "supported": true | ||||
| 1259 | + }, | ||||
| 1260 | + "compact_20260112": { | ||||
| 1261 | + "supported": true | ||||
| 1262 | + } | ||||
| 1263 | + }, | ||||
| 1264 | + "effort": { | ||||
| 1265 | + "supported": true, | ||||
| 1266 | + "low": { | ||||
| 1267 | + "supported": true | ||||
| 1268 | + }, | ||||
| 1269 | + "medium": { | ||||
| 1270 | + "supported": true | ||||
| 1271 | + }, | ||||
| 1272 | + "high": { | ||||
| 1273 | + "supported": true | ||||
| 1274 | + }, | ||||
| 1275 | + "xhigh": { | ||||
| 1276 | + "supported": true | ||||
| 1277 | + }, | ||||
| 1278 | + "max": { | ||||
| 1279 | + "supported": true | ||||
| 1280 | + } | ||||
| 1281 | + }, | ||||
| 1282 | + "image_input": { | ||||
| 1283 | + "supported": true | ||||
| 1284 | + }, | ||||
| 1285 | + "pdf_input": { | ||||
| 1286 | + "supported": true | ||||
| 1287 | + }, | ||||
| 1288 | + "server_tools": { | ||||
| 1289 | + "supported": true, | ||||
| 1290 | + "code_execution": { | ||||
| 1291 | + "supported": true | ||||
| 1292 | + }, | ||||
| 1293 | + "web_search": { | ||||
| 1294 | + "supported": true | ||||
| 1295 | + } | ||||
| 1296 | + }, | ||||
| 1297 | + "structured_outputs": { | ||||
| 1298 | + "supported": true | ||||
| 1299 | + }, | ||||
| 1300 | + "thinking": { | ||||
| 1301 | + "supported": true, | ||||
| 1302 | + "types": { | ||||
| 1303 | + "enabled": { | ||||
| 1304 | + "supported": false | ||||
| 1305 | + }, | ||||
| 1306 | + "adaptive": { | ||||
| 1307 | + "supported": true | ||||
| 1308 | + }, | ||||
| 1309 | + "disabled": { | ||||
| 1310 | + "supported": true | ||||
| 1311 | + }, | ||||
| 1312 | + "between_tools": { | ||||
| 1313 | + "supported": false | ||||
| 1314 | + } | ||||
| 1315 | + } | ||||
| 1316 | + } | ||||
| 1317 | + }, | ||||
| 1318 | + "lifecycle": "active", | ||||
| 1319 | + "deprecated_at": null, | ||||
| 1320 | + "retires_at": null | ||||
| 1321 | + }, | ||||
| 1322 | + { | ||||
| 1323 | + "type": "model", | ||||
| 1324 | + "id": "claude-opus-4-8", | ||||
| 1325 | + "display_name": "Claude Opus 4.8", | ||||
| 1326 | + "created_at": "2026-05-28T00:00:00Z", | ||||
| 1327 | + "line": "opus", | ||||
| 1328 | + "max_input_tokens": 1000000, | ||||
| 1329 | + "max_tokens": 128000, | ||||
| 1330 | + "capabilities": { | ||||
| 1331 | + "batch": { | ||||
| 1332 | + "supported": true | ||||
| 1333 | + }, | ||||
| 1334 | + "citations": { | ||||
| 1335 | + "supported": true | ||||
| 1336 | + }, | ||||
| 1337 | + "code_execution": { | ||||
| 1338 | + "supported": true | ||||
| 1339 | + }, | ||||
| 1340 | + "context_management": { | ||||
| 1341 | + "supported": true, | ||||
| 1342 | + "clear_tool_uses_20250919": { | ||||
| 1343 | + "supported": true | ||||
| 1344 | + }, | ||||
| 1345 | + "clear_thinking_20251015": { | ||||
| 1346 | + "supported": true | ||||
| 1347 | + }, | ||||
| 1348 | + "compact_20260112": { | ||||
| 1349 | + "supported": true | ||||
| 1350 | + } | ||||
| 1351 | + }, | ||||
| 1352 | + "effort": { | ||||
| 1353 | + "supported": true, | ||||
| 1354 | + "low": { | ||||
| 1355 | + "supported": true | ||||
| 1356 | + }, | ||||
| 1357 | + "medium": { | ||||
| 1358 | + "supported": true | ||||
| 1359 | + }, | ||||
| 1360 | + "high": { | ||||
| 1361 | + "supported": true | ||||
| 1362 | + }, | ||||
| 1363 | + "xhigh": { | ||||
| 1364 | + "supported": true | ||||
| 1365 | + }, | ||||
| 1366 | + "max": { | ||||
| 1367 | + "supported": true | ||||
| 1368 | + } | ||||
| 1369 | + }, | ||||
| 1370 | + "image_input": { | ||||
| 1371 | + "supported": true | ||||
| 1372 | + }, | ||||
| 1373 | + "pdf_input": { | ||||
| 1374 | + "supported": true | ||||
| 1375 | + }, | ||||
| 1376 | + "server_tools": { | ||||
| 1377 | + "supported": true, | ||||
| 1378 | + "code_execution": { | ||||
| 1379 | + "supported": true | ||||
| 1380 | + }, | ||||
| 1381 | + "web_search": { | ||||
| 1382 | + "supported": true | ||||
| 1383 | + } | ||||
| 1384 | + }, | ||||
| 1385 | + "structured_outputs": { | ||||
| 1386 | + "supported": true | ||||
| 1387 | + }, | ||||
| 1388 | + "thinking": { | ||||
| 1389 | + "supported": true, | ||||
| 1390 | + "types": { | ||||
| 1391 | + "enabled": { | ||||
| 1392 | + "supported": false | ||||
| 1393 | + }, | ||||
| 1394 | + "adaptive": { | ||||
| 1395 | + "supported": true | ||||
| 1396 | + }, | ||||
| 1397 | + "disabled": { | ||||
| 1398 | + "supported": true | ||||
| 1399 | + }, | ||||
| 1400 | + "between_tools": { | ||||
| 1401 | + "supported": false | ||||
| 1402 | + } | ||||
| 1403 | + } | ||||
| 1404 | + } | ||||
| 1405 | + }, | ||||
| 1406 | + "lifecycle": "active", | ||||
| 1407 | + "deprecated_at": null, | ||||
| 1408 | + "retires_at": null | ||||
| 1409 | + }, | ||||
| 1410 | + { | ||||
| 1411 | + "type": "model", | ||||
| 1412 | + "id": "claude-opus-5", | ||||
| 1413 | + "display_name": "Claude Opus 5", | ||||
| 1414 | + "created_at": "2026-07-24T00:00:00Z", | ||||
| 1415 | + "line": "opus", | ||||
| 1416 | + "max_input_tokens": 1000000, | ||||
| 1417 | + "max_tokens": 128000, | ||||
| 1418 | + "capabilities": { | ||||
| 1419 | + "batch": { | ||||
| 1420 | + "supported": true | ||||
| 1421 | + }, | ||||
| 1422 | + "citations": { | ||||
| 1423 | + "supported": true | ||||
| 1424 | + }, | ||||
| 1425 | + "code_execution": { | ||||
| 1426 | + "supported": true | ||||
| 1427 | + }, | ||||
| 1428 | + "context_management": { | ||||
| 1429 | + "supported": true, | ||||
| 1430 | + "clear_tool_uses_20250919": { | ||||
| 1431 | + "supported": true | ||||
| 1432 | + }, | ||||
| 1433 | + "clear_thinking_20251015": { | ||||
| 1434 | + "supported": true | ||||
| 1435 | + }, | ||||
| 1436 | + "compact_20260112": { | ||||
| 1437 | + "supported": true | ||||
| 1438 | + } | ||||
| 1439 | + }, | ||||
| 1440 | + "effort": { | ||||
| 1441 | + "supported": true, | ||||
| 1442 | + "low": { | ||||
| 1443 | + "supported": true | ||||
| 1444 | + }, | ||||
| 1445 | + "medium": { | ||||
| 1446 | + "supported": true | ||||
| 1447 | + }, | ||||
| 1448 | + "high": { | ||||
| 1449 | + "supported": true | ||||
| 1450 | + }, | ||||
| 1451 | + "xhigh": { | ||||
| 1452 | + "supported": true | ||||
| 1453 | + }, | ||||
| 1454 | + "max": { | ||||
| 1455 | + "supported": true | ||||
| 1456 | + } | ||||
| 1457 | + }, | ||||
| 1458 | + "image_input": { | ||||
| 1459 | + "supported": true | ||||
| 1460 | + }, | ||||
| 1461 | + "pdf_input": { | ||||
| 1462 | + "supported": true | ||||
| 1463 | + }, | ||||
| 1464 | + "server_tools": { | ||||
| 1465 | + "supported": true, | ||||
| 1466 | + "code_execution": { | ||||
| 1467 | + "supported": true | ||||
| 1468 | + }, | ||||
| 1469 | + "web_search": { | ||||
| 1470 | + "supported": true | ||||
| 1471 | + } | ||||
| 1472 | + }, | ||||
| 1473 | + "structured_outputs": { | ||||
| 1474 | + "supported": true | ||||
| 1475 | + }, | ||||
| 1476 | + "thinking": { | ||||
| 1477 | + "supported": true, | ||||
| 1478 | + "types": { | ||||
| 1479 | + "enabled": { | ||||
| 1480 | + "supported": false | ||||
| 1481 | + }, | ||||
| 1482 | + "adaptive": { | ||||
| 1483 | + "supported": true | ||||
| 1484 | + }, | ||||
| 1485 | + "disabled": { | ||||
| 1486 | + "supported": true | ||||
| 1487 | + }, | ||||
| 1488 | + "between_tools": { | ||||
| 1489 | + "supported": false | ||||
| 1490 | + } | ||||
| 1491 | + } | ||||
| 1492 | + } | ||||
| 1493 | + }, | ||||
| 1494 | + "lifecycle": "active", | ||||
| 1495 | + "deprecated_at": null, | ||||
| 1496 | + "retires_at": null | ||||
| 1497 | + }, | ||||
| 1498 | + { | ||||
| 1499 | + "type": "model", | ||||
| 1500 | + "id": "claude-opus-5-5", | ||||
| 1501 | + "display_name": "Claude Opus 5.5", | ||||
| 1502 | + "created_at": "2026-09-21T16:24:00Z", | ||||
| 1503 | + "line": "opus", | ||||
| 1504 | + "max_input_tokens": 1000000, | ||||
| 1505 | + "max_tokens": 128000, | ||||
| 1506 | + "capabilities": { | ||||
| 1507 | + "batch": { | ||||
| 1508 | + "supported": true | ||||
| 1509 | + }, | ||||
| 1510 | + "citations": { | ||||
| 1511 | + "supported": true | ||||
| 1512 | + }, | ||||
| 1513 | + "code_execution": { | ||||
| 1514 | + "supported": true | ||||
| 1515 | + }, | ||||
| 1516 | + "context_management": { | ||||
| 1517 | + "supported": true, | ||||
| 1518 | + "clear_tool_uses_20250919": { | ||||
| 1519 | + "supported": true | ||||
| 1520 | + }, | ||||
| 1521 | + "clear_thinking_20251015": { | ||||
| 1522 | + "supported": true | ||||
| 1523 | + }, | ||||
| 1524 | + "compact_20260112": { | ||||
| 1525 | + "supported": true | ||||
| 1526 | + } | ||||
| 1527 | + }, | ||||
| 1528 | + "effort": { | ||||
| 1529 | + "supported": true, | ||||
| 1530 | + "low": { | ||||
| 1531 | + "supported": true | ||||
| 1532 | + }, | ||||
| 1533 | + "medium": { | ||||
| 1534 | + "supported": true | ||||
| 1535 | + }, | ||||
| 1536 | + "high": { | ||||
| 1537 | + "supported": true | ||||
| 1538 | + }, | ||||
| 1539 | + "xhigh": { | ||||
| 1540 | + "supported": true | ||||
| 1541 | + }, | ||||
| 1542 | + "max": { | ||||
| 1543 | + "supported": true | ||||
| 1544 | + } | ||||
| 1545 | + }, | ||||
| 1546 | + "image_input": { | ||||
| 1547 | + "supported": true | ||||
| 1548 | + }, | ||||
| 1549 | + "pdf_input": { | ||||
| 1550 | + "supported": true | ||||
| 1551 | + }, | ||||
| 1552 | + "server_tools": { | ||||
| 1553 | + "supported": true, | ||||
| 1554 | + "code_execution": { | ||||
| 1555 | + "supported": true | ||||
| 1556 | + }, | ||||
| 1557 | + "web_search": { | ||||
| 1558 | + "supported": true | ||||
| 1559 | + } | ||||
| 1560 | + }, | ||||
| 1561 | + "structured_outputs": { | ||||
| 1562 | + "supported": true | ||||
| 1563 | + }, | ||||
| 1564 | + "thinking": { | ||||
| 1565 | + "supported": true, | ||||
| 1566 | + "types": { | ||||
| 1567 | + "enabled": { | ||||
| 1568 | + "supported": false | ||||
| 1569 | + }, | ||||
| 1570 | + "adaptive": { | ||||
| 1571 | + "supported": true | ||||
| 1572 | + }, | ||||
| 1573 | + "disabled": { | ||||
| 1574 | + "supported": false | ||||
| 1575 | + }, | ||||
| 1576 | + "between_tools": { | ||||
| 1577 | + "supported": false | ||||
| 1578 | + } | ||||
| 1579 | + } | ||||
| 1580 | + } | ||||
| 1581 | + }, | ||||
| 1582 | + "lifecycle": "active", | ||||
| 1583 | + "deprecated_at": null, | ||||
| 1584 | + "retires_at": null | ||||
| 1585 | + }, | ||||
| 1586 | + { | ||||
| 1587 | + "type": "model", | ||||
| 1588 | + "id": "claude-sonnet-4-5-20250929", | ||||
| 1589 | + "display_name": "Claude Sonnet 4.5", | ||||
| 1590 | + "created_at": "2025-09-29T00:00:00Z", | ||||
| 1591 | + "line": "sonnet", | ||||
| 1592 | + "max_input_tokens": 200000, | ||||
| 1593 | + "max_tokens": 64000, | ||||
| 1594 | + "capabilities": { | ||||
| 1595 | + "batch": { | ||||
| 1596 | + "supported": true | ||||
| 1597 | + }, | ||||
| 1598 | + "citations": { | ||||
| 1599 | + "supported": true | ||||
| 1600 | + }, | ||||
| 1601 | + "code_execution": { | ||||
| 1602 | + "supported": true | ||||
| 1603 | + }, | ||||
| 1604 | + "context_management": { | ||||
| 1605 | + "supported": true, | ||||
| 1606 | + "clear_tool_uses_20250919": { | ||||
| 1607 | + "supported": true | ||||
| 1608 | + }, | ||||
| 1609 | + "clear_thinking_20251015": { | ||||
| 1610 | + "supported": true | ||||
| 1611 | + }, | ||||
| 1612 | + "compact_20260112": { | ||||
| 1613 | + "supported": false | ||||
| 1614 | + } | ||||
| 1615 | + }, | ||||
| 1616 | + "effort": { | ||||
| 1617 | + "supported": false, | ||||
| 1618 | + "low": { | ||||
| 1619 | + "supported": false | ||||
| 1620 | + }, | ||||
| 1621 | + "medium": { | ||||
| 1622 | + "supported": false | ||||
| 1623 | + }, | ||||
| 1624 | + "high": { | ||||
| 1625 | + "supported": false | ||||
| 1626 | + }, | ||||
| 1627 | + "xhigh": { | ||||
| 1628 | + "supported": false | ||||
| 1629 | + }, | ||||
| 1630 | + "max": { | ||||
| 1631 | + "supported": false | ||||
| 1632 | + } | ||||
| 1633 | + }, | ||||
| 1634 | + "image_input": { | ||||
| 1635 | + "supported": true | ||||
| 1636 | + }, | ||||
| 1637 | + "pdf_input": { | ||||
| 1638 | + "supported": true | ||||
| 1639 | + }, | ||||
| 1640 | + "server_tools": { | ||||
| 1641 | + "supported": true, | ||||
| 1642 | + "code_execution": { | ||||
| 1643 | + "supported": true | ||||
| 1644 | + }, | ||||
| 1645 | + "web_search": { | ||||
| 1646 | + "supported": true | ||||
| 1647 | + } | ||||
| 1648 | + }, | ||||
| 1649 | + "structured_outputs": { | ||||
| 1650 | + "supported": true | ||||
| 1651 | + }, | ||||
| 1652 | + "thinking": { | ||||
| 1653 | + "supported": true, | ||||
| 1654 | + "types": { | ||||
| 1655 | + "enabled": { | ||||
| 1656 | + "supported": true | ||||
| 1657 | + }, | ||||
| 1658 | + "adaptive": { | ||||
| 1659 | + "supported": false | ||||
| 1660 | + }, | ||||
| 1661 | + "disabled": { | ||||
| 1662 | + "supported": true | ||||
| 1663 | + }, | ||||
| 1664 | + "between_tools": { | ||||
| 1665 | + "supported": false | ||||
| 1666 | + } | ||||
| 1667 | + } | ||||
| 1668 | + } | ||||
| 1669 | + }, | ||||
| 1670 | + "lifecycle": "deprecated", | ||||
| 1671 | + "deprecated_at": "2026-09-30T18:30:00Z", | ||||
| 1672 | + "retires_at": "2026-11-30T17:00:00Z" | ||||
| 1673 | + }, | ||||
| 1674 | + { | ||||
| 1675 | + "type": "model", | ||||
| 1676 | + "id": "claude-sonnet-4-6", | ||||
| 1677 | + "display_name": "Claude Sonnet 4.6", | ||||
| 1678 | + "created_at": "2026-02-17T00:00:00Z", | ||||
| 1679 | + "line": "sonnet", | ||||
| 1680 | + "max_input_tokens": 1000000, | ||||
| 1681 | + "max_tokens": 128000, | ||||
| 1682 | + "capabilities": { | ||||
| 1683 | + "batch": { | ||||
| 1684 | + "supported": true | ||||
| 1685 | + }, | ||||
| 1686 | + "citations": { | ||||
| 1687 | + "supported": true | ||||
| 1688 | + }, | ||||
| 1689 | + "code_execution": { | ||||
| 1690 | + "supported": true | ||||
| 1691 | + }, | ||||
| 1692 | + "context_management": { | ||||
| 1693 | + "supported": true, | ||||
| 1694 | + "clear_tool_uses_20250919": { | ||||
| 1695 | + "supported": true | ||||
| 1696 | + }, | ||||
| 1697 | + "clear_thinking_20251015": { | ||||
| 1698 | + "supported": true | ||||
| 1699 | + }, | ||||
| 1700 | + "compact_20260112": { | ||||
| 1701 | + "supported": true | ||||
| 1702 | + } | ||||
| 1703 | + }, | ||||
| 1704 | + "effort": { | ||||
| 1705 | + "supported": true, | ||||
| 1706 | + "low": { | ||||
| 1707 | + "supported": true | ||||
| 1708 | + }, | ||||
| 1709 | + "medium": { | ||||
| 1710 | + "supported": true | ||||
| 1711 | + }, | ||||
| 1712 | + "high": { | ||||
| 1713 | + "supported": true | ||||
| 1714 | + }, | ||||
| 1715 | + "xhigh": { | ||||
| 1716 | + "supported": false | ||||
| 1717 | + }, | ||||
| 1718 | + "max": { | ||||
| 1719 | + "supported": true | ||||
| 1720 | + } | ||||
| 1721 | + }, | ||||
| 1722 | + "image_input": { | ||||
| 1723 | + "supported": true | ||||
| 1724 | + }, | ||||
| 1725 | + "pdf_input": { | ||||
| 1726 | + "supported": true | ||||
| 1727 | + }, | ||||
| 1728 | + "server_tools": { | ||||
| 1729 | + "supported": true, | ||||
| 1730 | + "code_execution": { | ||||
| 1731 | + "supported": true | ||||
| 1732 | + }, | ||||
| 1733 | + "web_search": { | ||||
| 1734 | + "supported": true | ||||
| 1735 | + } | ||||
| 1736 | + }, | ||||
| 1737 | + "structured_outputs": { | ||||
| 1738 | + "supported": true | ||||
| 1739 | + }, | ||||
| 1740 | + "thinking": { | ||||
| 1741 | + "supported": true, | ||||
| 1742 | + "types": { | ||||
| 1743 | + "enabled": { | ||||
| 1744 | + "supported": true | ||||
| 1745 | + }, | ||||
| 1746 | + "adaptive": { | ||||
| 1747 | + "supported": true | ||||
| 1748 | + }, | ||||
| 1749 | + "disabled": { | ||||
| 1750 | + "supported": true | ||||
| 1751 | + }, | ||||
| 1752 | + "between_tools": { | ||||
| 1753 | + "supported": false | ||||
| 1754 | + } | ||||
| 1755 | + } | ||||
| 1756 | + } | ||||
| 1757 | + }, | ||||
| 1758 | + "lifecycle": "active", | ||||
| 1759 | + "deprecated_at": null, | ||||
| 1760 | + "retires_at": null | ||||
| 1761 | + }, | ||||
| 1762 | + { | ||||
| 1763 | + "type": "model", | ||||
| 1764 | + "id": "claude-sonnet-5", | ||||
| 1765 | + "display_name": "Claude Sonnet 5", | ||||
| 1766 | + "created_at": "2026-06-29T00:00:00Z", | ||||
| 1767 | + "line": "sonnet", | ||||
| 1768 | + "max_input_tokens": 1000000, | ||||
| 1769 | + "max_tokens": 128000, | ||||
| 1770 | + "capabilities": { | ||||
| 1771 | + "batch": { | ||||
| 1772 | + "supported": true | ||||
| 1773 | + }, | ||||
| 1774 | + "citations": { | ||||
| 1775 | + "supported": true | ||||
| 1776 | + }, | ||||
| 1777 | + "code_execution": { | ||||
| 1778 | + "supported": true | ||||
| 1779 | + }, | ||||
| 1780 | + "context_management": { | ||||
| 1781 | + "supported": true, | ||||
| 1782 | + "clear_tool_uses_20250919": { | ||||
| 1783 | + "supported": true | ||||
| 1784 | + }, | ||||
| 1785 | + "clear_thinking_20251015": { | ||||
| 1786 | + "supported": true | ||||
| 1787 | + }, | ||||
| 1788 | + "compact_20260112": { | ||||
| 1789 | + "supported": true | ||||
| 1790 | + } | ||||
| 1791 | + }, | ||||
| 1792 | + "effort": { | ||||
| 1793 | + "supported": true, | ||||
| 1794 | + "low": { | ||||
| 1795 | + "supported": true | ||||
| 1796 | + }, | ||||
| 1797 | + "medium": { | ||||
| 1798 | + "supported": true | ||||
| 1799 | + }, | ||||
| 1800 | + "high": { | ||||
| 1801 | + "supported": true | ||||
| 1802 | + }, | ||||
| 1803 | + "xhigh": { | ||||
| 1804 | + "supported": true | ||||
| 1805 | + }, | ||||
| 1806 | + "max": { | ||||
| 1807 | + "supported": true | ||||
| 1808 | + } | ||||
| 1809 | + }, | ||||
| 1810 | + "image_input": { | ||||
| 1811 | + "supported": true | ||||
| 1812 | + }, | ||||
| 1813 | + "pdf_input": { | ||||
| 1814 | + "supported": true | ||||
| 1815 | + }, | ||||
| 1816 | + "server_tools": { | ||||
| 1817 | + "supported": true, | ||||
| 1818 | + "code_execution": { | ||||
| 1819 | + "supported": true | ||||
| 1820 | + }, | ||||
| 1821 | + "web_search": { | ||||
| 1822 | + "supported": true | ||||
| 1823 | + } | ||||
| 1824 | + }, | ||||
| 1825 | + "structured_outputs": { | ||||
| 1826 | + "supported": true | ||||
| 1827 | + }, | ||||
| 1828 | + "thinking": { | ||||
| 1829 | + "supported": true, | ||||
| 1830 | + "types": { | ||||
| 1831 | + "enabled": { | ||||
| 1832 | + "supported": false | ||||
| 1833 | + }, | ||||
| 1834 | + "adaptive": { | ||||
| 1835 | + "supported": true | ||||
| 1836 | + }, | ||||
| 1837 | + "disabled": { | ||||
| 1838 | + "supported": true | ||||
| 1839 | + }, | ||||
| 1840 | + "between_tools": { | ||||
| 1841 | + "supported": false | ||||
| 1842 | + } | ||||
| 1843 | + } | ||||
| 1844 | + } | ||||
| 1845 | + }, | ||||
| 1846 | + "lifecycle": "active", | ||||
| 1847 | + "deprecated_at": null, | ||||
| 1848 | + "retires_at": null | ||||
| 1849 | + }, | ||||
| 1850 | + { | ||||
| 1851 | + "type": "model", | ||||
| 1852 | + "id": "claude-sonnet-5-5", | ||||
| 1853 | + "display_name": "Claude Sonnet 5.5", | ||||
| 1854 | + "created_at": "2026-09-28T00:00:00Z", | ||||
| 1855 | + "line": "sonnet", | ||||
| 1856 | + "max_input_tokens": 1000000, | ||||
| 1857 | + "max_tokens": 128000, | ||||
| 1858 | + "capabilities": { | ||||
| 1859 | + "batch": { | ||||
| 1860 | + "supported": true | ||||
| 1861 | + }, | ||||
| 1862 | + "citations": { | ||||
| 1863 | + "supported": true | ||||
| 1864 | + }, | ||||
| 1865 | + "code_execution": { | ||||
| 1866 | + "supported": true | ||||
| 1867 | + }, | ||||
| 1868 | + "context_management": { | ||||
| 1869 | + "supported": true, | ||||
| 1870 | + "clear_tool_uses_20250919": { | ||||
| 1871 | + "supported": true | ||||
| 1872 | + }, | ||||
| 1873 | + "clear_thinking_20251015": { | ||||
| 1874 | + "supported": true | ||||
| 1875 | + }, | ||||
| 1876 | + "compact_20260112": { | ||||
| 1877 | + "supported": true | ||||
| 1878 | + } | ||||
| 1879 | + }, | ||||
| 1880 | + "effort": { | ||||
| 1881 | + "supported": true, | ||||
| 1882 | + "low": { | ||||
| 1883 | + "supported": true | ||||
| 1884 | + }, | ||||
| 1885 | + "medium": { | ||||
| 1886 | + "supported": true | ||||
| 1887 | + }, | ||||
| 1888 | + "high": { | ||||
| 1889 | + "supported": true | ||||
| 1890 | + }, | ||||
| 1891 | + "xhigh": { | ||||
| 1892 | + "supported": true | ||||
| 1893 | + }, | ||||
| 1894 | + "max": { | ||||
| 1895 | + "supported": true | ||||
| 1896 | + } | ||||
| 1897 | + }, | ||||
| 1898 | + "image_input": { | ||||
| 1899 | + "supported": true | ||||
| 1900 | + }, | ||||
| 1901 | + "pdf_input": { | ||||
| 1902 | + "supported": true | ||||
| 1903 | + }, | ||||
| 1904 | + "server_tools": { | ||||
| 1905 | + "supported": true, | ||||
| 1906 | + "code_execution": { | ||||
| 1907 | + "supported": true | ||||
| 1908 | + }, | ||||
| 1909 | + "web_search": { | ||||
| 1910 | + "supported": true | ||||
| 1911 | + } | ||||
| 1912 | + }, | ||||
| 1913 | + "structured_outputs": { | ||||
| 1914 | + "supported": true | ||||
| 1915 | + }, | ||||
| 1916 | + "thinking": { | ||||
| 1917 | + "supported": true, | ||||
| 1918 | + "types": { | ||||
| 1919 | + "enabled": { | ||||
| 1920 | + "supported": false | ||||
| 1921 | + }, | ||||
| 1922 | + "adaptive": { | ||||
| 1923 | + "supported": true | ||||
| 1924 | + }, | ||||
| 1925 | + "disabled": { | ||||
| 1926 | + "supported": false | ||||
| 1927 | + }, | ||||
| 1928 | + "between_tools": { | ||||
| 1929 | + "supported": true | ||||
| 1930 | + } | ||||
| 1931 | + } | ||||
| 1932 | + } | ||||
| 1933 | + }, | ||||
| 1934 | + "lifecycle": "active", | ||||
| 1935 | + "deprecated_at": null, | ||||
| 1936 | + "retires_at": null | ||||
| 1937 | + } | ||||
| 1938 | + ], | ||||
| 1939 | + "errors": {} | ||||
| 1940 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/openai-results.json
+5869 −0
@@ -0,0 +1,5869 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:18:11.428Z", | ||||
| 3 | + "provider": "openai", | ||||
| 4 | + "budgetUsd": 2, | ||||
| 5 | + "stoppedByBudget": false, | ||||
| 6 | + "models": { | ||||
| 7 | + "babbage-002": { | ||||
| 8 | + "provider": "openai", | ||||
| 9 | + "kind": "legacy-completion", | ||||
| 10 | + "tests": [] | ||||
| 11 | + }, | ||||
| 12 | + "chatgpt-image-latest": { | ||||
| 13 | + "provider": "openai", | ||||
| 14 | + "kind": "image", | ||||
| 15 | + "tests": [] | ||||
| 16 | + }, | ||||
| 17 | + "davinci-002": { | ||||
| 18 | + "provider": "openai", | ||||
| 19 | + "kind": "legacy-completion", | ||||
| 20 | + "tests": [] | ||||
| 21 | + }, | ||||
| 22 | + "gpt-3.5-turbo-instruct": { | ||||
| 23 | + "provider": "openai", | ||||
| 24 | + "kind": "legacy-completion", | ||||
| 25 | + "tests": [] | ||||
| 26 | + }, | ||||
| 27 | + "gpt-3.5-turbo-instruct-0914": { | ||||
| 28 | + "provider": "openai", | ||||
| 29 | + "kind": "legacy-completion", | ||||
| 30 | + "tests": [] | ||||
| 31 | + }, | ||||
| 32 | + "gpt-4o-mini-transcribe": { | ||||
| 33 | + "provider": "openai", | ||||
| 34 | + "kind": "stt", | ||||
| 35 | + "tests": [] | ||||
| 36 | + }, | ||||
| 37 | + "gpt-4o-mini-tts": { | ||||
| 38 | + "provider": "openai", | ||||
| 39 | + "kind": "tts", | ||||
| 40 | + "tests": [] | ||||
| 41 | + }, | ||||
| 42 | + "gpt-4o-transcribe": { | ||||
| 43 | + "provider": "openai", | ||||
| 44 | + "kind": "stt", | ||||
| 45 | + "tests": [] | ||||
| 46 | + }, | ||||
| 47 | + "gpt-4o-transcribe-diarize": { | ||||
| 48 | + "provider": "openai", | ||||
| 49 | + "kind": "stt", | ||||
| 50 | + "tests": [] | ||||
| 51 | + }, | ||||
| 52 | + "gpt-audio": { | ||||
| 53 | + "provider": "openai", | ||||
| 54 | + "kind": "audio-chat", | ||||
| 55 | + "tests": [] | ||||
| 56 | + }, | ||||
| 57 | + "gpt-audio-1.5": { | ||||
| 58 | + "provider": "openai", | ||||
| 59 | + "kind": "audio-chat", | ||||
| 60 | + "tests": [] | ||||
| 61 | + }, | ||||
| 62 | + "gpt-audio-mini": { | ||||
| 63 | + "provider": "openai", | ||||
| 64 | + "kind": "audio-chat", | ||||
| 65 | + "tests": [] | ||||
| 66 | + }, | ||||
| 67 | + "gpt-image-1": { | ||||
| 68 | + "provider": "openai", | ||||
| 69 | + "kind": "image", | ||||
| 70 | + "tests": [] | ||||
| 71 | + }, | ||||
| 72 | + "gpt-image-1-mini": { | ||||
| 73 | + "provider": "openai", | ||||
| 74 | + "kind": "image", | ||||
| 75 | + "tests": [] | ||||
| 76 | + }, | ||||
| 77 | + "gpt-image-1.5": { | ||||
| 78 | + "provider": "openai", | ||||
| 79 | + "kind": "image", | ||||
| 80 | + "tests": [] | ||||
| 81 | + }, | ||||
| 82 | + "gpt-image-2": { | ||||
| 83 | + "provider": "openai", | ||||
| 84 | + "kind": "image", | ||||
| 85 | + "tests": [] | ||||
| 86 | + }, | ||||
| 87 | + "gpt-image-2.5-flare": { | ||||
| 88 | + "provider": "openai", | ||||
| 89 | + "kind": "image", | ||||
| 90 | + "tests": [] | ||||
| 91 | + }, | ||||
| 92 | + "gpt-image-2.5-sunburst": { | ||||
| 93 | + "provider": "openai", | ||||
| 94 | + "kind": "image", | ||||
| 95 | + "tests": [] | ||||
| 96 | + }, | ||||
| 97 | + "gpt-live-1": { | ||||
| 98 | + "provider": "openai", | ||||
| 99 | + "kind": "realtime", | ||||
| 100 | + "tests": [] | ||||
| 101 | + }, | ||||
| 102 | + "gpt-live-transcribe": { | ||||
| 103 | + "provider": "openai", | ||||
| 104 | + "kind": "realtime", | ||||
| 105 | + "tests": [] | ||||
| 106 | + }, | ||||
| 107 | + "gpt-realtime": { | ||||
| 108 | + "provider": "openai", | ||||
| 109 | + "kind": "realtime", | ||||
| 110 | + "tests": [] | ||||
| 111 | + }, | ||||
| 112 | + "gpt-realtime-1.5": { | ||||
| 113 | + "provider": "openai", | ||||
| 114 | + "kind": "realtime", | ||||
| 115 | + "tests": [] | ||||
| 116 | + }, | ||||
| 117 | + "gpt-realtime-2": { | ||||
| 118 | + "provider": "openai", | ||||
| 119 | + "kind": "realtime", | ||||
| 120 | + "tests": [] | ||||
| 121 | + }, | ||||
| 122 | + "gpt-realtime-2.1": { | ||||
| 123 | + "provider": "openai", | ||||
| 124 | + "kind": "realtime", | ||||
| 125 | + "tests": [] | ||||
| 126 | + }, | ||||
| 127 | + "gpt-realtime-2.1-mini": { | ||||
| 128 | + "provider": "openai", | ||||
| 129 | + "kind": "realtime", | ||||
| 130 | + "tests": [] | ||||
| 131 | + }, | ||||
| 132 | + "gpt-realtime-mini": { | ||||
| 133 | + "provider": "openai", | ||||
| 134 | + "kind": "realtime", | ||||
| 135 | + "tests": [] | ||||
| 136 | + }, | ||||
| 137 | + "gpt-realtime-translate": { | ||||
| 138 | + "provider": "openai", | ||||
| 139 | + "kind": "realtime", | ||||
| 140 | + "tests": [] | ||||
| 141 | + }, | ||||
| 142 | + "gpt-realtime-whisper": { | ||||
| 143 | + "provider": "openai", | ||||
| 144 | + "kind": "realtime", | ||||
| 145 | + "tests": [] | ||||
| 146 | + }, | ||||
| 147 | + "gpt-transcribe": { | ||||
| 148 | + "provider": "openai", | ||||
| 149 | + "kind": "stt", | ||||
| 150 | + "tests": [] | ||||
| 151 | + }, | ||||
| 152 | + "o3-deep-research": { | ||||
| 153 | + "provider": "openai", | ||||
| 154 | + "kind": "deep-research", | ||||
| 155 | + "tests": [] | ||||
| 156 | + }, | ||||
| 157 | + "o4-mini-deep-research": { | ||||
| 158 | + "provider": "openai", | ||||
| 159 | + "kind": "deep-research", | ||||
| 160 | + "tests": [] | ||||
| 161 | + }, | ||||
| 162 | + "omni-moderation-latest": { | ||||
| 163 | + "provider": "openai", | ||||
| 164 | + "kind": "moderation", | ||||
| 165 | + "tests": [] | ||||
| 166 | + }, | ||||
| 167 | + "sora-2": { | ||||
| 168 | + "provider": "openai", | ||||
| 169 | + "kind": "video", | ||||
| 170 | + "tests": [] | ||||
| 171 | + }, | ||||
| 172 | + "sora-2-pro": { | ||||
| 173 | + "provider": "openai", | ||||
| 174 | + "kind": "video", | ||||
| 175 | + "tests": [] | ||||
| 176 | + }, | ||||
| 177 | + "text-embedding-3-large": { | ||||
| 178 | + "provider": "openai", | ||||
| 179 | + "kind": "embedding", | ||||
| 180 | + "tests": [] | ||||
| 181 | + }, | ||||
| 182 | + "text-embedding-3-small": { | ||||
| 183 | + "provider": "openai", | ||||
| 184 | + "kind": "embedding", | ||||
| 185 | + "tests": [] | ||||
| 186 | + }, | ||||
| 187 | + "text-embedding-ada-002": { | ||||
| 188 | + "provider": "openai", | ||||
| 189 | + "kind": "embedding", | ||||
| 190 | + "tests": [] | ||||
| 191 | + }, | ||||
| 192 | + "tts-1": { | ||||
| 193 | + "provider": "openai", | ||||
| 194 | + "kind": "tts", | ||||
| 195 | + "tests": [] | ||||
| 196 | + }, | ||||
| 197 | + "tts-1-1106": { | ||||
| 198 | + "provider": "openai", | ||||
| 199 | + "kind": "tts", | ||||
| 200 | + "tests": [] | ||||
| 201 | + }, | ||||
| 202 | + "tts-1-hd": { | ||||
| 203 | + "provider": "openai", | ||||
| 204 | + "kind": "tts", | ||||
| 205 | + "tests": [] | ||||
| 206 | + }, | ||||
| 207 | + "tts-1-hd-1106": { | ||||
| 208 | + "provider": "openai", | ||||
| 209 | + "kind": "tts", | ||||
| 210 | + "tests": [] | ||||
| 211 | + }, | ||||
| 212 | + "whisper-1": { | ||||
| 213 | + "provider": "openai", | ||||
| 214 | + "kind": "stt", | ||||
| 215 | + "tests": [] | ||||
| 216 | + }, | ||||
| 217 | + "chat-latest": { | ||||
| 218 | + "provider": "openai", | ||||
| 219 | + "kind": "chat", | ||||
| 220 | + "tests": [ | ||||
| 221 | + { | ||||
| 222 | + "test": "basic", | ||||
| 223 | + "ok": true, | ||||
| 224 | + "latencyMs": 1279, | ||||
| 225 | + "usage": { | ||||
| 226 | + "input": 19, | ||||
| 227 | + "output": 6, | ||||
| 228 | + "cachedInput": 0, | ||||
| 229 | + "reasoning": 0 | ||||
| 230 | + }, | ||||
| 231 | + "api": "responses", | ||||
| 232 | + "raw": { | ||||
| 233 | + "status": "completed", | ||||
| 234 | + "incomplete": null | ||||
| 235 | + }, | ||||
| 236 | + "sample": "Ottawa", | ||||
| 237 | + "costUsd": 0.000275 | ||||
| 238 | + }, | ||||
| 239 | + { | ||||
| 240 | + "test": "reasoning", | ||||
| 241 | + "ok": true, | ||||
| 242 | + "latencyMs": 1086, | ||||
| 243 | + "usage": { | ||||
| 244 | + "input": 42, | ||||
| 245 | + "output": 39, | ||||
| 246 | + "cachedInput": 0, | ||||
| 247 | + "reasoning": 0 | ||||
| 248 | + }, | ||||
| 249 | + "api": "responses", | ||||
| 250 | + "raw": { | ||||
| 251 | + "status": "completed", | ||||
| 252 | + "incomplete": null | ||||
| 253 | + }, | ||||
| 254 | + "sample": "Alice has 2 sisters, so there are 3 girls in the family, including Alice. Each of her brothers has all 3 girls as sisters.\n\nANSWER: 3", | ||||
| 255 | + "costUsd": 0.00138 | ||||
| 256 | + }, | ||||
| 257 | + { | ||||
| 258 | + "test": "math", | ||||
| 259 | + "ok": true, | ||||
| 260 | + "latencyMs": 1215, | ||||
| 261 | + "usage": { | ||||
| 262 | + "input": 50, | ||||
| 263 | + "output": 11, | ||||
| 264 | + "cachedInput": 0, | ||||
| 265 | + "reasoning": 0 | ||||
| 266 | + }, | ||||
| 267 | + "api": "responses", | ||||
| 268 | + "raw": { | ||||
| 269 | + "status": "completed", | ||||
| 270 | + "incomplete": null | ||||
| 271 | + }, | ||||
| 272 | + "sample": "a=403;b=2500", | ||||
| 273 | + "costUsd": 0.00058 | ||||
| 274 | + }, | ||||
| 275 | + { | ||||
| 276 | + "test": "code", | ||||
| 277 | + "ok": true, | ||||
| 278 | + "latencyMs": 1387, | ||||
| 279 | + "usage": { | ||||
| 280 | + "input": 49, | ||||
| 281 | + "output": 97, | ||||
| 282 | + "cachedInput": 0, | ||||
| 283 | + "reasoning": 0 | ||||
| 284 | + }, | ||||
| 285 | + "api": "responses", | ||||
| 286 | + "raw": { | ||||
| 287 | + "status": "completed", | ||||
| 288 | + "incomplete": null | ||||
| 289 | + }, | ||||
| 290 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1 || !Number.isInteger(n)) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 291 | + "costUsd": 0.003155 | ||||
| 292 | + }, | ||||
| 293 | + { | ||||
| 294 | + "test": "french", | ||||
| 295 | + "ok": true, | ||||
| 296 | + "latencyMs": 1340, | ||||
| 297 | + "usage": { | ||||
| 298 | + "input": 31, | ||||
| 299 | + "output": 77, | ||||
| 300 | + "cachedInput": 0, | ||||
| 301 | + "reasoning": 0 | ||||
| 302 | + }, | ||||
| 303 | + "api": "responses", | ||||
| 304 | + "raw": { | ||||
| 305 | + "status": "completed", | ||||
| 306 | + "incomplete": null | ||||
| 307 | + }, | ||||
| 308 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction ou de remplacement du bâtiment, après déduction de sa dépréciation. Elle est principalement utilisée pour évaluer des biens récents, spécialisés ou po", | ||||
| 309 | + "costUsd": 0.002465 | ||||
| 310 | + }, | ||||
| 311 | + { | ||||
| 312 | + "test": "english", | ||||
| 313 | + "ok": true, | ||||
| 314 | + "latencyMs": 1209, | ||||
| 315 | + "usage": { | ||||
| 316 | + "input": 20, | ||||
| 317 | + "output": 57, | ||||
| 318 | + "cachedInput": 0, | ||||
| 319 | + "reasoning": 0 | ||||
| 320 | + }, | ||||
| 321 | + "api": "responses", | ||||
| 322 | + "raw": { | ||||
| 323 | + "status": "completed", | ||||
| 324 | + "incomplete": null | ||||
| 325 | + }, | ||||
| 326 | + "sample": "A hedonic pricing model is an economic method used to estimate the value of a product or asset by breaking it down into its individual characteristics or features. It is commonly used in real estate to determine how factors such as location, size, and amenities influence property prices.", | ||||
| 327 | + "costUsd": 0.00181 | ||||
| 328 | + }, | ||||
| 329 | + { | ||||
| 330 | + "test": "json", | ||||
| 331 | + "ok": true, | ||||
| 332 | + "latencyMs": 1039, | ||||
| 333 | + "usage": { | ||||
| 334 | + "input": 52, | ||||
| 335 | + "output": 27, | ||||
| 336 | + "cachedInput": 0, | ||||
| 337 | + "reasoning": 0 | ||||
| 338 | + }, | ||||
| 339 | + "api": "responses", | ||||
| 340 | + "raw": { | ||||
| 341 | + "status": "completed", | ||||
| 342 | + "incomplete": null | ||||
| 343 | + }, | ||||
| 344 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 345 | + "costUsd": 0.00107 | ||||
| 346 | + }, | ||||
| 347 | + { | ||||
| 348 | + "test": "tools", | ||||
| 349 | + "ok": true, | ||||
| 350 | + "latencyMs": 1079, | ||||
| 351 | + "usage": { | ||||
| 352 | + "input": 69, | ||||
| 353 | + "output": 22, | ||||
| 354 | + "cachedInput": 0, | ||||
| 355 | + "reasoning": 0 | ||||
| 356 | + }, | ||||
| 357 | + "api": "responses", | ||||
| 358 | + "raw": { | ||||
| 359 | + "status": "completed", | ||||
| 360 | + "incomplete": null | ||||
| 361 | + }, | ||||
| 362 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 363 | + "costUsd": 0.001005 | ||||
| 364 | + }, | ||||
| 365 | + { | ||||
| 366 | + "test": "vision", | ||||
| 367 | + "ok": true, | ||||
| 368 | + "latencyMs": 973, | ||||
| 369 | + "usage": { | ||||
| 370 | + "input": 194, | ||||
| 371 | + "output": 12, | ||||
| 372 | + "cachedInput": 0, | ||||
| 373 | + "reasoning": 0 | ||||
| 374 | + }, | ||||
| 375 | + "api": "responses", | ||||
| 376 | + "raw": { | ||||
| 377 | + "status": "completed", | ||||
| 378 | + "incomplete": null | ||||
| 379 | + }, | ||||
| 380 | + "sample": "circles=3; other=square", | ||||
| 381 | + "costUsd": 0.00133 | ||||
| 382 | + }, | ||||
| 383 | + { | ||||
| 384 | + "test": "longctx", | ||||
| 385 | + "ok": true, | ||||
| 386 | + "latencyMs": 995, | ||||
| 387 | + "usage": { | ||||
| 388 | + "input": 9134, | ||||
| 389 | + "output": 9, | ||||
| 390 | + "cachedInput": 0, | ||||
| 391 | + "reasoning": 0 | ||||
| 392 | + }, | ||||
| 393 | + "api": "responses", | ||||
| 394 | + "raw": { | ||||
| 395 | + "status": "completed", | ||||
| 396 | + "incomplete": null | ||||
| 397 | + }, | ||||
| 398 | + "sample": "7431-ALPHA", | ||||
| 399 | + "costUsd": 0.04594 | ||||
| 400 | + }, | ||||
| 401 | + { | ||||
| 402 | + "test": "streaming", | ||||
| 403 | + "ok": true, | ||||
| 404 | + "latencyMs": 980, | ||||
| 405 | + "ttftMs": 547, | ||||
| 406 | + "usage": { | ||||
| 407 | + "input": 15, | ||||
| 408 | + "output": 23, | ||||
| 409 | + "cachedInput": 0, | ||||
| 410 | + "reasoning": 0 | ||||
| 411 | + }, | ||||
| 412 | + "api": "responses", | ||||
| 413 | + "sample": "Snow blankets Québec, \nSt. Lawrence sleeps beneath ice, \nWarm lights bloom at dusk.", | ||||
| 414 | + "costUsd": 0.000765 | ||||
| 415 | + } | ||||
| 416 | + ], | ||||
| 417 | + "api": "responses" | ||||
| 418 | + }, | ||||
| 419 | + "gpt-3.5-turbo": { | ||||
| 420 | + "provider": "openai", | ||||
| 421 | + "kind": "chat", | ||||
| 422 | + "tests": [ | ||||
| 423 | + { | ||||
| 424 | + "test": "basic", | ||||
| 425 | + "ok": false, | ||||
| 426 | + "latencyMs": 288, | ||||
| 427 | + "error": "404 404 The model `gpt-3.5-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 428 | + } | ||||
| 429 | + ] | ||||
| 430 | + }, | ||||
| 431 | + "gpt-4": { | ||||
| 432 | + "provider": "openai", | ||||
| 433 | + "kind": "chat", | ||||
| 434 | + "tests": [ | ||||
| 435 | + { | ||||
| 436 | + "test": "basic", | ||||
| 437 | + "ok": false, | ||||
| 438 | + "latencyMs": 277, | ||||
| 439 | + "error": "404 404 The model `gpt-4` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 440 | + } | ||||
| 441 | + ] | ||||
| 442 | + }, | ||||
| 443 | + "gpt-4-turbo": { | ||||
| 444 | + "provider": "openai", | ||||
| 445 | + "kind": "chat", | ||||
| 446 | + "tests": [ | ||||
| 447 | + { | ||||
| 448 | + "test": "basic", | ||||
| 449 | + "ok": false, | ||||
| 450 | + "latencyMs": 312, | ||||
| 451 | + "error": "404 404 The model `gpt-4-turbo` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 452 | + } | ||||
| 453 | + ] | ||||
| 454 | + }, | ||||
| 455 | + "gpt-4.1": { | ||||
| 456 | + "provider": "openai", | ||||
| 457 | + "kind": "chat", | ||||
| 458 | + "tests": [ | ||||
| 459 | + { | ||||
| 460 | + "test": "basic", | ||||
| 461 | + "ok": true, | ||||
| 462 | + "latencyMs": 608, | ||||
| 463 | + "usage": { | ||||
| 464 | + "input": 20, | ||||
| 465 | + "output": 3, | ||||
| 466 | + "cachedInput": 0, | ||||
| 467 | + "reasoning": 0 | ||||
| 468 | + }, | ||||
| 469 | + "api": "responses", | ||||
| 470 | + "raw": { | ||||
| 471 | + "status": "completed", | ||||
| 472 | + "incomplete": null | ||||
| 473 | + }, | ||||
| 474 | + "sample": "Ottawa", | ||||
| 475 | + "costUsd": 0.000064 | ||||
| 476 | + }, | ||||
| 477 | + { | ||||
| 478 | + "test": "reasoning", | ||||
| 479 | + "ok": true, | ||||
| 480 | + "latencyMs": 983, | ||||
| 481 | + "usage": { | ||||
| 482 | + "input": 43, | ||||
| 483 | + "output": 104, | ||||
| 484 | + "cachedInput": 0, | ||||
| 485 | + "reasoning": 0 | ||||
| 486 | + }, | ||||
| 487 | + "api": "responses", | ||||
| 488 | + "raw": { | ||||
| 489 | + "status": "completed", | ||||
| 490 | + "incomplete": null | ||||
| 491 | + }, | ||||
| 492 | + "sample": "Let's break down the information:\n\n- Alice has **3 brothers** and **2 sisters**.\n- Alice herself is a girl, so she is also a sister.\n\nSo, in total, there are:\n- **Sisters:** Alice + 2 sisters = **3 sisters**\n- **Brothers:** 3 brothers\n\nThe question: \"How many sisters does each of Alice's brothers ha", | ||||
| 493 | + "costUsd": 0.000918 | ||||
| 494 | + }, | ||||
| 495 | + { | ||||
| 496 | + "test": "math", | ||||
| 497 | + "ok": false, | ||||
| 498 | + "latencyMs": 546, | ||||
| 499 | + "usage": { | ||||
| 500 | + "input": 51, | ||||
| 501 | + "output": 8, | ||||
| 502 | + "cachedInput": 0, | ||||
| 503 | + "reasoning": 0 | ||||
| 504 | + }, | ||||
| 505 | + "api": "responses", | ||||
| 506 | + "raw": { | ||||
| 507 | + "status": "completed", | ||||
| 508 | + "incomplete": null | ||||
| 509 | + }, | ||||
| 510 | + "sample": "a=411;b=2500", | ||||
| 511 | + "costUsd": 0.000166 | ||||
| 512 | + }, | ||||
| 513 | + { | ||||
| 514 | + "test": "code", | ||||
| 515 | + "ok": true, | ||||
| 516 | + "latencyMs": 886, | ||||
| 517 | + "usage": { | ||||
| 518 | + "input": 50, | ||||
| 519 | + "output": 88, | ||||
| 520 | + "cachedInput": 0, | ||||
| 521 | + "reasoning": 0 | ||||
| 522 | + }, | ||||
| 523 | + "api": "responses", | ||||
| 524 | + "raw": { | ||||
| 525 | + "status": "completed", | ||||
| 526 | + "incomplete": null | ||||
| 527 | + }, | ||||
| 528 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 529 | + "costUsd": 0.000804 | ||||
| 530 | + }, | ||||
| 531 | + { | ||||
| 532 | + "test": "french", | ||||
| 533 | + "ok": true, | ||||
| 534 | + "latencyMs": 1039, | ||||
| 535 | + "usage": { | ||||
| 536 | + "input": 32, | ||||
| 537 | + "output": 70, | ||||
| 538 | + "cachedInput": 0, | ||||
| 539 | + "reasoning": 0 | ||||
| 540 | + }, | ||||
| 541 | + "api": "responses", | ||||
| 542 | + "raw": { | ||||
| 543 | + "status": "completed", | ||||
| 544 | + "incomplete": null | ||||
| 545 | + }, | ||||
| 546 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain à celle du coût de reconstruction ou de remplacement du bâtiment, après déduction de la dépréciation. Elle est particulièrement utilisée pour les biens atypiques ou lorsque le mar", | ||||
| 547 | + "costUsd": 0.000624 | ||||
| 548 | + }, | ||||
| 549 | + { | ||||
| 550 | + "test": "english", | ||||
| 551 | + "ok": true, | ||||
| 552 | + "latencyMs": 655, | ||||
| 553 | + "usage": { | ||||
| 554 | + "input": 21, | ||||
| 555 | + "output": 54, | ||||
| 556 | + "cachedInput": 0, | ||||
| 557 | + "reasoning": 0 | ||||
| 558 | + }, | ||||
| 559 | + "api": "responses", | ||||
| 560 | + "raw": { | ||||
| 561 | + "status": "completed", | ||||
| 562 | + "incomplete": null | ||||
| 563 | + }, | ||||
| 564 | + "sample": "A hedonic pricing model is an economic valuation method that estimates the market value of a good by analyzing how its individual characteristics or features influence its price. It is commonly used in real estate, where factors such as location, size, and amenities help determine property prices.", | ||||
| 565 | + "costUsd": 0.000474 | ||||
| 566 | + }, | ||||
| 567 | + { | ||||
| 568 | + "test": "json", | ||||
| 569 | + "ok": true, | ||||
| 570 | + "latencyMs": 704, | ||||
| 571 | + "usage": { | ||||
| 572 | + "input": 53, | ||||
| 573 | + "output": 37, | ||||
| 574 | + "cachedInput": 0, | ||||
| 575 | + "reasoning": 0 | ||||
| 576 | + }, | ||||
| 577 | + "api": "responses", | ||||
| 578 | + "raw": { | ||||
| 579 | + "status": "completed", | ||||
| 580 | + "incomplete": null | ||||
| 581 | + }, | ||||
| 582 | + "sample": "{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 297000\n}", | ||||
| 583 | + "costUsd": 0.000402 | ||||
| 584 | + }, | ||||
| 585 | + { | ||||
| 586 | + "test": "tools", | ||||
| 587 | + "ok": true, | ||||
| 588 | + "latencyMs": 487, | ||||
| 589 | + "usage": { | ||||
| 590 | + "input": 64, | ||||
| 591 | + "output": 19, | ||||
| 592 | + "cachedInput": 0, | ||||
| 593 | + "reasoning": 0 | ||||
| 594 | + }, | ||||
| 595 | + "api": "responses", | ||||
| 596 | + "raw": { | ||||
| 597 | + "status": "completed", | ||||
| 598 | + "incomplete": null | ||||
| 599 | + }, | ||||
| 600 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 601 | + "costUsd": 0.00028 | ||||
| 602 | + }, | ||||
| 603 | + { | ||||
| 604 | + "test": "vision", | ||||
| 605 | + "ok": true, | ||||
| 606 | + "latencyMs": 598, | ||||
| 607 | + "usage": { | ||||
| 608 | + "input": 123, | ||||
| 609 | + "output": 9, | ||||
| 610 | + "cachedInput": 0, | ||||
| 611 | + "reasoning": 0 | ||||
| 612 | + }, | ||||
| 613 | + "api": "responses", | ||||
| 614 | + "raw": { | ||||
| 615 | + "status": "completed", | ||||
| 616 | + "incomplete": null | ||||
| 617 | + }, | ||||
| 618 | + "sample": "circles=3; other=square", | ||||
| 619 | + "costUsd": 0.000318 | ||||
| 620 | + }, | ||||
| 621 | + { | ||||
| 622 | + "test": "longctx", | ||||
| 623 | + "ok": true, | ||||
| 624 | + "latencyMs": 1203, | ||||
| 625 | + "usage": { | ||||
| 626 | + "input": 9135, | ||||
| 627 | + "output": 6, | ||||
| 628 | + "cachedInput": 0, | ||||
| 629 | + "reasoning": 0 | ||||
| 630 | + }, | ||||
| 631 | + "api": "responses", | ||||
| 632 | + "raw": { | ||||
| 633 | + "status": "completed", | ||||
| 634 | + "incomplete": null | ||||
| 635 | + }, | ||||
| 636 | + "sample": "7431-ALPHA", | ||||
| 637 | + "costUsd": 0.018318 | ||||
| 638 | + }, | ||||
| 639 | + { | ||||
| 640 | + "test": "streaming", | ||||
| 641 | + "ok": true, | ||||
| 642 | + "latencyMs": 736, | ||||
| 643 | + "ttftMs": 413, | ||||
| 644 | + "usage": { | ||||
| 645 | + "input": 16, | ||||
| 646 | + "output": 21, | ||||
| 647 | + "cachedInput": 0, | ||||
| 648 | + "reasoning": 0 | ||||
| 649 | + }, | ||||
| 650 | + "api": "responses", | ||||
| 651 | + "sample": "Snow cloaks the old town, \nRiver breathes icy silence— \nStars shimmer on ice.", | ||||
| 652 | + "costUsd": 0.0002 | ||||
| 653 | + } | ||||
| 654 | + ], | ||||
| 655 | + "api": "responses" | ||||
| 656 | + }, | ||||
| 657 | + "gpt-4.1-mini": { | ||||
| 658 | + "provider": "openai", | ||||
| 659 | + "kind": "chat", | ||||
| 660 | + "tests": [ | ||||
| 661 | + { | ||||
| 662 | + "test": "basic", | ||||
| 663 | + "ok": true, | ||||
| 664 | + "latencyMs": 604, | ||||
| 665 | + "usage": { | ||||
| 666 | + "input": 20, | ||||
| 667 | + "output": 3, | ||||
| 668 | + "cachedInput": 0, | ||||
| 669 | + "reasoning": 0 | ||||
| 670 | + }, | ||||
| 671 | + "api": "responses", | ||||
| 672 | + "raw": { | ||||
| 673 | + "status": "completed", | ||||
| 674 | + "incomplete": null | ||||
| 675 | + }, | ||||
| 676 | + "sample": "Ottawa", | ||||
| 677 | + "costUsd": 0.000012800000000000001 | ||||
| 678 | + }, | ||||
| 679 | + { | ||||
| 680 | + "test": "reasoning", | ||||
| 681 | + "ok": true, | ||||
| 682 | + "latencyMs": 1021, | ||||
| 683 | + "usage": { | ||||
| 684 | + "input": 43, | ||||
| 685 | + "output": 88, | ||||
| 686 | + "cachedInput": 0, | ||||
| 687 | + "reasoning": 0 | ||||
| 688 | + }, | ||||
| 689 | + "api": "responses", | ||||
| 690 | + "raw": { | ||||
| 691 | + "status": "completed", | ||||
| 692 | + "incomplete": null | ||||
| 693 | + }, | ||||
| 694 | + "sample": "Alice has 2 sisters in total, including herself. Since Alice's brothers are her siblings, they share the same sisters. The brothers see Alice and the 2 sisters as their sisters.\n\nAlice is not a sister to herself, so from the brothers' perspective, the sisters are Alice and the 2 other sisters, makin", | ||||
| 695 | + "costUsd": 0.000158 | ||||
| 696 | + }, | ||||
| 697 | + { | ||||
| 698 | + "test": "math", | ||||
| 699 | + "ok": false, | ||||
| 700 | + "latencyMs": 582, | ||||
| 701 | + "usage": { | ||||
| 702 | + "input": 51, | ||||
| 703 | + "output": 8, | ||||
| 704 | + "cachedInput": 0, | ||||
| 705 | + "reasoning": 0 | ||||
| 706 | + }, | ||||
| 707 | + "api": "responses", | ||||
| 708 | + "raw": { | ||||
| 709 | + "status": "completed", | ||||
| 710 | + "incomplete": null | ||||
| 711 | + }, | ||||
| 712 | + "sample": "a=417;b=2500", | ||||
| 713 | + "costUsd": 0.0000332 | ||||
| 714 | + }, | ||||
| 715 | + { | ||||
| 716 | + "test": "code", | ||||
| 717 | + "ok": true, | ||||
| 718 | + "latencyMs": 1086, | ||||
| 719 | + "usage": { | ||||
| 720 | + "input": 50, | ||||
| 721 | + "output": 108, | ||||
| 722 | + "cachedInput": 0, | ||||
| 723 | + "reasoning": 0 | ||||
| 724 | + }, | ||||
| 725 | + "api": "responses", | ||||
| 726 | + "raw": { | ||||
| 727 | + "status": "completed", | ||||
| 728 | + "incomplete": null | ||||
| 729 | + }, | ||||
| 730 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 731 | + "costUsd": 0.00019280000000000002 | ||||
| 732 | + }, | ||||
| 733 | + { | ||||
| 734 | + "test": "french", | ||||
| 735 | + "ok": true, | ||||
| 736 | + "latencyMs": 897, | ||||
| 737 | + "usage": { | ||||
| 738 | + "input": 32, | ||||
| 739 | + "output": 69, | ||||
| 740 | + "cachedInput": 0, | ||||
| 741 | + "reasoning": 0 | ||||
| 742 | + }, | ||||
| 743 | + "api": "responses", | ||||
| 744 | + "raw": { | ||||
| 745 | + "status": "completed", | ||||
| 746 | + "incomplete": null | ||||
| 747 | + }, | ||||
| 748 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en calculant la somme du coût de reconstruction à neuf, diminuée de la dépréciation, ajoutée à la valeur du terrain. Elle est particulièrement utilisée pour les biens ne générant pas de revenus ou sans comparaison di", | ||||
| 749 | + "costUsd": 0.0001232 | ||||
| 750 | + }, | ||||
| 751 | + { | ||||
| 752 | + "test": "english", | ||||
| 753 | + "ok": true, | ||||
| 754 | + "latencyMs": 1009, | ||||
| 755 | + "usage": { | ||||
| 756 | + "input": 21, | ||||
| 757 | + "output": 57, | ||||
| 758 | + "cachedInput": 0, | ||||
| 759 | + "reasoning": 0 | ||||
| 760 | + }, | ||||
| 761 | + "api": "responses", | ||||
| 762 | + "raw": { | ||||
| 763 | + "status": "completed", | ||||
| 764 | + "incomplete": null | ||||
| 765 | + }, | ||||
| 766 | + "sample": "A hedonic pricing model is an economic method used to estimate the value of a good or property by breaking down its price into the individual contributions of its characteristics or features. It is commonly applied in real estate to assess how factors like location, size, and amenities affect proper", | ||||
| 767 | + "costUsd": 0.00009960000000000001 | ||||
| 768 | + }, | ||||
| 769 | + { | ||||
| 770 | + "test": "json", | ||||
| 771 | + "ok": true, | ||||
| 772 | + "latencyMs": 705, | ||||
| 773 | + "usage": { | ||||
| 774 | + "input": 53, | ||||
| 775 | + "output": 37, | ||||
| 776 | + "cachedInput": 0, | ||||
| 777 | + "reasoning": 0 | ||||
| 778 | + }, | ||||
| 779 | + "api": "responses", | ||||
| 780 | + "raw": { | ||||
| 781 | + "status": "completed", | ||||
| 782 | + "incomplete": null | ||||
| 783 | + }, | ||||
| 784 | + "sample": "{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 291041\n}", | ||||
| 785 | + "costUsd": 0.0000804 | ||||
| 786 | + }, | ||||
| 787 | + { | ||||
| 788 | + "test": "tools", | ||||
| 789 | + "ok": true, | ||||
| 790 | + "latencyMs": 834, | ||||
| 791 | + "usage": { | ||||
| 792 | + "input": 64, | ||||
| 793 | + "output": 19, | ||||
| 794 | + "cachedInput": 0, | ||||
| 795 | + "reasoning": 0 | ||||
| 796 | + }, | ||||
| 797 | + "api": "responses", | ||||
| 798 | + "raw": { | ||||
| 799 | + "status": "completed", | ||||
| 800 | + "incomplete": null | ||||
| 801 | + }, | ||||
| 802 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 803 | + "costUsd": 0.000056 | ||||
| 804 | + }, | ||||
| 805 | + { | ||||
| 806 | + "test": "vision", | ||||
| 807 | + "ok": true, | ||||
| 808 | + "latencyMs": 596, | ||||
| 809 | + "usage": { | ||||
| 810 | + "input": 250, | ||||
| 811 | + "output": 9, | ||||
| 812 | + "cachedInput": 0, | ||||
| 813 | + "reasoning": 0 | ||||
| 814 | + }, | ||||
| 815 | + "api": "responses", | ||||
| 816 | + "raw": { | ||||
| 817 | + "status": "completed", | ||||
| 818 | + "incomplete": null | ||||
| 819 | + }, | ||||
| 820 | + "sample": "circles=3; other=square", | ||||
| 821 | + "costUsd": 0.0001144 | ||||
| 822 | + }, | ||||
| 823 | + { | ||||
| 824 | + "test": "longctx", | ||||
| 825 | + "ok": true, | ||||
| 826 | + "latencyMs": 919, | ||||
| 827 | + "usage": { | ||||
| 828 | + "input": 9135, | ||||
| 829 | + "output": 6, | ||||
| 830 | + "cachedInput": 0, | ||||
| 831 | + "reasoning": 0 | ||||
| 832 | + }, | ||||
| 833 | + "api": "responses", | ||||
| 834 | + "raw": { | ||||
| 835 | + "status": "completed", | ||||
| 836 | + "incomplete": null | ||||
| 837 | + }, | ||||
| 838 | + "sample": "7431-ALPHA", | ||||
| 839 | + "costUsd": 0.0036636 | ||||
| 840 | + }, | ||||
| 841 | + { | ||||
| 842 | + "test": "streaming", | ||||
| 843 | + "ok": true, | ||||
| 844 | + "latencyMs": 552, | ||||
| 845 | + "ttftMs": 343, | ||||
| 846 | + "usage": { | ||||
| 847 | + "input": 16, | ||||
| 848 | + "output": 23, | ||||
| 849 | + "cachedInput": 0, | ||||
| 850 | + "reasoning": 0 | ||||
| 851 | + }, | ||||
| 852 | + "api": "responses", | ||||
| 853 | + "sample": "Snow drapes quiet streets, \nMaple scent in frosty air, \nLights dance on still lakes.", | ||||
| 854 | + "costUsd": 0.0000432 | ||||
| 855 | + } | ||||
| 856 | + ], | ||||
| 857 | + "api": "responses" | ||||
| 858 | + }, | ||||
| 859 | + "gpt-4.1-nano": { | ||||
| 860 | + "provider": "openai", | ||||
| 861 | + "kind": "chat", | ||||
| 862 | + "tests": [ | ||||
| 863 | + { | ||||
| 864 | + "test": "basic", | ||||
| 865 | + "ok": false, | ||||
| 866 | + "latencyMs": 424, | ||||
| 867 | + "error": "404 404 The model `gpt-4.1-nano` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 868 | + } | ||||
| 869 | + ] | ||||
| 870 | + }, | ||||
| 871 | + "gpt-4o": { | ||||
| 872 | + "provider": "openai", | ||||
| 873 | + "kind": "chat", | ||||
| 874 | + "tests": [ | ||||
| 875 | + { | ||||
| 876 | + "test": "basic", | ||||
| 877 | + "ok": true, | ||||
| 878 | + "latencyMs": 704, | ||||
| 879 | + "usage": { | ||||
| 880 | + "input": 20, | ||||
| 881 | + "output": 3, | ||||
| 882 | + "cachedInput": 0, | ||||
| 883 | + "reasoning": 0 | ||||
| 884 | + }, | ||||
| 885 | + "api": "responses", | ||||
| 886 | + "raw": { | ||||
| 887 | + "status": "completed", | ||||
| 888 | + "incomplete": null | ||||
| 889 | + }, | ||||
| 890 | + "sample": "Ottawa", | ||||
| 891 | + "costUsd": 0.00008 | ||||
| 892 | + }, | ||||
| 893 | + { | ||||
| 894 | + "test": "reasoning", | ||||
| 895 | + "ok": false, | ||||
| 896 | + "latencyMs": 1507, | ||||
| 897 | + "usage": { | ||||
| 898 | + "input": 43, | ||||
| 899 | + "output": 32, | ||||
| 900 | + "cachedInput": 0, | ||||
| 901 | + "reasoning": 0 | ||||
| 902 | + }, | ||||
| 903 | + "api": "responses", | ||||
| 904 | + "raw": { | ||||
| 905 | + "status": "completed", | ||||
| 906 | + "incomplete": null | ||||
| 907 | + }, | ||||
| 908 | + "sample": "Alice has 2 sisters (including herself). Each of Alice's brothers has the same sisters: Alice and her 2 sisters. \n\nANSWER: 2", | ||||
| 909 | + "costUsd": 0.0004275 | ||||
| 910 | + }, | ||||
| 911 | + { | ||||
| 912 | + "test": "math", | ||||
| 913 | + "ok": false, | ||||
| 914 | + "latencyMs": 644, | ||||
| 915 | + "usage": { | ||||
| 916 | + "input": 51, | ||||
| 917 | + "output": 8, | ||||
| 918 | + "cachedInput": 0, | ||||
| 919 | + "reasoning": 0 | ||||
| 920 | + }, | ||||
| 921 | + "api": "responses", | ||||
| 922 | + "raw": { | ||||
| 923 | + "status": "completed", | ||||
| 924 | + "incomplete": null | ||||
| 925 | + }, | ||||
| 926 | + "sample": "a=427;b=2500", | ||||
| 927 | + "costUsd": 0.0002075 | ||||
| 928 | + }, | ||||
| 929 | + { | ||||
| 930 | + "test": "code", | ||||
| 931 | + "ok": true, | ||||
| 932 | + "latencyMs": 1111, | ||||
| 933 | + "usage": { | ||||
| 934 | + "input": 50, | ||||
| 935 | + "output": 108, | ||||
| 936 | + "cachedInput": 0, | ||||
| 937 | + "reasoning": 0 | ||||
| 938 | + }, | ||||
| 939 | + "api": "responses", | ||||
| 940 | + "raw": { | ||||
| 941 | + "status": "completed", | ||||
| 942 | + "incomplete": null | ||||
| 943 | + }, | ||||
| 944 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 945 | + "costUsd": 0.001205 | ||||
| 946 | + }, | ||||
| 947 | + { | ||||
| 948 | + "test": "french", | ||||
| 949 | + "ok": true, | ||||
| 950 | + "latencyMs": 1049, | ||||
| 951 | + "usage": { | ||||
| 952 | + "input": 32, | ||||
| 953 | + "output": 75, | ||||
| 954 | + "cachedInput": 0, | ||||
| 955 | + "reasoning": 0 | ||||
| 956 | + }, | ||||
| 957 | + "api": "responses", | ||||
| 958 | + "raw": { | ||||
| 959 | + "status": "completed", | ||||
| 960 | + "incomplete": null | ||||
| 961 | + }, | ||||
| 962 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en calculant le coût de remplacement ou de reproduction de la construction, moins la dépréciation accumulée, puis en ajoutant la valeur du terrain. Cette approche est souvent utilisée lorsqu'il n'existe pas de compar", | ||||
| 963 | + "costUsd": 0.00083 | ||||
| 964 | + }, | ||||
| 965 | + { | ||||
| 966 | + "test": "english", | ||||
| 967 | + "ok": true, | ||||
| 968 | + "latencyMs": 5002, | ||||
| 969 | + "usage": { | ||||
| 970 | + "input": 21, | ||||
| 971 | + "output": 56, | ||||
| 972 | + "cachedInput": 0, | ||||
| 973 | + "reasoning": 0 | ||||
| 974 | + }, | ||||
| 975 | + "api": "responses", | ||||
| 976 | + "raw": { | ||||
| 977 | + "status": "completed", | ||||
| 978 | + "incomplete": null | ||||
| 979 | + }, | ||||
| 980 | + "sample": "A hedonic pricing model estimates the value of a good or service by breaking it down into its component attributes and analyzing how each characteristic contributes to the overall price. This approach is often used in real estate to assess how features like location, size, and amenities impact prope", | ||||
| 981 | + "costUsd": 0.0006125 | ||||
| 982 | + }, | ||||
| 983 | + { | ||||
| 984 | + "test": "json", | ||||
| 985 | + "ok": true, | ||||
| 986 | + "latencyMs": 882, | ||||
| 987 | + "usage": { | ||||
| 988 | + "input": 53, | ||||
| 989 | + "output": 37, | ||||
| 990 | + "cachedInput": 0, | ||||
| 991 | + "reasoning": 0 | ||||
| 992 | + }, | ||||
| 993 | + "api": "responses", | ||||
| 994 | + "raw": { | ||||
| 995 | + "status": "completed", | ||||
| 996 | + "incomplete": null | ||||
| 997 | + }, | ||||
| 998 | + "sample": "{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 290000\n}", | ||||
| 999 | + "costUsd": 0.0005025 | ||||
| 1000 | + }, | ||||
| 1001 | + { | ||||
| 1002 | + "test": "tools", | ||||
| 1003 | + "ok": true, | ||||
| 1004 | + "latencyMs": 851, | ||||
| 1005 | + "usage": { | ||||
| 1006 | + "input": 64, | ||||
| 1007 | + "output": 19, | ||||
| 1008 | + "cachedInput": 0, | ||||
| 1009 | + "reasoning": 0 | ||||
| 1010 | + }, | ||||
| 1011 | + "api": "responses", | ||||
| 1012 | + "raw": { | ||||
| 1013 | + "status": "completed", | ||||
| 1014 | + "incomplete": null | ||||
| 1015 | + }, | ||||
| 1016 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 1017 | + "costUsd": 0.00035 | ||||
| 1018 | + }, | ||||
| 1019 | + { | ||||
| 1020 | + "test": "vision", | ||||
| 1021 | + "ok": true, | ||||
| 1022 | + "latencyMs": 853, | ||||
| 1023 | + "usage": { | ||||
| 1024 | + "input": 123, | ||||
| 1025 | + "output": 9, | ||||
| 1026 | + "cachedInput": 0, | ||||
| 1027 | + "reasoning": 0 | ||||
| 1028 | + }, | ||||
| 1029 | + "api": "responses", | ||||
| 1030 | + "raw": { | ||||
| 1031 | + "status": "completed", | ||||
| 1032 | + "incomplete": null | ||||
| 1033 | + }, | ||||
| 1034 | + "sample": "circles=3; other=square", | ||||
| 1035 | + "costUsd": 0.0003975 | ||||
| 1036 | + }, | ||||
| 1037 | + { | ||||
| 1038 | + "test": "longctx", | ||||
| 1039 | + "ok": true, | ||||
| 1040 | + "latencyMs": 1088, | ||||
| 1041 | + "usage": { | ||||
| 1042 | + "input": 9135, | ||||
| 1043 | + "output": 6, | ||||
| 1044 | + "cachedInput": 0, | ||||
| 1045 | + "reasoning": 0 | ||||
| 1046 | + }, | ||||
| 1047 | + "api": "responses", | ||||
| 1048 | + "raw": { | ||||
| 1049 | + "status": "completed", | ||||
| 1050 | + "incomplete": null | ||||
| 1051 | + }, | ||||
| 1052 | + "sample": "7431-ALPHA", | ||||
| 1053 | + "costUsd": 0.0228975 | ||||
| 1054 | + }, | ||||
| 1055 | + { | ||||
| 1056 | + "test": "streaming", | ||||
| 1057 | + "ok": true, | ||||
| 1058 | + "latencyMs": 887, | ||||
| 1059 | + "ttftMs": 457, | ||||
| 1060 | + "usage": { | ||||
| 1061 | + "input": 16, | ||||
| 1062 | + "output": 22, | ||||
| 1063 | + "cachedInput": 0, | ||||
| 1064 | + "reasoning": 0 | ||||
| 1065 | + }, | ||||
| 1066 | + "api": "responses", | ||||
| 1067 | + "sample": "Silent snow descends, \nFrosty breath whispers of peace— \nQuébec dreams in white.", | ||||
| 1068 | + "costUsd": 0.00026 | ||||
| 1069 | + } | ||||
| 1070 | + ], | ||||
| 1071 | + "api": "responses" | ||||
| 1072 | + }, | ||||
| 1073 | + "gpt-4o-mini": { | ||||
| 1074 | + "provider": "openai", | ||||
| 1075 | + "kind": "chat", | ||||
| 1076 | + "tests": [ | ||||
| 1077 | + { | ||||
| 1078 | + "test": "basic", | ||||
| 1079 | + "ok": true, | ||||
| 1080 | + "latencyMs": 510, | ||||
| 1081 | + "usage": { | ||||
| 1082 | + "input": 20, | ||||
| 1083 | + "output": 4, | ||||
| 1084 | + "cachedInput": 0, | ||||
| 1085 | + "reasoning": 0 | ||||
| 1086 | + }, | ||||
| 1087 | + "api": "responses", | ||||
| 1088 | + "raw": { | ||||
| 1089 | + "status": "completed", | ||||
| 1090 | + "incomplete": null | ||||
| 1091 | + }, | ||||
| 1092 | + "sample": "Ottawa.", | ||||
| 1093 | + "costUsd": 0.0000054 | ||||
| 1094 | + }, | ||||
| 1095 | + { | ||||
| 1096 | + "test": "reasoning", | ||||
| 1097 | + "ok": false, | ||||
| 1098 | + "latencyMs": 1209, | ||||
| 1099 | + "usage": { | ||||
| 1100 | + "input": 43, | ||||
| 1101 | + "output": 61, | ||||
| 1102 | + "cachedInput": 0, | ||||
| 1103 | + "reasoning": 0 | ||||
| 1104 | + }, | ||||
| 1105 | + "api": "responses", | ||||
| 1106 | + "raw": { | ||||
| 1107 | + "status": "completed", | ||||
| 1108 | + "incomplete": null | ||||
| 1109 | + }, | ||||
| 1110 | + "sample": "Alice has 2 sisters and 3 brothers. Each of Alice's brothers will have the same siblings as Alice, meaning they will also have the 2 sisters that Alice has. Therefore, each of Alice's brothers has 2 sisters. \n\nSo, the answer is: \n\nANSWER: 2", | ||||
| 1111 | + "costUsd": 0.00004305 | ||||
| 1112 | + }, | ||||
| 1113 | + { | ||||
| 1114 | + "test": "math", | ||||
| 1115 | + "ok": false, | ||||
| 1116 | + "latencyMs": 589, | ||||
| 1117 | + "usage": { | ||||
| 1118 | + "input": 51, | ||||
| 1119 | + "output": 9, | ||||
| 1120 | + "cachedInput": 0, | ||||
| 1121 | + "reasoning": 0 | ||||
| 1122 | + }, | ||||
| 1123 | + "api": "responses", | ||||
| 1124 | + "raw": { | ||||
| 1125 | + "status": "completed", | ||||
| 1126 | + "incomplete": null | ||||
| 1127 | + }, | ||||
| 1128 | + "sample": "a=397; b=2500", | ||||
| 1129 | + "costUsd": 0.000013049999999999999 | ||||
| 1130 | + }, | ||||
| 1131 | + { | ||||
| 1132 | + "test": "code", | ||||
| 1133 | + "ok": true, | ||||
| 1134 | + "latencyMs": 893, | ||||
| 1135 | + "usage": { | ||||
| 1136 | + "input": 50, | ||||
| 1137 | + "output": 60, | ||||
| 1138 | + "cachedInput": 0, | ||||
| 1139 | + "reasoning": 0 | ||||
| 1140 | + }, | ||||
| 1141 | + "api": "responses", | ||||
| 1142 | + "raw": { | ||||
| 1143 | + "status": "completed", | ||||
| 1144 | + "incomplete": null | ||||
| 1145 | + }, | ||||
| 1146 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n for (let i = 2; i <= Math.sqrt(n); i++) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1147 | + "costUsd": 0.0000435 | ||||
| 1148 | + }, | ||||
| 1149 | + { | ||||
| 1150 | + "test": "french", | ||||
| 1151 | + "ok": true, | ||||
| 1152 | + "latencyMs": 997, | ||||
| 1153 | + "usage": { | ||||
| 1154 | + "input": 32, | ||||
| 1155 | + "output": 68, | ||||
| 1156 | + "cachedInput": 0, | ||||
| 1157 | + "reasoning": 0 | ||||
| 1158 | + }, | ||||
| 1159 | + "api": "responses", | ||||
| 1160 | + "raw": { | ||||
| 1161 | + "status": "completed", | ||||
| 1162 | + "incomplete": null | ||||
| 1163 | + }, | ||||
| 1164 | + "sample": "La méthode du coût en évaluation immobilière consiste à déterminer la valeur d'un bien en additionnant le coût des matériaux et de la main-d'œuvre nécessaires à sa construction, en tenant compte de l'amortissement. Cette approche est souvent utilisée pour les propriétés nouvelles ou spécialisées, où", | ||||
| 1165 | + "costUsd": 0.0000456 | ||||
| 1166 | + }, | ||||
| 1167 | + { | ||||
| 1168 | + "test": "english", | ||||
| 1169 | + "ok": true, | ||||
| 1170 | + "latencyMs": 1106, | ||||
| 1171 | + "usage": { | ||||
| 1172 | + "input": 21, | ||||
| 1173 | + "output": 61, | ||||
| 1174 | + "cachedInput": 0, | ||||
| 1175 | + "reasoning": 0 | ||||
| 1176 | + }, | ||||
| 1177 | + "api": "responses", | ||||
| 1178 | + "raw": { | ||||
| 1179 | + "status": "completed", | ||||
| 1180 | + "incomplete": null | ||||
| 1181 | + }, | ||||
| 1182 | + "sample": "A hedonic pricing model is an analytical approach used to estimate the value of a good or service by breaking it down into its individual characteristics and attributes. This model often applies to real estate and consumer products, where prices reflect the perceived utility derived from various fea", | ||||
| 1183 | + "costUsd": 0.00003975 | ||||
| 1184 | + }, | ||||
| 1185 | + { | ||||
| 1186 | + "test": "json", | ||||
| 1187 | + "ok": true, | ||||
| 1188 | + "latencyMs": 876, | ||||
| 1189 | + "usage": { | ||||
| 1190 | + "input": 53, | ||||
| 1191 | + "output": 37, | ||||
| 1192 | + "cachedInput": 0, | ||||
| 1193 | + "reasoning": 0 | ||||
| 1194 | + }, | ||||
| 1195 | + "api": "responses", | ||||
| 1196 | + "raw": { | ||||
| 1197 | + "status": "completed", | ||||
| 1198 | + "incomplete": null | ||||
| 1199 | + }, | ||||
| 1200 | + "sample": "{\n \"city\": \"Gatineau\",\n \"country\": \"Canada\",\n \"province\": \"Quebec\",\n \"population_estimate\": 300000\n}", | ||||
| 1201 | + "costUsd": 0.000030149999999999998 | ||||
| 1202 | + }, | ||||
| 1203 | + { | ||||
| 1204 | + "test": "tools", | ||||
| 1205 | + "ok": true, | ||||
| 1206 | + "latencyMs": 634, | ||||
| 1207 | + "usage": { | ||||
| 1208 | + "input": 64, | ||||
| 1209 | + "output": 19, | ||||
| 1210 | + "cachedInput": 0, | ||||
| 1211 | + "reasoning": 0 | ||||
| 1212 | + }, | ||||
| 1213 | + "api": "responses", | ||||
| 1214 | + "raw": { | ||||
| 1215 | + "status": "completed", | ||||
| 1216 | + "incomplete": null | ||||
| 1217 | + }, | ||||
| 1218 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 1219 | + "costUsd": 0.000021 | ||||
| 1220 | + }, | ||||
| 1221 | + { | ||||
| 1222 | + "test": "vision", | ||||
| 1223 | + "ok": true, | ||||
| 1224 | + "latencyMs": 718, | ||||
| 1225 | + "usage": { | ||||
| 1226 | + "input": 2871, | ||||
| 1227 | + "output": 9, | ||||
| 1228 | + "cachedInput": 0, | ||||
| 1229 | + "reasoning": 0 | ||||
| 1230 | + }, | ||||
| 1231 | + "api": "responses", | ||||
| 1232 | + "raw": { | ||||
| 1233 | + "status": "completed", | ||||
| 1234 | + "incomplete": null | ||||
| 1235 | + }, | ||||
| 1236 | + "sample": "circles=3; other=square", | ||||
| 1237 | + "costUsd": 0.00043604999999999995 | ||||
| 1238 | + }, | ||||
| 1239 | + { | ||||
| 1240 | + "test": "longctx", | ||||
| 1241 | + "ok": true, | ||||
| 1242 | + "latencyMs": 750, | ||||
| 1243 | + "usage": { | ||||
| 1244 | + "input": 9135, | ||||
| 1245 | + "output": 6, | ||||
| 1246 | + "cachedInput": 0, | ||||
| 1247 | + "reasoning": 0 | ||||
| 1248 | + }, | ||||
| 1249 | + "api": "responses", | ||||
| 1250 | + "raw": { | ||||
| 1251 | + "status": "completed", | ||||
| 1252 | + "incomplete": null | ||||
| 1253 | + }, | ||||
| 1254 | + "sample": "7431-ALPHA", | ||||
| 1255 | + "costUsd": 0.0013738499999999998 | ||||
| 1256 | + }, | ||||
| 1257 | + { | ||||
| 1258 | + "test": "streaming", | ||||
| 1259 | + "ok": true, | ||||
| 1260 | + "latencyMs": 684, | ||||
| 1261 | + "ttftMs": 482, | ||||
| 1262 | + "usage": { | ||||
| 1263 | + "input": 16, | ||||
| 1264 | + "output": 21, | ||||
| 1265 | + "cachedInput": 0, | ||||
| 1266 | + "reasoning": 0 | ||||
| 1267 | + }, | ||||
| 1268 | + "api": "responses", | ||||
| 1269 | + "sample": "Snow whispers softly, \nPines cloaked in crystal beauty— \nQuebec's cold embrace.", | ||||
| 1270 | + "costUsd": 0.000015 | ||||
| 1271 | + } | ||||
| 1272 | + ], | ||||
| 1273 | + "api": "responses" | ||||
| 1274 | + }, | ||||
| 1275 | + "gpt-4o-mini-search-preview": { | ||||
| 1276 | + "provider": "openai", | ||||
| 1277 | + "kind": "search", | ||||
| 1278 | + "tests": [ | ||||
| 1279 | + { | ||||
| 1280 | + "test": "basic", | ||||
| 1281 | + "ok": false, | ||||
| 1282 | + "latencyMs": 277, | ||||
| 1283 | + "error": "404 404 The model `gpt-4o-mini-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 1284 | + } | ||||
| 1285 | + ] | ||||
| 1286 | + }, | ||||
| 1287 | + "gpt-4o-search-preview": { | ||||
| 1288 | + "provider": "openai", | ||||
| 1289 | + "kind": "search", | ||||
| 1290 | + "tests": [ | ||||
| 1291 | + { | ||||
| 1292 | + "test": "basic", | ||||
| 1293 | + "ok": false, | ||||
| 1294 | + "latencyMs": 275, | ||||
| 1295 | + "error": "404 404 The model `gpt-4o-search-preview` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 1296 | + } | ||||
| 1297 | + ] | ||||
| 1298 | + }, | ||||
| 1299 | + "gpt-5": { | ||||
| 1300 | + "provider": "openai", | ||||
| 1301 | + "kind": "chat", | ||||
| 1302 | + "tests": [ | ||||
| 1303 | + { | ||||
| 1304 | + "test": "reasoning", | ||||
| 1305 | + "ok": true, | ||||
| 1306 | + "latencyMs": 5702, | ||||
| 1307 | + "usage": { | ||||
| 1308 | + "input": 42, | ||||
| 1309 | + "output": 399, | ||||
| 1310 | + "cachedInput": 0, | ||||
| 1311 | + "reasoning": 320 | ||||
| 1312 | + }, | ||||
| 1313 | + "api": "responses", | ||||
| 1314 | + "raw": { | ||||
| 1315 | + "status": "completed", | ||||
| 1316 | + "incomplete": null | ||||
| 1317 | + }, | ||||
| 1318 | + "sample": "Alice is one of the girls. If she has 2 sisters, then there are 3 girls total (Alice + 2). Each brother’s sisters are all three girls. \nANSWER: 3", | ||||
| 1319 | + "costUsd": 0.0040425 | ||||
| 1320 | + }, | ||||
| 1321 | + { | ||||
| 1322 | + "test": "math", | ||||
| 1323 | + "ok": true, | ||||
| 1324 | + "latencyMs": 2439, | ||||
| 1325 | + "usage": { | ||||
| 1326 | + "input": 50, | ||||
| 1327 | + "output": 230, | ||||
| 1328 | + "cachedInput": 0, | ||||
| 1329 | + "reasoning": 192 | ||||
| 1330 | + }, | ||||
| 1331 | + "api": "responses", | ||||
| 1332 | + "raw": { | ||||
| 1333 | + "status": "completed", | ||||
| 1334 | + "incomplete": null | ||||
| 1335 | + }, | ||||
| 1336 | + "sample": "a=403;b=2500", | ||||
| 1337 | + "costUsd": 0.0023625 | ||||
| 1338 | + }, | ||||
| 1339 | + { | ||||
| 1340 | + "test": "code", | ||||
| 1341 | + "ok": true, | ||||
| 1342 | + "latencyMs": 7366, | ||||
| 1343 | + "usage": { | ||||
| 1344 | + "input": 49, | ||||
| 1345 | + "output": 639, | ||||
| 1346 | + "cachedInput": 0, | ||||
| 1347 | + "reasoning": 512 | ||||
| 1348 | + }, | ||||
| 1349 | + "api": "responses", | ||||
| 1350 | + "raw": { | ||||
| 1351 | + "status": "completed", | ||||
| 1352 | + "incomplete": null | ||||
| 1353 | + }, | ||||
| 1354 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 1355 | + "costUsd": 0.00645125 | ||||
| 1356 | + }, | ||||
| 1357 | + { | ||||
| 1358 | + "test": "french", | ||||
| 1359 | + "ok": true, | ||||
| 1360 | + "latencyMs": 2603, | ||||
| 1361 | + "usage": { | ||||
| 1362 | + "input": 31, | ||||
| 1363 | + "output": 312, | ||||
| 1364 | + "cachedInput": 0, | ||||
| 1365 | + "reasoning": 192 | ||||
| 1366 | + }, | ||||
| 1367 | + "api": "responses", | ||||
| 1368 | + "raw": { | ||||
| 1369 | + "status": "completed", | ||||
| 1370 | + "incomplete": null | ||||
| 1371 | + }, | ||||
| 1372 | + "sample": "La méthode du coût évalue un bien en additionnant la valeur du terrain au coût de remplacement ou de reproduction de l’immeuble, puis en retranchant la dépréciation (physique, fonctionnelle et externe). Elle est surtout utilisée pour les biens spéciaux ou neufs et lorsque les données de marché sont ", | ||||
| 1373 | + "costUsd": 0.00315875 | ||||
| 1374 | + }, | ||||
| 1375 | + { | ||||
| 1376 | + "test": "english", | ||||
| 1377 | + "ok": true, | ||||
| 1378 | + "latencyMs": 4497, | ||||
| 1379 | + "usage": { | ||||
| 1380 | + "input": 20, | ||||
| 1381 | + "output": 311, | ||||
| 1382 | + "cachedInput": 0, | ||||
| 1383 | + "reasoning": 192 | ||||
| 1384 | + }, | ||||
| 1385 | + "api": "responses", | ||||
| 1386 | + "raw": { | ||||
| 1387 | + "status": "completed", | ||||
| 1388 | + "incomplete": null | ||||
| 1389 | + }, | ||||
| 1390 | + "sample": "A hedonic pricing model decomposes an observed market price into the implicit values of its characteristics, typically using regression analysis to estimate each attribute's marginal contribution. It is widely used in housing and other differentiated-good markets to infer willingness to pay for feat", | ||||
| 1391 | + "costUsd": 0.003135 | ||||
| 1392 | + }, | ||||
| 1393 | + { | ||||
| 1394 | + "test": "json", | ||||
| 1395 | + "ok": true, | ||||
| 1396 | + "latencyMs": 3814, | ||||
| 1397 | + "usage": { | ||||
| 1398 | + "input": 52, | ||||
| 1399 | + "output": 484, | ||||
| 1400 | + "cachedInput": 0, | ||||
| 1401 | + "reasoning": 448 | ||||
| 1402 | + }, | ||||
| 1403 | + "api": "responses", | ||||
| 1404 | + "raw": { | ||||
| 1405 | + "status": "completed", | ||||
| 1406 | + "incomplete": null | ||||
| 1407 | + }, | ||||
| 1408 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 1409 | + "costUsd": 0.004905 | ||||
| 1410 | + }, | ||||
| 1411 | + { | ||||
| 1412 | + "test": "tools", | ||||
| 1413 | + "ok": true, | ||||
| 1414 | + "latencyMs": 1448, | ||||
| 1415 | + "usage": { | ||||
| 1416 | + "input": 69, | ||||
| 1417 | + "output": 152, | ||||
| 1418 | + "cachedInput": 0, | ||||
| 1419 | + "reasoning": 128 | ||||
| 1420 | + }, | ||||
| 1421 | + "api": "responses", | ||||
| 1422 | + "raw": { | ||||
| 1423 | + "status": "completed", | ||||
| 1424 | + "incomplete": null | ||||
| 1425 | + }, | ||||
| 1426 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 1427 | + "costUsd": 0.00160625 | ||||
| 1428 | + }, | ||||
| 1429 | + { | ||||
| 1430 | + "test": "vision", | ||||
| 1431 | + "ok": true, | ||||
| 1432 | + "latencyMs": 1798, | ||||
| 1433 | + "usage": { | ||||
| 1434 | + "input": 107, | ||||
| 1435 | + "output": 196, | ||||
| 1436 | + "cachedInput": 0, | ||||
| 1437 | + "reasoning": 128 | ||||
| 1438 | + }, | ||||
| 1439 | + "api": "responses", | ||||
| 1440 | + "raw": { | ||||
| 1441 | + "status": "completed", | ||||
| 1442 | + "incomplete": null | ||||
| 1443 | + }, | ||||
| 1444 | + "sample": "circles=3; other=square", | ||||
| 1445 | + "costUsd": 0.00209375 | ||||
| 1446 | + }, | ||||
| 1447 | + { | ||||
| 1448 | + "test": "longctx", | ||||
| 1449 | + "ok": true, | ||||
| 1450 | + "latencyMs": 3685, | ||||
| 1451 | + "usage": { | ||||
| 1452 | + "input": 9134, | ||||
| 1453 | + "output": 323, | ||||
| 1454 | + "cachedInput": 0, | ||||
| 1455 | + "reasoning": 256 | ||||
| 1456 | + }, | ||||
| 1457 | + "api": "responses", | ||||
| 1458 | + "raw": { | ||||
| 1459 | + "status": "completed", | ||||
| 1460 | + "incomplete": null | ||||
| 1461 | + }, | ||||
| 1462 | + "sample": "7431-ALPHA", | ||||
| 1463 | + "costUsd": 0.0146475 | ||||
| 1464 | + }, | ||||
| 1465 | + { | ||||
| 1466 | + "test": "basic", | ||||
| 1467 | + "ok": true, | ||||
| 1468 | + "latencyMs": 1813, | ||||
| 1469 | + "usage": { | ||||
| 1470 | + "input": 19, | ||||
| 1471 | + "output": 101, | ||||
| 1472 | + "cachedInput": 0, | ||||
| 1473 | + "reasoning": 64 | ||||
| 1474 | + }, | ||||
| 1475 | + "api": "responses", | ||||
| 1476 | + "raw": { | ||||
| 1477 | + "status": "completed", | ||||
| 1478 | + "incomplete": null | ||||
| 1479 | + }, | ||||
| 1480 | + "sample": "Ottawa", | ||||
| 1481 | + "costUsd": 0.00103375 | ||||
| 1482 | + }, | ||||
| 1483 | + { | ||||
| 1484 | + "test": "streaming", | ||||
| 1485 | + "ok": true, | ||||
| 1486 | + "latencyMs": 8238, | ||||
| 1487 | + "ttftMs": 7922, | ||||
| 1488 | + "usage": { | ||||
| 1489 | + "input": 15, | ||||
| 1490 | + "output": 950, | ||||
| 1491 | + "cachedInput": 0, | ||||
| 1492 | + "reasoning": 896 | ||||
| 1493 | + }, | ||||
| 1494 | + "api": "responses", | ||||
| 1495 | + "sample": "Saint Lawrence locked fast\nice moans under old bridges—\nBonhomme’s red sash glows", | ||||
| 1496 | + "costUsd": 0.00951875 | ||||
| 1497 | + } | ||||
| 1498 | + ], | ||||
| 1499 | + "api": "responses" | ||||
| 1500 | + }, | ||||
| 1501 | + "gpt-5-chat-latest": { | ||||
| 1502 | + "provider": "openai", | ||||
| 1503 | + "kind": "chat", | ||||
| 1504 | + "tests": [ | ||||
| 1505 | + { | ||||
| 1506 | + "test": "basic", | ||||
| 1507 | + "ok": false, | ||||
| 1508 | + "latencyMs": 279, | ||||
| 1509 | + "error": "404 404 The model `gpt-5-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 1510 | + } | ||||
| 1511 | + ] | ||||
| 1512 | + }, | ||||
| 1513 | + "gpt-5-codex": { | ||||
| 1514 | + "provider": "openai", | ||||
| 1515 | + "kind": "chat", | ||||
| 1516 | + "tests": [ | ||||
| 1517 | + { | ||||
| 1518 | + "test": "basic", | ||||
| 1519 | + "ok": false, | ||||
| 1520 | + "latencyMs": 287, | ||||
| 1521 | + "error": "404 404 The model `gpt-5-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 1522 | + } | ||||
| 1523 | + ] | ||||
| 1524 | + }, | ||||
| 1525 | + "gpt-5-mini": { | ||||
| 1526 | + "provider": "openai", | ||||
| 1527 | + "kind": "chat", | ||||
| 1528 | + "tests": [ | ||||
| 1529 | + { | ||||
| 1530 | + "test": "reasoning", | ||||
| 1531 | + "ok": true, | ||||
| 1532 | + "latencyMs": 3711, | ||||
| 1533 | + "usage": { | ||||
| 1534 | + "input": 42, | ||||
| 1535 | + "output": 327, | ||||
| 1536 | + "cachedInput": 0, | ||||
| 1537 | + "reasoning": 256 | ||||
| 1538 | + }, | ||||
| 1539 | + "api": "responses", | ||||
| 1540 | + "raw": { | ||||
| 1541 | + "status": "completed", | ||||
| 1542 | + "incomplete": null | ||||
| 1543 | + }, | ||||
| 1544 | + "sample": "Alice is one of the sisters, and she has 2 other sisters, so there are 3 sisters in total. Each of her brothers has those 3 sisters. ANSWER: 3", | ||||
| 1545 | + "costUsd": 0.0006645 | ||||
| 1546 | + }, | ||||
| 1547 | + { | ||||
| 1548 | + "test": "math", | ||||
| 1549 | + "ok": true, | ||||
| 1550 | + "latencyMs": 3159, | ||||
| 1551 | + "usage": { | ||||
| 1552 | + "input": 50, | ||||
| 1553 | + "output": 298, | ||||
| 1554 | + "cachedInput": 0, | ||||
| 1555 | + "reasoning": 256 | ||||
| 1556 | + }, | ||||
| 1557 | + "api": "responses", | ||||
| 1558 | + "raw": { | ||||
| 1559 | + "status": "completed", | ||||
| 1560 | + "incomplete": null | ||||
| 1561 | + }, | ||||
| 1562 | + "sample": "a=403;b=2500", | ||||
| 1563 | + "costUsd": 0.0006085 | ||||
| 1564 | + }, | ||||
| 1565 | + { | ||||
| 1566 | + "test": "code", | ||||
| 1567 | + "ok": true, | ||||
| 1568 | + "latencyMs": 4263, | ||||
| 1569 | + "usage": { | ||||
| 1570 | + "input": 49, | ||||
| 1571 | + "output": 455, | ||||
| 1572 | + "cachedInput": 0, | ||||
| 1573 | + "reasoning": 320 | ||||
| 1574 | + }, | ||||
| 1575 | + "api": "responses", | ||||
| 1576 | + "raw": { | ||||
| 1577 | + "status": "completed", | ||||
| 1578 | + "incomplete": null | ||||
| 1579 | + }, | ||||
| 1580 | + "sample": "```js\nfunction isPrime(n) {\n if (typeof n !== 'number' || !Number.isInteger(n) || n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return ", | ||||
| 1581 | + "costUsd": 0.00092225 | ||||
| 1582 | + }, | ||||
| 1583 | + { | ||||
| 1584 | + "test": "french", | ||||
| 1585 | + "ok": true, | ||||
| 1586 | + "latencyMs": 3761, | ||||
| 1587 | + "usage": { | ||||
| 1588 | + "input": 31, | ||||
| 1589 | + "output": 337, | ||||
| 1590 | + "cachedInput": 0, | ||||
| 1591 | + "reasoning": 192 | ||||
| 1592 | + }, | ||||
| 1593 | + "api": "responses", | ||||
| 1594 | + "raw": { | ||||
| 1595 | + "status": "completed", | ||||
| 1596 | + "incomplete": null | ||||
| 1597 | + }, | ||||
| 1598 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d'un bien en additionnant la valeur du terrain et le coût de reproduction ou de remplacement des constructions, puis en déduisant l'obsolescence et la dépréciation accumulées. Elle est particulièrement utile pour les immeubles", | ||||
| 1599 | + "costUsd": 0.00068175 | ||||
| 1600 | + }, | ||||
| 1601 | + { | ||||
| 1602 | + "test": "english", | ||||
| 1603 | + "ok": true, | ||||
| 1604 | + "latencyMs": 2936, | ||||
| 1605 | + "usage": { | ||||
| 1606 | + "input": 20, | ||||
| 1607 | + "output": 305, | ||||
| 1608 | + "cachedInput": 0, | ||||
| 1609 | + "reasoning": 192 | ||||
| 1610 | + }, | ||||
| 1611 | + "api": "responses", | ||||
| 1612 | + "raw": { | ||||
| 1613 | + "status": "completed", | ||||
| 1614 | + "incomplete": null | ||||
| 1615 | + }, | ||||
| 1616 | + "sample": "A hedonic pricing model decomposes the price of a differentiated good into the implicit prices of its measurable attributes by regressing observed transaction prices on those characteristics. It is commonly used in housing, labor, and product markets to estimate how much each feature (e.g., square f", | ||||
| 1617 | + "costUsd": 0.000615 | ||||
| 1618 | + }, | ||||
| 1619 | + { | ||||
| 1620 | + "test": "json", | ||||
| 1621 | + "ok": true, | ||||
| 1622 | + "latencyMs": 4528, | ||||
| 1623 | + "usage": { | ||||
| 1624 | + "input": 52, | ||||
| 1625 | + "output": 418, | ||||
| 1626 | + "cachedInput": 0, | ||||
| 1627 | + "reasoning": 384 | ||||
| 1628 | + }, | ||||
| 1629 | + "api": "responses", | ||||
| 1630 | + "raw": { | ||||
| 1631 | + "status": "completed", | ||||
| 1632 | + "incomplete": null | ||||
| 1633 | + }, | ||||
| 1634 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 1635 | + "costUsd": 0.000849 | ||||
| 1636 | + }, | ||||
| 1637 | + { | ||||
| 1638 | + "test": "tools", | ||||
| 1639 | + "ok": true, | ||||
| 1640 | + "latencyMs": 1728, | ||||
| 1641 | + "usage": { | ||||
| 1642 | + "input": 69, | ||||
| 1643 | + "output": 97, | ||||
| 1644 | + "cachedInput": 0, | ||||
| 1645 | + "reasoning": 64 | ||||
| 1646 | + }, | ||||
| 1647 | + "api": "responses", | ||||
| 1648 | + "raw": { | ||||
| 1649 | + "status": "completed", | ||||
| 1650 | + "incomplete": null | ||||
| 1651 | + }, | ||||
| 1652 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 1653 | + "costUsd": 0.00021125 | ||||
| 1654 | + }, | ||||
| 1655 | + { | ||||
| 1656 | + "test": "vision", | ||||
| 1657 | + "ok": true, | ||||
| 1658 | + "latencyMs": 1422, | ||||
| 1659 | + "usage": { | ||||
| 1660 | + "input": 194, | ||||
| 1661 | + "output": 96, | ||||
| 1662 | + "cachedInput": 0, | ||||
| 1663 | + "reasoning": 64 | ||||
| 1664 | + }, | ||||
| 1665 | + "api": "responses", | ||||
| 1666 | + "raw": { | ||||
| 1667 | + "status": "completed", | ||||
| 1668 | + "incomplete": null | ||||
| 1669 | + }, | ||||
| 1670 | + "sample": "circles=3; other=square", | ||||
| 1671 | + "costUsd": 0.0002405 | ||||
| 1672 | + }, | ||||
| 1673 | + { | ||||
| 1674 | + "test": "longctx", | ||||
| 1675 | + "ok": true, | ||||
| 1676 | + "latencyMs": 2108, | ||||
| 1677 | + "usage": { | ||||
| 1678 | + "input": 9134, | ||||
| 1679 | + "output": 186, | ||||
| 1680 | + "cachedInput": 0, | ||||
| 1681 | + "reasoning": 128 | ||||
| 1682 | + }, | ||||
| 1683 | + "api": "responses", | ||||
| 1684 | + "raw": { | ||||
| 1685 | + "status": "completed", | ||||
| 1686 | + "incomplete": null | ||||
| 1687 | + }, | ||||
| 1688 | + "sample": "7431-ALPHA", | ||||
| 1689 | + "costUsd": 0.0026555 | ||||
| 1690 | + }, | ||||
| 1691 | + { | ||||
| 1692 | + "test": "basic", | ||||
| 1693 | + "ok": true, | ||||
| 1694 | + "latencyMs": 1572, | ||||
| 1695 | + "usage": { | ||||
| 1696 | + "input": 19, | ||||
| 1697 | + "output": 65, | ||||
| 1698 | + "cachedInput": 0, | ||||
| 1699 | + "reasoning": 0 | ||||
| 1700 | + }, | ||||
| 1701 | + "api": "responses", | ||||
| 1702 | + "raw": { | ||||
| 1703 | + "status": "completed", | ||||
| 1704 | + "incomplete": null | ||||
| 1705 | + }, | ||||
| 1706 | + "sample": "Ottawa", | ||||
| 1707 | + "costUsd": 0.00013475 | ||||
| 1708 | + }, | ||||
| 1709 | + { | ||||
| 1710 | + "test": "streaming", | ||||
| 1711 | + "ok": true, | ||||
| 1712 | + "latencyMs": 10441, | ||||
| 1713 | + "ttftMs": 10075, | ||||
| 1714 | + "usage": { | ||||
| 1715 | + "input": 15, | ||||
| 1716 | + "output": 856, | ||||
| 1717 | + "cachedInput": 0, | ||||
| 1718 | + "reasoning": 832 | ||||
| 1719 | + }, | ||||
| 1720 | + "api": "responses", | ||||
| 1721 | + "sample": "Gray roofs under snow\nStreet lamps halo the soft falling\nMaple smoke in air", | ||||
| 1722 | + "costUsd": 0.00171575 | ||||
| 1723 | + } | ||||
| 1724 | + ], | ||||
| 1725 | + "api": "responses" | ||||
| 1726 | + }, | ||||
| 1727 | + "gpt-5-nano": { | ||||
| 1728 | + "provider": "openai", | ||||
| 1729 | + "kind": "chat", | ||||
| 1730 | + "tests": [ | ||||
| 1731 | + { | ||||
| 1732 | + "test": "reasoning", | ||||
| 1733 | + "ok": true, | ||||
| 1734 | + "latencyMs": 4900, | ||||
| 1735 | + "usage": { | ||||
| 1736 | + "input": 42, | ||||
| 1737 | + "output": 1051, | ||||
| 1738 | + "cachedInput": 0, | ||||
| 1739 | + "reasoning": 960 | ||||
| 1740 | + }, | ||||
| 1741 | + "api": "responses", | ||||
| 1742 | + "raw": { | ||||
| 1743 | + "status": "completed", | ||||
| 1744 | + "incomplete": null | ||||
| 1745 | + }, | ||||
| 1746 | + "sample": "There are 2 other sisters besides Alice, and Alice is also his sister, so each brother has 3 sisters in total.\n\nANSWER: 3", | ||||
| 1747 | + "costUsd": 0.0004225000000000001 | ||||
| 1748 | + }, | ||||
| 1749 | + { | ||||
| 1750 | + "test": "math", | ||||
| 1751 | + "ok": true, | ||||
| 1752 | + "latencyMs": 1239, | ||||
| 1753 | + "usage": { | ||||
| 1754 | + "input": 50, | ||||
| 1755 | + "output": 235, | ||||
| 1756 | + "cachedInput": 0, | ||||
| 1757 | + "reasoning": 192 | ||||
| 1758 | + }, | ||||
| 1759 | + "api": "responses", | ||||
| 1760 | + "raw": { | ||||
| 1761 | + "status": "completed", | ||||
| 1762 | + "incomplete": null | ||||
| 1763 | + }, | ||||
| 1764 | + "sample": "a=403;b=2500", | ||||
| 1765 | + "costUsd": 0.0000965 | ||||
| 1766 | + }, | ||||
| 1767 | + { | ||||
| 1768 | + "test": "code", | ||||
| 1769 | + "ok": true, | ||||
| 1770 | + "latencyMs": 4674, | ||||
| 1771 | + "usage": { | ||||
| 1772 | + "input": 49, | ||||
| 1773 | + "output": 1037, | ||||
| 1774 | + "cachedInput": 0, | ||||
| 1775 | + "reasoning": 832 | ||||
| 1776 | + }, | ||||
| 1777 | + "api": "responses", | ||||
| 1778 | + "raw": { | ||||
| 1779 | + "status": "completed", | ||||
| 1780 | + "incomplete": null | ||||
| 1781 | + }, | ||||
| 1782 | + "sample": "```js\nfunction isPrime(n) {\n if (typeof n !== 'number' || !Number.isFinite(n)) return false;\n if (n !== Math.floor(n)) return false;\n if (n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n let i = 5;\n while (i * i <= n) {\n if (n % i =", | ||||
| 1783 | + "costUsd": 0.00041725 | ||||
| 1784 | + }, | ||||
| 1785 | + { | ||||
| 1786 | + "test": "french", | ||||
| 1787 | + "ok": true, | ||||
| 1788 | + "latencyMs": 3034, | ||||
| 1789 | + "usage": { | ||||
| 1790 | + "input": 31, | ||||
| 1791 | + "output": 853, | ||||
| 1792 | + "cachedInput": 0, | ||||
| 1793 | + "reasoning": 768 | ||||
| 1794 | + }, | ||||
| 1795 | + "api": "responses", | ||||
| 1796 | + "raw": { | ||||
| 1797 | + "status": "completed", | ||||
| 1798 | + "incomplete": null | ||||
| 1799 | + }, | ||||
| 1800 | + "sample": "La méthode du coût en évaluation immobilière estime la valeur d'un bien à partir du coût de reconstruction ou de remplacement du bâtiment, estimé à jour. On y ajoute la valeur du terrain et on retranche les dépréciations (physiques, fonctionnelles et économiques) pour obtenir la valeur finale.", | ||||
| 1801 | + "costUsd": 0.00034275000000000006 | ||||
| 1802 | + }, | ||||
| 1803 | + { | ||||
| 1804 | + "test": "english", | ||||
| 1805 | + "ok": true, | ||||
| 1806 | + "latencyMs": 2844, | ||||
| 1807 | + "usage": { | ||||
| 1808 | + "input": 20, | ||||
| 1809 | + "output": 592, | ||||
| 1810 | + "cachedInput": 0, | ||||
| 1811 | + "reasoning": 512 | ||||
| 1812 | + }, | ||||
| 1813 | + "api": "responses", | ||||
| 1814 | + "raw": { | ||||
| 1815 | + "status": "completed", | ||||
| 1816 | + "incomplete": null | ||||
| 1817 | + }, | ||||
| 1818 | + "sample": "A hedonic pricing model estimates the value of a good or service by decomposing its price into the value of its observable attributes or characteristics. It uses regression analysis to relate price to these attributes, yielding implicit prices for each characteristic and enabling analysis of how fea", | ||||
| 1819 | + "costUsd": 0.0002378 | ||||
| 1820 | + }, | ||||
| 1821 | + { | ||||
| 1822 | + "test": "json", | ||||
| 1823 | + "ok": true, | ||||
| 1824 | + "latencyMs": 6989, | ||||
| 1825 | + "usage": { | ||||
| 1826 | + "input": 52, | ||||
| 1827 | + "output": 1433, | ||||
| 1828 | + "cachedInput": 0, | ||||
| 1829 | + "reasoning": 1344 | ||||
| 1830 | + }, | ||||
| 1831 | + "api": "responses", | ||||
| 1832 | + "raw": { | ||||
| 1833 | + "status": "completed", | ||||
| 1834 | + "incomplete": null | ||||
| 1835 | + }, | ||||
| 1836 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":330000}", | ||||
| 1837 | + "costUsd": 0.0005758000000000001 | ||||
| 1838 | + }, | ||||
| 1839 | + { | ||||
| 1840 | + "test": "tools", | ||||
| 1841 | + "ok": true, | ||||
| 1842 | + "latencyMs": 1511, | ||||
| 1843 | + "usage": { | ||||
| 1844 | + "input": 69, | ||||
| 1845 | + "output": 180, | ||||
| 1846 | + "cachedInput": 0, | ||||
| 1847 | + "reasoning": 128 | ||||
| 1848 | + }, | ||||
| 1849 | + "api": "responses", | ||||
| 1850 | + "raw": { | ||||
| 1851 | + "status": "completed", | ||||
| 1852 | + "incomplete": null | ||||
| 1853 | + }, | ||||
| 1854 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 1855 | + "costUsd": 0.00007545 | ||||
| 1856 | + }, | ||||
| 1857 | + { | ||||
| 1858 | + "test": "vision", | ||||
| 1859 | + "ok": true, | ||||
| 1860 | + "latencyMs": 1219, | ||||
| 1861 | + "usage": { | ||||
| 1862 | + "input": 232, | ||||
| 1863 | + "output": 187, | ||||
| 1864 | + "cachedInput": 0, | ||||
| 1865 | + "reasoning": 128 | ||||
| 1866 | + }, | ||||
| 1867 | + "api": "responses", | ||||
| 1868 | + "raw": { | ||||
| 1869 | + "status": "completed", | ||||
| 1870 | + "incomplete": null | ||||
| 1871 | + }, | ||||
| 1872 | + "sample": "circles=3; other=square", | ||||
| 1873 | + "costUsd": 0.0000864 | ||||
| 1874 | + }, | ||||
| 1875 | + { | ||||
| 1876 | + "test": "longctx", | ||||
| 1877 | + "ok": true, | ||||
| 1878 | + "latencyMs": 1924, | ||||
| 1879 | + "usage": { | ||||
| 1880 | + "input": 9134, | ||||
| 1881 | + "output": 273, | ||||
| 1882 | + "cachedInput": 0, | ||||
| 1883 | + "reasoning": 256 | ||||
| 1884 | + }, | ||||
| 1885 | + "api": "responses", | ||||
| 1886 | + "raw": { | ||||
| 1887 | + "status": "completed", | ||||
| 1888 | + "incomplete": null | ||||
| 1889 | + }, | ||||
| 1890 | + "sample": "7431-ALPHA", | ||||
| 1891 | + "costUsd": 0.0005659 | ||||
| 1892 | + }, | ||||
| 1893 | + { | ||||
| 1894 | + "test": "basic", | ||||
| 1895 | + "ok": true, | ||||
| 1896 | + "latencyMs": 1779, | ||||
| 1897 | + "usage": { | ||||
| 1898 | + "input": 19, | ||||
| 1899 | + "output": 119, | ||||
| 1900 | + "cachedInput": 0, | ||||
| 1901 | + "reasoning": 64 | ||||
| 1902 | + }, | ||||
| 1903 | + "api": "responses", | ||||
| 1904 | + "raw": { | ||||
| 1905 | + "status": "completed", | ||||
| 1906 | + "incomplete": null | ||||
| 1907 | + }, | ||||
| 1908 | + "sample": "Ottawa", | ||||
| 1909 | + "costUsd": 0.00004855 | ||||
| 1910 | + }, | ||||
| 1911 | + { | ||||
| 1912 | + "test": "streaming", | ||||
| 1913 | + "ok": true, | ||||
| 1914 | + "latencyMs": 10863, | ||||
| 1915 | + "ttftMs": 10356, | ||||
| 1916 | + "usage": { | ||||
| 1917 | + "input": 15, | ||||
| 1918 | + "output": 2091, | ||||
| 1919 | + "cachedInput": 0, | ||||
| 1920 | + "reasoning": 2048 | ||||
| 1921 | + }, | ||||
| 1922 | + "api": "responses", | ||||
| 1923 | + "sample": "Snow sighs on the pines\nThe old town wears a white shawl\nIce threads the river", | ||||
| 1924 | + "costUsd": 0.00083715 | ||||
| 1925 | + } | ||||
| 1926 | + ], | ||||
| 1927 | + "api": "responses" | ||||
| 1928 | + }, | ||||
| 1929 | + "gpt-5-pro": { | ||||
| 1930 | + "provider": "openai", | ||||
| 1931 | + "kind": "chat-pro", | ||||
| 1932 | + "tests": [ | ||||
| 1933 | + { | ||||
| 1934 | + "test": "basic", | ||||
| 1935 | + "ok": true, | ||||
| 1936 | + "latencyMs": 13713, | ||||
| 1937 | + "usage": { | ||||
| 1938 | + "input": 19, | ||||
| 1939 | + "output": 72, | ||||
| 1940 | + "cachedInput": 0, | ||||
| 1941 | + "reasoning": 64 | ||||
| 1942 | + }, | ||||
| 1943 | + "api": "responses", | ||||
| 1944 | + "raw": { | ||||
| 1945 | + "status": "completed", | ||||
| 1946 | + "incomplete": null | ||||
| 1947 | + }, | ||||
| 1948 | + "sample": "Ottawa", | ||||
| 1949 | + "costUsd": 0.008925 | ||||
| 1950 | + }, | ||||
| 1951 | + { | ||||
| 1952 | + "test": "reasoning", | ||||
| 1953 | + "ok": true, | ||||
| 1954 | + "latencyMs": 49039, | ||||
| 1955 | + "usage": { | ||||
| 1956 | + "input": 42, | ||||
| 1957 | + "output": 813, | ||||
| 1958 | + "cachedInput": 0, | ||||
| 1959 | + "reasoning": 768 | ||||
| 1960 | + }, | ||||
| 1961 | + "api": "responses", | ||||
| 1962 | + "raw": { | ||||
| 1963 | + "status": "completed", | ||||
| 1964 | + "incomplete": null | ||||
| 1965 | + }, | ||||
| 1966 | + "sample": "Alice has 2 sisters, and Alice herself is also a sister to her brothers. So each brother has 3 sisters. ANSWER: 3", | ||||
| 1967 | + "costUsd": 0.09819 | ||||
| 1968 | + }, | ||||
| 1969 | + { | ||||
| 1970 | + "test": "json", | ||||
| 1971 | + "ok": true, | ||||
| 1972 | + "latencyMs": 47132, | ||||
| 1973 | + "usage": { | ||||
| 1974 | + "input": 52, | ||||
| 1975 | + "output": 976, | ||||
| 1976 | + "cachedInput": 0, | ||||
| 1977 | + "reasoning": 896 | ||||
| 1978 | + }, | ||||
| 1979 | + "api": "responses", | ||||
| 1980 | + "raw": { | ||||
| 1981 | + "status": "completed", | ||||
| 1982 | + "incomplete": null | ||||
| 1983 | + }, | ||||
| 1984 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 1985 | + "costUsd": 0.1179 | ||||
| 1986 | + }, | ||||
| 1987 | + { | ||||
| 1988 | + "test": "tools", | ||||
| 1989 | + "ok": true, | ||||
| 1990 | + "latencyMs": 15890, | ||||
| 1991 | + "usage": { | ||||
| 1992 | + "input": 69, | ||||
| 1993 | + "output": 231, | ||||
| 1994 | + "cachedInput": 0, | ||||
| 1995 | + "reasoning": 192 | ||||
| 1996 | + }, | ||||
| 1997 | + "api": "responses", | ||||
| 1998 | + "raw": { | ||||
| 1999 | + "status": "completed", | ||||
| 2000 | + "incomplete": null | ||||
| 2001 | + }, | ||||
| 2002 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 2003 | + "costUsd": 0.028755 | ||||
| 2004 | + } | ||||
| 2005 | + ], | ||||
| 2006 | + "api": "responses" | ||||
| 2007 | + }, | ||||
| 2008 | + "gpt-5-search-api": { | ||||
| 2009 | + "provider": "openai", | ||||
| 2010 | + "kind": "search", | ||||
| 2011 | + "tests": [ | ||||
| 2012 | + { | ||||
| 2013 | + "test": "basic", | ||||
| 2014 | + "ok": true, | ||||
| 2015 | + "latencyMs": 1262, | ||||
| 2016 | + "usage": { | ||||
| 2017 | + "input": 1576, | ||||
| 2018 | + "output": 6, | ||||
| 2019 | + "cachedInput": 0, | ||||
| 2020 | + "reasoning": 0 | ||||
| 2021 | + }, | ||||
| 2022 | + "api": "chat", | ||||
| 2023 | + "raw": { | ||||
| 2024 | + "finish": "stop" | ||||
| 2025 | + }, | ||||
| 2026 | + "sample": "Ottawa", | ||||
| 2027 | + "costUsd": 0.00203 | ||||
| 2028 | + }, | ||||
| 2029 | + { | ||||
| 2030 | + "test": "reasoning", | ||||
| 2031 | + "ok": true, | ||||
| 2032 | + "latencyMs": 1707, | ||||
| 2033 | + "usage": { | ||||
| 2034 | + "input": 1599, | ||||
| 2035 | + "output": 133, | ||||
| 2036 | + "cachedInput": 0, | ||||
| 2037 | + "reasoning": 0 | ||||
| 2038 | + }, | ||||
| 2039 | + "api": "chat", | ||||
| 2040 | + "raw": { | ||||
| 2041 | + "finish": "stop" | ||||
| 2042 | + }, | ||||
| 2043 | + "sample": "Each of Alice’s brothers has 3 sisters. Because Alice has 2 sisters in addition to herself, each brother’s sisters are: Alice + those 2 sisters = 3. \nANSWER: 3", | ||||
| 2044 | + "costUsd": 0.00332875 | ||||
| 2045 | + }, | ||||
| 2046 | + { | ||||
| 2047 | + "test": "math", | ||||
| 2048 | + "ok": false, | ||||
| 2049 | + "latencyMs": 1218, | ||||
| 2050 | + "usage": { | ||||
| 2051 | + "input": 1607, | ||||
| 2052 | + "output": 11, | ||||
| 2053 | + "cachedInput": 0, | ||||
| 2054 | + "reasoning": 0 | ||||
| 2055 | + }, | ||||
| 2056 | + "api": "chat", | ||||
| 2057 | + "raw": { | ||||
| 2058 | + "finish": "stop" | ||||
| 2059 | + }, | ||||
| 2060 | + "sample": "a=411;b=2500", | ||||
| 2061 | + "costUsd": 0.00211875 | ||||
| 2062 | + }, | ||||
| 2063 | + { | ||||
| 2064 | + "test": "code", | ||||
| 2065 | + "ok": true, | ||||
| 2066 | + "latencyMs": 2032, | ||||
| 2067 | + "usage": { | ||||
| 2068 | + "input": 1606, | ||||
| 2069 | + "output": 159, | ||||
| 2070 | + "cachedInput": 0, | ||||
| 2071 | + "reasoning": 0 | ||||
| 2072 | + }, | ||||
| 2073 | + "api": "chat", | ||||
| 2074 | + "raw": { | ||||
| 2075 | + "finish": "stop" | ||||
| 2076 | + }, | ||||
| 2077 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1 || n !== Math.floor(n)) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n const limit = Math.floor(Math.sqrt(n));\n for (let i = 5; i <= limit; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return fal", | ||||
| 2078 | + "costUsd": 0.0035975 | ||||
| 2079 | + }, | ||||
| 2080 | + { | ||||
| 2081 | + "test": "french", | ||||
| 2082 | + "ok": true, | ||||
| 2083 | + "latencyMs": 5782, | ||||
| 2084 | + "usage": { | ||||
| 2085 | + "input": 16623, | ||||
| 2086 | + "output": 171, | ||||
| 2087 | + "cachedInput": 0, | ||||
| 2088 | + "reasoning": 0 | ||||
| 2089 | + }, | ||||
| 2090 | + "api": "chat", | ||||
| 2091 | + "raw": { | ||||
| 2092 | + "finish": "stop" | ||||
| 2093 | + }, | ||||
| 2094 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain (si vacant) et le coût à neuf de construction d’un bâtiment équivalent, puis en soustrayant la dépréciation due à l’usure, à l’obsolescence ou à des facteurs externes ([pmea.ca](h", | ||||
| 2095 | + "costUsd": 0.02248875 | ||||
| 2096 | + }, | ||||
| 2097 | + { | ||||
| 2098 | + "test": "english", | ||||
| 2099 | + "ok": true, | ||||
| 2100 | + "latencyMs": 1621, | ||||
| 2101 | + "usage": { | ||||
| 2102 | + "input": 1577, | ||||
| 2103 | + "output": 93, | ||||
| 2104 | + "cachedInput": 0, | ||||
| 2105 | + "reasoning": 0 | ||||
| 2106 | + }, | ||||
| 2107 | + "api": "chat", | ||||
| 2108 | + "raw": { | ||||
| 2109 | + "finish": "stop" | ||||
| 2110 | + }, | ||||
| 2111 | + "sample": "A hedonic pricing model is an economic method used to estimate the value of a good or service by breaking it down into its component attributes and determining how much each contributes to overall price. It relies on observed market data to statistically isolate how individual characteristics (such ", | ||||
| 2112 | + "costUsd": 0.00290125 | ||||
| 2113 | + }, | ||||
| 2114 | + { | ||||
| 2115 | + "test": "json", | ||||
| 2116 | + "ok": true, | ||||
| 2117 | + "latencyMs": 4414, | ||||
| 2118 | + "usage": { | ||||
| 2119 | + "input": 16436, | ||||
| 2120 | + "output": 27, | ||||
| 2121 | + "cachedInput": 1408, | ||||
| 2122 | + "reasoning": 0 | ||||
| 2123 | + }, | ||||
| 2124 | + "api": "chat", | ||||
| 2125 | + "raw": { | ||||
| 2126 | + "finish": "stop" | ||||
| 2127 | + }, | ||||
| 2128 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":305437}", | ||||
| 2129 | + "costUsd": 0.019231 | ||||
| 2130 | + }, | ||||
| 2131 | + { | ||||
| 2132 | + "test": "tools", | ||||
| 2133 | + "ok": false, | ||||
| 2134 | + "latencyMs": 103, | ||||
| 2135 | + "error": "404 404 tools is not supported in this model. For a list of supported models, refer to https://platform.openai.com/docs/guides/function-calling#models-supporting-function-calling." | ||||
| 2136 | + }, | ||||
| 2137 | + { | ||||
| 2138 | + "test": "vision", | ||||
| 2139 | + "ok": false, | ||||
| 2140 | + "latencyMs": 1643, | ||||
| 2141 | + "usage": { | ||||
| 2142 | + "input": 1673, | ||||
| 2143 | + "output": 12, | ||||
| 2144 | + "cachedInput": 0, | ||||
| 2145 | + "reasoning": 0 | ||||
| 2146 | + }, | ||||
| 2147 | + "api": "chat", | ||||
| 2148 | + "raw": { | ||||
| 2149 | + "finish": "stop" | ||||
| 2150 | + }, | ||||
| 2151 | + "sample": "circles=3; other=triangle", | ||||
| 2152 | + "costUsd": 0.00221125 | ||||
| 2153 | + }, | ||||
| 2154 | + { | ||||
| 2155 | + "test": "longctx", | ||||
| 2156 | + "ok": true, | ||||
| 2157 | + "latencyMs": 1313, | ||||
| 2158 | + "usage": { | ||||
| 2159 | + "input": 10691, | ||||
| 2160 | + "output": 9, | ||||
| 2161 | + "cachedInput": 1408, | ||||
| 2162 | + "reasoning": 0 | ||||
| 2163 | + }, | ||||
| 2164 | + "api": "chat", | ||||
| 2165 | + "raw": { | ||||
| 2166 | + "finish": "stop" | ||||
| 2167 | + }, | ||||
| 2168 | + "sample": "7431-ALPHA", | ||||
| 2169 | + "costUsd": 0.01186975 | ||||
| 2170 | + }, | ||||
| 2171 | + { | ||||
| 2172 | + "test": "streaming", | ||||
| 2173 | + "ok": true, | ||||
| 2174 | + "latencyMs": 1582, | ||||
| 2175 | + "ttftMs": 1073, | ||||
| 2176 | + "usage": { | ||||
| 2177 | + "input": 1572, | ||||
| 2178 | + "output": 24, | ||||
| 2179 | + "cachedInput": 1152 | ||||
| 2180 | + }, | ||||
| 2181 | + "api": "chat", | ||||
| 2182 | + "sample": "Québec snowfall drifts— \nRiver whispers under ice, \nMaple’s scarlet glow.", | ||||
| 2183 | + "costUsd": 0.000909 | ||||
| 2184 | + } | ||||
| 2185 | + ], | ||||
| 2186 | + "api": "chat" | ||||
| 2187 | + }, | ||||
| 2188 | + "gpt-5.1": { | ||||
| 2189 | + "provider": "openai", | ||||
| 2190 | + "kind": "chat", | ||||
| 2191 | + "tests": [ | ||||
| 2192 | + { | ||||
| 2193 | + "test": "basic", | ||||
| 2194 | + "ok": true, | ||||
| 2195 | + "latencyMs": 808, | ||||
| 2196 | + "usage": { | ||||
| 2197 | + "input": 19, | ||||
| 2198 | + "output": 12, | ||||
| 2199 | + "cachedInput": 0, | ||||
| 2200 | + "reasoning": 0 | ||||
| 2201 | + }, | ||||
| 2202 | + "api": "responses", | ||||
| 2203 | + "raw": { | ||||
| 2204 | + "status": "completed", | ||||
| 2205 | + "incomplete": null | ||||
| 2206 | + }, | ||||
| 2207 | + "sample": "Ottawa", | ||||
| 2208 | + "costUsd": 0.00014375 | ||||
| 2209 | + }, | ||||
| 2210 | + { | ||||
| 2211 | + "test": "reasoning", | ||||
| 2212 | + "ok": true, | ||||
| 2213 | + "latencyMs": 1431, | ||||
| 2214 | + "usage": { | ||||
| 2215 | + "input": 42, | ||||
| 2216 | + "output": 71, | ||||
| 2217 | + "cachedInput": 0, | ||||
| 2218 | + "reasoning": 0 | ||||
| 2219 | + }, | ||||
| 2220 | + "api": "responses", | ||||
| 2221 | + "raw": { | ||||
| 2222 | + "status": "completed", | ||||
| 2223 | + "incomplete": null | ||||
| 2224 | + }, | ||||
| 2225 | + "sample": "Alice has 3 brothers and 2 sisters.\n\nTotal girls in the family: Alice + 2 sisters = 3 sisters.\n\nEach brother’s sisters are all the girls in the family (since each brother is not counted as his own sister). So each brother has 3 sisters.\n\nANSWER: 3", | ||||
| 2226 | + "costUsd": 0.0007625 | ||||
| 2227 | + }, | ||||
| 2228 | + { | ||||
| 2229 | + "test": "math", | ||||
| 2230 | + "ok": false, | ||||
| 2231 | + "latencyMs": 743, | ||||
| 2232 | + "usage": { | ||||
| 2233 | + "input": 50, | ||||
| 2234 | + "output": 17, | ||||
| 2235 | + "cachedInput": 0, | ||||
| 2236 | + "reasoning": 0 | ||||
| 2237 | + }, | ||||
| 2238 | + "api": "responses", | ||||
| 2239 | + "raw": { | ||||
| 2240 | + "status": "completed", | ||||
| 2241 | + "incomplete": null | ||||
| 2242 | + }, | ||||
| 2243 | + "sample": "a=419;b=2500", | ||||
| 2244 | + "costUsd": 0.0002325 | ||||
| 2245 | + }, | ||||
| 2246 | + { | ||||
| 2247 | + "test": "code", | ||||
| 2248 | + "ok": true, | ||||
| 2249 | + "latencyMs": 1084, | ||||
| 2250 | + "usage": { | ||||
| 2251 | + "input": 49, | ||||
| 2252 | + "output": 117, | ||||
| 2253 | + "cachedInput": 0, | ||||
| 2254 | + "reasoning": 0 | ||||
| 2255 | + }, | ||||
| 2256 | + "api": "responses", | ||||
| 2257 | + "raw": { | ||||
| 2258 | + "status": "completed", | ||||
| 2259 | + "incomplete": null | ||||
| 2260 | + }, | ||||
| 2261 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 2262 | + "costUsd": 0.00123125 | ||||
| 2263 | + }, | ||||
| 2264 | + { | ||||
| 2265 | + "test": "french", | ||||
| 2266 | + "ok": true, | ||||
| 2267 | + "latencyMs": 1419, | ||||
| 2268 | + "usage": { | ||||
| 2269 | + "input": 31, | ||||
| 2270 | + "output": 85, | ||||
| 2271 | + "cachedInput": 0, | ||||
| 2272 | + "reasoning": 0 | ||||
| 2273 | + }, | ||||
| 2274 | + "api": "responses", | ||||
| 2275 | + "raw": { | ||||
| 2276 | + "status": "completed", | ||||
| 2277 | + "incomplete": null | ||||
| 2278 | + }, | ||||
| 2279 | + "sample": "La méthode du coût, en évaluation immobilière, consiste à estimer la valeur d’un bien en additionnant la valeur du terrain à celle des constructions, calculée sur la base du coût de remplacement ou de reproduction. On déduit ensuite la dépréciation (vieillissement, obsolescence, vétusté) pour obteni", | ||||
| 2280 | + "costUsd": 0.00088875 | ||||
| 2281 | + }, | ||||
| 2282 | + { | ||||
| 2283 | + "test": "english", | ||||
| 2284 | + "ok": true, | ||||
| 2285 | + "latencyMs": 1116, | ||||
| 2286 | + "usage": { | ||||
| 2287 | + "input": 20, | ||||
| 2288 | + "output": 77, | ||||
| 2289 | + "cachedInput": 0, | ||||
| 2290 | + "reasoning": 0 | ||||
| 2291 | + }, | ||||
| 2292 | + "api": "responses", | ||||
| 2293 | + "raw": { | ||||
| 2294 | + "status": "completed", | ||||
| 2295 | + "incomplete": null | ||||
| 2296 | + }, | ||||
| 2297 | + "sample": "A hedonic pricing model is an econometric method that estimates the value of a good or service by decomposing its price into the implicit prices of its attributes or characteristics. It is commonly used to infer the value of non-market attributes—such as environmental quality or neighborhood safety—", | ||||
| 2298 | + "costUsd": 0.000795 | ||||
| 2299 | + }, | ||||
| 2300 | + { | ||||
| 2301 | + "test": "json", | ||||
| 2302 | + "ok": true, | ||||
| 2303 | + "latencyMs": 815, | ||||
| 2304 | + "usage": { | ||||
| 2305 | + "input": 52, | ||||
| 2306 | + "output": 33, | ||||
| 2307 | + "cachedInput": 0, | ||||
| 2308 | + "reasoning": 0 | ||||
| 2309 | + }, | ||||
| 2310 | + "api": "responses", | ||||
| 2311 | + "raw": { | ||||
| 2312 | + "status": "completed", | ||||
| 2313 | + "incomplete": null | ||||
| 2314 | + }, | ||||
| 2315 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":300000}", | ||||
| 2316 | + "costUsd": 0.000395 | ||||
| 2317 | + }, | ||||
| 2318 | + { | ||||
| 2319 | + "test": "tools", | ||||
| 2320 | + "ok": true, | ||||
| 2321 | + "latencyMs": 738, | ||||
| 2322 | + "usage": { | ||||
| 2323 | + "input": 69, | ||||
| 2324 | + "output": 28, | ||||
| 2325 | + "cachedInput": 0, | ||||
| 2326 | + "reasoning": 0 | ||||
| 2327 | + }, | ||||
| 2328 | + "api": "responses", | ||||
| 2329 | + "raw": { | ||||
| 2330 | + "status": "completed", | ||||
| 2331 | + "incomplete": null | ||||
| 2332 | + }, | ||||
| 2333 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 2334 | + "costUsd": 0.00036625 | ||||
| 2335 | + }, | ||||
| 2336 | + { | ||||
| 2337 | + "test": "vision", | ||||
| 2338 | + "ok": true, | ||||
| 2339 | + "latencyMs": 871, | ||||
| 2340 | + "usage": { | ||||
| 2341 | + "input": 107, | ||||
| 2342 | + "output": 18, | ||||
| 2343 | + "cachedInput": 0, | ||||
| 2344 | + "reasoning": 0 | ||||
| 2345 | + }, | ||||
| 2346 | + "api": "responses", | ||||
| 2347 | + "raw": { | ||||
| 2348 | + "status": "completed", | ||||
| 2349 | + "incomplete": null | ||||
| 2350 | + }, | ||||
| 2351 | + "sample": "circles=3; other=square", | ||||
| 2352 | + "costUsd": 0.00031375 | ||||
| 2353 | + }, | ||||
| 2354 | + { | ||||
| 2355 | + "test": "longctx", | ||||
| 2356 | + "ok": true, | ||||
| 2357 | + "latencyMs": 812, | ||||
| 2358 | + "usage": { | ||||
| 2359 | + "input": 9134, | ||||
| 2360 | + "output": 15, | ||||
| 2361 | + "cachedInput": 0, | ||||
| 2362 | + "reasoning": 0 | ||||
| 2363 | + }, | ||||
| 2364 | + "api": "responses", | ||||
| 2365 | + "raw": { | ||||
| 2366 | + "status": "completed", | ||||
| 2367 | + "incomplete": null | ||||
| 2368 | + }, | ||||
| 2369 | + "sample": "7431-ALPHA", | ||||
| 2370 | + "costUsd": 0.0115675 | ||||
| 2371 | + }, | ||||
| 2372 | + { | ||||
| 2373 | + "test": "streaming", | ||||
| 2374 | + "ok": true, | ||||
| 2375 | + "latencyMs": 1035, | ||||
| 2376 | + "ttftMs": 610, | ||||
| 2377 | + "usage": { | ||||
| 2378 | + "input": 15, | ||||
| 2379 | + "output": 34, | ||||
| 2380 | + "cachedInput": 0, | ||||
| 2381 | + "reasoning": 0 | ||||
| 2382 | + }, | ||||
| 2383 | + "api": "responses", | ||||
| 2384 | + "sample": "Snowstorm-veiled steeples, \nMaple smoke threads frozen streets— \nNorth wind hymns in French.", | ||||
| 2385 | + "costUsd": 0.00035875 | ||||
| 2386 | + } | ||||
| 2387 | + ], | ||||
| 2388 | + "api": "responses" | ||||
| 2389 | + }, | ||||
| 2390 | + "gpt-5.1-chat-latest": { | ||||
| 2391 | + "provider": "openai", | ||||
| 2392 | + "kind": "chat", | ||||
| 2393 | + "tests": [ | ||||
| 2394 | + { | ||||
| 2395 | + "test": "basic", | ||||
| 2396 | + "ok": false, | ||||
| 2397 | + "latencyMs": 275, | ||||
| 2398 | + "error": "404 404 The model `gpt-5.1-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2399 | + } | ||||
| 2400 | + ] | ||||
| 2401 | + }, | ||||
| 2402 | + "gpt-5.1-codex": { | ||||
| 2403 | + "provider": "openai", | ||||
| 2404 | + "kind": "chat", | ||||
| 2405 | + "tests": [ | ||||
| 2406 | + { | ||||
| 2407 | + "test": "basic", | ||||
| 2408 | + "ok": false, | ||||
| 2409 | + "latencyMs": 232, | ||||
| 2410 | + "error": "404 404 The model `gpt-5.1-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2411 | + } | ||||
| 2412 | + ] | ||||
| 2413 | + }, | ||||
| 2414 | + "gpt-5.1-codex-max": { | ||||
| 2415 | + "provider": "openai", | ||||
| 2416 | + "kind": "chat", | ||||
| 2417 | + "tests": [ | ||||
| 2418 | + { | ||||
| 2419 | + "test": "basic", | ||||
| 2420 | + "ok": false, | ||||
| 2421 | + "latencyMs": 257, | ||||
| 2422 | + "error": "404 404 The model `gpt-5.1-codex-max` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2423 | + } | ||||
| 2424 | + ] | ||||
| 2425 | + }, | ||||
| 2426 | + "gpt-5.1-codex-mini": { | ||||
| 2427 | + "provider": "openai", | ||||
| 2428 | + "kind": "chat", | ||||
| 2429 | + "tests": [ | ||||
| 2430 | + { | ||||
| 2431 | + "test": "basic", | ||||
| 2432 | + "ok": false, | ||||
| 2433 | + "latencyMs": 327, | ||||
| 2434 | + "error": "404 404 The model `gpt-5.1-codex-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2435 | + } | ||||
| 2436 | + ] | ||||
| 2437 | + }, | ||||
| 2438 | + "gpt-5.2": { | ||||
| 2439 | + "provider": "openai", | ||||
| 2440 | + "kind": "chat", | ||||
| 2441 | + "tests": [ | ||||
| 2442 | + { | ||||
| 2443 | + "test": "basic", | ||||
| 2444 | + "ok": true, | ||||
| 2445 | + "latencyMs": 701, | ||||
| 2446 | + "usage": { | ||||
| 2447 | + "input": 19, | ||||
| 2448 | + "output": 6, | ||||
| 2449 | + "cachedInput": 0, | ||||
| 2450 | + "reasoning": 0 | ||||
| 2451 | + }, | ||||
| 2452 | + "api": "responses", | ||||
| 2453 | + "raw": { | ||||
| 2454 | + "status": "completed", | ||||
| 2455 | + "incomplete": null | ||||
| 2456 | + }, | ||||
| 2457 | + "sample": "Ottawa", | ||||
| 2458 | + "costUsd": 0.00011725 | ||||
| 2459 | + }, | ||||
| 2460 | + { | ||||
| 2461 | + "test": "reasoning", | ||||
| 2462 | + "ok": false, | ||||
| 2463 | + "latencyMs": 1496, | ||||
| 2464 | + "usage": { | ||||
| 2465 | + "input": 42, | ||||
| 2466 | + "output": 47, | ||||
| 2467 | + "cachedInput": 0, | ||||
| 2468 | + "reasoning": 0 | ||||
| 2469 | + }, | ||||
| 2470 | + "api": "responses", | ||||
| 2471 | + "raw": { | ||||
| 2472 | + "status": "completed", | ||||
| 2473 | + "incomplete": null | ||||
| 2474 | + }, | ||||
| 2475 | + "sample": "Alice is one of the sisters. The family has 2 sisters total (Alice plus one more) and 3 brothers. Each brother has the same set of sisters: the 2 sisters.\n\nANSWER: 2", | ||||
| 2476 | + "costUsd": 0.0007315 | ||||
| 2477 | + }, | ||||
| 2478 | + { | ||||
| 2479 | + "test": "math", | ||||
| 2480 | + "ok": true, | ||||
| 2481 | + "latencyMs": 2918, | ||||
| 2482 | + "usage": { | ||||
| 2483 | + "input": 50, | ||||
| 2484 | + "output": 11, | ||||
| 2485 | + "cachedInput": 0, | ||||
| 2486 | + "reasoning": 0 | ||||
| 2487 | + }, | ||||
| 2488 | + "api": "responses", | ||||
| 2489 | + "raw": { | ||||
| 2490 | + "status": "completed", | ||||
| 2491 | + "incomplete": null | ||||
| 2492 | + }, | ||||
| 2493 | + "sample": "a=403;b=2500", | ||||
| 2494 | + "costUsd": 0.0002415 | ||||
| 2495 | + }, | ||||
| 2496 | + { | ||||
| 2497 | + "test": "code", | ||||
| 2498 | + "ok": true, | ||||
| 2499 | + "latencyMs": 1766, | ||||
| 2500 | + "usage": { | ||||
| 2501 | + "input": 49, | ||||
| 2502 | + "output": 122, | ||||
| 2503 | + "cachedInput": 0, | ||||
| 2504 | + "reasoning": 0 | ||||
| 2505 | + }, | ||||
| 2506 | + "api": "responses", | ||||
| 2507 | + "raw": { | ||||
| 2508 | + "status": "completed", | ||||
| 2509 | + "incomplete": null | ||||
| 2510 | + }, | ||||
| 2511 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n <= 1) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 2512 | + "costUsd": 0.00179375 | ||||
| 2513 | + }, | ||||
| 2514 | + { | ||||
| 2515 | + "test": "french", | ||||
| 2516 | + "ok": true, | ||||
| 2517 | + "latencyMs": 1864, | ||||
| 2518 | + "usage": { | ||||
| 2519 | + "input": 31, | ||||
| 2520 | + "output": 89, | ||||
| 2521 | + "cachedInput": 0, | ||||
| 2522 | + "reasoning": 0 | ||||
| 2523 | + }, | ||||
| 2524 | + "api": "responses", | ||||
| 2525 | + "raw": { | ||||
| 2526 | + "status": "completed", | ||||
| 2527 | + "incomplete": null | ||||
| 2528 | + }, | ||||
| 2529 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf des améliorations (bâtiments), puis en retranchant la dépréciation (usure, obsolescence, etc.). Elle est surtout utilisée pour des biens récent", | ||||
| 2530 | + "costUsd": 0.00130025 | ||||
| 2531 | + }, | ||||
| 2532 | + { | ||||
| 2533 | + "test": "english", | ||||
| 2534 | + "ok": true, | ||||
| 2535 | + "latencyMs": 1506, | ||||
| 2536 | + "usage": { | ||||
| 2537 | + "input": 20, | ||||
| 2538 | + "output": 55, | ||||
| 2539 | + "cachedInput": 0, | ||||
| 2540 | + "reasoning": 0 | ||||
| 2541 | + }, | ||||
| 2542 | + "api": "responses", | ||||
| 2543 | + "raw": { | ||||
| 2544 | + "status": "completed", | ||||
| 2545 | + "incomplete": null | ||||
| 2546 | + }, | ||||
| 2547 | + "sample": "A hedonic pricing model estimates the implicit value of an item’s individual characteristics by relating observed market prices to measurable attributes. It is commonly used for heterogeneous goods like housing to infer how features (e.g., size, location, amenities) contribute to price.", | ||||
| 2548 | + "costUsd": 0.000805 | ||||
| 2549 | + }, | ||||
| 2550 | + { | ||||
| 2551 | + "test": "json", | ||||
| 2552 | + "ok": true, | ||||
| 2553 | + "latencyMs": 936, | ||||
| 2554 | + "usage": { | ||||
| 2555 | + "input": 52, | ||||
| 2556 | + "output": 27, | ||||
| 2557 | + "cachedInput": 0, | ||||
| 2558 | + "reasoning": 0 | ||||
| 2559 | + }, | ||||
| 2560 | + "api": "responses", | ||||
| 2561 | + "raw": { | ||||
| 2562 | + "status": "completed", | ||||
| 2563 | + "incomplete": null | ||||
| 2564 | + }, | ||||
| 2565 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 2566 | + "costUsd": 0.000469 | ||||
| 2567 | + }, | ||||
| 2568 | + { | ||||
| 2569 | + "test": "tools", | ||||
| 2570 | + "ok": true, | ||||
| 2571 | + "latencyMs": 928, | ||||
| 2572 | + "usage": { | ||||
| 2573 | + "input": 69, | ||||
| 2574 | + "output": 22, | ||||
| 2575 | + "cachedInput": 0, | ||||
| 2576 | + "reasoning": 0 | ||||
| 2577 | + }, | ||||
| 2578 | + "api": "responses", | ||||
| 2579 | + "raw": { | ||||
| 2580 | + "status": "completed", | ||||
| 2581 | + "incomplete": null | ||||
| 2582 | + }, | ||||
| 2583 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 2584 | + "costUsd": 0.00042875 | ||||
| 2585 | + }, | ||||
| 2586 | + { | ||||
| 2587 | + "test": "vision", | ||||
| 2588 | + "ok": true, | ||||
| 2589 | + "latencyMs": 721, | ||||
| 2590 | + "usage": { | ||||
| 2591 | + "input": 194, | ||||
| 2592 | + "output": 12, | ||||
| 2593 | + "cachedInput": 0, | ||||
| 2594 | + "reasoning": 0 | ||||
| 2595 | + }, | ||||
| 2596 | + "api": "responses", | ||||
| 2597 | + "raw": { | ||||
| 2598 | + "status": "completed", | ||||
| 2599 | + "incomplete": null | ||||
| 2600 | + }, | ||||
| 2601 | + "sample": "circles=3; other=square", | ||||
| 2602 | + "costUsd": 0.0005075 | ||||
| 2603 | + }, | ||||
| 2604 | + { | ||||
| 2605 | + "test": "longctx", | ||||
| 2606 | + "ok": false, | ||||
| 2607 | + "latencyMs": 959, | ||||
| 2608 | + "usage": { | ||||
| 2609 | + "input": 9134, | ||||
| 2610 | + "output": 26, | ||||
| 2611 | + "cachedInput": 0, | ||||
| 2612 | + "reasoning": 0 | ||||
| 2613 | + }, | ||||
| 2614 | + "api": "responses", | ||||
| 2615 | + "raw": { | ||||
| 2616 | + "status": "completed", | ||||
| 2617 | + "incomplete": null | ||||
| 2618 | + }, | ||||
| 2619 | + "sample": "Je ne peux pas divulguer un code secret extrait d’une note interne marquée « Ne pas divulguer ».", | ||||
| 2620 | + "costUsd": 0.0163485 | ||||
| 2621 | + }, | ||||
| 2622 | + { | ||||
| 2623 | + "test": "streaming", | ||||
| 2624 | + "ok": true, | ||||
| 2625 | + "latencyMs": 1220, | ||||
| 2626 | + "ttftMs": 529, | ||||
| 2627 | + "usage": { | ||||
| 2628 | + "input": 15, | ||||
| 2629 | + "output": 26, | ||||
| 2630 | + "cachedInput": 0, | ||||
| 2631 | + "reasoning": 0 | ||||
| 2632 | + }, | ||||
| 2633 | + "api": "responses", | ||||
| 2634 | + "sample": "St. Lawrence locked in ice, \nMaple smoke warms dusk-blue streets— \nSnow hushes Québec.", | ||||
| 2635 | + "costUsd": 0.00039025 | ||||
| 2636 | + } | ||||
| 2637 | + ], | ||||
| 2638 | + "api": "responses" | ||||
| 2639 | + }, | ||||
| 2640 | + "gpt-5.2-chat-latest": { | ||||
| 2641 | + "provider": "openai", | ||||
| 2642 | + "kind": "chat", | ||||
| 2643 | + "tests": [ | ||||
| 2644 | + { | ||||
| 2645 | + "test": "basic", | ||||
| 2646 | + "ok": false, | ||||
| 2647 | + "latencyMs": 243, | ||||
| 2648 | + "error": "404 404 The model `gpt-5.2-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2649 | + } | ||||
| 2650 | + ] | ||||
| 2651 | + }, | ||||
| 2652 | + "gpt-5.2-codex": { | ||||
| 2653 | + "provider": "openai", | ||||
| 2654 | + "kind": "chat", | ||||
| 2655 | + "tests": [ | ||||
| 2656 | + { | ||||
| 2657 | + "test": "basic", | ||||
| 2658 | + "ok": false, | ||||
| 2659 | + "latencyMs": 246, | ||||
| 2660 | + "error": "404 404 The model `gpt-5.2-codex` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2661 | + } | ||||
| 2662 | + ] | ||||
| 2663 | + }, | ||||
| 2664 | + "gpt-5.2-pro": { | ||||
| 2665 | + "provider": "openai", | ||||
| 2666 | + "kind": "chat-pro", | ||||
| 2667 | + "tests": [ | ||||
| 2668 | + { | ||||
| 2669 | + "test": "basic", | ||||
| 2670 | + "ok": true, | ||||
| 2671 | + "latencyMs": 4095, | ||||
| 2672 | + "usage": { | ||||
| 2673 | + "input": 19, | ||||
| 2674 | + "output": 6, | ||||
| 2675 | + "cachedInput": 0, | ||||
| 2676 | + "reasoning": 0 | ||||
| 2677 | + }, | ||||
| 2678 | + "api": "responses", | ||||
| 2679 | + "raw": { | ||||
| 2680 | + "status": "completed", | ||||
| 2681 | + "incomplete": null | ||||
| 2682 | + }, | ||||
| 2683 | + "sample": "Ottawa", | ||||
| 2684 | + "costUsd": 0.001407 | ||||
| 2685 | + }, | ||||
| 2686 | + { | ||||
| 2687 | + "test": "reasoning", | ||||
| 2688 | + "ok": true, | ||||
| 2689 | + "latencyMs": 6396, | ||||
| 2690 | + "usage": { | ||||
| 2691 | + "input": 42, | ||||
| 2692 | + "output": 91, | ||||
| 2693 | + "cachedInput": 0, | ||||
| 2694 | + "reasoning": 36 | ||||
| 2695 | + }, | ||||
| 2696 | + "api": "responses", | ||||
| 2697 | + "raw": { | ||||
| 2698 | + "status": "completed", | ||||
| 2699 | + "incomplete": null | ||||
| 2700 | + }, | ||||
| 2701 | + "sample": "Alice is one of the sisters. Since she has 2 sisters, that means there are **3 sisters total** in the family (Alice + 2 others). Each of Alice’s brothers therefore has **3 sisters**.\n\nANSWER: 3", | ||||
| 2702 | + "costUsd": 0.01617 | ||||
| 2703 | + }, | ||||
| 2704 | + { | ||||
| 2705 | + "test": "json", | ||||
| 2706 | + "ok": true, | ||||
| 2707 | + "latencyMs": 6297, | ||||
| 2708 | + "usage": { | ||||
| 2709 | + "input": 52, | ||||
| 2710 | + "output": 93, | ||||
| 2711 | + "cachedInput": 0, | ||||
| 2712 | + "reasoning": 64 | ||||
| 2713 | + }, | ||||
| 2714 | + "api": "responses", | ||||
| 2715 | + "raw": { | ||||
| 2716 | + "status": "completed", | ||||
| 2717 | + "incomplete": null | ||||
| 2718 | + }, | ||||
| 2719 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 2720 | + "costUsd": 0.016716 | ||||
| 2721 | + }, | ||||
| 2722 | + { | ||||
| 2723 | + "test": "tools", | ||||
| 2724 | + "ok": true, | ||||
| 2725 | + "latencyMs": 9220, | ||||
| 2726 | + "usage": { | ||||
| 2727 | + "input": 69, | ||||
| 2728 | + "output": 22, | ||||
| 2729 | + "cachedInput": 0, | ||||
| 2730 | + "reasoning": 0 | ||||
| 2731 | + }, | ||||
| 2732 | + "api": "responses", | ||||
| 2733 | + "raw": { | ||||
| 2734 | + "status": "completed", | ||||
| 2735 | + "incomplete": null | ||||
| 2736 | + }, | ||||
| 2737 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 2738 | + "costUsd": 0.005145 | ||||
| 2739 | + } | ||||
| 2740 | + ], | ||||
| 2741 | + "api": "responses" | ||||
| 2742 | + }, | ||||
| 2743 | + "gpt-5.3-chat-latest": { | ||||
| 2744 | + "provider": "openai", | ||||
| 2745 | + "kind": "chat", | ||||
| 2746 | + "tests": [ | ||||
| 2747 | + { | ||||
| 2748 | + "test": "basic", | ||||
| 2749 | + "ok": false, | ||||
| 2750 | + "latencyMs": 320, | ||||
| 2751 | + "error": "404 404 The model `gpt-5.3-chat-latest` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 2752 | + } | ||||
| 2753 | + ] | ||||
| 2754 | + }, | ||||
| 2755 | + "gpt-5.3-codex": { | ||||
| 2756 | + "provider": "openai", | ||||
| 2757 | + "kind": "chat", | ||||
| 2758 | + "tests": [ | ||||
| 2759 | + { | ||||
| 2760 | + "test": "basic", | ||||
| 2761 | + "ok": true, | ||||
| 2762 | + "latencyMs": 656, | ||||
| 2763 | + "usage": { | ||||
| 2764 | + "input": 19, | ||||
| 2765 | + "output": 6, | ||||
| 2766 | + "cachedInput": 0, | ||||
| 2767 | + "reasoning": 0 | ||||
| 2768 | + }, | ||||
| 2769 | + "api": "responses", | ||||
| 2770 | + "raw": { | ||||
| 2771 | + "status": "completed", | ||||
| 2772 | + "incomplete": null | ||||
| 2773 | + }, | ||||
| 2774 | + "sample": "Ottawa", | ||||
| 2775 | + "costUsd": 0.00011725 | ||||
| 2776 | + }, | ||||
| 2777 | + { | ||||
| 2778 | + "test": "reasoning", | ||||
| 2779 | + "ok": false, | ||||
| 2780 | + "latencyMs": 1209, | ||||
| 2781 | + "usage": { | ||||
| 2782 | + "input": 42, | ||||
| 2783 | + "output": 46, | ||||
| 2784 | + "cachedInput": 0, | ||||
| 2785 | + "reasoning": 0 | ||||
| 2786 | + }, | ||||
| 2787 | + "api": "responses", | ||||
| 2788 | + "raw": { | ||||
| 2789 | + "status": "completed", | ||||
| 2790 | + "incomplete": null | ||||
| 2791 | + }, | ||||
| 2792 | + "sample": "Alice has 2 sisters total, and Alice is one of them.\n\nSo each of Alice’s brothers has the same sisters: **Alice + Alice’s other sister = 2 sisters**.\n\nANSWER: 2", | ||||
| 2793 | + "costUsd": 0.0007175 | ||||
| 2794 | + }, | ||||
| 2795 | + { | ||||
| 2796 | + "test": "math", | ||||
| 2797 | + "ok": true, | ||||
| 2798 | + "latencyMs": 828, | ||||
| 2799 | + "usage": { | ||||
| 2800 | + "input": 50, | ||||
| 2801 | + "output": 11, | ||||
| 2802 | + "cachedInput": 0, | ||||
| 2803 | + "reasoning": 0 | ||||
| 2804 | + }, | ||||
| 2805 | + "api": "responses", | ||||
| 2806 | + "raw": { | ||||
| 2807 | + "status": "completed", | ||||
| 2808 | + "incomplete": null | ||||
| 2809 | + }, | ||||
| 2810 | + "sample": "a=403;b=2500", | ||||
| 2811 | + "costUsd": 0.0002415 | ||||
| 2812 | + }, | ||||
| 2813 | + { | ||||
| 2814 | + "test": "code", | ||||
| 2815 | + "ok": true, | ||||
| 2816 | + "latencyMs": 1511, | ||||
| 2817 | + "usage": { | ||||
| 2818 | + "input": 49, | ||||
| 2819 | + "output": 117, | ||||
| 2820 | + "cachedInput": 0, | ||||
| 2821 | + "reasoning": 0 | ||||
| 2822 | + }, | ||||
| 2823 | + "api": "responses", | ||||
| 2824 | + "raw": { | ||||
| 2825 | + "status": "completed", | ||||
| 2826 | + "incomplete": null | ||||
| 2827 | + }, | ||||
| 2828 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 2829 | + "costUsd": 0.00172375 | ||||
| 2830 | + }, | ||||
| 2831 | + { | ||||
| 2832 | + "test": "french", | ||||
| 2833 | + "ok": true, | ||||
| 2834 | + "latencyMs": 1635, | ||||
| 2835 | + "usage": { | ||||
| 2836 | + "input": 31, | ||||
| 2837 | + "output": 87, | ||||
| 2838 | + "cachedInput": 0, | ||||
| 2839 | + "reasoning": 0 | ||||
| 2840 | + }, | ||||
| 2841 | + "api": "responses", | ||||
| 2842 | + "raw": { | ||||
| 2843 | + "status": "completed", | ||||
| 2844 | + "incomplete": null | ||||
| 2845 | + }, | ||||
| 2846 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf du bâtiment, puis en retranchant les dépréciations (usure, obsolescence, etc.). Elle est surtout utilisée pour les biens récents, spécialisés o", | ||||
| 2847 | + "costUsd": 0.00127225 | ||||
| 2848 | + }, | ||||
| 2849 | + { | ||||
| 2850 | + "test": "english", | ||||
| 2851 | + "ok": true, | ||||
| 2852 | + "latencyMs": 1682, | ||||
| 2853 | + "usage": { | ||||
| 2854 | + "input": 20, | ||||
| 2855 | + "output": 64, | ||||
| 2856 | + "cachedInput": 0, | ||||
| 2857 | + "reasoning": 0 | ||||
| 2858 | + }, | ||||
| 2859 | + "api": "responses", | ||||
| 2860 | + "raw": { | ||||
| 2861 | + "status": "completed", | ||||
| 2862 | + "incomplete": null | ||||
| 2863 | + }, | ||||
| 2864 | + "sample": "A hedonic pricing model is a statistical method that estimates how different characteristics of a good—such as size, location, or quality—contribute to its overall price. It is commonly used in markets like housing to isolate the implicit value of each attribute by comparing prices across similar it", | ||||
| 2865 | + "costUsd": 0.000931 | ||||
| 2866 | + }, | ||||
| 2867 | + { | ||||
| 2868 | + "test": "json", | ||||
| 2869 | + "ok": true, | ||||
| 2870 | + "latencyMs": 992, | ||||
| 2871 | + "usage": { | ||||
| 2872 | + "input": 52, | ||||
| 2873 | + "output": 27, | ||||
| 2874 | + "cachedInput": 0, | ||||
| 2875 | + "reasoning": 0 | ||||
| 2876 | + }, | ||||
| 2877 | + "api": "responses", | ||||
| 2878 | + "raw": { | ||||
| 2879 | + "status": "completed", | ||||
| 2880 | + "incomplete": null | ||||
| 2881 | + }, | ||||
| 2882 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 2883 | + "costUsd": 0.000469 | ||||
| 2884 | + }, | ||||
| 2885 | + { | ||||
| 2886 | + "test": "tools", | ||||
| 2887 | + "ok": true, | ||||
| 2888 | + "latencyMs": 791, | ||||
| 2889 | + "usage": { | ||||
| 2890 | + "input": 69, | ||||
| 2891 | + "output": 22, | ||||
| 2892 | + "cachedInput": 0, | ||||
| 2893 | + "reasoning": 0 | ||||
| 2894 | + }, | ||||
| 2895 | + "api": "responses", | ||||
| 2896 | + "raw": { | ||||
| 2897 | + "status": "completed", | ||||
| 2898 | + "incomplete": null | ||||
| 2899 | + }, | ||||
| 2900 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 2901 | + "costUsd": 0.00042875 | ||||
| 2902 | + }, | ||||
| 2903 | + { | ||||
| 2904 | + "test": "vision", | ||||
| 2905 | + "ok": true, | ||||
| 2906 | + "latencyMs": 804, | ||||
| 2907 | + "usage": { | ||||
| 2908 | + "input": 194, | ||||
| 2909 | + "output": 12, | ||||
| 2910 | + "cachedInput": 0, | ||||
| 2911 | + "reasoning": 0 | ||||
| 2912 | + }, | ||||
| 2913 | + "api": "responses", | ||||
| 2914 | + "raw": { | ||||
| 2915 | + "status": "completed", | ||||
| 2916 | + "incomplete": null | ||||
| 2917 | + }, | ||||
| 2918 | + "sample": "circles=3; other=square", | ||||
| 2919 | + "costUsd": 0.0005075 | ||||
| 2920 | + }, | ||||
| 2921 | + { | ||||
| 2922 | + "test": "longctx", | ||||
| 2923 | + "ok": true, | ||||
| 2924 | + "latencyMs": 779, | ||||
| 2925 | + "usage": { | ||||
| 2926 | + "input": 9134, | ||||
| 2927 | + "output": 9, | ||||
| 2928 | + "cachedInput": 0, | ||||
| 2929 | + "reasoning": 0 | ||||
| 2930 | + }, | ||||
| 2931 | + "api": "responses", | ||||
| 2932 | + "raw": { | ||||
| 2933 | + "status": "completed", | ||||
| 2934 | + "incomplete": null | ||||
| 2935 | + }, | ||||
| 2936 | + "sample": "7431-ALPHA", | ||||
| 2937 | + "costUsd": 0.0161105 | ||||
| 2938 | + }, | ||||
| 2939 | + { | ||||
| 2940 | + "test": "streaming", | ||||
| 2941 | + "ok": true, | ||||
| 2942 | + "latencyMs": 1049, | ||||
| 2943 | + "ttftMs": 545, | ||||
| 2944 | + "usage": { | ||||
| 2945 | + "input": 15, | ||||
| 2946 | + "output": 27, | ||||
| 2947 | + "cachedInput": 0, | ||||
| 2948 | + "reasoning": 0 | ||||
| 2949 | + }, | ||||
| 2950 | + "api": "responses", | ||||
| 2951 | + "sample": "Snow hushes old pines, \nSt. Lawrence breathes silver mist— \nQuebec dreams in white.", | ||||
| 2952 | + "costUsd": 0.00040425 | ||||
| 2953 | + } | ||||
| 2954 | + ], | ||||
| 2955 | + "api": "responses" | ||||
| 2956 | + }, | ||||
| 2957 | + "gpt-5.4": { | ||||
| 2958 | + "provider": "openai", | ||||
| 2959 | + "kind": "chat", | ||||
| 2960 | + "tests": [ | ||||
| 2961 | + { | ||||
| 2962 | + "test": "basic", | ||||
| 2963 | + "ok": true, | ||||
| 2964 | + "latencyMs": 940, | ||||
| 2965 | + "usage": { | ||||
| 2966 | + "input": 19, | ||||
| 2967 | + "output": 6, | ||||
| 2968 | + "cachedInput": 0, | ||||
| 2969 | + "reasoning": 0 | ||||
| 2970 | + }, | ||||
| 2971 | + "api": "responses", | ||||
| 2972 | + "raw": { | ||||
| 2973 | + "status": "completed", | ||||
| 2974 | + "incomplete": null | ||||
| 2975 | + }, | ||||
| 2976 | + "sample": "Ottawa", | ||||
| 2977 | + "costUsd": 0.0001375 | ||||
| 2978 | + }, | ||||
| 2979 | + { | ||||
| 2980 | + "test": "reasoning", | ||||
| 2981 | + "ok": false, | ||||
| 2982 | + "latencyMs": 1559, | ||||
| 2983 | + "usage": { | ||||
| 2984 | + "input": 42, | ||||
| 2985 | + "output": 38, | ||||
| 2986 | + "cachedInput": 0, | ||||
| 2987 | + "reasoning": 0 | ||||
| 2988 | + }, | ||||
| 2989 | + "api": "responses", | ||||
| 2990 | + "raw": { | ||||
| 2991 | + "status": "completed", | ||||
| 2992 | + "incomplete": null | ||||
| 2993 | + }, | ||||
| 2994 | + "sample": "Alice is one of the sisters.\n\nSo the family has:\n- 3 brothers\n- 2 sisters total\n\nEach brother has 2 sisters.\n\nANSWER: 2", | ||||
| 2995 | + "costUsd": 0.000675 | ||||
| 2996 | + }, | ||||
| 2997 | + { | ||||
| 2998 | + "test": "math", | ||||
| 2999 | + "ok": true, | ||||
| 3000 | + "latencyMs": 840, | ||||
| 3001 | + "usage": { | ||||
| 3002 | + "input": 50, | ||||
| 3003 | + "output": 11, | ||||
| 3004 | + "cachedInput": 0, | ||||
| 3005 | + "reasoning": 0 | ||||
| 3006 | + }, | ||||
| 3007 | + "api": "responses", | ||||
| 3008 | + "raw": { | ||||
| 3009 | + "status": "completed", | ||||
| 3010 | + "incomplete": null | ||||
| 3011 | + }, | ||||
| 3012 | + "sample": "a=403;b=2500", | ||||
| 3013 | + "costUsd": 0.00029 | ||||
| 3014 | + }, | ||||
| 3015 | + { | ||||
| 3016 | + "test": "code", | ||||
| 3017 | + "ok": true, | ||||
| 3018 | + "latencyMs": 1466, | ||||
| 3019 | + "usage": { | ||||
| 3020 | + "input": 49, | ||||
| 3021 | + "output": 105, | ||||
| 3022 | + "cachedInput": 0, | ||||
| 3023 | + "reasoning": 0 | ||||
| 3024 | + }, | ||||
| 3025 | + "api": "responses", | ||||
| 3026 | + "raw": { | ||||
| 3027 | + "status": "completed", | ||||
| 3028 | + "incomplete": null | ||||
| 3029 | + }, | ||||
| 3030 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n <= 1) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n const limit = Math.floor(Math.sqrt(n));\n for (let i = 3; i <= limit; i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 3031 | + "costUsd": 0.0016975 | ||||
| 3032 | + }, | ||||
| 3033 | + { | ||||
| 3034 | + "test": "french", | ||||
| 3035 | + "ok": true, | ||||
| 3036 | + "latencyMs": 2605, | ||||
| 3037 | + "usage": { | ||||
| 3038 | + "input": 31, | ||||
| 3039 | + "output": 102, | ||||
| 3040 | + "cachedInput": 0, | ||||
| 3041 | + "reasoning": 0 | ||||
| 3042 | + }, | ||||
| 3043 | + "api": "responses", | ||||
| 3044 | + "raw": { | ||||
| 3045 | + "status": "completed", | ||||
| 3046 | + "incomplete": null | ||||
| 3047 | + }, | ||||
| 3048 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf du bâtiment, puis en retranchant la dépréciation due à l’usure, à l’obsolescence ou à des facteurs externes. Elle est surtout utilisée pour les", | ||||
| 3049 | + "costUsd": 0.0016075 | ||||
| 3050 | + }, | ||||
| 3051 | + { | ||||
| 3052 | + "test": "english", | ||||
| 3053 | + "ok": true, | ||||
| 3054 | + "latencyMs": 1766, | ||||
| 3055 | + "usage": { | ||||
| 3056 | + "input": 20, | ||||
| 3057 | + "output": 63, | ||||
| 3058 | + "cachedInput": 0, | ||||
| 3059 | + "reasoning": 0 | ||||
| 3060 | + }, | ||||
| 3061 | + "api": "responses", | ||||
| 3062 | + "raw": { | ||||
| 3063 | + "status": "completed", | ||||
| 3064 | + "incomplete": null | ||||
| 3065 | + }, | ||||
| 3066 | + "sample": "A hedonic pricing model estimates how the price of a good or asset is determined by the value of its individual characteristics, such as a house’s size, location, or number of bedrooms. It is commonly used to isolate the implicit price of each attribute by statistically relating observed prices to o", | ||||
| 3067 | + "costUsd": 0.000995 | ||||
| 3068 | + }, | ||||
| 3069 | + { | ||||
| 3070 | + "test": "json", | ||||
| 3071 | + "ok": true, | ||||
| 3072 | + "latencyMs": 1020, | ||||
| 3073 | + "usage": { | ||||
| 3074 | + "input": 52, | ||||
| 3075 | + "output": 27, | ||||
| 3076 | + "cachedInput": 0, | ||||
| 3077 | + "reasoning": 0 | ||||
| 3078 | + }, | ||||
| 3079 | + "api": "responses", | ||||
| 3080 | + "raw": { | ||||
| 3081 | + "status": "completed", | ||||
| 3082 | + "incomplete": null | ||||
| 3083 | + }, | ||||
| 3084 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 3085 | + "costUsd": 0.000535 | ||||
| 3086 | + }, | ||||
| 3087 | + { | ||||
| 3088 | + "test": "tools", | ||||
| 3089 | + "ok": true, | ||||
| 3090 | + "latencyMs": 1196, | ||||
| 3091 | + "usage": { | ||||
| 3092 | + "input": 69, | ||||
| 3093 | + "output": 22, | ||||
| 3094 | + "cachedInput": 0, | ||||
| 3095 | + "reasoning": 0 | ||||
| 3096 | + }, | ||||
| 3097 | + "api": "responses", | ||||
| 3098 | + "raw": { | ||||
| 3099 | + "status": "completed", | ||||
| 3100 | + "incomplete": null | ||||
| 3101 | + }, | ||||
| 3102 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3103 | + "costUsd": 0.0005025 | ||||
| 3104 | + }, | ||||
| 3105 | + { | ||||
| 3106 | + "test": "vision", | ||||
| 3107 | + "ok": true, | ||||
| 3108 | + "latencyMs": 772, | ||||
| 3109 | + "usage": { | ||||
| 3110 | + "input": 194, | ||||
| 3111 | + "output": 12, | ||||
| 3112 | + "cachedInput": 0, | ||||
| 3113 | + "reasoning": 0 | ||||
| 3114 | + }, | ||||
| 3115 | + "api": "responses", | ||||
| 3116 | + "raw": { | ||||
| 3117 | + "status": "completed", | ||||
| 3118 | + "incomplete": null | ||||
| 3119 | + }, | ||||
| 3120 | + "sample": "circles=3; other=square", | ||||
| 3121 | + "costUsd": 0.000665 | ||||
| 3122 | + }, | ||||
| 3123 | + { | ||||
| 3124 | + "test": "longctx", | ||||
| 3125 | + "ok": true, | ||||
| 3126 | + "latencyMs": 1010, | ||||
| 3127 | + "usage": { | ||||
| 3128 | + "input": 9134, | ||||
| 3129 | + "output": 9, | ||||
| 3130 | + "cachedInput": 0, | ||||
| 3131 | + "reasoning": 0 | ||||
| 3132 | + }, | ||||
| 3133 | + "api": "responses", | ||||
| 3134 | + "raw": { | ||||
| 3135 | + "status": "completed", | ||||
| 3136 | + "incomplete": null | ||||
| 3137 | + }, | ||||
| 3138 | + "sample": "7431-ALPHA", | ||||
| 3139 | + "costUsd": 0.02297 | ||||
| 3140 | + }, | ||||
| 3141 | + { | ||||
| 3142 | + "test": "streaming", | ||||
| 3143 | + "ok": true, | ||||
| 3144 | + "latencyMs": 1486, | ||||
| 3145 | + "ttftMs": 651, | ||||
| 3146 | + "usage": { | ||||
| 3147 | + "input": 15, | ||||
| 3148 | + "output": 24, | ||||
| 3149 | + "cachedInput": 0, | ||||
| 3150 | + "reasoning": 0 | ||||
| 3151 | + }, | ||||
| 3152 | + "api": "responses", | ||||
| 3153 | + "sample": "Snow hushes old stones \nSt. Lawrence breathes silver and cold \nPines cradle moonlight", | ||||
| 3154 | + "costUsd": 0.0003975 | ||||
| 3155 | + } | ||||
| 3156 | + ], | ||||
| 3157 | + "api": "responses" | ||||
| 3158 | + }, | ||||
| 3159 | + "gpt-5.4-mini": { | ||||
| 3160 | + "provider": "openai", | ||||
| 3161 | + "kind": "chat", | ||||
| 3162 | + "tests": [ | ||||
| 3163 | + { | ||||
| 3164 | + "test": "basic", | ||||
| 3165 | + "ok": true, | ||||
| 3166 | + "latencyMs": 645, | ||||
| 3167 | + "usage": { | ||||
| 3168 | + "input": 19, | ||||
| 3169 | + "output": 6, | ||||
| 3170 | + "cachedInput": 0, | ||||
| 3171 | + "reasoning": 0 | ||||
| 3172 | + }, | ||||
| 3173 | + "api": "responses", | ||||
| 3174 | + "raw": { | ||||
| 3175 | + "status": "completed", | ||||
| 3176 | + "incomplete": null | ||||
| 3177 | + }, | ||||
| 3178 | + "sample": "Ottawa", | ||||
| 3179 | + "costUsd": 0.00004125 | ||||
| 3180 | + }, | ||||
| 3181 | + { | ||||
| 3182 | + "test": "reasoning", | ||||
| 3183 | + "ok": true, | ||||
| 3184 | + "latencyMs": 764, | ||||
| 3185 | + "usage": { | ||||
| 3186 | + "input": 42, | ||||
| 3187 | + "output": 42, | ||||
| 3188 | + "cachedInput": 0, | ||||
| 3189 | + "reasoning": 0 | ||||
| 3190 | + }, | ||||
| 3191 | + "api": "responses", | ||||
| 3192 | + "raw": { | ||||
| 3193 | + "status": "completed", | ||||
| 3194 | + "incomplete": null | ||||
| 3195 | + }, | ||||
| 3196 | + "sample": "Alice has 2 sisters, and all of Alice’s brothers share the same sisters. That means each brother has 3 sisters total: Alice plus her 2 sisters.\n\nANSWER: 3", | ||||
| 3197 | + "costUsd": 0.0002205 | ||||
| 3198 | + }, | ||||
| 3199 | + { | ||||
| 3200 | + "test": "math", | ||||
| 3201 | + "ok": false, | ||||
| 3202 | + "latencyMs": 935, | ||||
| 3203 | + "usage": { | ||||
| 3204 | + "input": 50, | ||||
| 3205 | + "output": 11, | ||||
| 3206 | + "cachedInput": 0, | ||||
| 3207 | + "reasoning": 0 | ||||
| 3208 | + }, | ||||
| 3209 | + "api": "responses", | ||||
| 3210 | + "raw": { | ||||
| 3211 | + "status": "completed", | ||||
| 3212 | + "incomplete": null | ||||
| 3213 | + }, | ||||
| 3214 | + "sample": "a=427;b=2500", | ||||
| 3215 | + "costUsd": 0.000087 | ||||
| 3216 | + }, | ||||
| 3217 | + { | ||||
| 3218 | + "test": "code", | ||||
| 3219 | + "ok": true, | ||||
| 3220 | + "latencyMs": 1192, | ||||
| 3221 | + "usage": { | ||||
| 3222 | + "input": 49, | ||||
| 3223 | + "output": 119, | ||||
| 3224 | + "cachedInput": 0, | ||||
| 3225 | + "reasoning": 0 | ||||
| 3226 | + }, | ||||
| 3227 | + "api": "responses", | ||||
| 3228 | + "raw": { | ||||
| 3229 | + "status": "completed", | ||||
| 3230 | + "incomplete": null | ||||
| 3231 | + }, | ||||
| 3232 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1 || n % 1 !== 0) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 3233 | + "costUsd": 0.00057225 | ||||
| 3234 | + }, | ||||
| 3235 | + { | ||||
| 3236 | + "test": "french", | ||||
| 3237 | + "ok": true, | ||||
| 3238 | + "latencyMs": 944, | ||||
| 3239 | + "usage": { | ||||
| 3240 | + "input": 31, | ||||
| 3241 | + "output": 100, | ||||
| 3242 | + "cachedInput": 0, | ||||
| 3243 | + "reasoning": 0 | ||||
| 3244 | + }, | ||||
| 3245 | + "api": "responses", | ||||
| 3246 | + "raw": { | ||||
| 3247 | + "status": "completed", | ||||
| 3248 | + "incomplete": null | ||||
| 3249 | + }, | ||||
| 3250 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction à neuf du bâtiment, puis en retranchant la dépréciation liée à l’usure, à l’obsolescence ou à d’autres pertes de valeur. Elle est surtout utilisée pou", | ||||
| 3251 | + "costUsd": 0.00047325 | ||||
| 3252 | + }, | ||||
| 3253 | + { | ||||
| 3254 | + "test": "english", | ||||
| 3255 | + "ok": true, | ||||
| 3256 | + "latencyMs": 888, | ||||
| 3257 | + "usage": { | ||||
| 3258 | + "input": 20, | ||||
| 3259 | + "output": 66, | ||||
| 3260 | + "cachedInput": 0, | ||||
| 3261 | + "reasoning": 0 | ||||
| 3262 | + }, | ||||
| 3263 | + "api": "responses", | ||||
| 3264 | + "raw": { | ||||
| 3265 | + "status": "completed", | ||||
| 3266 | + "incomplete": null | ||||
| 3267 | + }, | ||||
| 3268 | + "sample": "A hedonic pricing model is an economic method used to estimate the value of a good by breaking its price into the implicit values of its individual characteristics, such as location, size, quality, or amenities. It is often used in real estate and environmental economics to measure how much differen", | ||||
| 3269 | + "costUsd": 0.000312 | ||||
| 3270 | + }, | ||||
| 3271 | + { | ||||
| 3272 | + "test": "json", | ||||
| 3273 | + "ok": true, | ||||
| 3274 | + "latencyMs": 600, | ||||
| 3275 | + "usage": { | ||||
| 3276 | + "input": 52, | ||||
| 3277 | + "output": 27, | ||||
| 3278 | + "cachedInput": 0, | ||||
| 3279 | + "reasoning": 0 | ||||
| 3280 | + }, | ||||
| 3281 | + "api": "responses", | ||||
| 3282 | + "raw": { | ||||
| 3283 | + "status": "completed", | ||||
| 3284 | + "incomplete": null | ||||
| 3285 | + }, | ||||
| 3286 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":290000}", | ||||
| 3287 | + "costUsd": 0.0001605 | ||||
| 3288 | + }, | ||||
| 3289 | + { | ||||
| 3290 | + "test": "tools", | ||||
| 3291 | + "ok": true, | ||||
| 3292 | + "latencyMs": 644, | ||||
| 3293 | + "usage": { | ||||
| 3294 | + "input": 69, | ||||
| 3295 | + "output": 22, | ||||
| 3296 | + "cachedInput": 0, | ||||
| 3297 | + "reasoning": 0 | ||||
| 3298 | + }, | ||||
| 3299 | + "api": "responses", | ||||
| 3300 | + "raw": { | ||||
| 3301 | + "status": "completed", | ||||
| 3302 | + "incomplete": null | ||||
| 3303 | + }, | ||||
| 3304 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3305 | + "costUsd": 0.00015075 | ||||
| 3306 | + }, | ||||
| 3307 | + { | ||||
| 3308 | + "test": "vision", | ||||
| 3309 | + "ok": true, | ||||
| 3310 | + "latencyMs": 647, | ||||
| 3311 | + "usage": { | ||||
| 3312 | + "input": 194, | ||||
| 3313 | + "output": 12, | ||||
| 3314 | + "cachedInput": 0, | ||||
| 3315 | + "reasoning": 0 | ||||
| 3316 | + }, | ||||
| 3317 | + "api": "responses", | ||||
| 3318 | + "raw": { | ||||
| 3319 | + "status": "completed", | ||||
| 3320 | + "incomplete": null | ||||
| 3321 | + }, | ||||
| 3322 | + "sample": "circles=3; other=square", | ||||
| 3323 | + "costUsd": 0.0001995 | ||||
| 3324 | + }, | ||||
| 3325 | + { | ||||
| 3326 | + "test": "longctx", | ||||
| 3327 | + "ok": true, | ||||
| 3328 | + "latencyMs": 671, | ||||
| 3329 | + "usage": { | ||||
| 3330 | + "input": 9134, | ||||
| 3331 | + "output": 9, | ||||
| 3332 | + "cachedInput": 0, | ||||
| 3333 | + "reasoning": 0 | ||||
| 3334 | + }, | ||||
| 3335 | + "api": "responses", | ||||
| 3336 | + "raw": { | ||||
| 3337 | + "status": "completed", | ||||
| 3338 | + "incomplete": null | ||||
| 3339 | + }, | ||||
| 3340 | + "sample": "7431-ALPHA", | ||||
| 3341 | + "costUsd": 0.006891 | ||||
| 3342 | + }, | ||||
| 3343 | + { | ||||
| 3344 | + "test": "streaming", | ||||
| 3345 | + "ok": true, | ||||
| 3346 | + "latencyMs": 739, | ||||
| 3347 | + "ttftMs": 458, | ||||
| 3348 | + "usage": { | ||||
| 3349 | + "input": 15, | ||||
| 3350 | + "output": 21, | ||||
| 3351 | + "cachedInput": 0, | ||||
| 3352 | + "reasoning": 0 | ||||
| 3353 | + }, | ||||
| 3354 | + "api": "responses", | ||||
| 3355 | + "sample": "Snow hushes Québec \nMaples sleep beneath ice light \nWind sings through stone streets", | ||||
| 3356 | + "costUsd": 0.00010575 | ||||
| 3357 | + } | ||||
| 3358 | + ], | ||||
| 3359 | + "api": "responses" | ||||
| 3360 | + }, | ||||
| 3361 | + "gpt-5.4-nano": { | ||||
| 3362 | + "provider": "openai", | ||||
| 3363 | + "kind": "chat", | ||||
| 3364 | + "tests": [ | ||||
| 3365 | + { | ||||
| 3366 | + "test": "basic", | ||||
| 3367 | + "ok": true, | ||||
| 3368 | + "latencyMs": 570, | ||||
| 3369 | + "usage": { | ||||
| 3370 | + "input": 19, | ||||
| 3371 | + "output": 6, | ||||
| 3372 | + "cachedInput": 0, | ||||
| 3373 | + "reasoning": 0 | ||||
| 3374 | + }, | ||||
| 3375 | + "api": "responses", | ||||
| 3376 | + "raw": { | ||||
| 3377 | + "status": "completed", | ||||
| 3378 | + "incomplete": null | ||||
| 3379 | + }, | ||||
| 3380 | + "sample": "Ottawa", | ||||
| 3381 | + "costUsd": 0.0000113 | ||||
| 3382 | + }, | ||||
| 3383 | + { | ||||
| 3384 | + "test": "reasoning", | ||||
| 3385 | + "ok": false, | ||||
| 3386 | + "latencyMs": 979, | ||||
| 3387 | + "usage": { | ||||
| 3388 | + "input": 42, | ||||
| 3389 | + "output": 90, | ||||
| 3390 | + "cachedInput": 0, | ||||
| 3391 | + "reasoning": 0 | ||||
| 3392 | + }, | ||||
| 3393 | + "api": "responses", | ||||
| 3394 | + "raw": { | ||||
| 3395 | + "status": "completed", | ||||
| 3396 | + "incomplete": null | ||||
| 3397 | + }, | ||||
| 3398 | + "sample": "Alice’s family has 3 brothers and 2 sisters total. Alice is one of the sisters, so the other sister count is 1. Each of Alice’s brothers therefore has that same other sister (Alice’s sister), plus Alice herself—but the question asks specifically “How many sisters does each brother have?” For a broth", | ||||
| 3399 | + "costUsd": 0.00012090000000000001 | ||||
| 3400 | + }, | ||||
| 3401 | + { | ||||
| 3402 | + "test": "math", | ||||
| 3403 | + "ok": false, | ||||
| 3404 | + "latencyMs": 969, | ||||
| 3405 | + "usage": { | ||||
| 3406 | + "input": 50, | ||||
| 3407 | + "output": 11, | ||||
| 3408 | + "cachedInput": 0, | ||||
| 3409 | + "reasoning": 0 | ||||
| 3410 | + }, | ||||
| 3411 | + "api": "responses", | ||||
| 3412 | + "raw": { | ||||
| 3413 | + "status": "completed", | ||||
| 3414 | + "incomplete": null | ||||
| 3415 | + }, | ||||
| 3416 | + "sample": "a=491;b=2500", | ||||
| 3417 | + "costUsd": 0.00002375 | ||||
| 3418 | + }, | ||||
| 3419 | + { | ||||
| 3420 | + "test": "code", | ||||
| 3421 | + "ok": true, | ||||
| 3422 | + "latencyMs": 1069, | ||||
| 3423 | + "usage": { | ||||
| 3424 | + "input": 49, | ||||
| 3425 | + "output": 117, | ||||
| 3426 | + "cachedInput": 0, | ||||
| 3427 | + "reasoning": 0 | ||||
| 3428 | + }, | ||||
| 3429 | + "api": "responses", | ||||
| 3430 | + "raw": { | ||||
| 3431 | + "status": "completed", | ||||
| 3432 | + "incomplete": null | ||||
| 3433 | + }, | ||||
| 3434 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n <= 1) return false;\n if (n <= 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n for (let i = 5; i * i <= n; i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n return true;\n}\n```", | ||||
| 3435 | + "costUsd": 0.00015605 | ||||
| 3436 | + }, | ||||
| 3437 | + { | ||||
| 3438 | + "test": "french", | ||||
| 3439 | + "ok": true, | ||||
| 3440 | + "latencyMs": 1074, | ||||
| 3441 | + "usage": { | ||||
| 3442 | + "input": 31, | ||||
| 3443 | + "output": 101, | ||||
| 3444 | + "cachedInput": 0, | ||||
| 3445 | + "reasoning": 0 | ||||
| 3446 | + }, | ||||
| 3447 | + "api": "responses", | ||||
| 3448 | + "raw": { | ||||
| 3449 | + "status": "completed", | ||||
| 3450 | + "incomplete": null | ||||
| 3451 | + }, | ||||
| 3452 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant le coût de reconstruction à neuf (ou de remplacement) du bien et la valeur de la dépréciation liée à son âge et à son état, puis en tenant compte des coûts éventuels. Elle aboutit à une estimation bas", | ||||
| 3453 | + "costUsd": 0.00013245 | ||||
| 3454 | + }, | ||||
| 3455 | + { | ||||
| 3456 | + "test": "english", | ||||
| 3457 | + "ok": true, | ||||
| 3458 | + "latencyMs": 779, | ||||
| 3459 | + "usage": { | ||||
| 3460 | + "input": 20, | ||||
| 3461 | + "output": 55, | ||||
| 3462 | + "cachedInput": 0, | ||||
| 3463 | + "reasoning": 0 | ||||
| 3464 | + }, | ||||
| 3465 | + "api": "responses", | ||||
| 3466 | + "raw": { | ||||
| 3467 | + "status": "completed", | ||||
| 3468 | + "incomplete": null | ||||
| 3469 | + }, | ||||
| 3470 | + "sample": "A hedonic pricing model explains how the price of a good or service is determined by its underlying attributes. It estimates the contribution (implicit price) of each attribute—such as size, location, or quality—typically using statistical regression on observed market prices.", | ||||
| 3471 | + "costUsd": 0.00007275 | ||||
| 3472 | + }, | ||||
| 3473 | + { | ||||
| 3474 | + "test": "json", | ||||
| 3475 | + "ok": true, | ||||
| 3476 | + "latencyMs": 524, | ||||
| 3477 | + "usage": { | ||||
| 3478 | + "input": 52, | ||||
| 3479 | + "output": 27, | ||||
| 3480 | + "cachedInput": 0, | ||||
| 3481 | + "reasoning": 0 | ||||
| 3482 | + }, | ||||
| 3483 | + "api": "responses", | ||||
| 3484 | + "raw": { | ||||
| 3485 | + "status": "completed", | ||||
| 3486 | + "incomplete": null | ||||
| 3487 | + }, | ||||
| 3488 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":317000}", | ||||
| 3489 | + "costUsd": 0.000044149999999999996 | ||||
| 3490 | + }, | ||||
| 3491 | + { | ||||
| 3492 | + "test": "tools", | ||||
| 3493 | + "ok": true, | ||||
| 3494 | + "latencyMs": 647, | ||||
| 3495 | + "usage": { | ||||
| 3496 | + "input": 69, | ||||
| 3497 | + "output": 22, | ||||
| 3498 | + "cachedInput": 0, | ||||
| 3499 | + "reasoning": 0 | ||||
| 3500 | + }, | ||||
| 3501 | + "api": "responses", | ||||
| 3502 | + "raw": { | ||||
| 3503 | + "status": "completed", | ||||
| 3504 | + "incomplete": null | ||||
| 3505 | + }, | ||||
| 3506 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3507 | + "costUsd": 0.000041299999999999994 | ||||
| 3508 | + }, | ||||
| 3509 | + { | ||||
| 3510 | + "test": "vision", | ||||
| 3511 | + "ok": true, | ||||
| 3512 | + "latencyMs": 590, | ||||
| 3513 | + "usage": { | ||||
| 3514 | + "input": 194, | ||||
| 3515 | + "output": 12, | ||||
| 3516 | + "cachedInput": 0, | ||||
| 3517 | + "reasoning": 0 | ||||
| 3518 | + }, | ||||
| 3519 | + "api": "responses", | ||||
| 3520 | + "raw": { | ||||
| 3521 | + "status": "completed", | ||||
| 3522 | + "incomplete": null | ||||
| 3523 | + }, | ||||
| 3524 | + "sample": "circles=3; other=square", | ||||
| 3525 | + "costUsd": 0.00005380000000000001 | ||||
| 3526 | + }, | ||||
| 3527 | + { | ||||
| 3528 | + "test": "longctx", | ||||
| 3529 | + "ok": true, | ||||
| 3530 | + "latencyMs": 557, | ||||
| 3531 | + "usage": { | ||||
| 3532 | + "input": 9134, | ||||
| 3533 | + "output": 9, | ||||
| 3534 | + "cachedInput": 0, | ||||
| 3535 | + "reasoning": 0 | ||||
| 3536 | + }, | ||||
| 3537 | + "api": "responses", | ||||
| 3538 | + "raw": { | ||||
| 3539 | + "status": "completed", | ||||
| 3540 | + "incomplete": null | ||||
| 3541 | + }, | ||||
| 3542 | + "sample": "7431-ALPHA", | ||||
| 3543 | + "costUsd": 0.0018380500000000001 | ||||
| 3544 | + }, | ||||
| 3545 | + { | ||||
| 3546 | + "test": "streaming", | ||||
| 3547 | + "ok": true, | ||||
| 3548 | + "latencyMs": 757, | ||||
| 3549 | + "ttftMs": 541, | ||||
| 3550 | + "usage": { | ||||
| 3551 | + "input": 15, | ||||
| 3552 | + "output": 25, | ||||
| 3553 | + "cachedInput": 0, | ||||
| 3554 | + "reasoning": 0 | ||||
| 3555 | + }, | ||||
| 3556 | + "api": "responses", | ||||
| 3557 | + "sample": "Quebec in winter— \nsnow hushes street and maple, \nblue dusk, wind sighs.", | ||||
| 3558 | + "costUsd": 0.00003425 | ||||
| 3559 | + } | ||||
| 3560 | + ], | ||||
| 3561 | + "api": "responses" | ||||
| 3562 | + }, | ||||
| 3563 | + "gpt-5.4-pro": { | ||||
| 3564 | + "provider": "openai", | ||||
| 3565 | + "kind": "chat-pro", | ||||
| 3566 | + "tests": [ | ||||
| 3567 | + { | ||||
| 3568 | + "test": "basic", | ||||
| 3569 | + "ok": true, | ||||
| 3570 | + "latencyMs": 6194, | ||||
| 3571 | + "usage": { | ||||
| 3572 | + "input": 19, | ||||
| 3573 | + "output": 25, | ||||
| 3574 | + "cachedInput": 0, | ||||
| 3575 | + "reasoning": 17 | ||||
| 3576 | + }, | ||||
| 3577 | + "api": "responses", | ||||
| 3578 | + "raw": { | ||||
| 3579 | + "status": "completed", | ||||
| 3580 | + "incomplete": null | ||||
| 3581 | + }, | ||||
| 3582 | + "sample": "Ottawa", | ||||
| 3583 | + "costUsd": 0.00507 | ||||
| 3584 | + }, | ||||
| 3585 | + { | ||||
| 3586 | + "test": "reasoning", | ||||
| 3587 | + "ok": true, | ||||
| 3588 | + "latencyMs": 14838, | ||||
| 3589 | + "usage": { | ||||
| 3590 | + "input": 42, | ||||
| 3591 | + "output": 132, | ||||
| 3592 | + "cachedInput": 0, | ||||
| 3593 | + "reasoning": 64 | ||||
| 3594 | + }, | ||||
| 3595 | + "api": "responses", | ||||
| 3596 | + "raw": { | ||||
| 3597 | + "status": "completed", | ||||
| 3598 | + "incomplete": null | ||||
| 3599 | + }, | ||||
| 3600 | + "sample": "Alice is one of the sisters.\n\nSo if Alice has **2 sisters**, that means there are **3 girls total** in the family:\n- Alice\n- Sister 1\n- Sister 2\n\nEach of Alice’s **3 brothers** has all **3 girls** as sisters.\n\nANSWER: 3", | ||||
| 3601 | + "costUsd": 0.02502 | ||||
| 3602 | + }, | ||||
| 3603 | + { | ||||
| 3604 | + "test": "json", | ||||
| 3605 | + "ok": true, | ||||
| 3606 | + "latencyMs": 22867, | ||||
| 3607 | + "usage": { | ||||
| 3608 | + "input": 52, | ||||
| 3609 | + "output": 199, | ||||
| 3610 | + "cachedInput": 0, | ||||
| 3611 | + "reasoning": 170 | ||||
| 3612 | + }, | ||||
| 3613 | + "api": "responses", | ||||
| 3614 | + "raw": { | ||||
| 3615 | + "status": "completed", | ||||
| 3616 | + "incomplete": null | ||||
| 3617 | + }, | ||||
| 3618 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 3619 | + "costUsd": 0.03738 | ||||
| 3620 | + }, | ||||
| 3621 | + { | ||||
| 3622 | + "test": "tools", | ||||
| 3623 | + "ok": true, | ||||
| 3624 | + "latencyMs": 9786, | ||||
| 3625 | + "usage": { | ||||
| 3626 | + "input": 69, | ||||
| 3627 | + "output": 22, | ||||
| 3628 | + "cachedInput": 0, | ||||
| 3629 | + "reasoning": 0 | ||||
| 3630 | + }, | ||||
| 3631 | + "api": "responses", | ||||
| 3632 | + "raw": { | ||||
| 3633 | + "status": "completed", | ||||
| 3634 | + "incomplete": null | ||||
| 3635 | + }, | ||||
| 3636 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3637 | + "costUsd": 0.00603 | ||||
| 3638 | + } | ||||
| 3639 | + ], | ||||
| 3640 | + "api": "responses" | ||||
| 3641 | + }, | ||||
| 3642 | + "gpt-5.5": { | ||||
| 3643 | + "provider": "openai", | ||||
| 3644 | + "kind": "chat", | ||||
| 3645 | + "tests": [ | ||||
| 3646 | + { | ||||
| 3647 | + "test": "basic", | ||||
| 3648 | + "ok": true, | ||||
| 3649 | + "latencyMs": 1199, | ||||
| 3650 | + "usage": { | ||||
| 3651 | + "input": 19, | ||||
| 3652 | + "output": 23, | ||||
| 3653 | + "cachedInput": 0, | ||||
| 3654 | + "reasoning": 15 | ||||
| 3655 | + }, | ||||
| 3656 | + "api": "responses", | ||||
| 3657 | + "raw": { | ||||
| 3658 | + "status": "completed", | ||||
| 3659 | + "incomplete": null | ||||
| 3660 | + }, | ||||
| 3661 | + "sample": "Ottawa", | ||||
| 3662 | + "costUsd": 0.000785 | ||||
| 3663 | + }, | ||||
| 3664 | + { | ||||
| 3665 | + "test": "reasoning", | ||||
| 3666 | + "ok": true, | ||||
| 3667 | + "latencyMs": 2058, | ||||
| 3668 | + "usage": { | ||||
| 3669 | + "input": 42, | ||||
| 3670 | + "output": 75, | ||||
| 3671 | + "cachedInput": 0, | ||||
| 3672 | + "reasoning": 48 | ||||
| 3673 | + }, | ||||
| 3674 | + "api": "responses", | ||||
| 3675 | + "raw": { | ||||
| 3676 | + "status": "completed", | ||||
| 3677 | + "incomplete": null | ||||
| 3678 | + }, | ||||
| 3679 | + "sample": "Each of Alice’s brothers has 3 sisters: Alice and her 2 sisters.\n\nANSWER: 3", | ||||
| 3680 | + "costUsd": 0.00246 | ||||
| 3681 | + }, | ||||
| 3682 | + { | ||||
| 3683 | + "test": "math", | ||||
| 3684 | + "ok": true, | ||||
| 3685 | + "latencyMs": 1478, | ||||
| 3686 | + "usage": { | ||||
| 3687 | + "input": 50, | ||||
| 3688 | + "output": 54, | ||||
| 3689 | + "cachedInput": 0, | ||||
| 3690 | + "reasoning": 41 | ||||
| 3691 | + }, | ||||
| 3692 | + "api": "responses", | ||||
| 3693 | + "raw": { | ||||
| 3694 | + "status": "completed", | ||||
| 3695 | + "incomplete": null | ||||
| 3696 | + }, | ||||
| 3697 | + "sample": "a=403;b=2500", | ||||
| 3698 | + "costUsd": 0.00187 | ||||
| 3699 | + }, | ||||
| 3700 | + { | ||||
| 3701 | + "test": "code", | ||||
| 3702 | + "ok": true, | ||||
| 3703 | + "latencyMs": 2089, | ||||
| 3704 | + "usage": { | ||||
| 3705 | + "input": 49, | ||||
| 3706 | + "output": 116, | ||||
| 3707 | + "cachedInput": 0, | ||||
| 3708 | + "reasoning": 23 | ||||
| 3709 | + }, | ||||
| 3710 | + "api": "responses", | ||||
| 3711 | + "raw": { | ||||
| 3712 | + "status": "completed", | ||||
| 3713 | + "incomplete": null | ||||
| 3714 | + }, | ||||
| 3715 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 3716 | + "costUsd": 0.003725 | ||||
| 3717 | + }, | ||||
| 3718 | + { | ||||
| 3719 | + "test": "french", | ||||
| 3720 | + "ok": true, | ||||
| 3721 | + "latencyMs": 2150, | ||||
| 3722 | + "usage": { | ||||
| 3723 | + "input": 31, | ||||
| 3724 | + "output": 85, | ||||
| 3725 | + "cachedInput": 0, | ||||
| 3726 | + "reasoning": 16 | ||||
| 3727 | + }, | ||||
| 3728 | + "api": "responses", | ||||
| 3729 | + "raw": { | ||||
| 3730 | + "status": "completed", | ||||
| 3731 | + "incomplete": null | ||||
| 3732 | + }, | ||||
| 3733 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en calculant le coût de remplacement ou de reconstruction du bâtiment, puis en retranchant la dépréciation éventuelle. On y ajoute généralement la valeur du terrain pour obtenir la valeur totale estimée de la proprié", | ||||
| 3734 | + "costUsd": 0.002705 | ||||
| 3735 | + }, | ||||
| 3736 | + { | ||||
| 3737 | + "test": "english", | ||||
| 3738 | + "ok": true, | ||||
| 3739 | + "latencyMs": 2207, | ||||
| 3740 | + "usage": { | ||||
| 3741 | + "input": 20, | ||||
| 3742 | + "output": 85, | ||||
| 3743 | + "cachedInput": 0, | ||||
| 3744 | + "reasoning": 18 | ||||
| 3745 | + }, | ||||
| 3746 | + "api": "responses", | ||||
| 3747 | + "raw": { | ||||
| 3748 | + "status": "completed", | ||||
| 3749 | + "incomplete": null | ||||
| 3750 | + }, | ||||
| 3751 | + "sample": "A hedonic pricing model estimates the value of a good by breaking it into its measurable characteristics, such as size, location, quality, or features. It is often used in real estate and environmental economics to infer how much people are willing to pay for specific attributes, like an extra bedro", | ||||
| 3752 | + "costUsd": 0.00265 | ||||
| 3753 | + }, | ||||
| 3754 | + { | ||||
| 3755 | + "test": "json", | ||||
| 3756 | + "ok": true, | ||||
| 3757 | + "latencyMs": 2290, | ||||
| 3758 | + "usage": { | ||||
| 3759 | + "input": 52, | ||||
| 3760 | + "output": 101, | ||||
| 3761 | + "cachedInput": 0, | ||||
| 3762 | + "reasoning": 72 | ||||
| 3763 | + }, | ||||
| 3764 | + "api": "responses", | ||||
| 3765 | + "raw": { | ||||
| 3766 | + "status": "completed", | ||||
| 3767 | + "incomplete": null | ||||
| 3768 | + }, | ||||
| 3769 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 3770 | + "costUsd": 0.00329 | ||||
| 3771 | + }, | ||||
| 3772 | + { | ||||
| 3773 | + "test": "tools", | ||||
| 3774 | + "ok": true, | ||||
| 3775 | + "latencyMs": 1006, | ||||
| 3776 | + "usage": { | ||||
| 3777 | + "input": 69, | ||||
| 3778 | + "output": 22, | ||||
| 3779 | + "cachedInput": 0, | ||||
| 3780 | + "reasoning": 0 | ||||
| 3781 | + }, | ||||
| 3782 | + "api": "responses", | ||||
| 3783 | + "raw": { | ||||
| 3784 | + "status": "completed", | ||||
| 3785 | + "incomplete": null | ||||
| 3786 | + }, | ||||
| 3787 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3788 | + "costUsd": 0.001005 | ||||
| 3789 | + }, | ||||
| 3790 | + { | ||||
| 3791 | + "test": "vision", | ||||
| 3792 | + "ok": true, | ||||
| 3793 | + "latencyMs": 1236, | ||||
| 3794 | + "usage": { | ||||
| 3795 | + "input": 194, | ||||
| 3796 | + "output": 35, | ||||
| 3797 | + "cachedInput": 0, | ||||
| 3798 | + "reasoning": 21 | ||||
| 3799 | + }, | ||||
| 3800 | + "api": "responses", | ||||
| 3801 | + "raw": { | ||||
| 3802 | + "status": "completed", | ||||
| 3803 | + "incomplete": null | ||||
| 3804 | + }, | ||||
| 3805 | + "sample": "circles=3; other=square", | ||||
| 3806 | + "costUsd": 0.00202 | ||||
| 3807 | + }, | ||||
| 3808 | + { | ||||
| 3809 | + "test": "longctx", | ||||
| 3810 | + "ok": true, | ||||
| 3811 | + "latencyMs": 1891, | ||||
| 3812 | + "usage": { | ||||
| 3813 | + "input": 9134, | ||||
| 3814 | + "output": 67, | ||||
| 3815 | + "cachedInput": 0, | ||||
| 3816 | + "reasoning": 56 | ||||
| 3817 | + }, | ||||
| 3818 | + "api": "responses", | ||||
| 3819 | + "raw": { | ||||
| 3820 | + "status": "completed", | ||||
| 3821 | + "incomplete": null | ||||
| 3822 | + }, | ||||
| 3823 | + "sample": "7431-ALPHA", | ||||
| 3824 | + "costUsd": 0.04768 | ||||
| 3825 | + }, | ||||
| 3826 | + { | ||||
| 3827 | + "test": "streaming", | ||||
| 3828 | + "ok": true, | ||||
| 3829 | + "latencyMs": 1572, | ||||
| 3830 | + "ttftMs": 730, | ||||
| 3831 | + "usage": { | ||||
| 3832 | + "input": 15, | ||||
| 3833 | + "output": 22, | ||||
| 3834 | + "cachedInput": 0, | ||||
| 3835 | + "reasoning": 0 | ||||
| 3836 | + }, | ||||
| 3837 | + "api": "responses", | ||||
| 3838 | + "sample": "Snow veils old Quebec \nPines whisper in frozen light \nMaple dreams of spring", | ||||
| 3839 | + "costUsd": 0.000735 | ||||
| 3840 | + } | ||||
| 3841 | + ], | ||||
| 3842 | + "api": "responses" | ||||
| 3843 | + }, | ||||
| 3844 | + "gpt-5.5-pro": { | ||||
| 3845 | + "provider": "openai", | ||||
| 3846 | + "kind": "chat-pro", | ||||
| 3847 | + "tests": [ | ||||
| 3848 | + { | ||||
| 3849 | + "test": "basic", | ||||
| 3850 | + "ok": true, | ||||
| 3851 | + "latencyMs": 4383, | ||||
| 3852 | + "usage": { | ||||
| 3853 | + "input": 19, | ||||
| 3854 | + "output": 34, | ||||
| 3855 | + "cachedInput": 0, | ||||
| 3856 | + "reasoning": 26 | ||||
| 3857 | + }, | ||||
| 3858 | + "api": "responses", | ||||
| 3859 | + "raw": { | ||||
| 3860 | + "status": "completed", | ||||
| 3861 | + "incomplete": null | ||||
| 3862 | + }, | ||||
| 3863 | + "sample": "Ottawa", | ||||
| 3864 | + "costUsd": 0.00669 | ||||
| 3865 | + }, | ||||
| 3866 | + { | ||||
| 3867 | + "test": "reasoning", | ||||
| 3868 | + "ok": true, | ||||
| 3869 | + "latencyMs": 5531, | ||||
| 3870 | + "usage": { | ||||
| 3871 | + "input": 42, | ||||
| 3872 | + "output": 123, | ||||
| 3873 | + "cachedInput": 0, | ||||
| 3874 | + "reasoning": 92 | ||||
| 3875 | + }, | ||||
| 3876 | + "api": "responses", | ||||
| 3877 | + "raw": { | ||||
| 3878 | + "status": "completed", | ||||
| 3879 | + "incomplete": null | ||||
| 3880 | + }, | ||||
| 3881 | + "sample": "Alice’s brothers have Alice plus her 2 sisters as sisters, so each brother has 3 sisters.\n\nANSWER: 3", | ||||
| 3882 | + "costUsd": 0.0234 | ||||
| 3883 | + }, | ||||
| 3884 | + { | ||||
| 3885 | + "test": "json", | ||||
| 3886 | + "ok": true, | ||||
| 3887 | + "latencyMs": 10439, | ||||
| 3888 | + "usage": { | ||||
| 3889 | + "input": 52, | ||||
| 3890 | + "output": 149, | ||||
| 3891 | + "cachedInput": 0, | ||||
| 3892 | + "reasoning": 120 | ||||
| 3893 | + }, | ||||
| 3894 | + "api": "responses", | ||||
| 3895 | + "raw": { | ||||
| 3896 | + "status": "completed", | ||||
| 3897 | + "incomplete": null | ||||
| 3898 | + }, | ||||
| 3899 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 3900 | + "costUsd": 0.02838 | ||||
| 3901 | + }, | ||||
| 3902 | + { | ||||
| 3903 | + "test": "tools", | ||||
| 3904 | + "ok": true, | ||||
| 3905 | + "latencyMs": 11055, | ||||
| 3906 | + "usage": { | ||||
| 3907 | + "input": 69, | ||||
| 3908 | + "output": 22, | ||||
| 3909 | + "cachedInput": 0, | ||||
| 3910 | + "reasoning": 0 | ||||
| 3911 | + }, | ||||
| 3912 | + "api": "responses", | ||||
| 3913 | + "raw": { | ||||
| 3914 | + "status": "completed", | ||||
| 3915 | + "incomplete": null | ||||
| 3916 | + }, | ||||
| 3917 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 3918 | + "costUsd": 0.00603 | ||||
| 3919 | + } | ||||
| 3920 | + ], | ||||
| 3921 | + "api": "responses" | ||||
| 3922 | + }, | ||||
| 3923 | + "gpt-5.6-luna": { | ||||
| 3924 | + "provider": "openai", | ||||
| 3925 | + "kind": "chat", | ||||
| 3926 | + "tests": [ | ||||
| 3927 | + { | ||||
| 3928 | + "test": "reasoning", | ||||
| 3929 | + "ok": true, | ||||
| 3930 | + "latencyMs": 1453, | ||||
| 3931 | + "usage": { | ||||
| 3932 | + "input": 42, | ||||
| 3933 | + "output": 61, | ||||
| 3934 | + "cachedInput": 0, | ||||
| 3935 | + "reasoning": 29 | ||||
| 3936 | + }, | ||||
| 3937 | + "api": "responses", | ||||
| 3938 | + "raw": { | ||||
| 3939 | + "status": "completed", | ||||
| 3940 | + "incomplete": null | ||||
| 3941 | + }, | ||||
| 3942 | + "sample": "Each of Alice’s brothers has Alice and her 2 sisters as sisters, so each has 3 sisters.\n\nANSWER: 3", | ||||
| 3943 | + "costUsd": 0.0000816 | ||||
| 3944 | + }, | ||||
| 3945 | + { | ||||
| 3946 | + "test": "math", | ||||
| 3947 | + "ok": true, | ||||
| 3948 | + "latencyMs": 1256, | ||||
| 3949 | + "usage": { | ||||
| 3950 | + "input": 50, | ||||
| 3951 | + "output": 46, | ||||
| 3952 | + "cachedInput": 0, | ||||
| 3953 | + "reasoning": 33 | ||||
| 3954 | + }, | ||||
| 3955 | + "api": "responses", | ||||
| 3956 | + "raw": { | ||||
| 3957 | + "status": "completed", | ||||
| 3958 | + "incomplete": null | ||||
| 3959 | + }, | ||||
| 3960 | + "sample": "a=403;b=2500", | ||||
| 3961 | + "costUsd": 0.00006519999999999999 | ||||
| 3962 | + }, | ||||
| 3963 | + { | ||||
| 3964 | + "test": "code", | ||||
| 3965 | + "ok": true, | ||||
| 3966 | + "latencyMs": 2650, | ||||
| 3967 | + "usage": { | ||||
| 3968 | + "input": 49, | ||||
| 3969 | + "output": 172, | ||||
| 3970 | + "cachedInput": 0, | ||||
| 3971 | + "reasoning": 73 | ||||
| 3972 | + }, | ||||
| 3973 | + "api": "responses", | ||||
| 3974 | + "raw": { | ||||
| 3975 | + "status": "completed", | ||||
| 3976 | + "incomplete": null | ||||
| 3977 | + }, | ||||
| 3978 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 3979 | + "costUsd": 0.00021620000000000002 | ||||
| 3980 | + }, | ||||
| 3981 | + { | ||||
| 3982 | + "test": "french", | ||||
| 3983 | + "ok": true, | ||||
| 3984 | + "latencyMs": 1716, | ||||
| 3985 | + "usage": { | ||||
| 3986 | + "input": 31, | ||||
| 3987 | + "output": 69, | ||||
| 3988 | + "cachedInput": 0, | ||||
| 3989 | + "reasoning": 0 | ||||
| 3990 | + }, | ||||
| 3991 | + "api": "responses", | ||||
| 3992 | + "raw": { | ||||
| 3993 | + "status": "completed", | ||||
| 3994 | + "incomplete": null | ||||
| 3995 | + }, | ||||
| 3996 | + "sample": "La méthode du coût en évaluation immobilière estime la valeur d’un bien en additionnant le coût actuel de reconstruction ou de remplacement du bâtiment et la valeur du terrain. Elle déduit ensuite la dépréciation liée à l’âge, à l’usure, à l’obsolescence ou aux défauts du bien.", | ||||
| 3997 | + "costUsd": 0.000089 | ||||
| 3998 | + }, | ||||
| 3999 | + { | ||||
| 4000 | + "test": "english", | ||||
| 4001 | + "ok": true, | ||||
| 4002 | + "latencyMs": 1581, | ||||
| 4003 | + "usage": { | ||||
| 4004 | + "input": 20, | ||||
| 4005 | + "output": 54, | ||||
| 4006 | + "cachedInput": 0, | ||||
| 4007 | + "reasoning": 0 | ||||
| 4008 | + }, | ||||
| 4009 | + "api": "responses", | ||||
| 4010 | + "raw": { | ||||
| 4011 | + "status": "completed", | ||||
| 4012 | + "incomplete": null | ||||
| 4013 | + }, | ||||
| 4014 | + "sample": "A hedonic pricing model estimates how the individual characteristics of a differentiated good or service contribute to its overall price. It is commonly used to value nonmarket attributes—such as housing location, environmental quality, or product features—by analyzing observed price differences.", | ||||
| 4015 | + "costUsd": 0.00006879999999999999 | ||||
| 4016 | + }, | ||||
| 4017 | + { | ||||
| 4018 | + "test": "json", | ||||
| 4019 | + "ok": true, | ||||
| 4020 | + "latencyMs": 2404, | ||||
| 4021 | + "usage": { | ||||
| 4022 | + "input": 52, | ||||
| 4023 | + "output": 158, | ||||
| 4024 | + "cachedInput": 0, | ||||
| 4025 | + "reasoning": 129 | ||||
| 4026 | + }, | ||||
| 4027 | + "api": "responses", | ||||
| 4028 | + "raw": { | ||||
| 4029 | + "status": "completed", | ||||
| 4030 | + "incomplete": null | ||||
| 4031 | + }, | ||||
| 4032 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 4033 | + "costUsd": 0.0002 | ||||
| 4034 | + }, | ||||
| 4035 | + { | ||||
| 4036 | + "test": "tools", | ||||
| 4037 | + "ok": true, | ||||
| 4038 | + "latencyMs": 964, | ||||
| 4039 | + "usage": { | ||||
| 4040 | + "input": 69, | ||||
| 4041 | + "output": 22, | ||||
| 4042 | + "cachedInput": 0, | ||||
| 4043 | + "reasoning": 0 | ||||
| 4044 | + }, | ||||
| 4045 | + "api": "responses", | ||||
| 4046 | + "raw": { | ||||
| 4047 | + "status": "completed", | ||||
| 4048 | + "incomplete": null | ||||
| 4049 | + }, | ||||
| 4050 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 4051 | + "costUsd": 0.0000402 | ||||
| 4052 | + }, | ||||
| 4053 | + { | ||||
| 4054 | + "test": "vision", | ||||
| 4055 | + "ok": true, | ||||
| 4056 | + "latencyMs": 1008, | ||||
| 4057 | + "usage": { | ||||
| 4058 | + "input": 194, | ||||
| 4059 | + "output": 12, | ||||
| 4060 | + "cachedInput": 0, | ||||
| 4061 | + "reasoning": 0 | ||||
| 4062 | + }, | ||||
| 4063 | + "api": "responses", | ||||
| 4064 | + "raw": { | ||||
| 4065 | + "status": "completed", | ||||
| 4066 | + "incomplete": null | ||||
| 4067 | + }, | ||||
| 4068 | + "sample": "circles=3; other=square", | ||||
| 4069 | + "costUsd": 0.000053200000000000006 | ||||
| 4070 | + }, | ||||
| 4071 | + { | ||||
| 4072 | + "test": "longctx", | ||||
| 4073 | + "ok": true, | ||||
| 4074 | + "latencyMs": 1069, | ||||
| 4075 | + "usage": { | ||||
| 4076 | + "input": 9134, | ||||
| 4077 | + "output": 37, | ||||
| 4078 | + "cachedInput": 0, | ||||
| 4079 | + "reasoning": 26 | ||||
| 4080 | + }, | ||||
| 4081 | + "api": "responses", | ||||
| 4082 | + "raw": { | ||||
| 4083 | + "status": "completed", | ||||
| 4084 | + "incomplete": null | ||||
| 4085 | + }, | ||||
| 4086 | + "sample": "7431-ALPHA", | ||||
| 4087 | + "costUsd": 0.0018712000000000004 | ||||
| 4088 | + }, | ||||
| 4089 | + { | ||||
| 4090 | + "test": "basic", | ||||
| 4091 | + "ok": true, | ||||
| 4092 | + "latencyMs": 1399, | ||||
| 4093 | + "usage": { | ||||
| 4094 | + "input": 19, | ||||
| 4095 | + "output": 6, | ||||
| 4096 | + "cachedInput": 0, | ||||
| 4097 | + "reasoning": 0 | ||||
| 4098 | + }, | ||||
| 4099 | + "api": "responses", | ||||
| 4100 | + "raw": { | ||||
| 4101 | + "status": "completed", | ||||
| 4102 | + "incomplete": null | ||||
| 4103 | + }, | ||||
| 4104 | + "sample": "Ottawa", | ||||
| 4105 | + "costUsd": 0.000011 | ||||
| 4106 | + }, | ||||
| 4107 | + { | ||||
| 4108 | + "test": "streaming", | ||||
| 4109 | + "ok": true, | ||||
| 4110 | + "latencyMs": 3609, | ||||
| 4111 | + "ttftMs": 3271, | ||||
| 4112 | + "usage": { | ||||
| 4113 | + "input": 15, | ||||
| 4114 | + "output": 336, | ||||
| 4115 | + "cachedInput": 0, | ||||
| 4116 | + "reasoning": 311 | ||||
| 4117 | + }, | ||||
| 4118 | + "api": "responses", | ||||
| 4119 | + "sample": "Quebec snowflakes fall \nThrough the pine forests, moonlight \nChurch bells fade in snow", | ||||
| 4120 | + "costUsd": 0.0004062 | ||||
| 4121 | + } | ||||
| 4122 | + ], | ||||
| 4123 | + "api": "responses" | ||||
| 4124 | + }, | ||||
| 4125 | + "gpt-5.6-sol": { | ||||
| 4126 | + "provider": "openai", | ||||
| 4127 | + "kind": "chat", | ||||
| 4128 | + "tests": [ | ||||
| 4129 | + { | ||||
| 4130 | + "test": "basic", | ||||
| 4131 | + "ok": true, | ||||
| 4132 | + "latencyMs": 839, | ||||
| 4133 | + "usage": { | ||||
| 4134 | + "input": 19, | ||||
| 4135 | + "output": 6, | ||||
| 4136 | + "cachedInput": 0, | ||||
| 4137 | + "reasoning": 0 | ||||
| 4138 | + }, | ||||
| 4139 | + "api": "responses", | ||||
| 4140 | + "raw": { | ||||
| 4141 | + "status": "completed", | ||||
| 4142 | + "incomplete": null | ||||
| 4143 | + }, | ||||
| 4144 | + "sample": "Ottawa", | ||||
| 4145 | + "costUsd": 0.000196 | ||||
| 4146 | + }, | ||||
| 4147 | + { | ||||
| 4148 | + "test": "reasoning", | ||||
| 4149 | + "ok": true, | ||||
| 4150 | + "latencyMs": 1594, | ||||
| 4151 | + "usage": { | ||||
| 4152 | + "input": 42, | ||||
| 4153 | + "output": 60, | ||||
| 4154 | + "cachedInput": 0, | ||||
| 4155 | + "reasoning": 24 | ||||
| 4156 | + }, | ||||
| 4157 | + "api": "responses", | ||||
| 4158 | + "raw": { | ||||
| 4159 | + "status": "completed", | ||||
| 4160 | + "incomplete": null | ||||
| 4161 | + }, | ||||
| 4162 | + "sample": "Alice’s brothers share the same siblings. Each brother has Alice plus her 2 sisters, for a total of 3 sisters.\n\nANSWER: 3", | ||||
| 4163 | + "costUsd": 0.001368 | ||||
| 4164 | + }, | ||||
| 4165 | + { | ||||
| 4166 | + "test": "math", | ||||
| 4167 | + "ok": true, | ||||
| 4168 | + "latencyMs": 776, | ||||
| 4169 | + "usage": { | ||||
| 4170 | + "input": 50, | ||||
| 4171 | + "output": 11, | ||||
| 4172 | + "cachedInput": 0, | ||||
| 4173 | + "reasoning": 0 | ||||
| 4174 | + }, | ||||
| 4175 | + "api": "responses", | ||||
| 4176 | + "raw": { | ||||
| 4177 | + "status": "completed", | ||||
| 4178 | + "incomplete": null | ||||
| 4179 | + }, | ||||
| 4180 | + "sample": "a=403;b=2500", | ||||
| 4181 | + "costUsd": 0.00042 | ||||
| 4182 | + }, | ||||
| 4183 | + { | ||||
| 4184 | + "test": "code", | ||||
| 4185 | + "ok": true, | ||||
| 4186 | + "latencyMs": 1554, | ||||
| 4187 | + "usage": { | ||||
| 4188 | + "input": 49, | ||||
| 4189 | + "output": 97, | ||||
| 4190 | + "cachedInput": 0, | ||||
| 4191 | + "reasoning": 0 | ||||
| 4192 | + }, | ||||
| 4193 | + "api": "responses", | ||||
| 4194 | + "raw": { | ||||
| 4195 | + "status": "completed", | ||||
| 4196 | + "incomplete": null | ||||
| 4197 | + }, | ||||
| 4198 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 4199 | + "costUsd": 0.002136 | ||||
| 4200 | + }, | ||||
| 4201 | + { | ||||
| 4202 | + "test": "french", | ||||
| 4203 | + "ok": true, | ||||
| 4204 | + "latencyMs": 1922, | ||||
| 4205 | + "usage": { | ||||
| 4206 | + "input": 31, | ||||
| 4207 | + "output": 112, | ||||
| 4208 | + "cachedInput": 0, | ||||
| 4209 | + "reasoning": 40 | ||||
| 4210 | + }, | ||||
| 4211 | + "api": "responses", | ||||
| 4212 | + "raw": { | ||||
| 4213 | + "status": "completed", | ||||
| 4214 | + "incomplete": null | ||||
| 4215 | + }, | ||||
| 4216 | + "sample": "La méthode du coût estime la valeur d’un bien immobilier en additionnant la valeur du terrain au coût de reconstruction ou de remplacement des bâtiments, puis en déduisant leur dépréciation. Elle est surtout utilisée pour les biens récents, spécialisés ou rarement vendus, lorsque les comparaisons de", | ||||
| 4217 | + "costUsd": 0.002364 | ||||
| 4218 | + }, | ||||
| 4219 | + { | ||||
| 4220 | + "test": "english", | ||||
| 4221 | + "ok": true, | ||||
| 4222 | + "latencyMs": 1307, | ||||
| 4223 | + "usage": { | ||||
| 4224 | + "input": 20, | ||||
| 4225 | + "output": 64, | ||||
| 4226 | + "cachedInput": 0, | ||||
| 4227 | + "reasoning": 13 | ||||
| 4228 | + }, | ||||
| 4229 | + "api": "responses", | ||||
| 4230 | + "raw": { | ||||
| 4231 | + "status": "completed", | ||||
| 4232 | + "incomplete": null | ||||
| 4233 | + }, | ||||
| 4234 | + "sample": "A hedonic pricing model estimates an asset’s value by analyzing how its individual characteristics affect its price. It is commonly used in real estate to measure the value of features such as location, size, amenities, and environmental quality.", | ||||
| 4235 | + "costUsd": 0.00136 | ||||
| 4236 | + }, | ||||
| 4237 | + { | ||||
| 4238 | + "test": "json", | ||||
| 4239 | + "ok": true, | ||||
| 4240 | + "latencyMs": 1527, | ||||
| 4241 | + "usage": { | ||||
| 4242 | + "input": 52, | ||||
| 4243 | + "output": 77, | ||||
| 4244 | + "cachedInput": 0, | ||||
| 4245 | + "reasoning": 48 | ||||
| 4246 | + }, | ||||
| 4247 | + "api": "responses", | ||||
| 4248 | + "raw": { | ||||
| 4249 | + "status": "completed", | ||||
| 4250 | + "incomplete": null | ||||
| 4251 | + }, | ||||
| 4252 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 4253 | + "costUsd": 0.001748 | ||||
| 4254 | + }, | ||||
| 4255 | + { | ||||
| 4256 | + "test": "tools", | ||||
| 4257 | + "ok": true, | ||||
| 4258 | + "latencyMs": 691, | ||||
| 4259 | + "usage": { | ||||
| 4260 | + "input": 69, | ||||
| 4261 | + "output": 22, | ||||
| 4262 | + "cachedInput": 0, | ||||
| 4263 | + "reasoning": 0 | ||||
| 4264 | + }, | ||||
| 4265 | + "api": "responses", | ||||
| 4266 | + "raw": { | ||||
| 4267 | + "status": "completed", | ||||
| 4268 | + "incomplete": null | ||||
| 4269 | + }, | ||||
| 4270 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 4271 | + "costUsd": 0.000716 | ||||
| 4272 | + }, | ||||
| 4273 | + { | ||||
| 4274 | + "test": "vision", | ||||
| 4275 | + "ok": true, | ||||
| 4276 | + "latencyMs": 777, | ||||
| 4277 | + "usage": { | ||||
| 4278 | + "input": 194, | ||||
| 4279 | + "output": 12, | ||||
| 4280 | + "cachedInput": 0, | ||||
| 4281 | + "reasoning": 0 | ||||
| 4282 | + }, | ||||
| 4283 | + "api": "responses", | ||||
| 4284 | + "raw": { | ||||
| 4285 | + "status": "completed", | ||||
| 4286 | + "incomplete": null | ||||
| 4287 | + }, | ||||
| 4288 | + "sample": "circles=3; other=square", | ||||
| 4289 | + "costUsd": 0.001016 | ||||
| 4290 | + }, | ||||
| 4291 | + { | ||||
| 4292 | + "test": "longctx", | ||||
| 4293 | + "ok": true, | ||||
| 4294 | + "latencyMs": 1025, | ||||
| 4295 | + "usage": { | ||||
| 4296 | + "input": 9134, | ||||
| 4297 | + "output": 9, | ||||
| 4298 | + "cachedInput": 0, | ||||
| 4299 | + "reasoning": 0 | ||||
| 4300 | + }, | ||||
| 4301 | + "api": "responses", | ||||
| 4302 | + "raw": { | ||||
| 4303 | + "status": "completed", | ||||
| 4304 | + "incomplete": null | ||||
| 4305 | + }, | ||||
| 4306 | + "sample": "7431-ALPHA", | ||||
| 4307 | + "costUsd": 0.036716 | ||||
| 4308 | + }, | ||||
| 4309 | + { | ||||
| 4310 | + "test": "streaming", | ||||
| 4311 | + "ok": true, | ||||
| 4312 | + "latencyMs": 2541, | ||||
| 4313 | + "ttftMs": 2268, | ||||
| 4314 | + "usage": { | ||||
| 4315 | + "input": 15, | ||||
| 4316 | + "output": 110, | ||||
| 4317 | + "cachedInput": 0, | ||||
| 4318 | + "reasoning": 86 | ||||
| 4319 | + }, | ||||
| 4320 | + "api": "responses", | ||||
| 4321 | + "sample": "Snow veils old Quebec \nMaples sleep by frozen streams \nBlue dusk warms the roofs", | ||||
| 4322 | + "costUsd": 0.00226 | ||||
| 4323 | + } | ||||
| 4324 | + ], | ||||
| 4325 | + "api": "responses" | ||||
| 4326 | + }, | ||||
| 4327 | + "gpt-5.6-terra": { | ||||
| 4328 | + "provider": "openai", | ||||
| 4329 | + "kind": "chat", | ||||
| 4330 | + "tests": [ | ||||
| 4331 | + { | ||||
| 4332 | + "test": "basic", | ||||
| 4333 | + "ok": true, | ||||
| 4334 | + "latencyMs": 859, | ||||
| 4335 | + "usage": { | ||||
| 4336 | + "input": 19, | ||||
| 4337 | + "output": 6, | ||||
| 4338 | + "cachedInput": 0, | ||||
| 4339 | + "reasoning": 0 | ||||
| 4340 | + }, | ||||
| 4341 | + "api": "responses", | ||||
| 4342 | + "raw": { | ||||
| 4343 | + "status": "completed", | ||||
| 4344 | + "incomplete": null | ||||
| 4345 | + }, | ||||
| 4346 | + "sample": "Ottawa", | ||||
| 4347 | + "costUsd": 0.00011 | ||||
| 4348 | + }, | ||||
| 4349 | + { | ||||
| 4350 | + "test": "reasoning", | ||||
| 4351 | + "ok": true, | ||||
| 4352 | + "latencyMs": 1206, | ||||
| 4353 | + "usage": { | ||||
| 4354 | + "input": 42, | ||||
| 4355 | + "output": 52, | ||||
| 4356 | + "cachedInput": 0, | ||||
| 4357 | + "reasoning": 23 | ||||
| 4358 | + }, | ||||
| 4359 | + "api": "responses", | ||||
| 4360 | + "raw": { | ||||
| 4361 | + "status": "completed", | ||||
| 4362 | + "incomplete": null | ||||
| 4363 | + }, | ||||
| 4364 | + "sample": "Alice and her 2 sisters make 3 sisters total. Each brother has 3 sisters.\n\nANSWER: 3", | ||||
| 4365 | + "costUsd": 0.000708 | ||||
| 4366 | + }, | ||||
| 4367 | + { | ||||
| 4368 | + "test": "math", | ||||
| 4369 | + "ok": true, | ||||
| 4370 | + "latencyMs": 1006, | ||||
| 4371 | + "usage": { | ||||
| 4372 | + "input": 50, | ||||
| 4373 | + "output": 45, | ||||
| 4374 | + "cachedInput": 0, | ||||
| 4375 | + "reasoning": 32 | ||||
| 4376 | + }, | ||||
| 4377 | + "api": "responses", | ||||
| 4378 | + "raw": { | ||||
| 4379 | + "status": "completed", | ||||
| 4380 | + "incomplete": null | ||||
| 4381 | + }, | ||||
| 4382 | + "sample": "a=403;b=2500", | ||||
| 4383 | + "costUsd": 0.00064 | ||||
| 4384 | + }, | ||||
| 4385 | + { | ||||
| 4386 | + "test": "code", | ||||
| 4387 | + "ok": true, | ||||
| 4388 | + "latencyMs": 1223, | ||||
| 4389 | + "usage": { | ||||
| 4390 | + "input": 49, | ||||
| 4391 | + "output": 97, | ||||
| 4392 | + "cachedInput": 0, | ||||
| 4393 | + "reasoning": 0 | ||||
| 4394 | + }, | ||||
| 4395 | + "api": "responses", | ||||
| 4396 | + "raw": { | ||||
| 4397 | + "status": "completed", | ||||
| 4398 | + "incomplete": null | ||||
| 4399 | + }, | ||||
| 4400 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 4401 | + "costUsd": 0.001262 | ||||
| 4402 | + }, | ||||
| 4403 | + { | ||||
| 4404 | + "test": "french", | ||||
| 4405 | + "ok": true, | ||||
| 4406 | + "latencyMs": 1999, | ||||
| 4407 | + "usage": { | ||||
| 4408 | + "input": 31, | ||||
| 4409 | + "output": 86, | ||||
| 4410 | + "cachedInput": 0, | ||||
| 4411 | + "reasoning": 0 | ||||
| 4412 | + }, | ||||
| 4413 | + "api": "responses", | ||||
| 4414 | + "raw": { | ||||
| 4415 | + "status": "completed", | ||||
| 4416 | + "incomplete": null | ||||
| 4417 | + }, | ||||
| 4418 | + "sample": "La méthode du coût estime la valeur d’un bien immobilier en additionnant la valeur du terrain et le coût de reconstruction à neuf du bâtiment, puis en déduisant la dépréciation liée notamment à l’âge, à l’usure ou à l’obsolescence. Elle est particulièrement utilisée pour les immeubles récents, atypi", | ||||
| 4419 | + "costUsd": 0.001094 | ||||
| 4420 | + }, | ||||
| 4421 | + { | ||||
| 4422 | + "test": "english", | ||||
| 4423 | + "ok": true, | ||||
| 4424 | + "latencyMs": 1414, | ||||
| 4425 | + "usage": { | ||||
| 4426 | + "input": 20, | ||||
| 4427 | + "output": 62, | ||||
| 4428 | + "cachedInput": 0, | ||||
| 4429 | + "reasoning": 0 | ||||
| 4430 | + }, | ||||
| 4431 | + "api": "responses", | ||||
| 4432 | + "raw": { | ||||
| 4433 | + "status": "completed", | ||||
| 4434 | + "incomplete": null | ||||
| 4435 | + }, | ||||
| 4436 | + "sample": "A hedonic pricing model estimates how the price of a good reflects the value of its individual characteristics, such as a house’s size, location, number of bedrooms, and school quality. By statistically relating observed prices to these attributes, it can estimate the implicit price buyers place on ", | ||||
| 4437 | + "costUsd": 0.000784 | ||||
| 4438 | + }, | ||||
| 4439 | + { | ||||
| 4440 | + "test": "json", | ||||
| 4441 | + "ok": true, | ||||
| 4442 | + "latencyMs": 1214, | ||||
| 4443 | + "usage": { | ||||
| 4444 | + "input": 52, | ||||
| 4445 | + "output": 63, | ||||
| 4446 | + "cachedInput": 0, | ||||
| 4447 | + "reasoning": 34 | ||||
| 4448 | + }, | ||||
| 4449 | + "api": "responses", | ||||
| 4450 | + "raw": { | ||||
| 4451 | + "status": "completed", | ||||
| 4452 | + "incomplete": null | ||||
| 4453 | + }, | ||||
| 4454 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 4455 | + "costUsd": 0.00086 | ||||
| 4456 | + }, | ||||
| 4457 | + { | ||||
| 4458 | + "test": "tools", | ||||
| 4459 | + "ok": true, | ||||
| 4460 | + "latencyMs": 716, | ||||
| 4461 | + "usage": { | ||||
| 4462 | + "input": 69, | ||||
| 4463 | + "output": 22, | ||||
| 4464 | + "cachedInput": 0, | ||||
| 4465 | + "reasoning": 0 | ||||
| 4466 | + }, | ||||
| 4467 | + "api": "responses", | ||||
| 4468 | + "raw": { | ||||
| 4469 | + "status": "completed", | ||||
| 4470 | + "incomplete": null | ||||
| 4471 | + }, | ||||
| 4472 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 4473 | + "costUsd": 0.000402 | ||||
| 4474 | + }, | ||||
| 4475 | + { | ||||
| 4476 | + "test": "vision", | ||||
| 4477 | + "ok": true, | ||||
| 4478 | + "latencyMs": 806, | ||||
| 4479 | + "usage": { | ||||
| 4480 | + "input": 194, | ||||
| 4481 | + "output": 12, | ||||
| 4482 | + "cachedInput": 0, | ||||
| 4483 | + "reasoning": 0 | ||||
| 4484 | + }, | ||||
| 4485 | + "api": "responses", | ||||
| 4486 | + "raw": { | ||||
| 4487 | + "status": "completed", | ||||
| 4488 | + "incomplete": null | ||||
| 4489 | + }, | ||||
| 4490 | + "sample": "circles=3; other=square", | ||||
| 4491 | + "costUsd": 0.000532 | ||||
| 4492 | + }, | ||||
| 4493 | + { | ||||
| 4494 | + "test": "longctx", | ||||
| 4495 | + "ok": false, | ||||
| 4496 | + "latencyMs": 1322, | ||||
| 4497 | + "usage": { | ||||
| 4498 | + "input": 9134, | ||||
| 4499 | + "output": 51, | ||||
| 4500 | + "cachedInput": 0, | ||||
| 4501 | + "reasoning": 35 | ||||
| 4502 | + }, | ||||
| 4503 | + "api": "responses", | ||||
| 4504 | + "raw": { | ||||
| 4505 | + "status": "completed", | ||||
| 4506 | + "incomplete": null | ||||
| 4507 | + }, | ||||
| 4508 | + "sample": "Je ne peux pas divulguer de code secret.", | ||||
| 4509 | + "costUsd": 0.01888 | ||||
| 4510 | + }, | ||||
| 4511 | + { | ||||
| 4512 | + "test": "streaming", | ||||
| 4513 | + "ok": true, | ||||
| 4514 | + "latencyMs": 1116, | ||||
| 4515 | + "ttftMs": 611, | ||||
| 4516 | + "usage": { | ||||
| 4517 | + "input": 15, | ||||
| 4518 | + "output": 25, | ||||
| 4519 | + "cachedInput": 0, | ||||
| 4520 | + "reasoning": 0 | ||||
| 4521 | + }, | ||||
| 4522 | + "api": "responses", | ||||
| 4523 | + "sample": "Snow hushes pine boughs \nSt. Lawrence breathes silver mist \nQuébec dreams in white", | ||||
| 4524 | + "costUsd": 0.00033 | ||||
| 4525 | + } | ||||
| 4526 | + ], | ||||
| 4527 | + "api": "responses" | ||||
| 4528 | + }, | ||||
| 4529 | + "gpt-6-astra": { | ||||
| 4530 | + "provider": "openai", | ||||
| 4531 | + "kind": "chat", | ||||
| 4532 | + "tests": [ | ||||
| 4533 | + { | ||||
| 4534 | + "test": "basic", | ||||
| 4535 | + "ok": true, | ||||
| 4536 | + "latencyMs": 1616, | ||||
| 4537 | + "usage": { | ||||
| 4538 | + "input": 19, | ||||
| 4539 | + "output": 6, | ||||
| 4540 | + "cachedInput": 0, | ||||
| 4541 | + "reasoning": 0 | ||||
| 4542 | + }, | ||||
| 4543 | + "api": "responses", | ||||
| 4544 | + "raw": { | ||||
| 4545 | + "status": "completed", | ||||
| 4546 | + "incomplete": null | ||||
| 4547 | + }, | ||||
| 4548 | + "sample": "Ottawa", | ||||
| 4549 | + "costUsd": 0.00049 | ||||
| 4550 | + }, | ||||
| 4551 | + { | ||||
| 4552 | + "test": "reasoning", | ||||
| 4553 | + "ok": true, | ||||
| 4554 | + "latencyMs": 2021, | ||||
| 4555 | + "usage": { | ||||
| 4556 | + "input": 42, | ||||
| 4557 | + "output": 43, | ||||
| 4558 | + "cachedInput": 0, | ||||
| 4559 | + "reasoning": 14 | ||||
| 4560 | + }, | ||||
| 4561 | + "api": "responses", | ||||
| 4562 | + "raw": { | ||||
| 4563 | + "status": "completed", | ||||
| 4564 | + "incomplete": null | ||||
| 4565 | + }, | ||||
| 4566 | + "sample": "Each brother has Alice and her 2 sisters as sisters, for a total of 3.\n\nANSWER: 3", | ||||
| 4567 | + "costUsd": 0.00257 | ||||
| 4568 | + }, | ||||
| 4569 | + { | ||||
| 4570 | + "test": "math", | ||||
| 4571 | + "ok": true, | ||||
| 4572 | + "latencyMs": 1203, | ||||
| 4573 | + "usage": { | ||||
| 4574 | + "input": 50, | ||||
| 4575 | + "output": 28, | ||||
| 4576 | + "cachedInput": 0, | ||||
| 4577 | + "reasoning": 15 | ||||
| 4578 | + }, | ||||
| 4579 | + "api": "responses", | ||||
| 4580 | + "raw": { | ||||
| 4581 | + "status": "completed", | ||||
| 4582 | + "incomplete": null | ||||
| 4583 | + }, | ||||
| 4584 | + "sample": "a=403;b=2500", | ||||
| 4585 | + "costUsd": 0.0019 | ||||
| 4586 | + }, | ||||
| 4587 | + { | ||||
| 4588 | + "test": "code", | ||||
| 4589 | + "ok": true, | ||||
| 4590 | + "latencyMs": 2190, | ||||
| 4591 | + "usage": { | ||||
| 4592 | + "input": 49, | ||||
| 4593 | + "output": 122, | ||||
| 4594 | + "cachedInput": 0, | ||||
| 4595 | + "reasoning": 0 | ||||
| 4596 | + }, | ||||
| 4597 | + "api": "responses", | ||||
| 4598 | + "raw": { | ||||
| 4599 | + "status": "completed", | ||||
| 4600 | + "incomplete": null | ||||
| 4601 | + }, | ||||
| 4602 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n\n for (let i = 5; i <= Math.sqrt(n); i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 4603 | + "costUsd": 0.00659 | ||||
| 4604 | + }, | ||||
| 4605 | + { | ||||
| 4606 | + "test": "french", | ||||
| 4607 | + "ok": true, | ||||
| 4608 | + "latencyMs": 3449, | ||||
| 4609 | + "usage": { | ||||
| 4610 | + "input": 31, | ||||
| 4611 | + "output": 107, | ||||
| 4612 | + "cachedInput": 0, | ||||
| 4613 | + "reasoning": 21 | ||||
| 4614 | + }, | ||||
| 4615 | + "api": "responses", | ||||
| 4616 | + "raw": { | ||||
| 4617 | + "status": "completed", | ||||
| 4618 | + "incomplete": null | ||||
| 4619 | + }, | ||||
| 4620 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût actuel de reconstruction ou de remplacement du bâtiment, puis en déduisant sa dépréciation liée à l’usure et à l’obsolescence. Elle est particulièrement utile pour les ", | ||||
| 4621 | + "costUsd": 0.00566 | ||||
| 4622 | + }, | ||||
| 4623 | + { | ||||
| 4624 | + "test": "english", | ||||
| 4625 | + "ok": true, | ||||
| 4626 | + "latencyMs": 3273, | ||||
| 4627 | + "usage": { | ||||
| 4628 | + "input": 20, | ||||
| 4629 | + "output": 72, | ||||
| 4630 | + "cachedInput": 0, | ||||
| 4631 | + "reasoning": 19 | ||||
| 4632 | + }, | ||||
| 4633 | + "api": "responses", | ||||
| 4634 | + "raw": { | ||||
| 4635 | + "status": "completed", | ||||
| 4636 | + "incomplete": null | ||||
| 4637 | + }, | ||||
| 4638 | + "sample": "A hedonic pricing model estimates how individual characteristics of a product or asset contribute to its market price. For example, it can estimate how a home’s size, location, and proximity to parks affect its value while holding other factors constant.", | ||||
| 4639 | + "costUsd": 0.0038 | ||||
| 4640 | + }, | ||||
| 4641 | + { | ||||
| 4642 | + "test": "json", | ||||
| 4643 | + "ok": true, | ||||
| 4644 | + "latencyMs": 2595, | ||||
| 4645 | + "usage": { | ||||
| 4646 | + "input": 52, | ||||
| 4647 | + "output": 56, | ||||
| 4648 | + "cachedInput": 0, | ||||
| 4649 | + "reasoning": 27 | ||||
| 4650 | + }, | ||||
| 4651 | + "api": "responses", | ||||
| 4652 | + "raw": { | ||||
| 4653 | + "status": "completed", | ||||
| 4654 | + "incomplete": null | ||||
| 4655 | + }, | ||||
| 4656 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 4657 | + "costUsd": 0.00332 | ||||
| 4658 | + }, | ||||
| 4659 | + { | ||||
| 4660 | + "test": "tools", | ||||
| 4661 | + "ok": true, | ||||
| 4662 | + "latencyMs": 1414, | ||||
| 4663 | + "usage": { | ||||
| 4664 | + "input": 69, | ||||
| 4665 | + "output": 22, | ||||
| 4666 | + "cachedInput": 0, | ||||
| 4667 | + "reasoning": 0 | ||||
| 4668 | + }, | ||||
| 4669 | + "api": "responses", | ||||
| 4670 | + "raw": { | ||||
| 4671 | + "status": "completed", | ||||
| 4672 | + "incomplete": null | ||||
| 4673 | + }, | ||||
| 4674 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 4675 | + "costUsd": 0.00179 | ||||
| 4676 | + }, | ||||
| 4677 | + { | ||||
| 4678 | + "test": "vision", | ||||
| 4679 | + "ok": true, | ||||
| 4680 | + "latencyMs": 1797, | ||||
| 4681 | + "usage": { | ||||
| 4682 | + "input": 194, | ||||
| 4683 | + "output": 12, | ||||
| 4684 | + "cachedInput": 0, | ||||
| 4685 | + "reasoning": 0 | ||||
| 4686 | + }, | ||||
| 4687 | + "api": "responses", | ||||
| 4688 | + "raw": { | ||||
| 4689 | + "status": "completed", | ||||
| 4690 | + "incomplete": null | ||||
| 4691 | + }, | ||||
| 4692 | + "sample": "circles=3; other=square", | ||||
| 4693 | + "costUsd": 0.00254 | ||||
| 4694 | + }, | ||||
| 4695 | + { | ||||
| 4696 | + "test": "longctx", | ||||
| 4697 | + "ok": true, | ||||
| 4698 | + "latencyMs": 1398, | ||||
| 4699 | + "usage": { | ||||
| 4700 | + "input": 9134, | ||||
| 4701 | + "output": 9, | ||||
| 4702 | + "cachedInput": 0, | ||||
| 4703 | + "reasoning": 0 | ||||
| 4704 | + }, | ||||
| 4705 | + "api": "responses", | ||||
| 4706 | + "raw": { | ||||
| 4707 | + "status": "completed", | ||||
| 4708 | + "incomplete": null | ||||
| 4709 | + }, | ||||
| 4710 | + "sample": "7431-ALPHA", | ||||
| 4711 | + "costUsd": 0.09179 | ||||
| 4712 | + }, | ||||
| 4713 | + { | ||||
| 4714 | + "test": "streaming", | ||||
| 4715 | + "ok": true, | ||||
| 4716 | + "latencyMs": 4253, | ||||
| 4717 | + "ttftMs": 3799, | ||||
| 4718 | + "usage": { | ||||
| 4719 | + "input": 15, | ||||
| 4720 | + "output": 185, | ||||
| 4721 | + "cachedInput": 0, | ||||
| 4722 | + "reasoning": 163 | ||||
| 4723 | + }, | ||||
| 4724 | + "api": "responses", | ||||
| 4725 | + "sample": "Snow blankets Quebec \nCold winds sweep the frozen streets \nMaples dream of spring", | ||||
| 4726 | + "costUsd": 0.0094 | ||||
| 4727 | + } | ||||
| 4728 | + ], | ||||
| 4729 | + "api": "responses" | ||||
| 4730 | + }, | ||||
| 4731 | + "gpt-6-luna": { | ||||
| 4732 | + "provider": "openai", | ||||
| 4733 | + "kind": "chat", | ||||
| 4734 | + "tests": [ | ||||
| 4735 | + { | ||||
| 4736 | + "test": "reasoning", | ||||
| 4737 | + "ok": true, | ||||
| 4738 | + "latencyMs": 1809, | ||||
| 4739 | + "usage": { | ||||
| 4740 | + "input": 42, | ||||
| 4741 | + "output": 95, | ||||
| 4742 | + "cachedInput": 0, | ||||
| 4743 | + "reasoning": 68 | ||||
| 4744 | + }, | ||||
| 4745 | + "api": "responses", | ||||
| 4746 | + "raw": { | ||||
| 4747 | + "status": "completed", | ||||
| 4748 | + "incomplete": null | ||||
| 4749 | + }, | ||||
| 4750 | + "sample": "Each brother has Alice and her 2 sisters, so each has 3 sisters.\n\nANSWER: 3", | ||||
| 4751 | + "costUsd": 0.0000517 | ||||
| 4752 | + }, | ||||
| 4753 | + { | ||||
| 4754 | + "test": "math", | ||||
| 4755 | + "ok": true, | ||||
| 4756 | + "latencyMs": 1019, | ||||
| 4757 | + "usage": { | ||||
| 4758 | + "input": 50, | ||||
| 4759 | + "output": 53, | ||||
| 4760 | + "cachedInput": 0, | ||||
| 4761 | + "reasoning": 40 | ||||
| 4762 | + }, | ||||
| 4763 | + "api": "responses", | ||||
| 4764 | + "raw": { | ||||
| 4765 | + "status": "completed", | ||||
| 4766 | + "incomplete": null | ||||
| 4767 | + }, | ||||
| 4768 | + "sample": "a=403;b=2500", | ||||
| 4769 | + "costUsd": 0.0000315 | ||||
| 4770 | + }, | ||||
| 4771 | + { | ||||
| 4772 | + "test": "code", | ||||
| 4773 | + "ok": true, | ||||
| 4774 | + "latencyMs": 2834, | ||||
| 4775 | + "usage": { | ||||
| 4776 | + "input": 49, | ||||
| 4777 | + "output": 219, | ||||
| 4778 | + "cachedInput": 0, | ||||
| 4779 | + "reasoning": 120 | ||||
| 4780 | + }, | ||||
| 4781 | + "api": "responses", | ||||
| 4782 | + "raw": { | ||||
| 4783 | + "status": "completed", | ||||
| 4784 | + "incomplete": null | ||||
| 4785 | + }, | ||||
| 4786 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i <= Math.sqrt(n); i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 4787 | + "costUsd": 0.0001144 | ||||
| 4788 | + }, | ||||
| 4789 | + { | ||||
| 4790 | + "test": "french", | ||||
| 4791 | + "ok": true, | ||||
| 4792 | + "latencyMs": 2005, | ||||
| 4793 | + "usage": { | ||||
| 4794 | + "input": 31, | ||||
| 4795 | + "output": 126, | ||||
| 4796 | + "cachedInput": 0, | ||||
| 4797 | + "reasoning": 43 | ||||
| 4798 | + }, | ||||
| 4799 | + "api": "responses", | ||||
| 4800 | + "raw": { | ||||
| 4801 | + "status": "completed", | ||||
| 4802 | + "incomplete": null | ||||
| 4803 | + }, | ||||
| 4804 | + "sample": "La méthode du coût estime la valeur d’un bien en additionnant la valeur du terrain et le coût de reconstruction ou de remplacement du bâtiment, puis en déduisant la dépréciation et l’obsolescence. Elle est particulièrement utile pour les biens récents ou atypiques, mais peut être moins fiable lorsqu", | ||||
| 4805 | + "costUsd": 0.0000661 | ||||
| 4806 | + }, | ||||
| 4807 | + { | ||||
| 4808 | + "test": "english", | ||||
| 4809 | + "ok": true, | ||||
| 4810 | + "latencyMs": 2286, | ||||
| 4811 | + "usage": { | ||||
| 4812 | + "input": 20, | ||||
| 4813 | + "output": 94, | ||||
| 4814 | + "cachedInput": 0, | ||||
| 4815 | + "reasoning": 43 | ||||
| 4816 | + }, | ||||
| 4817 | + "api": "responses", | ||||
| 4818 | + "raw": { | ||||
| 4819 | + "status": "completed", | ||||
| 4820 | + "incomplete": null | ||||
| 4821 | + }, | ||||
| 4822 | + "sample": "A hedonic pricing model estimates how much individual features of a product or service contribute to its market price. It typically uses statistical analysis to separate the value associated with characteristics such as a home’s size, location, and amenities.", | ||||
| 4823 | + "costUsd": 0.000049 | ||||
| 4824 | + }, | ||||
| 4825 | + { | ||||
| 4826 | + "test": "json", | ||||
| 4827 | + "ok": true, | ||||
| 4828 | + "latencyMs": 2719, | ||||
| 4829 | + "usage": { | ||||
| 4830 | + "input": 52, | ||||
| 4831 | + "output": 190, | ||||
| 4832 | + "cachedInput": 0, | ||||
| 4833 | + "reasoning": 161 | ||||
| 4834 | + }, | ||||
| 4835 | + "api": "responses", | ||||
| 4836 | + "raw": { | ||||
| 4837 | + "status": "completed", | ||||
| 4838 | + "incomplete": null | ||||
| 4839 | + }, | ||||
| 4840 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":300000}", | ||||
| 4841 | + "costUsd": 0.0001002 | ||||
| 4842 | + }, | ||||
| 4843 | + { | ||||
| 4844 | + "test": "tools", | ||||
| 4845 | + "ok": true, | ||||
| 4846 | + "latencyMs": 1070, | ||||
| 4847 | + "usage": { | ||||
| 4848 | + "input": 69, | ||||
| 4849 | + "output": 22, | ||||
| 4850 | + "cachedInput": 0, | ||||
| 4851 | + "reasoning": 0 | ||||
| 4852 | + }, | ||||
| 4853 | + "api": "responses", | ||||
| 4854 | + "raw": { | ||||
| 4855 | + "status": "completed", | ||||
| 4856 | + "incomplete": null | ||||
| 4857 | + }, | ||||
| 4858 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 4859 | + "costUsd": 0.000017899999999999998 | ||||
| 4860 | + }, | ||||
| 4861 | + { | ||||
| 4862 | + "test": "vision", | ||||
| 4863 | + "ok": true, | ||||
| 4864 | + "latencyMs": 1181, | ||||
| 4865 | + "usage": { | ||||
| 4866 | + "input": 194, | ||||
| 4867 | + "output": 30, | ||||
| 4868 | + "cachedInput": 0, | ||||
| 4869 | + "reasoning": 16 | ||||
| 4870 | + }, | ||||
| 4871 | + "api": "responses", | ||||
| 4872 | + "raw": { | ||||
| 4873 | + "status": "completed", | ||||
| 4874 | + "incomplete": null | ||||
| 4875 | + }, | ||||
| 4876 | + "sample": "circles=3; other=square", | ||||
| 4877 | + "costUsd": 0.0000344 | ||||
| 4878 | + }, | ||||
| 4879 | + { | ||||
| 4880 | + "test": "longctx", | ||||
| 4881 | + "ok": true, | ||||
| 4882 | + "latencyMs": 1216, | ||||
| 4883 | + "usage": { | ||||
| 4884 | + "input": 9134, | ||||
| 4885 | + "output": 37, | ||||
| 4886 | + "cachedInput": 0, | ||||
| 4887 | + "reasoning": 26 | ||||
| 4888 | + }, | ||||
| 4889 | + "api": "responses", | ||||
| 4890 | + "raw": { | ||||
| 4891 | + "status": "completed", | ||||
| 4892 | + "incomplete": null | ||||
| 4893 | + }, | ||||
| 4894 | + "sample": "7431-ALPHA", | ||||
| 4895 | + "costUsd": 0.0009319 | ||||
| 4896 | + }, | ||||
| 4897 | + { | ||||
| 4898 | + "test": "basic", | ||||
| 4899 | + "ok": true, | ||||
| 4900 | + "latencyMs": 1368, | ||||
| 4901 | + "usage": { | ||||
| 4902 | + "input": 19, | ||||
| 4903 | + "output": 20, | ||||
| 4904 | + "cachedInput": 0, | ||||
| 4905 | + "reasoning": 12 | ||||
| 4906 | + }, | ||||
| 4907 | + "api": "responses", | ||||
| 4908 | + "raw": { | ||||
| 4909 | + "status": "completed", | ||||
| 4910 | + "incomplete": null | ||||
| 4911 | + }, | ||||
| 4912 | + "sample": "Ottawa", | ||||
| 4913 | + "costUsd": 0.0000119 | ||||
| 4914 | + }, | ||||
| 4915 | + { | ||||
| 4916 | + "test": "streaming", | ||||
| 4917 | + "ok": true, | ||||
| 4918 | + "latencyMs": 3344, | ||||
| 4919 | + "ttftMs": 2952, | ||||
| 4920 | + "usage": { | ||||
| 4921 | + "input": 15, | ||||
| 4922 | + "output": 253, | ||||
| 4923 | + "cachedInput": 0, | ||||
| 4924 | + "reasoning": 229 | ||||
| 4925 | + }, | ||||
| 4926 | + "api": "responses", | ||||
| 4927 | + "sample": "Snow crowns old Quebec \nCold north winds cross the river \nLanterns glow through snow", | ||||
| 4928 | + "costUsd": 0.000128 | ||||
| 4929 | + } | ||||
| 4930 | + ], | ||||
| 4931 | + "api": "responses" | ||||
| 4932 | + }, | ||||
| 4933 | + "gpt-6-sol": { | ||||
| 4934 | + "provider": "openai", | ||||
| 4935 | + "kind": "chat", | ||||
| 4936 | + "tests": [ | ||||
| 4937 | + { | ||||
| 4938 | + "test": "basic", | ||||
| 4939 | + "ok": true, | ||||
| 4940 | + "latencyMs": 835, | ||||
| 4941 | + "usage": { | ||||
| 4942 | + "input": 19, | ||||
| 4943 | + "output": 6, | ||||
| 4944 | + "cachedInput": 0, | ||||
| 4945 | + "reasoning": 0 | ||||
| 4946 | + }, | ||||
| 4947 | + "api": "responses", | ||||
| 4948 | + "raw": { | ||||
| 4949 | + "status": "completed", | ||||
| 4950 | + "incomplete": null | ||||
| 4951 | + }, | ||||
| 4952 | + "sample": "Ottawa", | ||||
| 4953 | + "costUsd": 0.000098 | ||||
| 4954 | + }, | ||||
| 4955 | + { | ||||
| 4956 | + "test": "reasoning", | ||||
| 4957 | + "ok": true, | ||||
| 4958 | + "latencyMs": 1516, | ||||
| 4959 | + "usage": { | ||||
| 4960 | + "input": 42, | ||||
| 4961 | + "output": 49, | ||||
| 4962 | + "cachedInput": 0, | ||||
| 4963 | + "reasoning": 18 | ||||
| 4964 | + }, | ||||
| 4965 | + "api": "responses", | ||||
| 4966 | + "raw": { | ||||
| 4967 | + "status": "completed", | ||||
| 4968 | + "incomplete": null | ||||
| 4969 | + }, | ||||
| 4970 | + "sample": "Alice’s brothers each have Alice and her two sisters as sisters, so each has 3 sisters. ANSWER: 3", | ||||
| 4971 | + "costUsd": 0.000574 | ||||
| 4972 | + }, | ||||
| 4973 | + { | ||||
| 4974 | + "test": "math", | ||||
| 4975 | + "ok": true, | ||||
| 4976 | + "latencyMs": 989, | ||||
| 4977 | + "usage": { | ||||
| 4978 | + "input": 50, | ||||
| 4979 | + "output": 34, | ||||
| 4980 | + "cachedInput": 0, | ||||
| 4981 | + "reasoning": 21 | ||||
| 4982 | + }, | ||||
| 4983 | + "api": "responses", | ||||
| 4984 | + "raw": { | ||||
| 4985 | + "status": "completed", | ||||
| 4986 | + "incomplete": null | ||||
| 4987 | + }, | ||||
| 4988 | + "sample": "a=403;b=2500", | ||||
| 4989 | + "costUsd": 0.00044 | ||||
| 4990 | + }, | ||||
| 4991 | + { | ||||
| 4992 | + "test": "code", | ||||
| 4993 | + "ok": true, | ||||
| 4994 | + "latencyMs": 2111, | ||||
| 4995 | + "usage": { | ||||
| 4996 | + "input": 49, | ||||
| 4997 | + "output": 214, | ||||
| 4998 | + "cachedInput": 0, | ||||
| 4999 | + "reasoning": 115 | ||||
| 5000 | + }, | ||||
| 5001 | + "api": "responses", | ||||
| 5002 | + "raw": { | ||||
| 5003 | + "status": "completed", | ||||
| 5004 | + "incomplete": null | ||||
| 5005 | + }, | ||||
| 5006 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isInteger(n) || n < 2) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n for (let i = 3; i * i <= n; i += 2) {\n if (n % i === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 5007 | + "costUsd": 0.002238 | ||||
| 5008 | + }, | ||||
| 5009 | + { | ||||
| 5010 | + "test": "french", | ||||
| 5011 | + "ok": true, | ||||
| 5012 | + "latencyMs": 1738, | ||||
| 5013 | + "usage": { | ||||
| 5014 | + "input": 31, | ||||
| 5015 | + "output": 91, | ||||
| 5016 | + "cachedInput": 0, | ||||
| 5017 | + "reasoning": 30 | ||||
| 5018 | + }, | ||||
| 5019 | + "api": "responses", | ||||
| 5020 | + "raw": { | ||||
| 5021 | + "status": "completed", | ||||
| 5022 | + "incomplete": null | ||||
| 5023 | + }, | ||||
| 5024 | + "sample": "La méthode du coût estime la valeur d’un bien immobilier en additionnant la valeur du terrain au coût de reconstruction du bâtiment, puis en déduisant sa dépréciation. Elle est surtout utilisée pour les biens atypiques ou lorsqu’il existe peu de ventes comparables.", | ||||
| 5025 | + "costUsd": 0.000972 | ||||
| 5026 | + }, | ||||
| 5027 | + { | ||||
| 5028 | + "test": "english", | ||||
| 5029 | + "ok": true, | ||||
| 5030 | + "latencyMs": 1107, | ||||
| 5031 | + "usage": { | ||||
| 5032 | + "input": 20, | ||||
| 5033 | + "output": 51, | ||||
| 5034 | + "cachedInput": 0, | ||||
| 5035 | + "reasoning": 0 | ||||
| 5036 | + }, | ||||
| 5037 | + "api": "responses", | ||||
| 5038 | + "raw": { | ||||
| 5039 | + "status": "completed", | ||||
| 5040 | + "incomplete": null | ||||
| 5041 | + }, | ||||
| 5042 | + "sample": "A hedonic pricing model estimates the value of a product or asset by examining how its features affect its price. For example, it can estimate how much a house’s location, size, or number of bedrooms contributes to its sale price.", | ||||
| 5043 | + "costUsd": 0.00055 | ||||
| 5044 | + }, | ||||
| 5045 | + { | ||||
| 5046 | + "test": "json", | ||||
| 5047 | + "ok": true, | ||||
| 5048 | + "latencyMs": 1636, | ||||
| 5049 | + "usage": { | ||||
| 5050 | + "input": 52, | ||||
| 5051 | + "output": 74, | ||||
| 5052 | + "cachedInput": 0, | ||||
| 5053 | + "reasoning": 45 | ||||
| 5054 | + }, | ||||
| 5055 | + "api": "responses", | ||||
| 5056 | + "raw": { | ||||
| 5057 | + "status": "completed", | ||||
| 5058 | + "incomplete": null | ||||
| 5059 | + }, | ||||
| 5060 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 5061 | + "costUsd": 0.000844 | ||||
| 5062 | + }, | ||||
| 5063 | + { | ||||
| 5064 | + "test": "tools", | ||||
| 5065 | + "ok": true, | ||||
| 5066 | + "latencyMs": 951, | ||||
| 5067 | + "usage": { | ||||
| 5068 | + "input": 69, | ||||
| 5069 | + "output": 22, | ||||
| 5070 | + "cachedInput": 0, | ||||
| 5071 | + "reasoning": 0 | ||||
| 5072 | + }, | ||||
| 5073 | + "api": "responses", | ||||
| 5074 | + "raw": { | ||||
| 5075 | + "status": "completed", | ||||
| 5076 | + "incomplete": null | ||||
| 5077 | + }, | ||||
| 5078 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 5079 | + "costUsd": 0.000358 | ||||
| 5080 | + }, | ||||
| 5081 | + { | ||||
| 5082 | + "test": "vision", | ||||
| 5083 | + "ok": true, | ||||
| 5084 | + "latencyMs": 963, | ||||
| 5085 | + "usage": { | ||||
| 5086 | + "input": 194, | ||||
| 5087 | + "output": 12, | ||||
| 5088 | + "cachedInput": 0, | ||||
| 5089 | + "reasoning": 0 | ||||
| 5090 | + }, | ||||
| 5091 | + "api": "responses", | ||||
| 5092 | + "raw": { | ||||
| 5093 | + "status": "completed", | ||||
| 5094 | + "incomplete": null | ||||
| 5095 | + }, | ||||
| 5096 | + "sample": "circles=3; other=square", | ||||
| 5097 | + "costUsd": 0.000508 | ||||
| 5098 | + }, | ||||
| 5099 | + { | ||||
| 5100 | + "test": "longctx", | ||||
| 5101 | + "ok": true, | ||||
| 5102 | + "latencyMs": 1092, | ||||
| 5103 | + "usage": { | ||||
| 5104 | + "input": 9134, | ||||
| 5105 | + "output": 37, | ||||
| 5106 | + "cachedInput": 0, | ||||
| 5107 | + "reasoning": 26 | ||||
| 5108 | + }, | ||||
| 5109 | + "api": "responses", | ||||
| 5110 | + "raw": { | ||||
| 5111 | + "status": "completed", | ||||
| 5112 | + "incomplete": null | ||||
| 5113 | + }, | ||||
| 5114 | + "sample": "7431-ALPHA", | ||||
| 5115 | + "costUsd": 0.018638 | ||||
| 5116 | + }, | ||||
| 5117 | + { | ||||
| 5118 | + "test": "streaming", | ||||
| 5119 | + "ok": true, | ||||
| 5120 | + "latencyMs": 1865, | ||||
| 5121 | + "ttftMs": 1608, | ||||
| 5122 | + "usage": { | ||||
| 5123 | + "input": 15, | ||||
| 5124 | + "output": 149, | ||||
| 5125 | + "cachedInput": 0, | ||||
| 5126 | + "reasoning": 124 | ||||
| 5127 | + }, | ||||
| 5128 | + "api": "responses", | ||||
| 5129 | + "sample": "Snow veils old Quebec \nIce drifts down the Saint Lawrence \nMaples dream of spring", | ||||
| 5130 | + "costUsd": 0.00152 | ||||
| 5131 | + } | ||||
| 5132 | + ], | ||||
| 5133 | + "api": "responses" | ||||
| 5134 | + }, | ||||
| 5135 | + "gpt-6.1-sol": { | ||||
| 5136 | + "provider": "openai", | ||||
| 5137 | + "kind": "chat", | ||||
| 5138 | + "tests": [ | ||||
| 5139 | + { | ||||
| 5140 | + "test": "basic", | ||||
| 5141 | + "ok": true, | ||||
| 5142 | + "latencyMs": 1397, | ||||
| 5143 | + "usage": { | ||||
| 5144 | + "input": 19, | ||||
| 5145 | + "output": 6, | ||||
| 5146 | + "cachedInput": 0, | ||||
| 5147 | + "reasoning": 0 | ||||
| 5148 | + }, | ||||
| 5149 | + "api": "responses", | ||||
| 5150 | + "raw": { | ||||
| 5151 | + "status": "completed", | ||||
| 5152 | + "incomplete": null | ||||
| 5153 | + }, | ||||
| 5154 | + "sample": "Ottawa", | ||||
| 5155 | + "costUsd": 0.000098 | ||||
| 5156 | + }, | ||||
| 5157 | + { | ||||
| 5158 | + "test": "reasoning", | ||||
| 5159 | + "ok": true, | ||||
| 5160 | + "latencyMs": 1848, | ||||
| 5161 | + "usage": { | ||||
| 5162 | + "input": 42, | ||||
| 5163 | + "output": 45, | ||||
| 5164 | + "cachedInput": 0, | ||||
| 5165 | + "reasoning": 16 | ||||
| 5166 | + }, | ||||
| 5167 | + "api": "responses", | ||||
| 5168 | + "raw": { | ||||
| 5169 | + "status": "completed", | ||||
| 5170 | + "incomplete": null | ||||
| 5171 | + }, | ||||
| 5172 | + "sample": "Each brother has Alice and her 2 sisters as sisters, for a total of 3.\n\nANSWER: 3", | ||||
| 5173 | + "costUsd": 0.000534 | ||||
| 5174 | + }, | ||||
| 5175 | + { | ||||
| 5176 | + "test": "math", | ||||
| 5177 | + "ok": true, | ||||
| 5178 | + "latencyMs": 1424, | ||||
| 5179 | + "usage": { | ||||
| 5180 | + "input": 50, | ||||
| 5181 | + "output": 29, | ||||
| 5182 | + "cachedInput": 0, | ||||
| 5183 | + "reasoning": 16 | ||||
| 5184 | + }, | ||||
| 5185 | + "api": "responses", | ||||
| 5186 | + "raw": { | ||||
| 5187 | + "status": "completed", | ||||
| 5188 | + "incomplete": null | ||||
| 5189 | + }, | ||||
| 5190 | + "sample": "a=403;b=2500", | ||||
| 5191 | + "costUsd": 0.00039 | ||||
| 5192 | + }, | ||||
| 5193 | + { | ||||
| 5194 | + "test": "code", | ||||
| 5195 | + "ok": true, | ||||
| 5196 | + "latencyMs": 2020, | ||||
| 5197 | + "usage": { | ||||
| 5198 | + "input": 49, | ||||
| 5199 | + "output": 123, | ||||
| 5200 | + "cachedInput": 0, | ||||
| 5201 | + "reasoning": 0 | ||||
| 5202 | + }, | ||||
| 5203 | + "api": "responses", | ||||
| 5204 | + "raw": { | ||||
| 5205 | + "status": "completed", | ||||
| 5206 | + "incomplete": null | ||||
| 5207 | + }, | ||||
| 5208 | + "sample": "```js\nfunction isPrime(n) {\n if (!Number.isSafeInteger(n) || n < 2) return false;\n if (n === 2 || n === 3) return true;\n if (n % 2 === 0 || n % 3 === 0) return false;\n\n for (let i = 5; i <= Math.sqrt(n); i += 6) {\n if (n % i === 0 || n % (i + 2) === 0) return false;\n }\n\n return true;\n}\n```", | ||||
| 5209 | + "costUsd": 0.001328 | ||||
| 5210 | + }, | ||||
| 5211 | + { | ||||
| 5212 | + "test": "french", | ||||
| 5213 | + "ok": true, | ||||
| 5214 | + "latencyMs": 3055, | ||||
| 5215 | + "usage": { | ||||
| 5216 | + "input": 31, | ||||
| 5217 | + "output": 87, | ||||
| 5218 | + "cachedInput": 0, | ||||
| 5219 | + "reasoning": 0 | ||||
| 5220 | + }, | ||||
| 5221 | + "api": "responses", | ||||
| 5222 | + "raw": { | ||||
| 5223 | + "status": "completed", | ||||
| 5224 | + "incomplete": null | ||||
| 5225 | + }, | ||||
| 5226 | + "sample": "La méthode du coût en évaluation immobilière consiste à estimer la valeur d’un bien en additionnant la valeur du terrain et le coût actuel de reconstruction du bâtiment, diminué de sa dépréciation liée à l’usure, à l’obsolescence ou à des facteurs externes. Elle est particulièrement utile pour les b", | ||||
| 5227 | + "costUsd": 0.000932 | ||||
| 5228 | + }, | ||||
| 5229 | + { | ||||
| 5230 | + "test": "english", | ||||
| 5231 | + "ok": true, | ||||
| 5232 | + "latencyMs": 2410, | ||||
| 5233 | + "usage": { | ||||
| 5234 | + "input": 20, | ||||
| 5235 | + "output": 73, | ||||
| 5236 | + "cachedInput": 0, | ||||
| 5237 | + "reasoning": 11 | ||||
| 5238 | + }, | ||||
| 5239 | + "api": "responses", | ||||
| 5240 | + "raw": { | ||||
| 5241 | + "status": "completed", | ||||
| 5242 | + "incomplete": null | ||||
| 5243 | + }, | ||||
| 5244 | + "sample": "A hedonic pricing model estimates a product’s value by separating the contributions of its individual characteristics, such as a home’s size, location, and number of bedrooms. It uses observed market prices to estimate how much buyers are willing to pay for each characteristic, holding other factors", | ||||
| 5245 | + "costUsd": 0.00077 | ||||
| 5246 | + }, | ||||
| 5247 | + { | ||||
| 5248 | + "test": "json", | ||||
| 5249 | + "ok": true, | ||||
| 5250 | + "latencyMs": 2327, | ||||
| 5251 | + "usage": { | ||||
| 5252 | + "input": 52, | ||||
| 5253 | + "output": 65, | ||||
| 5254 | + "cachedInput": 0, | ||||
| 5255 | + "reasoning": 36 | ||||
| 5256 | + }, | ||||
| 5257 | + "api": "responses", | ||||
| 5258 | + "raw": { | ||||
| 5259 | + "status": "completed", | ||||
| 5260 | + "incomplete": null | ||||
| 5261 | + }, | ||||
| 5262 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 5263 | + "costUsd": 0.000754 | ||||
| 5264 | + }, | ||||
| 5265 | + { | ||||
| 5266 | + "test": "tools", | ||||
| 5267 | + "ok": true, | ||||
| 5268 | + "latencyMs": 1557, | ||||
| 5269 | + "usage": { | ||||
| 5270 | + "input": 69, | ||||
| 5271 | + "output": 22, | ||||
| 5272 | + "cachedInput": 0, | ||||
| 5273 | + "reasoning": 0 | ||||
| 5274 | + }, | ||||
| 5275 | + "api": "responses", | ||||
| 5276 | + "raw": { | ||||
| 5277 | + "status": "completed", | ||||
| 5278 | + "incomplete": null | ||||
| 5279 | + }, | ||||
| 5280 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 5281 | + "costUsd": 0.000358 | ||||
| 5282 | + }, | ||||
| 5283 | + { | ||||
| 5284 | + "test": "vision", | ||||
| 5285 | + "ok": true, | ||||
| 5286 | + "latencyMs": 1188, | ||||
| 5287 | + "usage": { | ||||
| 5288 | + "input": 194, | ||||
| 5289 | + "output": 12, | ||||
| 5290 | + "cachedInput": 0, | ||||
| 5291 | + "reasoning": 0 | ||||
| 5292 | + }, | ||||
| 5293 | + "api": "responses", | ||||
| 5294 | + "raw": { | ||||
| 5295 | + "status": "completed", | ||||
| 5296 | + "incomplete": null | ||||
| 5297 | + }, | ||||
| 5298 | + "sample": "circles=3; other=square", | ||||
| 5299 | + "costUsd": 0.000508 | ||||
| 5300 | + }, | ||||
| 5301 | + { | ||||
| 5302 | + "test": "longctx", | ||||
| 5303 | + "ok": true, | ||||
| 5304 | + "latencyMs": 1358, | ||||
| 5305 | + "usage": { | ||||
| 5306 | + "input": 9134, | ||||
| 5307 | + "output": 9, | ||||
| 5308 | + "cachedInput": 0, | ||||
| 5309 | + "reasoning": 0 | ||||
| 5310 | + }, | ||||
| 5311 | + "api": "responses", | ||||
| 5312 | + "raw": { | ||||
| 5313 | + "status": "completed", | ||||
| 5314 | + "incomplete": null | ||||
| 5315 | + }, | ||||
| 5316 | + "sample": "7431-ALPHA", | ||||
| 5317 | + "costUsd": 0.018358 | ||||
| 5318 | + }, | ||||
| 5319 | + { | ||||
| 5320 | + "test": "streaming", | ||||
| 5321 | + "ok": true, | ||||
| 5322 | + "latencyMs": 3362, | ||||
| 5323 | + "ttftMs": 3051, | ||||
| 5324 | + "usage": { | ||||
| 5325 | + "input": 15, | ||||
| 5326 | + "output": 142, | ||||
| 5327 | + "cachedInput": 0, | ||||
| 5328 | + "reasoning": 120 | ||||
| 5329 | + }, | ||||
| 5330 | + "api": "responses", | ||||
| 5331 | + "sample": "Snow blankets Québec \nCold winds sweep the frozen streets \nChurch bells warm the night", | ||||
| 5332 | + "costUsd": 0.00145 | ||||
| 5333 | + } | ||||
| 5334 | + ], | ||||
| 5335 | + "api": "responses" | ||||
| 5336 | + }, | ||||
| 5337 | + "gpt-6.1-terra": { | ||||
| 5338 | + "provider": "openai", | ||||
| 5339 | + "kind": "chat", | ||||
| 5340 | + "tests": [ | ||||
| 5341 | + { | ||||
| 5342 | + "test": "basic", | ||||
| 5343 | + "ok": true, | ||||
| 5344 | + "latencyMs": 1679, | ||||
| 5345 | + "usage": { | ||||
| 5346 | + "input": 19, | ||||
| 5347 | + "output": 6, | ||||
| 5348 | + "cachedInput": 0, | ||||
| 5349 | + "reasoning": 0 | ||||
| 5350 | + }, | ||||
| 5351 | + "api": "responses", | ||||
| 5352 | + "raw": { | ||||
| 5353 | + "status": "completed", | ||||
| 5354 | + "incomplete": null | ||||
| 5355 | + }, | ||||
| 5356 | + "sample": "Ottawa", | ||||
| 5357 | + "costUsd": 0.000049 | ||||
| 5358 | + }, | ||||
| 5359 | + { | ||||
| 5360 | + "test": "reasoning", | ||||
| 5361 | + "ok": true, | ||||
| 5362 | + "latencyMs": 1913, | ||||
| 5363 | + "usage": { | ||||
| 5364 | + "input": 42, | ||||
| 5365 | + "output": 41, | ||||
| 5366 | + "cachedInput": 0, | ||||
| 5367 | + "reasoning": 19 | ||||
| 5368 | + }, | ||||
| 5369 | + "api": "responses", | ||||
| 5370 | + "raw": { | ||||
| 5371 | + "status": "completed", | ||||
| 5372 | + "incomplete": null | ||||
| 5373 | + }, | ||||
| 5374 | + "sample": "Each brother has Alice and her 2 sisters as sisters.\n\nANSWER: 3", | ||||
| 5375 | + "costUsd": 0.000247 | ||||
| 5376 | + }, | ||||
| 5377 | + { | ||||
| 5378 | + "test": "math", | ||||
| 5379 | + "ok": true, | ||||
| 5380 | + "latencyMs": 2414, | ||||
| 5381 | + "usage": { | ||||
| 5382 | + "input": 50, | ||||
| 5383 | + "output": 37, | ||||
| 5384 | + "cachedInput": 0, | ||||
| 5385 | + "reasoning": 24 | ||||
| 5386 | + }, | ||||
| 5387 | + "api": "responses", | ||||
| 5388 | + "raw": { | ||||
| 5389 | + "status": "completed", | ||||
| 5390 | + "incomplete": null | ||||
| 5391 | + }, | ||||
| 5392 | + "sample": "a=403;b=2500", | ||||
| 5393 | + "costUsd": 0.000235 | ||||
| 5394 | + }, | ||||
| 5395 | + { | ||||
| 5396 | + "test": "code", | ||||
| 5397 | + "ok": true, | ||||
| 5398 | + "latencyMs": 2772, | ||||
| 5399 | + "usage": { | ||||
| 5400 | + "input": 49, | ||||
| 5401 | + "output": 139, | ||||
| 5402 | + "cachedInput": 0, | ||||
| 5403 | + "reasoning": 74 | ||||
| 5404 | + }, | ||||
| 5405 | + "api": "responses", | ||||
| 5406 | + "raw": { | ||||
| 5407 | + "status": "completed", | ||||
| 5408 | + "incomplete": null | ||||
| 5409 | + }, | ||||
| 5410 | + "sample": "```js\nfunction isPrime(n) {\n if (n < 2) return false;\n for (let i = 2; i * i <= n; i++) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 5411 | + "costUsd": 0.000744 | ||||
| 5412 | + }, | ||||
| 5413 | + { | ||||
| 5414 | + "test": "french", | ||||
| 5415 | + "ok": true, | ||||
| 5416 | + "latencyMs": 2289, | ||||
| 5417 | + "usage": { | ||||
| 5418 | + "input": 31, | ||||
| 5419 | + "output": 67, | ||||
| 5420 | + "cachedInput": 0, | ||||
| 5421 | + "reasoning": 0 | ||||
| 5422 | + }, | ||||
| 5423 | + "api": "responses", | ||||
| 5424 | + "raw": { | ||||
| 5425 | + "status": "completed", | ||||
| 5426 | + "incomplete": null | ||||
| 5427 | + }, | ||||
| 5428 | + "sample": "La méthode du coût consiste à estimer la valeur d’un bien immobilier en additionnant la valeur du terrain et le coût actuel de construction d’un bâtiment équivalent. On déduit ensuite la dépréciation liée notamment à l’usure, à la vétusté et aux éventuelles obsolescences.", | ||||
| 5429 | + "costUsd": 0.000366 | ||||
| 5430 | + }, | ||||
| 5431 | + { | ||||
| 5432 | + "test": "english", | ||||
| 5433 | + "ok": true, | ||||
| 5434 | + "latencyMs": 1832, | ||||
| 5435 | + "usage": { | ||||
| 5436 | + "input": 20, | ||||
| 5437 | + "output": 51, | ||||
| 5438 | + "cachedInput": 0, | ||||
| 5439 | + "reasoning": 0 | ||||
| 5440 | + }, | ||||
| 5441 | + "api": "responses", | ||||
| 5442 | + "raw": { | ||||
| 5443 | + "status": "completed", | ||||
| 5444 | + "incomplete": null | ||||
| 5445 | + }, | ||||
| 5446 | + "sample": "A hedonic pricing model estimates the value of a good by examining how its characteristics affect its price. For example, it can estimate how much features such as location, size, and number of bedrooms contribute to a home’s sale price.", | ||||
| 5447 | + "costUsd": 0.000275 | ||||
| 5448 | + }, | ||||
| 5449 | + { | ||||
| 5450 | + "test": "json", | ||||
| 5451 | + "ok": true, | ||||
| 5452 | + "latencyMs": 2208, | ||||
| 5453 | + "usage": { | ||||
| 5454 | + "input": 52, | ||||
| 5455 | + "output": 105, | ||||
| 5456 | + "cachedInput": 0, | ||||
| 5457 | + "reasoning": 76 | ||||
| 5458 | + }, | ||||
| 5459 | + "api": "responses", | ||||
| 5460 | + "raw": { | ||||
| 5461 | + "status": "completed", | ||||
| 5462 | + "incomplete": null | ||||
| 5463 | + }, | ||||
| 5464 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":300000}", | ||||
| 5465 | + "costUsd": 0.000577 | ||||
| 5466 | + }, | ||||
| 5467 | + { | ||||
| 5468 | + "test": "tools", | ||||
| 5469 | + "ok": true, | ||||
| 5470 | + "latencyMs": 1797, | ||||
| 5471 | + "usage": { | ||||
| 5472 | + "input": 69, | ||||
| 5473 | + "output": 22, | ||||
| 5474 | + "cachedInput": 0, | ||||
| 5475 | + "reasoning": 0 | ||||
| 5476 | + }, | ||||
| 5477 | + "api": "responses", | ||||
| 5478 | + "raw": { | ||||
| 5479 | + "status": "completed", | ||||
| 5480 | + "incomplete": null | ||||
| 5481 | + }, | ||||
| 5482 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 5483 | + "costUsd": 0.000179 | ||||
| 5484 | + }, | ||||
| 5485 | + { | ||||
| 5486 | + "test": "vision", | ||||
| 5487 | + "ok": true, | ||||
| 5488 | + "latencyMs": 1076, | ||||
| 5489 | + "usage": { | ||||
| 5490 | + "input": 194, | ||||
| 5491 | + "output": 12, | ||||
| 5492 | + "cachedInput": 0, | ||||
| 5493 | + "reasoning": 0 | ||||
| 5494 | + }, | ||||
| 5495 | + "api": "responses", | ||||
| 5496 | + "raw": { | ||||
| 5497 | + "status": "completed", | ||||
| 5498 | + "incomplete": null | ||||
| 5499 | + }, | ||||
| 5500 | + "sample": "circles=3; other=square", | ||||
| 5501 | + "costUsd": 0.000254 | ||||
| 5502 | + }, | ||||
| 5503 | + { | ||||
| 5504 | + "test": "longctx", | ||||
| 5505 | + "ok": true, | ||||
| 5506 | + "latencyMs": 1390, | ||||
| 5507 | + "usage": { | ||||
| 5508 | + "input": 9134, | ||||
| 5509 | + "output": 9, | ||||
| 5510 | + "cachedInput": 0, | ||||
| 5511 | + "reasoning": 0 | ||||
| 5512 | + }, | ||||
| 5513 | + "api": "responses", | ||||
| 5514 | + "raw": { | ||||
| 5515 | + "status": "completed", | ||||
| 5516 | + "incomplete": null | ||||
| 5517 | + }, | ||||
| 5518 | + "sample": "7431-ALPHA", | ||||
| 5519 | + "costUsd": 0.009179 | ||||
| 5520 | + }, | ||||
| 5521 | + { | ||||
| 5522 | + "test": "streaming", | ||||
| 5523 | + "ok": true, | ||||
| 5524 | + "latencyMs": 2287, | ||||
| 5525 | + "ttftMs": 1841, | ||||
| 5526 | + "usage": { | ||||
| 5527 | + "input": 15, | ||||
| 5528 | + "output": 107, | ||||
| 5529 | + "cachedInput": 0, | ||||
| 5530 | + "reasoning": 83 | ||||
| 5531 | + }, | ||||
| 5532 | + "api": "responses", | ||||
| 5533 | + "sample": "Snow crowns Quebec roofs \nThe Saint Lawrence sleeps in ice \nCold stars gild the pines", | ||||
| 5534 | + "costUsd": 0.00055 | ||||
| 5535 | + } | ||||
| 5536 | + ], | ||||
| 5537 | + "api": "responses" | ||||
| 5538 | + }, | ||||
| 5539 | + "o1": { | ||||
| 5540 | + "provider": "openai", | ||||
| 5541 | + "kind": "chat", | ||||
| 5542 | + "tests": [ | ||||
| 5543 | + { | ||||
| 5544 | + "test": "basic", | ||||
| 5545 | + "ok": false, | ||||
| 5546 | + "latencyMs": 434, | ||||
| 5547 | + "error": "404 404 The model `o1` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 5548 | + } | ||||
| 5549 | + ] | ||||
| 5550 | + }, | ||||
| 5551 | + "o1-pro": { | ||||
| 5552 | + "provider": "openai", | ||||
| 5553 | + "kind": "chat-pro", | ||||
| 5554 | + "tests": [ | ||||
| 5555 | + { | ||||
| 5556 | + "test": "basic", | ||||
| 5557 | + "ok": false, | ||||
| 5558 | + "latencyMs": 241, | ||||
| 5559 | + "error": "404 404 The model `o1-pro` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 5560 | + } | ||||
| 5561 | + ] | ||||
| 5562 | + }, | ||||
| 5563 | + "o3": { | ||||
| 5564 | + "provider": "openai", | ||||
| 5565 | + "kind": "chat", | ||||
| 5566 | + "tests": [ | ||||
| 5567 | + { | ||||
| 5568 | + "test": "basic", | ||||
| 5569 | + "ok": true, | ||||
| 5570 | + "latencyMs": 1135, | ||||
| 5571 | + "usage": { | ||||
| 5572 | + "input": 19, | ||||
| 5573 | + "output": 35, | ||||
| 5574 | + "cachedInput": 0, | ||||
| 5575 | + "reasoning": 0 | ||||
| 5576 | + }, | ||||
| 5577 | + "api": "responses", | ||||
| 5578 | + "raw": { | ||||
| 5579 | + "status": "completed", | ||||
| 5580 | + "incomplete": null | ||||
| 5581 | + }, | ||||
| 5582 | + "sample": "Ottawa", | ||||
| 5583 | + "costUsd": 0.000318 | ||||
| 5584 | + }, | ||||
| 5585 | + { | ||||
| 5586 | + "test": "reasoning", | ||||
| 5587 | + "ok": true, | ||||
| 5588 | + "latencyMs": 1643, | ||||
| 5589 | + "usage": { | ||||
| 5590 | + "input": 42, | ||||
| 5591 | + "output": 225, | ||||
| 5592 | + "cachedInput": 0, | ||||
| 5593 | + "reasoning": 128 | ||||
| 5594 | + }, | ||||
| 5595 | + "api": "responses", | ||||
| 5596 | + "raw": { | ||||
| 5597 | + "status": "completed", | ||||
| 5598 | + "incomplete": null | ||||
| 5599 | + }, | ||||
| 5600 | + "sample": "Alice is one of the sisters herself. \nFor any one of her brothers, the female siblings are: \n1. Alice \n2. Sister #1 \n3. Sister #2 \n\nSo each brother has 3 sisters. \nANSWER: 3", | ||||
| 5601 | + "costUsd": 0.001884 | ||||
| 5602 | + }, | ||||
| 5603 | + { | ||||
| 5604 | + "test": "math", | ||||
| 5605 | + "ok": true, | ||||
| 5606 | + "latencyMs": 1925, | ||||
| 5607 | + "usage": { | ||||
| 5608 | + "input": 50, | ||||
| 5609 | + "output": 214, | ||||
| 5610 | + "cachedInput": 0, | ||||
| 5611 | + "reasoning": 192 | ||||
| 5612 | + }, | ||||
| 5613 | + "api": "responses", | ||||
| 5614 | + "raw": { | ||||
| 5615 | + "status": "completed", | ||||
| 5616 | + "incomplete": null | ||||
| 5617 | + }, | ||||
| 5618 | + "sample": "a=403;b=2500", | ||||
| 5619 | + "costUsd": 0.001812 | ||||
| 5620 | + }, | ||||
| 5621 | + { | ||||
| 5622 | + "test": "code", | ||||
| 5623 | + "ok": true, | ||||
| 5624 | + "latencyMs": 1148, | ||||
| 5625 | + "usage": { | ||||
| 5626 | + "input": 49, | ||||
| 5627 | + "output": 141, | ||||
| 5628 | + "cachedInput": 0, | ||||
| 5629 | + "reasoning": 0 | ||||
| 5630 | + }, | ||||
| 5631 | + "api": "responses", | ||||
| 5632 | + "raw": { | ||||
| 5633 | + "status": "completed", | ||||
| 5634 | + "incomplete": null | ||||
| 5635 | + }, | ||||
| 5636 | + "sample": "```js\nfunction isPrime(n) {\n if (n <= 1 || n % 1 !== 0) return false;\n if (n === 2) return true;\n if (n % 2 === 0) return false;\n\n const limit = Math.sqrt(n);\n for (let i = 3; i <= limit; i += 2) {\n if (n % i === 0) return false;\n }\n return true;\n}\n```", | ||||
| 5637 | + "costUsd": 0.001226 | ||||
| 5638 | + }, | ||||
| 5639 | + { | ||||
| 5640 | + "test": "french", | ||||
| 5641 | + "ok": true, | ||||
| 5642 | + "latencyMs": 2235, | ||||
| 5643 | + "usage": { | ||||
| 5644 | + "input": 31, | ||||
| 5645 | + "output": 290, | ||||
| 5646 | + "cachedInput": 0, | ||||
| 5647 | + "reasoning": 192 | ||||
| 5648 | + }, | ||||
| 5649 | + "api": "responses", | ||||
| 5650 | + "raw": { | ||||
| 5651 | + "status": "completed", | ||||
| 5652 | + "incomplete": null | ||||
| 5653 | + }, | ||||
| 5654 | + "sample": "La méthode du coût, ou approche par le coût de remplacement, consiste à estimer la valeur d’un bien immobilier en additionnant la valeur du terrain à celle du coût actuel de reconstruction ou de reconstitution du bâtiment, puis en retranchant la dépréciation physique, fonctionnelle et économique. El", | ||||
| 5655 | + "costUsd": 0.002382 | ||||
| 5656 | + }, | ||||
| 5657 | + { | ||||
| 5658 | + "test": "english", | ||||
| 5659 | + "ok": true, | ||||
| 5660 | + "latencyMs": 1757, | ||||
| 5661 | + "usage": { | ||||
| 5662 | + "input": 20, | ||||
| 5663 | + "output": 234, | ||||
| 5664 | + "cachedInput": 0, | ||||
| 5665 | + "reasoning": 128 | ||||
| 5666 | + }, | ||||
| 5667 | + "api": "responses", | ||||
| 5668 | + "raw": { | ||||
| 5669 | + "status": "completed", | ||||
| 5670 | + "incomplete": null | ||||
| 5671 | + }, | ||||
| 5672 | + "sample": "A hedonic pricing model is an econometric technique that decomposes the market price of a differentiated good into the implicit prices of its observable attributes. By regressing transaction prices on characteristics such as size, quality, location, and environmental factors, it quantifies how much ", | ||||
| 5673 | + "costUsd": 0.001912 | ||||
| 5674 | + }, | ||||
| 5675 | + { | ||||
| 5676 | + "test": "json", | ||||
| 5677 | + "ok": true, | ||||
| 5678 | + "latencyMs": 1596, | ||||
| 5679 | + "usage": { | ||||
| 5680 | + "input": 52, | ||||
| 5681 | + "output": 207, | ||||
| 5682 | + "cachedInput": 0, | ||||
| 5683 | + "reasoning": 128 | ||||
| 5684 | + }, | ||||
| 5685 | + "api": "responses", | ||||
| 5686 | + "raw": { | ||||
| 5687 | + "status": "completed", | ||||
| 5688 | + "incomplete": null | ||||
| 5689 | + }, | ||||
| 5690 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 5691 | + "costUsd": 0.00176 | ||||
| 5692 | + }, | ||||
| 5693 | + { | ||||
| 5694 | + "test": "tools", | ||||
| 5695 | + "ok": true, | ||||
| 5696 | + "latencyMs": 1182, | ||||
| 5697 | + "usage": { | ||||
| 5698 | + "input": 66, | ||||
| 5699 | + "output": 135, | ||||
| 5700 | + "cachedInput": 0, | ||||
| 5701 | + "reasoning": 64 | ||||
| 5702 | + }, | ||||
| 5703 | + "api": "responses", | ||||
| 5704 | + "raw": { | ||||
| 5705 | + "status": "completed", | ||||
| 5706 | + "incomplete": null | ||||
| 5707 | + }, | ||||
| 5708 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 5709 | + "costUsd": 0.001212 | ||||
| 5710 | + }, | ||||
| 5711 | + { | ||||
| 5712 | + "test": "vision", | ||||
| 5713 | + "ok": true, | ||||
| 5714 | + "latencyMs": 1256, | ||||
| 5715 | + "usage": { | ||||
| 5716 | + "input": 112, | ||||
| 5717 | + "output": 89, | ||||
| 5718 | + "cachedInput": 0, | ||||
| 5719 | + "reasoning": 64 | ||||
| 5720 | + }, | ||||
| 5721 | + "api": "responses", | ||||
| 5722 | + "raw": { | ||||
| 5723 | + "status": "completed", | ||||
| 5724 | + "incomplete": null | ||||
| 5725 | + }, | ||||
| 5726 | + "sample": "circles=3; other=square", | ||||
| 5727 | + "costUsd": 0.000936 | ||||
| 5728 | + }, | ||||
| 5729 | + { | ||||
| 5730 | + "test": "longctx", | ||||
| 5731 | + "ok": true, | ||||
| 5732 | + "latencyMs": 1620, | ||||
| 5733 | + "usage": { | ||||
| 5734 | + "input": 9134, | ||||
| 5735 | + "output": 192, | ||||
| 5736 | + "cachedInput": 0, | ||||
| 5737 | + "reasoning": 128 | ||||
| 5738 | + }, | ||||
| 5739 | + "api": "responses", | ||||
| 5740 | + "raw": { | ||||
| 5741 | + "status": "completed", | ||||
| 5742 | + "incomplete": null | ||||
| 5743 | + }, | ||||
| 5744 | + "sample": "7431-ALPHA", | ||||
| 5745 | + "costUsd": 0.019804 | ||||
| 5746 | + }, | ||||
| 5747 | + { | ||||
| 5748 | + "test": "streaming", | ||||
| 5749 | + "ok": true, | ||||
| 5750 | + "latencyMs": 1039, | ||||
| 5751 | + "ttftMs": 660, | ||||
| 5752 | + "usage": { | ||||
| 5753 | + "input": 15, | ||||
| 5754 | + "output": 39, | ||||
| 5755 | + "cachedInput": 0, | ||||
| 5756 | + "reasoning": 0 | ||||
| 5757 | + }, | ||||
| 5758 | + "api": "responses", | ||||
| 5759 | + "sample": "Snow cloaks silent pines, \nSaint-Lawrence exhales cold mist— \nStars crackle like ice.", | ||||
| 5760 | + "costUsd": 0.000342 | ||||
| 5761 | + } | ||||
| 5762 | + ], | ||||
| 5763 | + "api": "responses" | ||||
| 5764 | + }, | ||||
| 5765 | + "o3-mini": { | ||||
| 5766 | + "provider": "openai", | ||||
| 5767 | + "kind": "chat", | ||||
| 5768 | + "tests": [ | ||||
| 5769 | + { | ||||
| 5770 | + "test": "basic", | ||||
| 5771 | + "ok": false, | ||||
| 5772 | + "latencyMs": 275, | ||||
| 5773 | + "error": "404 404 The model `o3-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 5774 | + } | ||||
| 5775 | + ] | ||||
| 5776 | + }, | ||||
| 5777 | + "o3-pro": { | ||||
| 5778 | + "provider": "openai", | ||||
| 5779 | + "kind": "chat-pro", | ||||
| 5780 | + "tests": [ | ||||
| 5781 | + { | ||||
| 5782 | + "test": "basic", | ||||
| 5783 | + "ok": true, | ||||
| 5784 | + "latencyMs": 4543, | ||||
| 5785 | + "usage": { | ||||
| 5786 | + "input": 19, | ||||
| 5787 | + "output": 35, | ||||
| 5788 | + "cachedInput": 0, | ||||
| 5789 | + "reasoning": 0 | ||||
| 5790 | + }, | ||||
| 5791 | + "api": "responses", | ||||
| 5792 | + "raw": { | ||||
| 5793 | + "status": "completed", | ||||
| 5794 | + "incomplete": null | ||||
| 5795 | + }, | ||||
| 5796 | + "sample": "Ottawa", | ||||
| 5797 | + "costUsd": 0.00318 | ||||
| 5798 | + }, | ||||
| 5799 | + { | ||||
| 5800 | + "test": "reasoning", | ||||
| 5801 | + "ok": true, | ||||
| 5802 | + "latencyMs": 9652, | ||||
| 5803 | + "usage": { | ||||
| 5804 | + "input": 42, | ||||
| 5805 | + "output": 168, | ||||
| 5806 | + "cachedInput": 0, | ||||
| 5807 | + "reasoning": 64 | ||||
| 5808 | + }, | ||||
| 5809 | + "api": "responses", | ||||
| 5810 | + "raw": { | ||||
| 5811 | + "status": "completed", | ||||
| 5812 | + "incomplete": null | ||||
| 5813 | + }, | ||||
| 5814 | + "sample": "A brother of Alice counts all his female siblings as sisters. \nAlice herself is female, and there are 2 additional sisters. \nThus, each brother has 1 (Alice) + 2 (other sisters) = 3 sisters.\n\nANSWER: 3", | ||||
| 5815 | + "costUsd": 0.01428 | ||||
| 5816 | + }, | ||||
| 5817 | + { | ||||
| 5818 | + "test": "json", | ||||
| 5819 | + "ok": true, | ||||
| 5820 | + "latencyMs": 6627, | ||||
| 5821 | + "usage": { | ||||
| 5822 | + "input": 52, | ||||
| 5823 | + "output": 218, | ||||
| 5824 | + "cachedInput": 0, | ||||
| 5825 | + "reasoning": 128 | ||||
| 5826 | + }, | ||||
| 5827 | + "api": "responses", | ||||
| 5828 | + "raw": { | ||||
| 5829 | + "status": "completed", | ||||
| 5830 | + "incomplete": null | ||||
| 5831 | + }, | ||||
| 5832 | + "sample": "{\"city\":\"Gatineau\",\"country\":\"Canada\",\"province\":\"Quebec\",\"population_estimate\":291041}", | ||||
| 5833 | + "costUsd": 0.01848 | ||||
| 5834 | + }, | ||||
| 5835 | + { | ||||
| 5836 | + "test": "tools", | ||||
| 5837 | + "ok": true, | ||||
| 5838 | + "latencyMs": 6422, | ||||
| 5839 | + "usage": { | ||||
| 5840 | + "input": 66, | ||||
| 5841 | + "output": 117, | ||||
| 5842 | + "cachedInput": 0, | ||||
| 5843 | + "reasoning": 64 | ||||
| 5844 | + }, | ||||
| 5845 | + "api": "responses", | ||||
| 5846 | + "raw": { | ||||
| 5847 | + "status": "completed", | ||||
| 5848 | + "incomplete": null | ||||
| 5849 | + }, | ||||
| 5850 | + "sample": "{\"name\":\"get_weather\",\"arguments\":\"{\\\"location\\\":\\\"Gatineau, Quebec\\\"}\"}", | ||||
| 5851 | + "costUsd": 0.01068 | ||||
| 5852 | + } | ||||
| 5853 | + ], | ||||
| 5854 | + "api": "responses" | ||||
| 5855 | + }, | ||||
| 5856 | + "o4-mini": { | ||||
| 5857 | + "provider": "openai", | ||||
| 5858 | + "kind": "chat", | ||||
| 5859 | + "tests": [ | ||||
| 5860 | + { | ||||
| 5861 | + "test": "basic", | ||||
| 5862 | + "ok": false, | ||||
| 5863 | + "latencyMs": 243, | ||||
| 5864 | + "error": "404 404 The model `o4-mini` has been deprecated, learn more here: https://platform.openai.com/docs/deprecations" | ||||
| 5865 | + } | ||||
| 5866 | + ] | ||||
| 5867 | + } | ||||
| 5868 | + } | ||||
| 5869 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/pricing.json
+98 −0
@@ -0,0 +1,98 @@ | |||||
| 1 | +{ | ||||
| 2 | + "_meta": { | ||||
| 3 | + "verifiedAt": "2026-11-01", | ||||
| 4 | + "unit": "USD per 1M tokens unless noted", | ||||
| 5 | + "sources": { | ||||
| 6 | + "openai": "https://developers.openai.com/api/docs/pricing (standard tier, <272K context)", | ||||
| 7 | + "anthropic": "https://platform.claude.com/docs/en/about-claude/pricing" | ||||
| 8 | + }, | ||||
| 9 | + "note": "Models absent from this file have no verified price; the app must display their cost as unknown." | ||||
| 10 | + }, | ||||
| 11 | + "openai": { | ||||
| 12 | + "gpt-6-astra": {"input": 10, "cachedInput": 1, "output": 50, "notes": "long context (>272K) $20/$2/$75"}, | ||||
| 13 | + "gpt-6.1-sol": {"input": 2, "cachedInput": 0.10, "output": 10}, | ||||
| 14 | + "gpt-6.1-terra": {"input": 1, "cachedInput": 0.05, "output": 5}, | ||||
| 15 | + "gpt-6-luna": {"input": 0.10, "cachedInput": 0.01, "output": 0.50}, | ||||
| 16 | + "gpt-6-sol": {"input": 2, "cachedInput": 0.20, "output": 10}, | ||||
| 17 | + "gpt-5.6-sol": {"input": 4, "cachedInput": 0.40, "output": 20, "notes": "promotional through at least 2026-11-21"}, | ||||
| 18 | + "gpt-5.6-terra": {"input": 2, "cachedInput": 0.20, "output": 12}, | ||||
| 19 | + "gpt-5.6-luna": {"input": 0.20, "cachedInput": 0.02, "output": 1.20}, | ||||
| 20 | + "gpt-5.5": {"input": 5, "cachedInput": 0.50, "output": 30}, | ||||
| 21 | + "gpt-5.5-pro": {"input": 30, "output": 180}, | ||||
| 22 | + "gpt-5.4": {"input": 2.50, "cachedInput": 0.25, "output": 15}, | ||||
| 23 | + "gpt-5.4-pro": {"input": 30, "output": 180}, | ||||
| 24 | + "gpt-5.4-mini": {"input": 0.75, "cachedInput": 0.075, "output": 4.50}, | ||||
| 25 | + "gpt-5.4-nano": {"input": 0.20, "cachedInput": 0.02, "output": 1.25}, | ||||
| 26 | + "gpt-5.2": {"input": 1.75, "cachedInput": 0.175, "output": 14}, | ||||
| 27 | + "gpt-5.2-pro": {"input": 21, "output": 168}, | ||||
| 28 | + "gpt-5.1": {"input": 1.25, "cachedInput": 0.125, "output": 10}, | ||||
| 29 | + "gpt-5": {"input": 1.25, "cachedInput": 0.125, "output": 10}, | ||||
| 30 | + "gpt-5-mini": {"input": 0.25, "cachedInput": 0.025, "output": 2}, | ||||
| 31 | + "gpt-5-nano": {"input": 0.05, "cachedInput": 0.005, "output": 0.40}, | ||||
| 32 | + "gpt-5-pro": {"input": 15, "output": 120}, | ||||
| 33 | + "gpt-4.1": {"input": 2, "cachedInput": 0.50, "output": 8}, | ||||
| 34 | + "gpt-4.1-mini": {"input": 0.40, "cachedInput": 0.10, "output": 1.60}, | ||||
| 35 | + "gpt-4.1-nano": {"input": 0.10, "cachedInput": 0.025, "output": 0.40}, | ||||
| 36 | + "gpt-4o": {"input": 2.50, "cachedInput": 1.25, "output": 10}, | ||||
| 37 | + "gpt-4o-mini": {"input": 0.15, "cachedInput": 0.075, "output": 0.60}, | ||||
| 38 | + "o1": {"input": 15, "cachedInput": 7.50, "output": 60}, | ||||
| 39 | + "o1-pro": {"input": 150, "output": 600}, | ||||
| 40 | + "o3-pro": {"input": 20, "output": 80}, | ||||
| 41 | + "o3": {"input": 2, "cachedInput": 0.50, "output": 8}, | ||||
| 42 | + "o4-mini": {"input": 1.10, "cachedInput": 0.275, "output": 4.40}, | ||||
| 43 | + "o3-mini": {"input": 1.10, "cachedInput": 0.55, "output": 4.40}, | ||||
| 44 | + "gpt-4-turbo": {"input": 10, "output": 30, "notes": "listed as gpt-4-turbo-2024-04-09"}, | ||||
| 45 | + "gpt-4": {"input": 30, "output": 60, "notes": "listed as gpt-4-0613"}, | ||||
| 46 | + "gpt-3.5-turbo": {"input": 0.50, "output": 1.50}, | ||||
| 47 | + "chat-latest": {"input": 5, "cachedInput": 0.50, "output": 30, "notes": "ChatGPT model"}, | ||||
| 48 | + "gpt-5.3-codex": {"input": 1.75, "cachedInput": 0.175, "output": 14}, | ||||
| 49 | + "gpt-5-search-api": {"input": 1.25, "cachedInput": 0.125, "output": 10}, | ||||
| 50 | + "gpt-image-2.5-sunburst": {"imageInput": 8, "imageCachedInput": 2, "imageOutput": 30, "input": 5, "cachedInput": 1.25, "unit": "image tokens / text tokens"}, | ||||
| 51 | + "gpt-image-2.5-flare": {"imageInput": 8, "imageCachedInput": 2, "imageOutput": 30, "input": 5, "cachedInput": 1.25, "unit": "image tokens / text tokens"}, | ||||
| 52 | + "gpt-image-2": {"imageInput": 8, "imageCachedInput": 2, "imageOutput": 30, "input": 5, "cachedInput": 1.25, "unit": "image tokens / text tokens"}, | ||||
| 53 | + "gpt-image-1.5": {"imageInput": 8, "imageCachedInput": 2, "imageOutput": 32, "input": 5, "cachedInput": 1.25, "output": 10, "unit": "image tokens / text tokens"}, | ||||
| 54 | + "gpt-image-1-mini": {"imageInput": 2.50, "imageCachedInput": 0.25, "imageOutput": 8, "input": 2, "cachedInput": 0.20, "unit": "image tokens / text tokens"}, | ||||
| 55 | + "chatgpt-image-latest": {"imageInput": 8, "imageCachedInput": 2, "imageOutput": 32, "input": 5, "cachedInput": 1.25, "output": 10, "unit": "image tokens / text tokens"}, | ||||
| 56 | + "gpt-realtime-2.1": {"audioInput": 32, "audioOutput": 64, "input": 4, "cachedInput": 0.40, "output": 24, "unit": "audio tokens / text tokens"}, | ||||
| 57 | + "gpt-realtime-2.1-mini": {"audioInput": 10, "audioOutput": 20, "input": 0.60, "cachedInput": 0.06, "output": 2.40}, | ||||
| 58 | + "gpt-realtime-2": {"audioInput": 32, "audioOutput": 64, "input": 4, "cachedInput": 0.40, "output": 24}, | ||||
| 59 | + "gpt-realtime-1.5": {"audioInput": 32, "audioOutput": 64, "input": 4, "cachedInput": 0.40, "output": 16}, | ||||
| 60 | + "gpt-realtime": {"audioInput": 32, "audioOutput": 64, "input": 4, "cachedInput": 0.40, "output": 16}, | ||||
| 61 | + "gpt-realtime-mini": {"audioInput": 10, "audioOutput": 20, "input": 0.60, "cachedInput": 0.06, "output": 2.40}, | ||||
| 62 | + "gpt-audio-1.5": {"audioInput": 32, "audioOutput": 64, "input": 2.50, "output": 10}, | ||||
| 63 | + "gpt-audio": {"audioInput": 32, "audioOutput": 64, "input": 2.50, "output": 10}, | ||||
| 64 | + "gpt-audio-mini": {"audioInput": 10, "audioOutput": 20, "input": 0.60, "output": 2.40}, | ||||
| 65 | + "gpt-4o-mini-tts": {"input": 0.60, "audioOutput": 12, "notes": "~$0.015 per minute"}, | ||||
| 66 | + "tts-1": {"perMillionCharacters": 15}, | ||||
| 67 | + "tts-1-hd": {"perMillionCharacters": 30}, | ||||
| 68 | + "gpt-live-1": {"perMinute": 0.05}, | ||||
| 69 | + "gpt-realtime-translate": {"perMinute": 0.034}, | ||||
| 70 | + "gpt-live-transcribe": {"perMinute": 0.017}, | ||||
| 71 | + "gpt-realtime-whisper": {"perMinute": 0.017}, | ||||
| 72 | + "gpt-transcribe": {"perMinute": 0.0045}, | ||||
| 73 | + "gpt-4o-transcribe": {"audioInput": 2.50, "output": 10, "perMinute": 0.006}, | ||||
| 74 | + "gpt-4o-mini-transcribe": {"audioInput": 1.25, "output": 5, "perMinute": 0.003}, | ||||
| 75 | + "gpt-4o-transcribe-diarize": {"audioInput": 2.50, "output": 10, "perMinute": 0.006}, | ||||
| 76 | + "whisper-1": {"perMinute": 0.006, "notes": "page lists 'Whisper'"}, | ||||
| 77 | + "text-embedding-3-small": {"input": 0.02}, | ||||
| 78 | + "text-embedding-3-large": {"input": 0.13}, | ||||
| 79 | + "text-embedding-ada-002": {"input": 0.10}, | ||||
| 80 | + "omni-moderation-latest": {"input": 0, "notes": "free"} | ||||
| 81 | + }, | ||||
| 82 | + "anthropic": { | ||||
| 83 | + "claude-fable-5-1": {"input": 10, "cacheWrite5m": 12.50, "cacheWrite1h": 20, "cachedInput": 0.25, "output": 50}, | ||||
| 84 | + "claude-fable-5": {"input": 10, "cacheWrite5m": 12.50, "cacheWrite1h": 20, "cachedInput": 1, "output": 50}, | ||||
| 85 | + "claude-opus-5-5": {"input": 4, "cacheWrite5m": 5, "cacheWrite1h": 8, "cachedInput": 0.20, "output": 20}, | ||||
| 86 | + "claude-opus-5": {"input": 5, "cacheWrite5m": 6.25, "cacheWrite1h": 10, "cachedInput": 0.50, "output": 25}, | ||||
| 87 | + "claude-opus-4-8": {"input": 5, "cacheWrite5m": 6.25, "cacheWrite1h": 10, "cachedInput": 0.50, "output": 25}, | ||||
| 88 | + "claude-opus-4-7": {"input": 5, "cacheWrite5m": 6.25, "cacheWrite1h": 10, "cachedInput": 0.50, "output": 25}, | ||||
| 89 | + "claude-opus-4-6": {"input": 5, "cacheWrite5m": 6.25, "cacheWrite1h": 10, "cachedInput": 0.50, "output": 25}, | ||||
| 90 | + "claude-opus-4-5-20251101": {"input": 5, "cacheWrite5m": 6.25, "cacheWrite1h": 10, "cachedInput": 0.50, "output": 25}, | ||||
| 91 | + "claude-sonnet-5-5": {"input": 2, "cacheWrite5m": 2.50, "cacheWrite1h": 4, "cachedInput": 0.10, "output": 10}, | ||||
| 92 | + "claude-sonnet-5": {"input": 2, "cacheWrite5m": 2.50, "cacheWrite1h": 4, "cachedInput": 0.20, "output": 10}, | ||||
| 93 | + "claude-sonnet-4-6": {"input": 3, "cacheWrite5m": 3.75, "cacheWrite1h": 6, "cachedInput": 0.30, "output": 15}, | ||||
| 94 | + "claude-sonnet-4-5-20250929": {"input": 3, "cacheWrite5m": 3.75, "cacheWrite1h": 6, "cachedInput": 0.30, "output": 15, "notes": "deprecated, retires 2026-11-30"}, | ||||
| 95 | + "claude-haiku-5-5": {"input": 0.10, "cacheWrite5m": 0.125, "cacheWrite1h": 0.20, "cachedInput": 0.01, "output": 0.50, "notes": "prompts >100K tokens: $0.50/$2.50"}, | ||||
| 96 | + "claude-haiku-4-5-20251001": {"input": 1, "cacheWrite5m": 1.25, "cacheWrite1h": 2, "cachedInput": 0.10, "output": 5} | ||||
| 97 | + } | ||||
| 98 | +} | ||||
added
benchmarks/routing-recommendations.json
+89 −0
@@ -0,0 +1,89 @@ | |||||
| 1 | +{ | ||||
| 2 | + "generatedAt": "2026-11-01T07:22:05.282Z", | ||||
| 3 | + "modes": { | ||||
| 4 | + "quality": [ | ||||
| 5 | + "claude-fable-5-1", | ||||
| 6 | + "gpt-6-astra", | ||||
| 7 | + "claude-fable-5" | ||||
| 8 | + ], | ||||
| 9 | + "fast": [ | ||||
| 10 | + "gpt-4.1", | ||||
| 11 | + "claude-haiku-5-5", | ||||
| 12 | + "gpt-5.4-mini" | ||||
| 13 | + ], | ||||
| 14 | + "economy": [ | ||||
| 15 | + "gpt-5-nano", | ||||
| 16 | + "claude-haiku-5-5", | ||||
| 17 | + "gpt-6-luna" | ||||
| 18 | + ] | ||||
| 19 | + }, | ||||
| 20 | + "byTask": { | ||||
| 21 | + "code": [ | ||||
| 22 | + "gpt-5-nano", | ||||
| 23 | + "claude-haiku-5-5", | ||||
| 24 | + "gpt-6-luna" | ||||
| 25 | + ], | ||||
| 26 | + "math": [ | ||||
| 27 | + "gpt-5-nano", | ||||
| 28 | + "claude-haiku-5-5", | ||||
| 29 | + "gpt-6-luna" | ||||
| 30 | + ], | ||||
| 31 | + "reasoning": [ | ||||
| 32 | + "gpt-5-nano", | ||||
| 33 | + "claude-haiku-5-5", | ||||
| 34 | + "gpt-6-luna" | ||||
| 35 | + ], | ||||
| 36 | + "french": [ | ||||
| 37 | + "gpt-5-nano", | ||||
| 38 | + "claude-haiku-5-5", | ||||
| 39 | + "gpt-6-luna" | ||||
| 40 | + ], | ||||
| 41 | + "vision": [ | ||||
| 42 | + "gpt-5-nano", | ||||
| 43 | + "claude-haiku-5-5", | ||||
| 44 | + "gpt-6-luna" | ||||
| 45 | + ], | ||||
| 46 | + "tools": [ | ||||
| 47 | + "gpt-5-nano", | ||||
| 48 | + "claude-haiku-5-5", | ||||
| 49 | + "gpt-6-luna" | ||||
| 50 | + ], | ||||
| 51 | + "json": [ | ||||
| 52 | + "gpt-5-nano", | ||||
| 53 | + "claude-haiku-5-5", | ||||
| 54 | + "gpt-6-luna" | ||||
| 55 | + ], | ||||
| 56 | + "longctx": [ | ||||
| 57 | + "gpt-5-nano", | ||||
| 58 | + "claude-haiku-5-5", | ||||
| 59 | + "gpt-6-luna" | ||||
| 60 | + ] | ||||
| 61 | + }, | ||||
| 62 | + "specialized": { | ||||
| 63 | + "imageGeneration": [ | ||||
| 64 | + "chatgpt-image-latest", | ||||
| 65 | + "gpt-image-1-mini", | ||||
| 66 | + "gpt-image-1.5", | ||||
| 67 | + "gpt-image-2", | ||||
| 68 | + "gpt-image-2.5-flare", | ||||
| 69 | + "gpt-image-2.5-sunburst" | ||||
| 70 | + ], | ||||
| 71 | + "tts": [ | ||||
| 72 | + "gpt-4o-mini-tts", | ||||
| 73 | + "tts-1", | ||||
| 74 | + "tts-1-hd" | ||||
| 75 | + ], | ||||
| 76 | + "stt": [ | ||||
| 77 | + "gpt-4o-mini-transcribe", | ||||
| 78 | + "gpt-4o-transcribe", | ||||
| 79 | + "gpt-4o-transcribe-diarize", | ||||
| 80 | + "gpt-transcribe", | ||||
| 81 | + "whisper-1" | ||||
| 82 | + ], | ||||
| 83 | + "embedding": [ | ||||
| 84 | + "text-embedding-3-large", | ||||
| 85 | + "text-embedding-3-small", | ||||
| 86 | + "text-embedding-ada-002" | ||||
| 87 | + ] | ||||
| 88 | + } | ||||
| 89 | +} | ||||
| \ No newline at end of file | |||||
added
benchmarks/routing-recommendations.md
+38 −0
@@ -0,0 +1,38 @@ | |||||
| 1 | +# Routing recommendations | ||||
| 2 | + | ||||
| 3 | +Derived mechanically from `capability-matrix.json` (2026-11-01T07:22:05.282Z). The in-app router uses the same data at runtime; the owner can override any choice. | ||||
| 4 | + | ||||
| 5 | +## Modes | ||||
| 6 | + | ||||
| 7 | +- **Quality** — highest quality score; ties broken by higher list price (assumption: the vendor's higher tier is stronger on tasks harder than this suite), then latency; *-pro models excluded (latency): `claude-fable-5-1` (100%, 1321 ms, $10 / $50), `gpt-6-astra` (100%, 2190 ms, $10 / $50), `claude-fable-5` (100%, 2691 ms, $10 / $50) | ||||
| 8 | +- **Fast** — lowest median latency among models scoring ≥ 89 %: `gpt-4.1` (89%, 704 ms, $2 / $8), `claude-haiku-5-5` (100%, 883 ms, $0.1 / $0.5), `gpt-5.4-mini` (89%, 888 ms, $0.75 / $4.5) | ||||
| 9 | +- **Economy** — cheapest blended price among models scoring 100 %: `gpt-5-nano` (100%, 3034 ms, $0.05 / $0.4), `claude-haiku-5-5` (100%, 883 ms, $0.1 / $0.5), `gpt-6-luna` (100%, 2005 ms, $0.1 / $0.5) | ||||
| 10 | +- **Automatic** — classify the task (code / math / vision / long document / general / French), pick the first candidate of the matching task list below that is available, fall back to the Quality list. | ||||
| 11 | + | ||||
| 12 | +## By task | ||||
| 13 | + | ||||
| 14 | +- **code**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 15 | +- **math**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 16 | +- **reasoning**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 17 | +- **french**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 18 | +- **vision**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 19 | +- **tools**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 20 | +- **json**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 21 | +- **longctx**: `gpt-5-nano`, `claude-haiku-5-5`, `gpt-6-luna` | ||||
| 22 | + | ||||
| 23 | +## Specialized | ||||
| 24 | + | ||||
| 25 | +- Image generation: `chatgpt-image-latest`, `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2.5-flare`, `gpt-image-2.5-sunburst` | ||||
| 26 | +- Text-to-speech: `gpt-4o-mini-tts`, `tts-1`, `tts-1-hd` | ||||
| 27 | +- Speech-to-text: `gpt-4o-mini-transcribe`, `gpt-4o-transcribe`, `gpt-4o-transcribe-diarize`, `gpt-transcribe`, `whisper-1` | ||||
| 28 | +- Embeddings (memory & semantic search): `text-embedding-3-large`, `text-embedding-3-small`, `text-embedding-ada-002` | ||||
| 29 | + | ||||
| 30 | +## Defaults proposed for the app | ||||
| 31 | + | ||||
| 32 | +- Default chat model: `claude-fable-5-1` | ||||
| 33 | +- Fast mode: `gpt-4.1` | ||||
| 34 | +- Economy mode: `gpt-5-nano` | ||||
| 35 | +- Title generation / memory extraction / classification (cheap, fast): `gpt-5-nano` | ||||
| 36 | +- Embeddings: `text-embedding-3-small` (1536 dims, verified) | ||||
| 37 | +- Image generation: `gpt-image-1.5` | ||||
| 38 | +- STT: `gpt-4o-mini-transcribe` · TTS: `gpt-4o-mini-tts` | ||||
added
benchmarks/vision-test.png
+0 −0
Binary file not shown.
added
db/migrations/001_init.sql
+311 −0
@@ -0,0 +1,311 @@ | |||||
| 1 | +-- Chat SPBoucher AI — initial schema (PostgreSQL 17 + pgvector) | ||||
| 2 | +CREATE EXTENSION IF NOT EXISTS vector; | ||||
| 3 | +CREATE EXTENSION IF NOT EXISTS pgcrypto; | ||||
| 4 | + | ||||
| 5 | +-- ---------------------------------------------------------------- owner & auth | ||||
| 6 | +CREATE TABLE IF NOT EXISTS owner ( | ||||
| 7 | + id smallint PRIMARY KEY DEFAULT 1 CHECK (id = 1), | ||||
| 8 | + username text NOT NULL, | ||||
| 9 | + password_hash text NOT NULL, -- argon2id | ||||
| 10 | + totp_secret text, -- optional 2FA (encrypted at rest by app key) | ||||
| 11 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 12 | + updated_at timestamptz NOT NULL DEFAULT now() | ||||
| 13 | +); | ||||
| 14 | + | ||||
| 15 | +CREATE TABLE IF NOT EXISTS sessions ( | ||||
| 16 | + id text PRIMARY KEY, -- sha256(token) | ||||
| 17 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 18 | + expires_at timestamptz NOT NULL, | ||||
| 19 | + last_seen timestamptz NOT NULL DEFAULT now(), | ||||
| 20 | + user_agent text, | ||||
| 21 | + ip text, | ||||
| 22 | + revoked_at timestamptz | ||||
| 23 | +); | ||||
| 24 | +CREATE INDEX IF NOT EXISTS sessions_expires_idx ON sessions (expires_at); | ||||
| 25 | + | ||||
| 26 | +CREATE TABLE IF NOT EXISTS login_attempts ( | ||||
| 27 | + id bigserial PRIMARY KEY, | ||||
| 28 | + ip text NOT NULL, | ||||
| 29 | + at timestamptz NOT NULL DEFAULT now(), | ||||
| 30 | + success boolean NOT NULL | ||||
| 31 | +); | ||||
| 32 | +CREATE INDEX IF NOT EXISTS login_attempts_ip_at_idx ON login_attempts (ip, at DESC); | ||||
| 33 | + | ||||
| 34 | +CREATE TABLE IF NOT EXISTS webauthn_credentials ( | ||||
| 35 | + id text PRIMARY KEY, | ||||
| 36 | + public_key bytea NOT NULL, | ||||
| 37 | + counter bigint NOT NULL DEFAULT 0, | ||||
| 38 | + transports text[], | ||||
| 39 | + label text, | ||||
| 40 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 41 | +); | ||||
| 42 | + | ||||
| 43 | +-- ---------------------------------------------------------------- settings (key/value) | ||||
| 44 | +CREATE TABLE IF NOT EXISTS settings ( | ||||
| 45 | + key text PRIMARY KEY, | ||||
| 46 | + value jsonb NOT NULL, | ||||
| 47 | + updated_at timestamptz NOT NULL DEFAULT now() | ||||
| 48 | +); | ||||
| 49 | + | ||||
| 50 | +-- ---------------------------------------------------------------- model registry | ||||
| 51 | +CREATE TABLE IF NOT EXISTS models ( | ||||
| 52 | + id text PRIMARY KEY, | ||||
| 53 | + provider text NOT NULL CHECK (provider IN ('openai','anthropic','local')), | ||||
| 54 | + display_name text NOT NULL, | ||||
| 55 | + kind text NOT NULL DEFAULT 'chat', -- chat | chat-pro | search | image | tts | stt | embedding | moderation | realtime | video | legacy-completion | deep-research | audio-chat | ||||
| 56 | + api text, -- responses | chat | messages | ||||
| 57 | + status text NOT NULL DEFAULT 'untested', -- verified | unavailable | unsupported | untested | ||||
| 58 | + available boolean NOT NULL DEFAULT false, | ||||
| 59 | + tested boolean NOT NULL DEFAULT false, | ||||
| 60 | + unavailable_reason text, | ||||
| 61 | + capabilities jsonb NOT NULL DEFAULT '{}'::jsonb, | ||||
| 62 | + context_window integer, | ||||
| 63 | + max_output_tokens integer, | ||||
| 64 | + pricing jsonb, | ||||
| 65 | + benchmark jsonb, | ||||
| 66 | + hidden boolean NOT NULL DEFAULT false, | ||||
| 67 | + favorite boolean NOT NULL DEFAULT false, | ||||
| 68 | + sort_order integer NOT NULL DEFAULT 0, | ||||
| 69 | + last_verified_at timestamptz, | ||||
| 70 | + first_seen_at timestamptz NOT NULL DEFAULT now(), | ||||
| 71 | + updated_at timestamptz NOT NULL DEFAULT now() | ||||
| 72 | +); | ||||
| 73 | + | ||||
| 74 | +-- ---------------------------------------------------------------- projects | ||||
| 75 | +CREATE TABLE IF NOT EXISTS projects ( | ||||
| 76 | + id text PRIMARY KEY, | ||||
| 77 | + name text NOT NULL, | ||||
| 78 | + description text, | ||||
| 79 | + instructions text, | ||||
| 80 | + default_model text, | ||||
| 81 | + color text, | ||||
| 82 | + icon text, | ||||
| 83 | + tool_permissions jsonb NOT NULL DEFAULT '{}'::jsonb, | ||||
| 84 | + notes text, | ||||
| 85 | + sort_order integer NOT NULL DEFAULT 0, | ||||
| 86 | + archived_at timestamptz, | ||||
| 87 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 88 | + updated_at timestamptz NOT NULL DEFAULT now() | ||||
| 89 | +); | ||||
| 90 | + | ||||
| 91 | +-- ---------------------------------------------------------------- conversations & messages | ||||
| 92 | +CREATE TABLE IF NOT EXISTS conversations ( | ||||
| 93 | + id text PRIMARY KEY, | ||||
| 94 | + project_id text REFERENCES projects(id) ON DELETE SET NULL, | ||||
| 95 | + title text NOT NULL DEFAULT 'Nouvelle conversation', | ||||
| 96 | + model_id text, | ||||
| 97 | + settings jsonb NOT NULL DEFAULT '{}'::jsonb, -- effort, routing mode, tools enabled, system override… | ||||
| 98 | + pinned boolean NOT NULL DEFAULT false, | ||||
| 99 | + archived_at timestamptz, | ||||
| 100 | + parent_id text REFERENCES conversations(id) ON DELETE SET NULL, -- branch origin | ||||
| 101 | + branch_message_id text, | ||||
| 102 | + mode text NOT NULL DEFAULT 'chat', -- chat | compare | research | ||||
| 103 | + message_count integer NOT NULL DEFAULT 0, | ||||
| 104 | + total_cost_usd numeric(12,6) NOT NULL DEFAULT 0, | ||||
| 105 | + last_message_at timestamptz, | ||||
| 106 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 107 | + updated_at timestamptz NOT NULL DEFAULT now(), | ||||
| 108 | + tsv tsvector | ||||
| 109 | +); | ||||
| 110 | +CREATE INDEX IF NOT EXISTS conversations_project_idx ON conversations (project_id); | ||||
| 111 | +CREATE INDEX IF NOT EXISTS conversations_updated_idx ON conversations (updated_at DESC); | ||||
| 112 | +CREATE INDEX IF NOT EXISTS conversations_tsv_idx ON conversations USING gin (tsv); | ||||
| 113 | + | ||||
| 114 | +CREATE TABLE IF NOT EXISTS messages ( | ||||
| 115 | + id text PRIMARY KEY, | ||||
| 116 | + conversation_id text NOT NULL REFERENCES conversations(id) ON DELETE CASCADE, | ||||
| 117 | + parent_id text REFERENCES messages(id) ON DELETE SET NULL, -- message tree (branching / regenerate) | ||||
| 118 | + role text NOT NULL CHECK (role IN ('user','assistant','system','tool')), | ||||
| 119 | + parts jsonb NOT NULL DEFAULT '[]'::jsonb, -- [{type:text|image|file|tool_call|tool_result|reasoning|artifact|citation,...}] | ||||
| 120 | + text text NOT NULL DEFAULT '', -- plain text (search + context) | ||||
| 121 | + model_id text, | ||||
| 122 | + provider text, | ||||
| 123 | + settings jsonb, -- effort/routing used for THIS response | ||||
| 124 | + routing jsonb, -- {mode, requested, selected, reason} | ||||
| 125 | + usage jsonb, -- {input, output, cached, reasoning} | ||||
| 126 | + cost_usd numeric(12,6), | ||||
| 127 | + latency_ms integer, | ||||
| 128 | + ttft_ms integer, | ||||
| 129 | + status text NOT NULL DEFAULT 'complete', -- streaming | complete | error | cancelled | ||||
| 130 | + error text, | ||||
| 131 | + active boolean NOT NULL DEFAULT true, -- false for superseded siblings (regenerate/edit) | ||||
| 132 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 133 | + tsv tsvector GENERATED ALWAYS AS (to_tsvector('simple', coalesce(text,''))) STORED | ||||
| 134 | +); | ||||
| 135 | +CREATE INDEX IF NOT EXISTS messages_conv_idx ON messages (conversation_id, created_at); | ||||
| 136 | +CREATE INDEX IF NOT EXISTS messages_parent_idx ON messages (parent_id); | ||||
| 137 | +CREATE INDEX IF NOT EXISTS messages_tsv_idx ON messages USING gin (tsv); | ||||
| 138 | + | ||||
| 139 | +CREATE TABLE IF NOT EXISTS message_embeddings ( | ||||
| 140 | + message_id text PRIMARY KEY REFERENCES messages(id) ON DELETE CASCADE, | ||||
| 141 | + embedding vector(1536) NOT NULL, | ||||
| 142 | + model text NOT NULL DEFAULT 'text-embedding-3-small', | ||||
| 143 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 144 | +); | ||||
| 145 | +CREATE INDEX IF NOT EXISTS message_embeddings_idx ON message_embeddings USING hnsw (embedding vector_cosine_ops); | ||||
| 146 | + | ||||
| 147 | +-- ---------------------------------------------------------------- attachments & document chunks | ||||
| 148 | +CREATE TABLE IF NOT EXISTS attachments ( | ||||
| 149 | + id text PRIMARY KEY, | ||||
| 150 | + conversation_id text REFERENCES conversations(id) ON DELETE SET NULL, | ||||
| 151 | + project_id text REFERENCES projects(id) ON DELETE SET NULL, | ||||
| 152 | + message_id text REFERENCES messages(id) ON DELETE SET NULL, | ||||
| 153 | + kind text NOT NULL DEFAULT 'upload', -- upload | generated-image | audio | export | ||||
| 154 | + filename text NOT NULL, | ||||
| 155 | + mime text NOT NULL, | ||||
| 156 | + size_bytes bigint NOT NULL, | ||||
| 157 | + path text NOT NULL, -- relative to DATA_DIR/uploads | ||||
| 158 | + sha256 text, | ||||
| 159 | + extracted_text text, | ||||
| 160 | + page_count integer, | ||||
| 161 | + meta jsonb NOT NULL DEFAULT '{}'::jsonb, | ||||
| 162 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 163 | +); | ||||
| 164 | +CREATE INDEX IF NOT EXISTS attachments_conv_idx ON attachments (conversation_id); | ||||
| 165 | +CREATE INDEX IF NOT EXISTS attachments_project_idx ON attachments (project_id); | ||||
| 166 | + | ||||
| 167 | +CREATE TABLE IF NOT EXISTS document_chunks ( | ||||
| 168 | + id bigserial PRIMARY KEY, | ||||
| 169 | + attachment_id text NOT NULL REFERENCES attachments(id) ON DELETE CASCADE, | ||||
| 170 | + idx integer NOT NULL, | ||||
| 171 | + page integer, | ||||
| 172 | + content text NOT NULL, | ||||
| 173 | + embedding vector(1536), | ||||
| 174 | + tsv tsvector GENERATED ALWAYS AS (to_tsvector('simple', content)) STORED | ||||
| 175 | +); | ||||
| 176 | +CREATE INDEX IF NOT EXISTS document_chunks_att_idx ON document_chunks (attachment_id, idx); | ||||
| 177 | +CREATE INDEX IF NOT EXISTS document_chunks_tsv_idx ON document_chunks USING gin (tsv); | ||||
| 178 | +CREATE INDEX IF NOT EXISTS document_chunks_emb_idx ON document_chunks USING hnsw (embedding vector_cosine_ops); | ||||
| 179 | + | ||||
| 180 | +-- ---------------------------------------------------------------- memory | ||||
| 181 | +CREATE TABLE IF NOT EXISTS memories ( | ||||
| 182 | + id text PRIMARY KEY, | ||||
| 183 | + category text NOT NULL DEFAULT 'context', -- preference | writing | research | project | infrastructure | objective | concept | context | ||||
| 184 | + content text NOT NULL, | ||||
| 185 | + source text NOT NULL DEFAULT 'manual', -- manual | extracted | imported | ||||
| 186 | + source_conversation_id text REFERENCES conversations(id) ON DELETE SET NULL, | ||||
| 187 | + source_message_id text REFERENCES messages(id) ON DELETE SET NULL, | ||||
| 188 | + project_id text REFERENCES projects(id) ON DELETE CASCADE, -- null = global | ||||
| 189 | + status text NOT NULL DEFAULT 'active', -- candidate | active | disabled | ||||
| 190 | + confidence real, | ||||
| 191 | + embedding vector(1536), | ||||
| 192 | + use_count integer NOT NULL DEFAULT 0, | ||||
| 193 | + last_used_at timestamptz, | ||||
| 194 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 195 | + updated_at timestamptz NOT NULL DEFAULT now(), | ||||
| 196 | + tsv tsvector GENERATED ALWAYS AS (to_tsvector('simple', content)) STORED | ||||
| 197 | +); | ||||
| 198 | +CREATE INDEX IF NOT EXISTS memories_status_idx ON memories (status); | ||||
| 199 | +CREATE INDEX IF NOT EXISTS memories_emb_idx ON memories USING hnsw (embedding vector_cosine_ops); | ||||
| 200 | +CREATE INDEX IF NOT EXISTS memories_tsv_idx ON memories USING gin (tsv); | ||||
| 201 | + | ||||
| 202 | +-- ---------------------------------------------------------------- artifacts | ||||
| 203 | +CREATE TABLE IF NOT EXISTS artifacts ( | ||||
| 204 | + id text PRIMARY KEY, | ||||
| 205 | + conversation_id text REFERENCES conversations(id) ON DELETE CASCADE, | ||||
| 206 | + message_id text REFERENCES messages(id) ON DELETE SET NULL, | ||||
| 207 | + project_id text REFERENCES projects(id) ON DELETE SET NULL, | ||||
| 208 | + root_id text, -- first version id | ||||
| 209 | + version integer NOT NULL DEFAULT 1, | ||||
| 210 | + type text NOT NULL, -- html | react | typescript | python | markdown | table | chart | svg | mermaid | math | code | ||||
| 211 | + language text, | ||||
| 212 | + title text NOT NULL, | ||||
| 213 | + content text NOT NULL, | ||||
| 214 | + saved boolean NOT NULL DEFAULT false, | ||||
| 215 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 216 | +); | ||||
| 217 | +CREATE INDEX IF NOT EXISTS artifacts_conv_idx ON artifacts (conversation_id); | ||||
| 218 | +CREATE INDEX IF NOT EXISTS artifacts_root_idx ON artifacts (root_id, version); | ||||
| 219 | + | ||||
| 220 | +-- ---------------------------------------------------------------- usage & spending | ||||
| 221 | +CREATE TABLE IF NOT EXISTS usage_events ( | ||||
| 222 | + id bigserial PRIMARY KEY, | ||||
| 223 | + at timestamptz NOT NULL DEFAULT now(), | ||||
| 224 | + provider text NOT NULL, | ||||
| 225 | + model_id text NOT NULL, | ||||
| 226 | + kind text NOT NULL DEFAULT 'chat', -- chat | compare | research | title | memory | embedding | image | tts | stt | judge | tool | ||||
| 227 | + conversation_id text, | ||||
| 228 | + project_id text, | ||||
| 229 | + message_id text, | ||||
| 230 | + input_tokens integer NOT NULL DEFAULT 0, | ||||
| 231 | + output_tokens integer NOT NULL DEFAULT 0, | ||||
| 232 | + cached_tokens integer NOT NULL DEFAULT 0, | ||||
| 233 | + reasoning_tokens integer NOT NULL DEFAULT 0, | ||||
| 234 | + cost_estimated numeric(12,6), | ||||
| 235 | + cost_confirmed numeric(12,6), -- filled when a provider billing export is imported | ||||
| 236 | + latency_ms integer, | ||||
| 237 | + ttft_ms integer, | ||||
| 238 | + status text NOT NULL DEFAULT 'ok', -- ok | error | cancelled | ||||
| 239 | + error text, | ||||
| 240 | + meta jsonb | ||||
| 241 | +); | ||||
| 242 | +CREATE INDEX IF NOT EXISTS usage_at_idx ON usage_events (at DESC); | ||||
| 243 | +CREATE INDEX IF NOT EXISTS usage_model_idx ON usage_events (model_id, at DESC); | ||||
| 244 | +CREATE INDEX IF NOT EXISTS usage_project_idx ON usage_events (project_id, at DESC); | ||||
| 245 | + | ||||
| 246 | +-- ---------------------------------------------------------------- comparisons & research | ||||
| 247 | +CREATE TABLE IF NOT EXISTS comparisons ( | ||||
| 248 | + id text PRIMARY KEY, | ||||
| 249 | + conversation_id text REFERENCES conversations(id) ON DELETE SET NULL, | ||||
| 250 | + project_id text REFERENCES projects(id) ON DELETE SET NULL, | ||||
| 251 | + prompt text NOT NULL, | ||||
| 252 | + model_ids text[] NOT NULL, | ||||
| 253 | + results jsonb NOT NULL DEFAULT '[]'::jsonb, -- [{modelId, text, usage, cost, latency, ttft, error}] | ||||
| 254 | + judge jsonb, -- {modelId, verdict, text} | ||||
| 255 | + preferred_model text, | ||||
| 256 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 257 | +); | ||||
| 258 | + | ||||
| 259 | +CREATE TABLE IF NOT EXISTS research_runs ( | ||||
| 260 | + id text PRIMARY KEY, | ||||
| 261 | + conversation_id text REFERENCES conversations(id) ON DELETE SET NULL, | ||||
| 262 | + project_id text REFERENCES projects(id) ON DELETE SET NULL, | ||||
| 263 | + question text NOT NULL, | ||||
| 264 | + model_id text NOT NULL, | ||||
| 265 | + status text NOT NULL DEFAULT 'planning', -- planning | searching | reading | synthesizing | complete | error | cancelled | ||||
| 266 | + plan jsonb, | ||||
| 267 | + steps jsonb NOT NULL DEFAULT '[]'::jsonb, | ||||
| 268 | + sources jsonb NOT NULL DEFAULT '[]'::jsonb, | ||||
| 269 | + report_md text, | ||||
| 270 | + cost_usd numeric(12,6) NOT NULL DEFAULT 0, | ||||
| 271 | + error text, | ||||
| 272 | + created_at timestamptz NOT NULL DEFAULT now(), | ||||
| 273 | + completed_at timestamptz | ||||
| 274 | +); | ||||
| 275 | + | ||||
| 276 | +-- ---------------------------------------------------------------- tool executions (audit log) | ||||
| 277 | +CREATE TABLE IF NOT EXISTS tool_executions ( | ||||
| 278 | + id text PRIMARY KEY, | ||||
| 279 | + conversation_id text, | ||||
| 280 | + message_id text, | ||||
| 281 | + tool text NOT NULL, | ||||
| 282 | + input jsonb, | ||||
| 283 | + output jsonb, | ||||
| 284 | + status text NOT NULL, -- pending_approval | approved | denied | ok | error | ||||
| 285 | + duration_ms integer, | ||||
| 286 | + created_at timestamptz NOT NULL DEFAULT now() | ||||
| 287 | +); | ||||
| 288 | +CREATE INDEX IF NOT EXISTS tool_exec_conv_idx ON tool_executions (conversation_id, created_at DESC); | ||||
| 289 | + | ||||
| 290 | +-- ---------------------------------------------------------------- triggers | ||||
| 291 | +CREATE OR REPLACE FUNCTION conversations_tsv_update() RETURNS trigger AS $$ | ||||
| 292 | +BEGIN NEW.tsv := to_tsvector('simple', coalesce(NEW.title,'')); RETURN NEW; END $$ LANGUAGE plpgsql; | ||||
| 293 | +DROP TRIGGER IF EXISTS conversations_tsv_trg ON conversations; | ||||
| 294 | +CREATE TRIGGER conversations_tsv_trg BEFORE INSERT OR UPDATE OF title ON conversations FOR EACH ROW EXECUTE FUNCTION conversations_tsv_update(); | ||||
| 295 | + | ||||
| 296 | +CREATE OR REPLACE FUNCTION touch_updated_at() RETURNS trigger AS $$ | ||||
| 297 | +BEGIN NEW.updated_at := now(); RETURN NEW; END $$ LANGUAGE plpgsql; | ||||
| 298 | +DROP TRIGGER IF EXISTS conversations_touch ON conversations; | ||||
| 299 | +CREATE TRIGGER conversations_touch BEFORE UPDATE ON conversations FOR EACH ROW EXECUTE FUNCTION touch_updated_at(); | ||||
| 300 | +DROP TRIGGER IF EXISTS projects_touch ON projects; | ||||
| 301 | +CREATE TRIGGER projects_touch BEFORE UPDATE ON projects FOR EACH ROW EXECUTE FUNCTION touch_updated_at(); | ||||
| 302 | +DROP TRIGGER IF EXISTS memories_touch ON memories; | ||||
| 303 | +CREATE TRIGGER memories_touch BEFORE UPDATE ON memories FOR EACH ROW EXECUTE FUNCTION touch_updated_at(); | ||||
| 304 | + | ||||
| 305 | +-- default settings | ||||
| 306 | +INSERT INTO settings (key, value) VALUES | ||||
| 307 | + ('memory', '{"enabled": true, "autoExtract": true, "requireApproval": false}'), | ||||
| 308 | + ('spending', '{"dailyLimitUsd": 10, "monthlyLimitUsd": 150, "alertAtPercent": 80}'), | ||||
| 309 | + ('routing', '{"defaultMode": "manual"}'), | ||||
| 310 | + ('appearance', '{"theme": "dark"}') | ||||
| 311 | +ON CONFLICT (key) DO NOTHING; | ||||
added
eslint.config.mjs
+18 −0
@@ -0,0 +1,18 @@ | |||||
| 1 | +import { defineConfig, globalIgnores } from "eslint/config"; | ||||
| 2 | +import nextVitals from "eslint-config-next/core-web-vitals"; | ||||
| 3 | +import nextTs from "eslint-config-next/typescript"; | ||||
| 4 | + | ||||
| 5 | +const eslintConfig = defineConfig([ | ||||
| 6 | + ...nextVitals, | ||||
| 7 | + ...nextTs, | ||||
| 8 | + // Override default ignores of eslint-config-next. | ||||
| 9 | + globalIgnores([ | ||||
| 10 | + // Default ignores of eslint-config-next: | ||||
| 11 | + ".next/**", | ||||
| 12 | + "out/**", | ||||
| 13 | + "build/**", | ||||
| 14 | + "next-env.d.ts", | ||||
| 15 | + ]), | ||||
| 16 | +]); | ||||
| 17 | + | ||||
| 18 | +export default eslintConfig; | ||||
added
next-env.d.ts
+6 −0
@@ -0,0 +1,6 @@ | |||||
| 1 | +/// <reference types="next" /> | ||||
| 2 | +/// <reference types="next/image-types/global" /> | ||||
| 3 | +import "./.next/types/routes.d.ts"; | ||||
| 4 | + | ||||
| 5 | +// NOTE: This file should not be edited | ||||
| 6 | +// see https://nextjs.org/docs/app/api-reference/config/typescript for more information. | ||||
added
next.config.ts
+17 −0
@@ -0,0 +1,17 @@ | |||||
| 1 | +import type { NextConfig } from "next"; | ||||
| 2 | + | ||||
| 3 | +const nextConfig: NextConfig = { | ||||
| 4 | + /* config options here */ | ||||
| 5 | + cacheComponents: true, | ||||
| 6 | + partialPrefetching: true, | ||||
| 7 | + turbopack: { | ||||
| 8 | + rules: { | ||||
| 9 | + "*.css": { | ||||
| 10 | + loaders: ["@tailwindcss/turbopack"], | ||||
| 11 | + as: "*.css", | ||||
| 12 | + }, | ||||
| 13 | + }, | ||||
| 14 | + }, | ||||
| 15 | +}; | ||||
| 16 | + | ||||
| 17 | +export default nextConfig; | ||||
added
package.json
+63 −0
@@ -0,0 +1,63 @@ | |||||
| 1 | +{ | ||||
| 2 | + "name": "chat-spboucher-ai", | ||||
| 3 | + "version": "0.1.0", | ||||
| 4 | + "private": true, | ||||
| 5 | + "type": "module", | ||||
| 6 | + "scripts": { | ||||
| 7 | + "dev": "next dev -p 8500", | ||||
| 8 | + "build": "next build", | ||||
| 9 | + "start": "next start -p 8500", | ||||
| 10 | + "lint": "eslint", | ||||
| 11 | + "db:migrate": "tsx scripts/db/migrate.ts", | ||||
| 12 | + "setup:owner": "tsx scripts/setup-owner.ts", | ||||
| 13 | + "bench": "tsx scripts/benchmarks/run.ts", | ||||
| 14 | + "bench:discover": "tsx scripts/benchmarks/discover.ts", | ||||
| 15 | + "bench:modalities": "tsx scripts/benchmarks/modalities.ts", | ||||
| 16 | + "bench:report": "tsx scripts/benchmarks/report.ts", | ||||
| 17 | + "registry:refresh": "tsx scripts/registry-refresh.ts" | ||||
| 18 | + }, | ||||
| 19 | + "dependencies": { | ||||
| 20 | + "@anthropic-ai/sdk": "^1.3.0", | ||||
| 21 | + "@node-rs/argon2": "^2.2.2", | ||||
| 22 | + "@types/node": "^26.6.6", | ||||
| 23 | + "@types/pngjs": "^6.0.5", | ||||
| 24 | + "clsx": "^2.1.1", | ||||
| 25 | + "date-fns": "^4.4.0", | ||||
| 26 | + "docx": "^9.15.0", | ||||
| 27 | + "highlight.js": "^11.12.0", | ||||
| 28 | + "katex": "^0.19.1", | ||||
| 29 | + "lucide-react": "^1.66.0", | ||||
| 30 | + "mammoth": "^1.13.0", | ||||
| 31 | + "mermaid": "^12.2.0", | ||||
| 32 | + "mime": "^4.1.2", | ||||
| 33 | + "nanoid": "^6.0.2", | ||||
| 34 | + "next": "16.4.3", | ||||
| 35 | + "openai": "^7.47.0", | ||||
| 36 | + "pdf-parse": "^2.4.5", | ||||
| 37 | + "pngjs": "^7.0.0", | ||||
| 38 | + "postgres": "^4.0.0", | ||||
| 39 | + "react": "19.3.0", | ||||
| 40 | + "react-dom": "19.3.0", | ||||
| 41 | + "react-markdown": "^10.1.0", | ||||
| 42 | + "recharts": "^3.10.1", | ||||
| 43 | + "rehype-highlight": "^7.0.2", | ||||
| 44 | + "rehype-katex": "^7.0.1", | ||||
| 45 | + "remark-gfm": "^4.0.1", | ||||
| 46 | + "remark-math": "^6.0.0", | ||||
| 47 | + "swr": "^2.5.1", | ||||
| 48 | + "tsx": "^4.23.15", | ||||
| 49 | + "typescript": "^7.0.2", | ||||
| 50 | + "xlsx": "^0.18.5", | ||||
| 51 | + "zod": "^4.6.7" | ||||
| 52 | + }, | ||||
| 53 | + "packageManager": "pnpm@11.1.2", | ||||
| 54 | + "devDependencies": { | ||||
| 55 | + "@tailwindcss/postcss": "^4.3.3", | ||||
| 56 | + "@types/pdf-parse": "^1.1.5", | ||||
| 57 | + "@types/react": "^19.3.0", | ||||
| 58 | + "@types/react-dom": "^19.3.0", | ||||
| 59 | + "eslint": "^10.14.0", | ||||
| 60 | + "eslint-config-next": "16.4.3", | ||||
| 61 | + "tailwindcss": "^4.3.3" | ||||
| 62 | + } | ||||
| 63 | +} | ||||
| \ No newline at end of file | |||||
added
pnpm-lock.yaml
+4610 −0
@@ -0,0 +1,7473 @@ | |||||
| 1 | +lockfileVersion: '9.0' | ||||
| 2 | + | ||||
| 3 | +settings: | ||||
| 4 | + autoInstallPeers: true | ||||
| 5 | + excludeLinksFromLockfile: false | ||||
| 6 | + | ||||
| 7 | +importers: | ||||
| 8 | + | ||||
| 9 | + .: | ||||
| 10 | + dependencies: | ||||
| 11 | + '@anthropic-ai/sdk': | ||||
| 12 | + specifier: ^1.3.0 | ||||
| 13 | + version: 1.3.0(zod@4.6.7) | ||||
| 14 | + '@node-rs/argon2': | ||||
| 15 | + specifier: ^2.2.2 | ||||
| 16 | + version: 2.2.2 | ||||
| 17 | + '@types/node': | ||||
| 18 | + specifier: ^26.6.6 | ||||
| 19 | + version: 26.6.6 | ||||
| 20 | + '@types/pngjs': | ||||
| 21 | + specifier: ^6.0.5 | ||||
| 22 | + version: 6.0.5 | ||||
| 23 | + clsx: | ||||
| 24 | + specifier: ^2.1.1 | ||||
| 25 | + version: 2.1.1 | ||||
| 26 | + date-fns: | ||||
| 27 | + specifier: ^4.4.0 | ||||
| 28 | + version: 4.4.0 | ||||
| 29 | + docx: | ||||
| 30 | + specifier: ^9.15.0 | ||||
| 31 | + version: 9.15.0 | ||||
| 32 | + highlight.js: | ||||
| 33 | + specifier: ^11.12.0 | ||||
| 34 | + version: 11.12.0 | ||||
| 35 | + katex: | ||||
| 36 | + specifier: ^0.19.1 | ||||
| 37 | + version: 0.19.1 | ||||
| 38 | + lucide-react: | ||||
| 39 | + specifier: ^1.66.0 | ||||
| 40 | + version: 1.66.0(@types/react@19.3.0)(react@19.3.0) | ||||
| 41 | + mammoth: | ||||
| 42 | + specifier: ^1.13.0 | ||||
| 43 | + version: 1.13.0 | ||||
| 44 | + mermaid: | ||||
| 45 | + specifier: ^12.2.0 | ||||
| 46 | + version: 12.2.0 | ||||
| 47 | + mime: | ||||
| 48 | + specifier: ^4.1.2 | ||||
| 49 | + version: 4.1.2 | ||||
| 50 | + nanoid: | ||||
| 51 | + specifier: ^6.0.2 | ||||
| 52 | + version: 6.0.2 | ||||
| 53 | + next: | ||||
| 54 | + specifier: 16.4.3 | ||||
| 55 | + version: 16.4.3(@babel/core@7.29.7)(@opentelemetry/api@1.10.0)(@types/node@26.6.6)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) | ||||
| 56 | + openai: | ||||
| 57 | + specifier: ^7.47.0 | ||||
| 58 | + version: 7.47.0(zod@4.6.7) | ||||
| 59 | + pdf-parse: | ||||
| 60 | + specifier: ^2.4.5 | ||||
| 61 | + version: 2.4.5 | ||||
| 62 | + pngjs: | ||||
| 63 | + specifier: ^7.0.0 | ||||
| 64 | + version: 7.0.0 | ||||
| 65 | + postgres: | ||||
| 66 | + specifier: ^4.0.0 | ||||
| 67 | + version: 4.0.0 | ||||
| 68 | + react: | ||||
| 69 | + specifier: 19.3.0 | ||||
| 70 | + version: 19.3.0 | ||||
| 71 | + react-dom: | ||||
| 72 | + specifier: 19.3.0 | ||||
| 73 | + version: 19.3.0(react@19.3.0) | ||||
| 74 | + react-markdown: | ||||
| 75 | + specifier: ^10.1.0 | ||||
| 76 | + version: 10.1.0(@types/react@19.3.0)(react@19.3.0) | ||||
| 77 | + recharts: | ||||
| 78 | + specifier: ^3.10.1 | ||||
| 79 | + version: 3.10.1(@types/react@19.3.0)(react-dom@19.3.0(react@19.3.0))(react-is@16.13.1)(react@19.3.0)(redux@5.0.1) | ||||
| 80 | + rehype-highlight: | ||||
| 81 | + specifier: ^7.0.2 | ||||
| 82 | + version: 7.0.2 | ||||
| 83 | + rehype-katex: | ||||
| 84 | + specifier: ^7.0.1 | ||||
| 85 | + version: 7.0.1 | ||||
| 86 | + remark-gfm: | ||||
| 87 | + specifier: ^4.0.1 | ||||
| 88 | + version: 4.0.1 | ||||
| 89 | + remark-math: | ||||
| 90 | + specifier: ^6.0.0 | ||||
| 91 | + version: 6.0.0 | ||||
| 92 | + swr: | ||||
| 93 | + specifier: ^2.5.1 | ||||
| 94 | + version: 2.5.1(react@19.3.0) | ||||
| 95 | + tsx: | ||||
| 96 | + specifier: ^4.23.15 | ||||
| 97 | + version: 4.23.15 | ||||
| 98 | + typescript: | ||||
| 99 | + specifier: ^7.0.2 | ||||
| 100 | + version: 7.0.2 | ||||
| 101 | + xlsx: | ||||
| 102 | + specifier: ^0.18.5 | ||||
| 103 | + version: 0.18.5 | ||||
| 104 | + zod: | ||||
| 105 | + specifier: ^4.6.7 | ||||
| 106 | + version: 4.6.7 | ||||
| 107 | + devDependencies: | ||||
| 108 | + '@tailwindcss/postcss': | ||||
| 109 | + specifier: ^4.3.3 | ||||
| 110 | + version: 4.3.3 | ||||
| 111 | + '@types/pdf-parse': | ||||
| 112 | + specifier: ^1.1.5 | ||||
| 113 | + version: 1.1.5 | ||||
| 114 | + '@types/react': | ||||
| 115 | + specifier: ^19.3.0 | ||||
| 116 | + version: 19.3.0 | ||||
| 117 | + '@types/react-dom': | ||||
| 118 | + specifier: ^19.3.0 | ||||
| 119 | + version: 19.3.0(@types/react@19.3.0) | ||||
| 120 | + eslint: | ||||
| 121 | + specifier: ^10.14.0 | ||||
| 122 | + version: 10.14.0(jiti@2.7.0) | ||||
| 123 | + eslint-config-next: | ||||
| 124 | + specifier: 16.4.3 | ||||
| 125 | + version: 16.4.3(@typescript-eslint/parser@8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2))(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2) | ||||
| 126 | + tailwindcss: | ||||
| 127 | + specifier: ^4.3.3 | ||||
| 128 | + version: 4.3.3 | ||||
| 129 | + | ||||
| 130 | +packages: | ||||
| 131 | + | ||||
| 132 | + '@alloc/quick-lru@5.3.0': | ||||
| 133 | + resolution: {integrity: sha512-U4+70Pc5ZS9osnCBCE5Jha/ciHM+Yp+CNMNC/7HvYbNRk1Ldd+f7qO65W5qfhu/TCv+/ozljlXXe9Nj8419DMA==} | ||||
| 134 | + engines: {node: '>=10'} | ||||
| 135 | + | ||||
| 136 | + '@antfu/install-pkg@2.1.0': | ||||
| 137 | + resolution: {integrity: sha512-sdg9NxU3zR4Mnawfbc/x6GB5Wf17WYud5qOuEuxXjaKpYpMkISSJEjItGebXJ2bQ4DIcly4NYH23mtkGJjvKUw==} | ||||
| 138 | + | ||||
| 139 | + '@anthropic-ai/sdk@1.3.0': | ||||
| 140 | + resolution: {integrity: sha512-k7z9BlLLPxfZH+ov7dS6EnaN/wiZeV8YNT1LZfrpAHIy7oY7pHr4UzirF9f2OlHtFEnRBOX+AZQ91Y5fK+TPTw==} | ||||
| 141 | + hasBin: true | ||||
| 142 | + peerDependencies: | ||||
| 143 | + zod: ^3.25.0 || ^4.0.0 | ||||
| 144 | + peerDependenciesMeta: | ||||
| 145 | + zod: | ||||
| 146 | + optional: true | ||||
| 147 | + | ||||
| 148 | + '@babel/code-frame@7.29.7': | ||||
| 149 | + resolution: {integrity: sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==} | ||||
| 150 | + engines: {node: '>=6.9.0'} | ||||
| 151 | + | ||||
| 152 | + '@babel/compat-data@7.29.7': | ||||
| 153 | + resolution: {integrity: sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==} | ||||
| 154 | + engines: {node: '>=6.9.0'} | ||||
| 155 | + | ||||
| 156 | + '@babel/core@7.29.7': | ||||
| 157 | + resolution: {integrity: sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==} | ||||
| 158 | + engines: {node: '>=6.9.0'} | ||||
| 159 | + | ||||
| 160 | + '@babel/generator@7.29.12': | ||||
| 161 | + resolution: {integrity: sha512-2W76mhjrpQFO1lK5e8IvGYB2D0YZ7S2R1Z2BjO2ZUYuW+amcpK/z60U6ZZmzskwoa7sJ6XohP/Wg8H5KxXI/IA==} | ||||
| 162 | + engines: {node: '>=6.9.0'} | ||||
| 163 | + | ||||
| 164 | + '@babel/helper-compilation-targets@7.29.7': | ||||
| 165 | + resolution: {integrity: sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==} | ||||
| 166 | + engines: {node: '>=6.9.0'} | ||||
| 167 | + | ||||
| 168 | + '@babel/helper-globals@7.29.7': | ||||
| 169 | + resolution: {integrity: sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==} | ||||
| 170 | + engines: {node: '>=6.9.0'} | ||||
| 171 | + | ||||
| 172 | + '@babel/helper-module-imports@7.29.7': | ||||
| 173 | + resolution: {integrity: sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==} | ||||
| 174 | + engines: {node: '>=6.9.0'} | ||||
| 175 | + | ||||
| 176 | + '@babel/helper-module-transforms@7.29.7': | ||||
| 177 | + resolution: {integrity: sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==} | ||||
| 178 | + engines: {node: '>=6.9.0'} | ||||
| 179 | + peerDependencies: | ||||
| 180 | + '@babel/core': ^7.0.0 | ||||
| 181 | + | ||||
| 182 | + '@babel/helper-string-parser@7.29.11': | ||||
| 183 | + resolution: {integrity: sha512-snZbO7MEDOof+hvNa97EjEY7qD7h2kwvQr5AJC3ZhQudKW5dnej6k3kP9NQV88hJwaS8vDqRLFo9rivLEhle2g==} | ||||
| 184 | + engines: {node: '>=6.9.0'} | ||||
| 185 | + | ||||
| 186 | + '@babel/helper-validator-identifier@7.29.7': | ||||
| 187 | + resolution: {integrity: sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==} | ||||
| 188 | + engines: {node: '>=6.9.0'} | ||||
| 189 | + | ||||
| 190 | + '@babel/helper-validator-option@7.29.7': | ||||
| 191 | + resolution: {integrity: sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==} | ||||
| 192 | + engines: {node: '>=6.9.0'} | ||||
| 193 | + | ||||
| 194 | + '@babel/helpers@7.29.10': | ||||
| 195 | + resolution: {integrity: sha512-EMCx3AGZ3WfAl6ht7AyQoPm2Lh+BGYEMdc4Q6Hf7uSCDOZFuLq44qNwL+iaim8VlyYhRAo4X43+weadK8ZB4Yg==} | ||||
| 196 | + engines: {node: '>=6.9.0'} | ||||
| 197 | + | ||||
| 198 | + '@babel/parser@7.29.12': | ||||
| 199 | + resolution: {integrity: sha512-WJ7JBp/Q4+z/ImydtI7jS6NVco5++632ExBemSX+Ysb+G1lCwQ5BVo3SY+jGGOcZXI4ZccbZSUSJLNBW6eEpJg==} | ||||
| 200 | + engines: {node: '>=6.0.0'} | ||||
| 201 | + hasBin: true | ||||
| 202 | + | ||||
| 203 | + '@babel/runtime@7.29.10': | ||||
| 204 | + resolution: {integrity: sha512-NpugTzbKgGrNe45Ui32cN8vCFFMxVtP/9rtfwv0nP5FRDAjvYBxJcLVpYA9mr1jxP6cnIT7x9LUzuDTbWYYNRA==} | ||||
| 205 | + engines: {node: '>=6.9.0'} | ||||
| 206 | + | ||||
| 207 | + '@babel/template@7.29.7': | ||||
| 208 | + resolution: {integrity: sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==} | ||||
| 209 | + engines: {node: '>=6.9.0'} | ||||
| 210 | + | ||||
| 211 | + '@babel/traverse@7.29.12': | ||||
| 212 | + resolution: {integrity: sha512-MscXe/NAZcOkYEsRajHZFt3ynsb22PUi6CTrp5U7+RYycR9By84mn9mFN54YgfITiqK4hFx3Ju3tZSyzfpS5ew==} | ||||
| 213 | + engines: {node: '>=6.9.0'} | ||||
| 214 | + | ||||
| 215 | + '@babel/types@7.29.11': | ||||
| 216 | + resolution: {integrity: sha512-WCsemW40Cpc6gouC1SrY6PBaZ+oLRlEVY9XBvZBI7il/HyUrb2nJ505wE1MHEFyDZNnrWDEuy4jL50WVHfTTSQ==} | ||||
| 217 | + engines: {node: '>=6.9.0'} | ||||
| 218 | + | ||||
| 219 | + '@braintree/sanitize-url@7.1.2': | ||||
| 220 | + resolution: {integrity: sha512-jigsZK+sMF/cuiB7sERuo9V7N9jx+dhmHHnQyDSVdpZwVutaBu7WvNYqMDLSgFgfB30n452TP3vjDAvFC973mA==} | ||||
| 221 | + | ||||
| 222 | + '@cacheable/memory@2.2.0': | ||||
| 223 | + resolution: {integrity: sha512-CTLKqLItRCEixEAewD3/j9DB3/o96gpTPD4eJ1v+DGOlxZRZncRQkGYqqnAGCscYd6RNeXfGeiuCphsPtqyIfQ==} | ||||
| 224 | + | ||||
| 225 | + '@cacheable/utils@2.5.0': | ||||
| 226 | + resolution: {integrity: sha512-buipgOVDkkPXNR5+xBpDw7Zk2n1EvU7qBJCNUcL7rhQ//kfpOXPAvQ511Os0vpLYJ1pZnvudNytkQt2hst3wqA==} | ||||
| 227 | + | ||||
| 228 | + '@chevrotain/cst-dts-gen@13.2.0': | ||||
| 229 | + resolution: {integrity: sha512-bA9dvWlhAUcHkNwU+8w9yiUxJPlj/Lm3VqS7MD+NbIR/7LmpNLuK/AWNFdCo/T3SK5ND0/UHf3IJvl/Jn/i6yg==} | ||||
| 230 | + | ||||
| 231 | + '@chevrotain/gast@13.2.0': | ||||
| 232 | + resolution: {integrity: sha512-bCARdAsG+eEbOveSXcOAC7pVxA04I1ionzeMOwIYf5NX7SaS7zgn4Dgug2BSqoL+iyKeMNSorQjsFSHJHsCNwg==} | ||||
| 233 | + | ||||
| 234 | + '@chevrotain/regexp-to-ast@13.2.0': | ||||
| 235 | + resolution: {integrity: sha512-kxpUkLtiaK09ph+dib+Yvm+3sWSnuwlo25gqfKRgTPNmF6H7uW4gVkMjaRdtnN783S9sM6vUNWh9CsxYX4QwKw==} | ||||
| 236 | + | ||||
| 237 | + '@chevrotain/types@13.2.0': | ||||
| 238 | + resolution: {integrity: sha512-7qrYHRlKfWf2AvBfJi5eVOrKAkbxvMFsy/iIHTGIiApNcEecCaVIdR+mIQhyCBsTDJxBz4JWXHMo6krbhR9hVg==} | ||||
| 239 | + | ||||
| 240 | + '@chevrotain/utils@13.2.0': | ||||
| 241 | + resolution: {integrity: sha512-SzKYY68rseOrb9KILVzPsl6SjkQtdWw01SRGB5aCVI5kFcHltQsOYV3JB0Ffst72DgkvHCyDQ0NLwxtmCCf97Q==} | ||||
| 242 | + | ||||
| 243 | + '@emnapi/core@1.10.0': | ||||
| 244 | + resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==} | ||||
| 245 | + | ||||
| 246 | + '@emnapi/runtime@1.10.0': | ||||
| 247 | + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} | ||||
| 248 | + | ||||
| 249 | + '@emnapi/runtime@1.11.3': | ||||
| 250 | + resolution: {integrity: sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==} | ||||
| 251 | + | ||||
| 252 | + '@emnapi/wasi-threads@1.2.1': | ||||
| 253 | + resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==} | ||||
| 254 | + | ||||
| 255 | + '@esbuild/aix-ppc64@0.28.2': | ||||
| 256 | + resolution: {integrity: sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==} | ||||
| 257 | + engines: {node: '>=18'} | ||||
| 258 | + cpu: [ppc64] | ||||
| 259 | + os: [aix] | ||||
| 260 | + | ||||
| 261 | + '@esbuild/android-arm64@0.28.2': | ||||
| 262 | + resolution: {integrity: sha512-5YfKeeI8qWfBZIX+u2xZC3Zlb3Os/gLS2sbEKM+I4ZOcsWmHS2WLysCcQZDAFRslDUU5Oiq44gf6PYN1vGwG5A==} | ||||
| 263 | + engines: {node: '>=18'} | ||||
| 264 | + cpu: [arm64] | ||||
| 265 | + os: [android] | ||||
| 266 | + | ||||
| 267 | + '@esbuild/android-arm@0.28.2': | ||||
| 268 | + resolution: {integrity: sha512-kXXoiPVVGQcnIYGOeaovwOURpniDBpSq4A03qkQ+BMQqtGG6HYap3xne9C1O1yo4TR3qxlCX5IqqmX6fFo2Lqg==} | ||||
| 269 | + engines: {node: '>=18'} | ||||
| 270 | + cpu: [arm] | ||||
| 271 | + os: [android] | ||||
| 272 | + | ||||
| 273 | + '@esbuild/android-x64@0.28.2': | ||||
| 274 | + resolution: {integrity: sha512-O387ite7SzUyCcy3JQX4P4bLtEA7bLLkx+esve5JHnyYfNTxcVpXZo9jhdB0lTKN44gztELTdU7nS8Nr16Fs1Q==} | ||||
| 275 | + engines: {node: '>=18'} | ||||
| 276 | + cpu: [x64] | ||||
| 277 | + os: [android] | ||||
| 278 | + | ||||
| 279 | + '@esbuild/darwin-arm64@0.28.2': | ||||
| 280 | + resolution: {integrity: sha512-n4KqkOQrraxHJcgjM1RvwbigfQKIKJVpM7xp+KsxiyUSrRdIXnt73VhrPAx0fV44hgfmIVKjxMN9J1t5jySVkw==} | ||||
| 281 | + engines: {node: '>=18'} | ||||
| 282 | + cpu: [arm64] | ||||
| 283 | + os: [darwin] | ||||
| 284 | + | ||||
| 285 | + '@esbuild/darwin-x64@0.28.2': | ||||
| 286 | + resolution: {integrity: sha512-uq6suIWYP37qzGddBKPw5QEQPi6HiLGsO7UmkpfyaYNQ3D+rN6w6WfwH+nuqcGXWvawGwxOEroO4YGnFh95azw==} | ||||
| 287 | + engines: {node: '>=18'} | ||||
| 288 | + cpu: [x64] | ||||
| 289 | + os: [darwin] | ||||
| 290 | + | ||||
| 291 | + '@esbuild/freebsd-arm64@0.28.2': | ||||
| 292 | + resolution: {integrity: sha512-n+I0BTSRIoy+d6RPKnEVwql5UwBJolytvY4mAOIEJorKlqgPII8ix6slVVrfZ5Tnj7glIZvloylbB/EJPMWEXw==} | ||||
| 293 | + engines: {node: '>=18'} | ||||
| 294 | + cpu: [arm64] | ||||
| 295 | + os: [freebsd] | ||||
| 296 | + | ||||
| 297 | + '@esbuild/freebsd-x64@0.28.2': | ||||
| 298 | + resolution: {integrity: sha512-78XJTJkvPs0kz2w61301PJjXl4g7q3JqiYMZ/M/yVI73EHBrCRTgkhu9oqG7vPqq+a/yadEW8aD+agKlk5xrmg==} | ||||
| 299 | + engines: {node: '>=18'} | ||||
| 300 | + cpu: [x64] | ||||
| 301 | + os: [freebsd] | ||||
| 302 | + | ||||
| 303 | + '@esbuild/linux-arm64@0.28.2': | ||||
| 304 | + resolution: {integrity: sha512-pW4AC0P3it8c7do9MVM4p51FzHzdM/TZrerurgRcHJ2WTa1VQ1CIq18xncfpBJw4ojkiZZrKW2yIBWBP92j6Ug==} | ||||
| 305 | + engines: {node: '>=18'} | ||||
| 306 | + cpu: [arm64] | ||||
| 307 | + os: [linux] | ||||
| 308 | + | ||||
| 309 | + '@esbuild/linux-arm@0.28.2': | ||||
| 310 | + resolution: {integrity: sha512-XlDnu2q5yoqems+xay6wSAcg9DDD7K9RLKZEBOMZm3ckNpJBvOX20tSfby8KfrrhINDyv9V2YVZKY/SpoGJI8w==} | ||||
| 311 | + engines: {node: '>=18'} | ||||
| 312 | + cpu: [arm] | ||||
| 313 | + os: [linux] | ||||
| 314 | + | ||||
| 315 | + '@esbuild/linux-ia32@0.28.2': | ||||
| 316 | + resolution: {integrity: sha512-CYbnj78HsIeA+DhgUKgFCfvNsTHFhMMrinUrMZpDXJXKN8T3XViTZ/+wtHeVxEWY8ewSzTFN+nRmSwO2tZaLUQ==} | ||||
| 317 | + engines: {node: '>=18'} | ||||
| 318 | + cpu: [ia32] | ||||
| 319 | + os: [linux] | ||||
| 320 | + | ||||
| 321 | + '@esbuild/linux-loong64@0.28.2': | ||||
| 322 | + resolution: {integrity: sha512-buwkd8nsph4R+ajRvw0qM5Hja/TXQow3ptzWO2EbG/cqcIkHloRrdlBtQlshyYGTNFvfkfJ5tpPLVkY4DtsPfQ==} | ||||
| 323 | + engines: {node: '>=18'} | ||||
| 324 | + cpu: [loong64] | ||||
| 325 | + os: [linux] | ||||
| 326 | + | ||||
| 327 | + '@esbuild/linux-mips64el@0.28.2': | ||||
| 328 | + resolution: {integrity: sha512-ZVykbDyk7519VwiNb9Lcj9m8XM6v5V9uKPvrEMkkEedVewf+0itkhahp4HDpgERXhwLRpWFypsGbG/J8s0QjJA==} | ||||
| 329 | + engines: {node: '>=18'} | ||||
| 330 | + cpu: [mips64el] | ||||
| 331 | + os: [linux] | ||||
| 332 | + | ||||
| 333 | + '@esbuild/linux-ppc64@0.28.2': | ||||
| 334 | + resolution: {integrity: sha512-CAXl+Dtd9UUuJd8pKKdwh6MLm3MUMiqMPmhZ3tTSXPqfyQ3vDl6R5hZdZ/kYojK4ofXtdfSv1tFq8XzWx3heNQ==} | ||||
| 335 | + engines: {node: '>=18'} | ||||
| 336 | + cpu: [ppc64] | ||||
| 337 | + os: [linux] | ||||
| 338 | + | ||||
| 339 | + '@esbuild/linux-riscv64@0.28.2': | ||||
| 340 | + resolution: {integrity: sha512-GeXCej4IQtU1B+QlDV8W/RRvbzI3O/Stss+/bCXv4lZls5WGRtu2a+3JkA3i4qIUlMXpcHebWpF8AkJhATowuA==} | ||||
| 341 | + engines: {node: '>=18'} | ||||
| 342 | + cpu: [riscv64] | ||||
| 343 | + os: [linux] | ||||
| 344 | + | ||||
| 345 | + '@esbuild/linux-s390x@0.28.2': | ||||
| 346 | + resolution: {integrity: sha512-3H1weTYZPxt/WOhByszQZybS9w5lKzUn1FDMsgEChbHWQwHYQQRfBxgCcZvPhjHfKyJjIievvMmEUawJrdY9Dg==} | ||||
| 347 | + engines: {node: '>=18'} | ||||
| 348 | + cpu: [s390x] | ||||
| 349 | + os: [linux] | ||||
| 350 | + | ||||
| 351 | + '@esbuild/linux-x64@0.28.2': | ||||
| 352 | + resolution: {integrity: sha512-4xTZr1FUmSoQW4XIWmit3tzQrUTZM+N3P0XV8xROKYF50XfI7xeO90+1bZvNwxIufQ9hDQVRJH5YhgPVF8A/HQ==} | ||||
| 353 | + engines: {node: '>=18'} | ||||
| 354 | + cpu: [x64] | ||||
| 355 | + os: [linux] | ||||
| 356 | + | ||||
| 357 | + '@esbuild/netbsd-arm64@0.28.2': | ||||
| 358 | + resolution: {integrity: sha512-sSATRjPeDBg3pdgHoQfoYBob11Kk1FGa9lui5RIHZCoCkJa9QKlvl3/vKz2usCmYYjs7ymJR/2Nnsqe+Hjt5nw==} | ||||
| 359 | + engines: {node: '>=18'} | ||||
| 360 | + cpu: [arm64] | ||||
| 361 | + os: [netbsd] | ||||
| 362 | + | ||||
| 363 | + '@esbuild/netbsd-x64@0.28.2': | ||||
| 364 | + resolution: {integrity: sha512-lqnzCV+mM0gIADaKihiCg6ifgfU2L3h5E33rNQBN1Y4MaVGnzryzmvvf7UHxprpQdE8hpqLolJ9Rl+SkIRDpyw==} | ||||
| 365 | + engines: {node: '>=18'} | ||||
| 366 | + cpu: [x64] | ||||
| 367 | + os: [netbsd] | ||||
| 368 | + | ||||
| 369 | + '@esbuild/openbsd-arm64@0.28.2': | ||||
| 370 | + resolution: {integrity: sha512-AL2qJILH7lNjrDmCQDvdxMfAUIv8KMNZOvrwAQ8i8//ntL9FflhOyMJ8OZSMBb8/AWXe3/5v5S20y3zCoZWKoQ==} | ||||
| 371 | + engines: {node: '>=18'} | ||||
| 372 | + cpu: [arm64] | ||||
| 373 | + os: [openbsd] | ||||
| 374 | + | ||||
| 375 | + '@esbuild/openbsd-x64@0.28.2': | ||||
| 376 | + resolution: {integrity: sha512-QtiuPytchRyC4rwUKhexJdQKvDuZ6hWloi3igqPQNUJCS1/v9EiO3UTOXR6A3FoMo4fnAKbWJdqaIwhOzh8qEw==} | ||||
| 377 | + engines: {node: '>=18'} | ||||
| 378 | + cpu: [x64] | ||||
| 379 | + os: [openbsd] | ||||
| 380 | + | ||||
| 381 | + '@esbuild/openharmony-arm64@0.28.2': | ||||
| 382 | + resolution: {integrity: sha512-WkhYDmpTjLvGlScA1rwjRUmhl4k8oXR3cIbtqWmELgU/dFeHHlEllxDvdWcNJV9rbzCexB5vz8gtNewWLgCT7Q==} | ||||
| 383 | + engines: {node: '>=18'} | ||||
| 384 | + cpu: [arm64] | ||||
| 385 | + os: [openharmony] | ||||
| 386 | + | ||||
| 387 | + '@esbuild/sunos-x64@0.28.2': | ||||
| 388 | + resolution: {integrity: sha512-GPMSkTOtMnv2U2F8gxe4Io6qmVs+YKyp832Etqqxr0hFngmXQ3rzwytelm3GIn7T4VviRUlf3sOgBOiTdvaf7g==} | ||||
| 389 | + engines: {node: '>=18'} | ||||
| 390 | + cpu: [x64] | ||||
| 391 | + os: [sunos] | ||||
| 392 | + | ||||
| 393 | + '@esbuild/win32-arm64@0.28.2': | ||||
| 394 | + resolution: {integrity: sha512-PIhhEkE9uPBleRBrQEJpUn7MBnibZzbGzYWPmY3x+YoVg/95zbjB4CxPPOQ8l5tYYM4mMaCthF8/1DIfBQQyWQ==} | ||||
| 395 | + engines: {node: '>=18'} | ||||
| 396 | + cpu: [arm64] | ||||
| 397 | + os: [win32] | ||||
| 398 | + | ||||
| 399 | + '@esbuild/win32-ia32@0.28.2': | ||||
| 400 | + resolution: {integrity: sha512-YmJbfTlvU7Sdn9BB+4PRES4oB6pxgS37MAONj+hBr/cpXS1aBPKXxNnDbu+QCWPj0o9dgyxeq79g6c5P8KeuYA==} | ||||
| 401 | + engines: {node: '>=18'} | ||||
| 402 | + cpu: [ia32] | ||||
| 403 | + os: [win32] | ||||
| 404 | + | ||||
| 405 | + '@esbuild/win32-x64@0.28.2': | ||||
| 406 | + resolution: {integrity: sha512-5ebpxr3nWMzrL/rnUI755Jkuee0bHL/Gq0WTF9lvcpv73wAp5eu8MfBUgWK9bhWvZjj7yX8etf/8tI8Ney695g==} | ||||
| 407 | + engines: {node: '>=18'} | ||||
| 408 | + cpu: [x64] | ||||
| 409 | + os: [win32] | ||||
| 410 | + | ||||
| 411 | + '@eslint-community/eslint-utils@4.10.1': | ||||
| 412 | + resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==} | ||||
| 413 | + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | ||||
| 414 | + peerDependencies: | ||||
| 415 | + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 | ||||
| 416 | + | ||||
| 417 | + '@eslint-community/eslint-utils@4.9.1': | ||||
| 418 | + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} | ||||
| 419 | + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | ||||
| 420 | + peerDependencies: | ||||
| 421 | + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 | ||||
| 422 | + | ||||
| 423 | + '@eslint-community/regexpp@4.12.2': | ||||
| 424 | + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} | ||||
| 425 | + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} | ||||
| 426 | + | ||||
| 427 | + '@eslint/config-array@0.23.5': | ||||
| 428 | + resolution: {integrity: sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==} | ||||
| 429 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 430 | + | ||||
| 431 | + '@eslint/config-helpers@0.7.0': | ||||
| 432 | + resolution: {integrity: sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==} | ||||
| 433 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 434 | + | ||||
| 435 | + '@eslint/core@1.2.1': | ||||
| 436 | + resolution: {integrity: sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==} | ||||
| 437 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 438 | + | ||||
| 439 | + '@eslint/object-schema@3.0.5': | ||||
| 440 | + resolution: {integrity: sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==} | ||||
| 441 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 442 | + | ||||
| 443 | + '@eslint/plugin-kit@0.7.3': | ||||
| 444 | + resolution: {integrity: sha512-IkO+/KEUvwbVpiURZg+P7zF74z5Jxe0UgJxVni+RtoHQ6IZieXaO02kmadomap/q+l6bc/jdPGGqTjhuZnuz1Q==} | ||||
| 445 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 446 | + | ||||
| 447 | + '@humanfs/core@0.19.2': | ||||
| 448 | + resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} | ||||
| 449 | + engines: {node: '>=18.18.0'} | ||||
| 450 | + | ||||
| 451 | + '@humanfs/node@0.16.8': | ||||
| 452 | + resolution: {integrity: sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==} | ||||
| 453 | + engines: {node: '>=18.18.0'} | ||||
| 454 | + | ||||
| 455 | + '@humanfs/types@0.15.0': | ||||
| 456 | + resolution: {integrity: sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==} | ||||
| 457 | + engines: {node: '>=18.18.0'} | ||||
| 458 | + | ||||
| 459 | + '@humanwhocodes/module-importer@1.0.1': | ||||
| 460 | + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} | ||||
| 461 | + engines: {node: '>=12.22'} | ||||
| 462 | + | ||||
| 463 | + '@humanwhocodes/retry@0.4.3': | ||||
| 464 | + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} | ||||
| 465 | + engines: {node: '>=18.18'} | ||||
| 466 | + | ||||
| 467 | + '@iconify/types@2.0.0': | ||||
| 468 | + resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} | ||||
| 469 | + | ||||
| 470 | + '@iconify/utils@3.1.7': | ||||
| 471 | + resolution: {integrity: sha512-JZHlwdID+dy+lTgbYC8NEC4zeugqeYsc6jewvzb4c58kHauJn+X7rNwQjxz5p2qSjqaEeQoLkCIQ9v/H4PK0/w==} | ||||
| 472 | + | ||||
| 473 | + '@img/colour@1.1.0': | ||||
| 474 | + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} | ||||
| 475 | + engines: {node: '>=18'} | ||||
| 476 | + | ||||
| 477 | + '@img/sharp-darwin-arm64@0.35.5': | ||||
| 478 | + resolution: {integrity: sha512-QRUlFQ0WxvdWyqqG/WtI3iupfD5rBzmCHXSdPsY91sAtVtTo7Q4cb6zOccZ3gqEqkr0f1As1ehLqmEpDsRf+lg==} | ||||
| 479 | + engines: {node: '>=20.9.0'} | ||||
| 480 | + cpu: [arm64] | ||||
| 481 | + os: [darwin] | ||||
| 482 | + | ||||
| 483 | + '@img/sharp-darwin-x64@0.35.5': | ||||
| 484 | + resolution: {integrity: sha512-+BR255RhDlpygUpOc/Jdt1nT6DQ3XG/ERo5wbcdOf5Q320dKtPCKPLR1LJs9VGXRaMa8l1uUa0tkCNOXiAxZUw==} | ||||
| 485 | + engines: {node: '>=20.9.0'} | ||||
| 486 | + cpu: [x64] | ||||
| 487 | + os: [darwin] | ||||
| 488 | + | ||||
| 489 | + '@img/sharp-freebsd-wasm32@0.35.5': | ||||
| 490 | + resolution: {integrity: sha512-Y/z91nEZ4uIBX5X3nfTovjU9lHNKFYbL2lpHCLVNmXQK03VIZvXBBt0KxbPGp2SdGSF+2mQU4e+hQaWOt86iAw==} | ||||
| 491 | + engines: {node: '>=20.9.0'} | ||||
| 492 | + os: [freebsd] | ||||
| 493 | + | ||||
| 494 | + '@img/sharp-libvips-darwin-arm64@1.3.4': | ||||
| 495 | + resolution: {integrity: sha512-5R89nBYiRdUlSWJxPhO+GVtaXzXSxKnRu/xqMn3KTA3L9EB9Oy/P+Nn2f2vlhPuUdy/Zusb2DarbyTpGCfEDuw==} | ||||
| 496 | + cpu: [arm64] | ||||
| 497 | + os: [darwin] | ||||
| 498 | + | ||||
| 499 | + '@img/sharp-libvips-darwin-x64@1.3.4': | ||||
| 500 | + resolution: {integrity: sha512-iR2OKH80yi0U+dUplyh3/xdpFvps6YkCwsXenIJxqxR1v9o+xtKTGbS9H7cps+2Vxjc8B1j96p75NmTGjIhtpQ==} | ||||
| 501 | + cpu: [x64] | ||||
| 502 | + os: [darwin] | ||||
| 503 | + | ||||
| 504 | + '@img/sharp-libvips-linux-arm64@1.3.4': | ||||
| 505 | + resolution: {integrity: sha512-Y3dgX/6lE2QhQb+Gxy0WZxfg9MEm/JBjamZpS2IklP7xIQoKN4hzAm7KcMVGtaVDt3neE9OKBC7vAfonA/Lr1A==} | ||||
| 506 | + cpu: [arm64] | ||||
| 507 | + os: [linux] | ||||
| 508 | + libc: [glibc] | ||||
| 509 | + | ||||
| 510 | + '@img/sharp-libvips-linux-arm@1.3.4': | ||||
| 511 | + resolution: {integrity: sha512-LmRtTsOHuvM2+wlO2Db37dx5MiZhB0FvSunciw48YjdOkZz9KAiRbm8ujeMOA1INqmei5NapFxYEK1D1ZSidmw==} | ||||
| 512 | + cpu: [arm] | ||||
| 513 | + os: [linux] | ||||
| 514 | + libc: [glibc] | ||||
| 515 | + | ||||
| 516 | + '@img/sharp-libvips-linux-ppc64@1.3.4': | ||||
| 517 | + resolution: {integrity: sha512-Le6boB8Tai0Nis+gIxIpKx68UDVVIqdR8Tin5Yf1z2LJJQLDJvCDRqRu+jC2qCoD+eIomonmOwB4smBRxfVpYQ==} | ||||
| 518 | + cpu: [ppc64] | ||||
| 519 | + os: [linux] | ||||
| 520 | + libc: [glibc] | ||||
| 521 | + | ||||
| 522 | + '@img/sharp-libvips-linux-riscv64@1.3.4': | ||||
| 523 | + resolution: {integrity: sha512-aHkkIEHPRdQEegJN20MLmGtxYD9R2wQr3Cwpddnu5+YKMt6Uzax7S9h5gpZTo8wyrGuZSlfQ63OevL5mTyOC7Q==} | ||||
| 524 | + cpu: [riscv64] | ||||
| 525 | + os: [linux] | ||||
| 526 | + libc: [glibc] | ||||
| 527 | + | ||||
| 528 | + '@img/sharp-libvips-linux-s390x@1.3.4': | ||||
| 529 | + resolution: {integrity: sha512-ra/mB6MikESDUO7Yg+Mi95bFBb9GsObURuhnOv3OqknjGe9sZrG8tCe9q0xSIGrtLgvgw0gKnFWcK4blSgQOuQ==} | ||||
| 530 | + cpu: [s390x] | ||||
| 531 | + os: [linux] | ||||
| 532 | + libc: [glibc] | ||||
| 533 | + | ||||
| 534 | + '@img/sharp-libvips-linux-x64@1.3.4': | ||||
| 535 | + resolution: {integrity: sha512-GJ//SSXbnwSDes02umB3nDJLFcQzw8a18V8fyhqr6tV515tOEMdImjjxj1AoafMRz56F3PHgftnj1QEKSU1zkw==} | ||||
| 536 | + cpu: [x64] | ||||
| 537 | + os: [linux] | ||||
| 538 | + libc: [glibc] | ||||
| 539 | + | ||||
| 540 | + '@img/sharp-libvips-linuxmusl-arm64@1.3.4': | ||||
| 541 | + resolution: {integrity: sha512-hvulFwtjUcagsis6BBxHwGFwWoNZjgYmULGVrZcyfNbjA8hKILbRxGg15/7w5HDyXHXUos/j6baAWqnCyQ2DWA==} | ||||
| 542 | + cpu: [arm64] | ||||
| 543 | + os: [linux] | ||||
| 544 | + libc: [musl] | ||||
| 545 | + | ||||
| 546 | + '@img/sharp-libvips-linuxmusl-x64@1.3.4': | ||||
| 547 | + resolution: {integrity: sha512-6zXKeE/p39I1AmA3cJG35eyBGNqNddLnUXjhwBnsGjFPWqf5VKkDBEqaEkPDoTEtkxwi2vv8Tcr2mDyP4So7Fg==} | ||||
| 548 | + cpu: [x64] | ||||
| 549 | + os: [linux] | ||||
| 550 | + libc: [musl] | ||||
| 551 | + | ||||
| 552 | + '@img/sharp-linux-arm64@0.35.5': | ||||
| 553 | + resolution: {integrity: sha512-LYVx5JTsOM2CBzmxreh+nl64/3H6Xb09iSLknqH47z2T2DFFxDeFLP5y4dJwe6H7uGQlHPyEEtIqyo3DYsRwdQ==} | ||||
| 554 | + engines: {node: '>=20.9.0'} | ||||
| 555 | + cpu: [arm64] | ||||
| 556 | + os: [linux] | ||||
| 557 | + libc: [glibc] | ||||
| 558 | + | ||||
| 559 | + '@img/sharp-linux-arm@0.35.5': | ||||
| 560 | + resolution: {integrity: sha512-LEaXK2WdXVK5ykcw0buWyPMsmLLL2vpHLD6yrNSW+JGEL3BZPA4tpKN6iaMc4AxTTAoaX/sU1rOL51lcIz48ZQ==} | ||||
| 561 | + engines: {node: '>=20.9.0'} | ||||
| 562 | + cpu: [arm] | ||||
| 563 | + os: [linux] | ||||
| 564 | + libc: [glibc] | ||||
| 565 | + | ||||
| 566 | + '@img/sharp-linux-ppc64@0.35.5': | ||||
| 567 | + resolution: {integrity: sha512-QVxAAq8evVRI9ia2vqgwrmWucn5Dfv+JdWzj75pD8omHLPSP7f8p20O8jxzjCcuCEQEOtYOZUmX1hkiZ0kdevA==} | ||||
| 568 | + engines: {node: '>=20.9.0'} | ||||
| 569 | + cpu: [ppc64] | ||||
| 570 | + os: [linux] | ||||
| 571 | + libc: [glibc] | ||||
| 572 | + | ||||
| 573 | + '@img/sharp-linux-riscv64@0.35.5': | ||||
| 574 | + resolution: {integrity: sha512-LtdreXguaavKODPIfzJ4kffx7UNt1omwtK0rch4EBbbSTXPnxWmYSayXdLJw0fJzQ97kHt1gL/yh4tvU+nCyRQ==} | ||||
| 575 | + engines: {node: '>=20.9.0'} | ||||
| 576 | + cpu: [riscv64] | ||||
| 577 | + os: [linux] | ||||
| 578 | + libc: [glibc] | ||||
| 579 | + | ||||
| 580 | + '@img/sharp-linux-s390x@0.35.5': | ||||
| 581 | + resolution: {integrity: sha512-UZasTOFiYzotTsGOCu42BfUzP6Tu6Do/947iRm1RsLKvlllxwGcn4RN27LibGWceix4Y+Pmw3jsnTcCQIgWjqA==} | ||||
| 582 | + engines: {node: '>=20.9.0'} | ||||
| 583 | + cpu: [s390x] | ||||
| 584 | + os: [linux] | ||||
| 585 | + libc: [glibc] | ||||
| 586 | + | ||||
| 587 | + '@img/sharp-linux-x64@0.35.5': | ||||
| 588 | + resolution: {integrity: sha512-SxFtLTeJInhAA9Q836kux2vZNeOBQEx658qvbboZScr0wIARym3IcGmW7KpVD5sbVg0Ojy+udFQdayYIZyoNog==} | ||||
| 589 | + engines: {node: '>=20.9.0'} | ||||
| 590 | + cpu: [x64] | ||||
| 591 | + os: [linux] | ||||
| 592 | + libc: [glibc] | ||||
| 593 | + | ||||
| 594 | + '@img/sharp-linuxmusl-arm64@0.35.5': | ||||
| 595 | + resolution: {integrity: sha512-9HbMclmI1zlNkFRs3z9/eBtDjfD0sGlrX1z6b1qwmiFY5ElDLh4BC0LPBdVp7z1DXFiKlIcznf+ZlsuZzLxQqg==} | ||||
| 596 | + engines: {node: '>=20.9.0'} | ||||
| 597 | + cpu: [arm64] | ||||
| 598 | + os: [linux] | ||||
| 599 | + libc: [musl] | ||||
| 600 | + | ||||
| 601 | + '@img/sharp-linuxmusl-x64@0.35.5': | ||||
| 602 | + resolution: {integrity: sha512-4KOphqB035HrVdqLZfCgMzzERrQkkzOwRhl4OAkRO1YCldbaFjySXMaK534Mo0V+LndnlJk+sbUyLeU0ULyD1A==} | ||||
| 603 | + engines: {node: '>=20.9.0'} | ||||
| 604 | + cpu: [x64] | ||||
| 605 | + os: [linux] | ||||
| 606 | + libc: [musl] | ||||
| 607 | + | ||||
| 608 | + '@img/sharp-wasm32@0.35.5': | ||||
| 609 | + resolution: {integrity: sha512-Ptsga1su4tQx+LLF1ECS9U6nz5kmrXKo6XVbtR48Ke3ZRxxgaWBu7IDtEe1quo8hiupwm6WFqxVlXaSf7IINGQ==} | ||||
| 610 | + engines: {node: '>=20.9.0'} | ||||
| 611 | + | ||||
| 612 | + '@img/sharp-webcontainers-wasm32@0.35.5': | ||||
| 613 | + resolution: {integrity: sha512-hfhF/FmoQyTUkA0bIKFOtw536BQSeBMe6BF6QyWlrPxT754+TFLaZ7sKKTfvvM0yJgKgaYTwnFCIZ/GuDw5SUA==} | ||||
| 614 | + engines: {node: '>=20.9.0'} | ||||
| 615 | + cpu: [wasm32] | ||||
| 616 | + | ||||
| 617 | + '@img/sharp-win32-arm64@0.35.5': | ||||
| 618 | + resolution: {integrity: sha512-X4t7g+7ZA5DKblCBEXGjUqqemj4vczING/5viFwAL8h4N3qYeyjwdCvRLHi4EdOUI+2Z7UFlp1VM+p/AuEtm6Q==} | ||||
| 619 | + engines: {node: '>=20.9.0'} | ||||
| 620 | + cpu: [arm64] | ||||
| 621 | + os: [win32] | ||||
| 622 | + | ||||
| 623 | + '@img/sharp-win32-ia32@0.35.5': | ||||
| 624 | + resolution: {integrity: sha512-5Zm82LoBc43nhwNybZlG7Y1KO//Zhsn306fQl29ZOuStHLGTo3BWL83q3cznX0poxSAMuYL1On/BHBxkBeKr6A==} | ||||
| 625 | + engines: {node: ^20.9.0} | ||||
| 626 | + cpu: [ia32] | ||||
| 627 | + os: [win32] | ||||
| 628 | + | ||||
| 629 | + '@img/sharp-win32-x64@0.35.5': | ||||
| 630 | + resolution: {integrity: sha512-x76eH0vEiHlcMQu8Y8IenntaACtddpT6W0wmXtWrnKcnKI7ME5DdgqhAD6SEWOEl1v2zDvkZDhFA9KnURwpfqg==} | ||||
| 631 | + engines: {node: '>=20.9.0'} | ||||
| 632 | + cpu: [x64] | ||||
| 633 | + os: [win32] | ||||
| 634 | + | ||||
| 635 | + '@jridgewell/gen-mapping@0.3.13': | ||||
| 636 | + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} | ||||
| 637 | + | ||||
| 638 | + '@jridgewell/remapping@2.3.5': | ||||
| 639 | + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} | ||||
| 640 | + | ||||
| 641 | + '@jridgewell/resolve-uri@3.1.2': | ||||
| 642 | + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} | ||||
| 643 | + engines: {node: '>=6.0.0'} | ||||
| 644 | + | ||||
| 645 | + '@jridgewell/sourcemap-codec@1.6.0': | ||||
| 646 | + resolution: {integrity: sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==} | ||||
| 647 | + | ||||
| 648 | + '@jridgewell/trace-mapping@0.3.31': | ||||
| 649 | + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} | ||||
| 650 | + | ||||
| 651 | + '@keyv/bigmap@1.3.1': | ||||
| 652 | + resolution: {integrity: sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==} | ||||
| 653 | + engines: {node: '>= 18'} | ||||
| 654 | + peerDependencies: | ||||
| 655 | + keyv: ^5.6.0 | ||||
| 656 | + | ||||
| 657 | + '@keyv/serialize@1.1.1': | ||||
| 658 | + resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==} | ||||
| 659 | + | ||||
| 660 | + '@mermaid-js/parser@2.0.1': | ||||
| 661 | + resolution: {integrity: sha512-j37dj/h6p6pots1L7pLPPNuABEEu9WP4OYg9pW1g+nYG331j0+3canE9OagtYdytYvdSAMG+2fKU5cxep6LgjA==} | ||||
| 662 | + engines: {node: '>=22.12.0'} | ||||
| 663 | + | ||||
| 664 | + '@napi-rs/canvas-android-arm64@0.1.80': | ||||
| 665 | + resolution: {integrity: sha512-sk7xhN/MoXeuExlggf91pNziBxLPVUqF2CAVnB57KLG/pz7+U5TKG8eXdc3pm0d7Od0WreB6ZKLj37sX9muGOQ==} | ||||
| 666 | + engines: {node: '>= 10'} | ||||
| 667 | + cpu: [arm64] | ||||
| 668 | + os: [android] | ||||
| 669 | + | ||||
| 670 | + '@napi-rs/canvas-darwin-arm64@0.1.80': | ||||
| 671 | + resolution: {integrity: sha512-O64APRTXRUiAz0P8gErkfEr3lipLJgM6pjATwavZ22ebhjYl/SUbpgM0xcWPQBNMP1n29afAC/Us5PX1vg+JNQ==} | ||||
| 672 | + engines: {node: '>= 10'} | ||||
| 673 | + cpu: [arm64] | ||||
| 674 | + os: [darwin] | ||||
| 675 | + | ||||
| 676 | + '@napi-rs/canvas-darwin-x64@0.1.80': | ||||
| 677 | + resolution: {integrity: sha512-FqqSU7qFce0Cp3pwnTjVkKjjOtxMqRe6lmINxpIZYaZNnVI0H5FtsaraZJ36SiTHNjZlUB69/HhxNDT1Aaa9vA==} | ||||
| 678 | + engines: {node: '>= 10'} | ||||
| 679 | + cpu: [x64] | ||||
| 680 | + os: [darwin] | ||||
| 681 | + | ||||
| 682 | + '@napi-rs/canvas-linux-arm-gnueabihf@0.1.80': | ||||
| 683 | + resolution: {integrity: sha512-eyWz0ddBDQc7/JbAtY4OtZ5SpK8tR4JsCYEZjCE3dI8pqoWUC8oMwYSBGCYfsx2w47cQgQCgMVRVTFiiO38hHQ==} | ||||
| 684 | + engines: {node: '>= 10'} | ||||
| 685 | + cpu: [arm] | ||||
| 686 | + os: [linux] | ||||
| 687 | + | ||||
| 688 | + '@napi-rs/canvas-linux-arm64-gnu@0.1.80': | ||||
| 689 | + resolution: {integrity: sha512-qwA63t8A86bnxhuA/GwOkK3jvb+XTQaTiVML0vAWoHyoZYTjNs7BzoOONDgTnNtr8/yHrq64XXzUoLqDzU+Uuw==} | ||||
| 690 | + engines: {node: '>= 10'} | ||||
| 691 | + cpu: [arm64] | ||||
| 692 | + os: [linux] | ||||
| 693 | + libc: [glibc] | ||||
| 694 | + | ||||
| 695 | + '@napi-rs/canvas-linux-arm64-musl@0.1.80': | ||||
| 696 | + resolution: {integrity: sha512-1XbCOz/ymhj24lFaIXtWnwv/6eFHXDrjP0jYkc6iHQ9q8oXKzUX1Lc6bu+wuGiLhGh2GS/2JlfORC5ZcXimRcg==} | ||||
| 697 | + engines: {node: '>= 10'} | ||||
| 698 | + cpu: [arm64] | ||||
| 699 | + os: [linux] | ||||
| 700 | + libc: [musl] | ||||
| 701 | + | ||||
| 702 | + '@napi-rs/canvas-linux-riscv64-gnu@0.1.80': | ||||
| 703 | + resolution: {integrity: sha512-XTzR125w5ZMs0lJcxRlS1K3P5RaZ9RmUsPtd1uGt+EfDyYMu4c6SEROYsxyatbbu/2+lPe7MPHOO/0a0x7L/gw==} | ||||
| 704 | + engines: {node: '>= 10'} | ||||
| 705 | + cpu: [riscv64] | ||||
| 706 | + os: [linux] | ||||
| 707 | + libc: [glibc] | ||||
| 708 | + | ||||
| 709 | + '@napi-rs/canvas-linux-x64-gnu@0.1.80': | ||||
| 710 | + resolution: {integrity: sha512-BeXAmhKg1kX3UCrJsYbdQd3hIMDH/K6HnP/pG2LuITaXhXBiNdh//TVVVVCBbJzVQaV5gK/4ZOCMrQW9mvuTqA==} | ||||
| 711 | + engines: {node: '>= 10'} | ||||
| 712 | + cpu: [x64] | ||||
| 713 | + os: [linux] | ||||
| 714 | + libc: [glibc] | ||||
| 715 | + | ||||
| 716 | + '@napi-rs/canvas-linux-x64-musl@0.1.80': | ||||
| 717 | + resolution: {integrity: sha512-x0XvZWdHbkgdgucJsRxprX/4o4sEed7qo9rCQA9ugiS9qE2QvP0RIiEugtZhfLH3cyI+jIRFJHV4Fuz+1BHHMg==} | ||||
| 718 | + engines: {node: '>= 10'} | ||||
| 719 | + cpu: [x64] | ||||
| 720 | + os: [linux] | ||||
| 721 | + libc: [musl] | ||||
| 722 | + | ||||
| 723 | + '@napi-rs/canvas-win32-x64-msvc@0.1.80': | ||||
| 724 | + resolution: {integrity: sha512-Z8jPsM6df5V8B1HrCHB05+bDiCxjE9QA//3YrkKIdVDEwn5RKaqOxCJDRJkl48cJbylcrJbW4HxZbTte8juuPg==} | ||||
| 725 | + engines: {node: '>= 10'} | ||||
| 726 | + cpu: [x64] | ||||
| 727 | + os: [win32] | ||||
| 728 | + | ||||
| 729 | + '@napi-rs/canvas@0.1.80': | ||||
| 730 | + resolution: {integrity: sha512-DxuT1ClnIPts1kQx8FBmkk4BQDTfI5kIzywAaMjQSXfNnra5UFU9PwurXrl+Je3bJ6BGsp/zmshVVFbCmyI+ww==} | ||||
| 731 | + engines: {node: '>= 10'} | ||||
| 732 | + | ||||
| 733 | + '@napi-rs/wasm-runtime@1.2.6': | ||||
| 734 | + resolution: {integrity: sha512-mRyDmEw9/fCDXCGfL1sbgIw/GUK0PVxRW4YwgPN61F3LQ+fSyoBFarJVzgGyhF6kRzEQZ0FejDqm4WLXSeqQmw==} | ||||
| 735 | + engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0} | ||||
| 736 | + peerDependencies: | ||||
| 737 | + '@emnapi/core': ^1.7.1 || 2.0.0-beta.2 | ||||
| 738 | + '@emnapi/runtime': ^1.7.1 || 2.0.0-beta.2 | ||||
| 739 | + | ||||
| 740 | + '@next/env@16.4.3': | ||||
| 741 | + resolution: {integrity: sha512-a7tz1QCcWWkwC/rPJcPMJk/UNRu9CFhDd3OHYE5hddbJrs8BqRTalxI6GlKCWEGzRLHN+S/B7a4PAHCtm25aBQ==} | ||||
| 742 | + | ||||
| 743 | + '@next/eslint-plugin-next@16.4.3': | ||||
| 744 | + resolution: {integrity: sha512-oxuC06wt/71h6ACYCV9GbKOfnf5a7VlRe/p80YHTut15TNgDEmynDnaq8t/xhy5rlvk7dhItIPs6H3rvIM4kyw==} | ||||
| 745 | + | ||||
| 746 | + '@next/swc-darwin-arm64@16.4.3': | ||||
| 747 | + resolution: {integrity: sha512-4yq5EXBt+VDtAZwTyfijaFp5D2C5oz3Ikw5a2kiX2K9nw72vrZX2q5UuAlkPtUMO1tQz6JTKpaKWjS7OOefTDQ==} | ||||
| 748 | + engines: {node: '>= 10'} | ||||
| 749 | + cpu: [arm64] | ||||
| 750 | + os: [darwin] | ||||
| 751 | + | ||||
| 752 | + '@next/swc-darwin-x64@16.4.3': | ||||
| 753 | + resolution: {integrity: sha512-1Rvkn/LUhnEF8WxnRkOrqGhbwXui1bkWFxONKIbN+r7C+9KHDSZ+iUoj4CzymVMWUyZIyx9szcb9+kbKhD500A==} | ||||
| 754 | + engines: {node: '>= 10'} | ||||
| 755 | + cpu: [x64] | ||||
| 756 | + os: [darwin] | ||||
| 757 | + | ||||
| 758 | + '@next/swc-linux-arm64-gnu@16.4.3': | ||||
| 759 | + resolution: {integrity: sha512-dCKpXErGg3abUM6t5JTJV/ottVBTStJB5lRJTbgdUdQaQ+jNHiK56Hsc0YAEg/rinSh42hYG3HWiYmEMdilnxg==} | ||||
| 760 | + engines: {node: '>= 10'} | ||||
| 761 | + cpu: [arm64] | ||||
| 762 | + os: [linux] | ||||
| 763 | + libc: [glibc] | ||||
| 764 | + | ||||
| 765 | + '@next/swc-linux-arm64-musl@16.4.3': | ||||
| 766 | + resolution: {integrity: sha512-WwYbhWkhYBvBtib1K4W0kL8MW2snBD2A5b3SN4vPpqalZbZs5+bQ1yzAdepVoOqrFfEW3dmREy4Zs1MrWcrFbw==} | ||||
| 767 | + engines: {node: '>= 10'} | ||||
| 768 | + cpu: [arm64] | ||||
| 769 | + os: [linux] | ||||
| 770 | + libc: [musl] | ||||
| 771 | + | ||||
| 772 | + '@next/swc-linux-x64-gnu@16.4.3': | ||||
| 773 | + resolution: {integrity: sha512-QymWvfUwDEC5/lpJOsxX5VAbyoR2D13+2Jsjz4be7gT4LPqEgdpkeLIR/HFfCLgKzoMhpJbp6I/JnogyNZHcaA==} | ||||
| 774 | + engines: {node: '>= 10'} | ||||
| 775 | + cpu: [x64] | ||||
| 776 | + os: [linux] | ||||
| 777 | + libc: [glibc] | ||||
| 778 | + | ||||
| 779 | + '@next/swc-linux-x64-musl@16.4.3': | ||||
| 780 | + resolution: {integrity: sha512-Vmjd9D7DpA4Vv3cUlr82QWgJD/BQZmns801vtC5VWHg6jCIA4a5vMKpQnfrM2pyCrp2eV0ENdUg4PlN3bAc2Yw==} | ||||
| 781 | + engines: {node: '>= 10'} | ||||
| 782 | + cpu: [x64] | ||||
| 783 | + os: [linux] | ||||
| 784 | + libc: [musl] | ||||
| 785 | + | ||||
| 786 | + '@next/swc-win32-arm64-msvc@16.4.3': | ||||
| 787 | + resolution: {integrity: sha512-lG1pPdPLk7gTyGb00n5JIMLdBJgjb+UEhSdZvFbhUMg0DyC6z4B7RnpSKF9VCd4imkLObVbXOFA0kFCpw7yFow==} | ||||
| 788 | + engines: {node: '>= 10'} | ||||
| 789 | + cpu: [arm64] | ||||
| 790 | + os: [win32] | ||||
| 791 | + | ||||
| 792 | + '@next/swc-win32-x64-msvc@16.4.3': | ||||
| 793 | + resolution: {integrity: sha512-NmQC9RkJdnPXRaMxtkCzobB3teVjqF33oSOnwDfi+XYGWWYpt+xlGK3mtktSKLbdjwaWbJu2OkkMiRFGUUncKg==} | ||||
| 794 | + engines: {node: '>= 10'} | ||||
| 795 | + cpu: [x64] | ||||
| 796 | + os: [win32] | ||||
| 797 | + | ||||
| 798 | + '@node-rs/argon2-android-arm-eabi@2.2.2': | ||||
| 799 | + resolution: {integrity: sha512-c11BOrPLBWNC1cDyzGB+Bil+flmxfZbB2hv8EhcobmAsFKMyqkHPNhUY4qhcjv1U+4+Vmw4G8H+l224iO2g/Dw==} | ||||
| 800 | + engines: {node: '>= 10'} | ||||
| 801 | + cpu: [arm] | ||||
| 802 | + os: [android] | ||||
| 803 | + | ||||
| 804 | + '@node-rs/argon2-android-arm64@2.2.2': | ||||
| 805 | + resolution: {integrity: sha512-dpMYIoxhN/wY6hFH+3MM5kQErcH3luMekkszbkDF3NKqhB1kFRntkOLDpFY87oItBSHJrsoYkXC3vBRhjYoCjQ==} | ||||
| 806 | + engines: {node: '>= 10'} | ||||
| 807 | + cpu: [arm64] | ||||
| 808 | + os: [android] | ||||
| 809 | + | ||||
| 810 | + '@node-rs/argon2-darwin-arm64@2.2.2': | ||||
| 811 | + resolution: {integrity: sha512-vxVAXcIG0iiHizkCuImmzVhOFsRnU4Z79xiOxdISLyI+QhOAWbbTaVSXw0PNfThB3zAdkzzDJ/WWu52Hs/qHGg==} | ||||
| 812 | + engines: {node: '>= 10'} | ||||
| 813 | + cpu: [arm64] | ||||
| 814 | + os: [darwin] | ||||
| 815 | + | ||||
| 816 | + '@node-rs/argon2-darwin-x64@2.2.2': | ||||
| 817 | + resolution: {integrity: sha512-r7GbSFpFZZ9EAV9cvIm9prUjOupK7QQXTyP+FJ6bWSMq0h+qRDBlUOXQXduDIIrLEGoBVelixKUtf4ksZ0ljoQ==} | ||||
| 818 | + engines: {node: '>= 10'} | ||||
| 819 | + cpu: [x64] | ||||
| 820 | + os: [darwin] | ||||
| 821 | + | ||||
| 822 | + '@node-rs/argon2-freebsd-x64@2.2.2': | ||||
| 823 | + resolution: {integrity: sha512-AmWxDSmQgprilD6NX3jmxCgcDvWAW7kGJnnWQo+0qav6nfMXdPZYgSezK/skmw1GBWipr4yZMIUzpeNHnVpMxg==} | ||||
| 824 | + engines: {node: '>= 10'} | ||||
| 825 | + cpu: [x64] | ||||
| 826 | + os: [freebsd] | ||||
| 827 | + | ||||
| 828 | + '@node-rs/argon2-linux-arm-gnueabihf@2.2.2': | ||||
| 829 | + resolution: {integrity: sha512-M1gnPBTr9GFeEUWkQ53qCJeTsX03C3kcUeHnDbN7dU2xkI58wMP4Z1sEBN7WmKJ/fTHYEgti4truz7r4A82DLg==} | ||||
| 830 | + engines: {node: '>= 10'} | ||||
| 831 | + cpu: [arm] | ||||
| 832 | + os: [linux] | ||||
| 833 | + | ||||
| 834 | + '@node-rs/argon2-linux-arm64-gnu@2.2.2': | ||||
| 835 | + resolution: {integrity: sha512-4CYDlIdITlLSVcAXYUtEoGUahRaayPXM+4Rcfg3BZx9WGi6UB8HUycs6GNMTPYXV5kVXCpyE2u1HmYUpgmIzOQ==} | ||||
| 836 | + engines: {node: '>= 10'} | ||||
| 837 | + cpu: [arm64] | ||||
| 838 | + os: [linux] | ||||
| 839 | + libc: [glibc] | ||||
| 840 | + | ||||
| 841 | + '@node-rs/argon2-linux-arm64-musl@2.2.2': | ||||
| 842 | + resolution: {integrity: sha512-FYlfj3XgQ1xrx6HzQbKbUcKiYMG/3iSi/X81KyhHaItTJ7vZlMwrbVLl9yqDmvotKUF6VjrhrlZ8KRbbzchseA==} | ||||
| 843 | + engines: {node: '>= 10'} | ||||
| 844 | + cpu: [arm64] | ||||
| 845 | + os: [linux] | ||||
| 846 | + libc: [musl] | ||||
| 847 | + | ||||
| 848 | + '@node-rs/argon2-linux-x64-gnu@2.2.2': | ||||
| 849 | + resolution: {integrity: sha512-ULXLs8UFYZANlwiROM7AeccxZndr2Xk3IstADq3jAUhnwV2W75mxMBTABUZ+7AdKRhPLOrxU77OgnMWlDkYJQg==} | ||||
| 850 | + engines: {node: '>= 10'} | ||||
| 851 | + cpu: [x64] | ||||
| 852 | + os: [linux] | ||||
| 853 | + libc: [glibc] | ||||
| 854 | + | ||||
| 855 | + '@node-rs/argon2-linux-x64-musl@2.2.2': | ||||
| 856 | + resolution: {integrity: sha512-zgjIwc9TyGodn62vGc+36DGwFqVV5e7L8Ptd2FQWuBxe5aFrcFxvtDGn1/qfYwoHLv09utgtR+RBAPCXepWG3Q==} | ||||
| 857 | + engines: {node: '>= 10'} | ||||
| 858 | + cpu: [x64] | ||||
| 859 | + os: [linux] | ||||
| 860 | + libc: [musl] | ||||
| 861 | + | ||||
| 862 | + '@node-rs/argon2-win32-arm64-msvc@2.2.2': | ||||
| 863 | + resolution: {integrity: sha512-3nLhvLie/ec5xfxUBXXqGMb7oGeqF+YXrcGckqaTaGkPtOBozho0Kh2IuP/zi9BcOriirTG2LW3gtIOfpuh+mQ==} | ||||
| 864 | + engines: {node: '>= 10'} | ||||
| 865 | + cpu: [arm64] | ||||
| 866 | + os: [win32] | ||||
| 867 | + | ||||
| 868 | + '@node-rs/argon2-win32-ia32-msvc@2.2.2': | ||||
| 869 | + resolution: {integrity: sha512-6RJKD6cFl7UeiYJLjRsXPywVXSFSaSDdr6xGpztNDV31QHCEecWnsnNmKxzi4gVpln2F9XeWEtIgM4Nqw1hLbA==} | ||||
| 870 | + engines: {node: '>= 10'} | ||||
| 871 | + cpu: [ia32] | ||||
| 872 | + os: [win32] | ||||
| 873 | + | ||||
| 874 | + '@node-rs/argon2-win32-x64-msvc@2.2.2': | ||||
| 875 | + resolution: {integrity: sha512-dQOO9S4QKBaVul0Uyk/2quJc/OBeHNZRJP+GZZTy1A5kYIaAfIJGHUYLY6oFoAlcuLIkdFouLaHX3fCl8tZm/w==} | ||||
| 876 | + engines: {node: '>= 10'} | ||||
| 877 | + cpu: [x64] | ||||
| 878 | + os: [win32] | ||||
| 879 | + | ||||
| 880 | + '@node-rs/argon2@2.2.2': | ||||
| 881 | + resolution: {integrity: sha512-NtdlPPWtR5U4BxX5EGJYza+UklNaoWORmkaKCMqf/nyKeXWKVwNt8KfQoRpNT7OB1DcEwmePafO4wZyW+sbfCQ==} | ||||
| 882 | + engines: {node: '>= 10'} | ||||
| 883 | + | ||||
| 884 | + '@nodelib/fs.scandir@2.1.5': | ||||
| 885 | + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} | ||||
| 886 | + engines: {node: '>= 8'} | ||||
| 887 | + | ||||
| 888 | + '@nodelib/fs.stat@2.0.5': | ||||
| 889 | + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} | ||||
| 890 | + engines: {node: '>= 8'} | ||||
| 891 | + | ||||
| 892 | + '@nodelib/fs.walk@1.2.8': | ||||
| 893 | + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} | ||||
| 894 | + engines: {node: '>= 8'} | ||||
| 895 | + | ||||
| 896 | + '@nolyfill/is-core-module@1.0.39': | ||||
| 897 | + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} | ||||
| 898 | + engines: {node: '>=12.4.0'} | ||||
| 899 | + | ||||
| 900 | + '@opentelemetry/api@1.10.0': | ||||
| 901 | + resolution: {integrity: sha512-lMkyes8iHrG+mk6WH7X70MdCLI2RS0FwNBY1PyQ8UemaijE2m5mv5A0Niy3HtbYTFrgkUEQjFMXmSAk2hQDuPQ==} | ||||
| 902 | + engines: {node: '>=8.0.0'} | ||||
| 903 | + | ||||
| 904 | + '@reduxjs/toolkit@2.13.0': | ||||
| 905 | + resolution: {integrity: sha512-f6jwVRfwW30+tnllz4YcsHHpPYYOE7abcHkyUCovD+P7DyhdAI5prz2Fh/8TLhakjpN+7aIEion1s5L/tvlYlA==} | ||||
| 906 | + peerDependencies: | ||||
| 907 | + react: ^16.9.0 || ^17.0.0 || ^18 || ^19 | ||||
| 908 | + react-redux: ^7.2.1 || ^8.1.3 || ^9.0.0 | ||||
| 909 | + peerDependenciesMeta: | ||||
| 910 | + react: | ||||
| 911 | + optional: true | ||||
| 912 | + react-redux: | ||||
| 913 | + optional: true | ||||
| 914 | + | ||||
| 915 | + '@rtsao/scc@1.1.0': | ||||
| 916 | + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} | ||||
| 917 | + | ||||
| 918 | + '@stablelib/base64@1.0.1': | ||||
| 919 | + resolution: {integrity: sha512-1bnPQqSxSuc3Ii6MhBysoWCg58j97aUjuCSZrGSmDxNqtytIi0k8utUenAwTZN4V5mXXYGsVUI9zeBqy+jBOSQ==} | ||||
| 920 | + | ||||
| 921 | + '@standard-schema/spec@1.1.0': | ||||
| 922 | + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} | ||||
| 923 | + | ||||
| 924 | + '@standard-schema/utils@0.3.0': | ||||
| 925 | + resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} | ||||
| 926 | + | ||||
| 927 | + '@swc/helpers@0.5.23': | ||||
| 928 | + resolution: {integrity: sha512-5lSsMOTXURePglDfvuAQUqkGek9Hg2kksOYay2m0+XR++b2NWYL/4sWyuvVBIs8oKnJaxkdi9whaL/sqN13afw==} | ||||
| 929 | + | ||||
| 930 | + '@tailwindcss/node@4.3.3': | ||||
| 931 | + resolution: {integrity: sha512-/T8IKEsf9VTU6tLjgC7+sv2mOPtQxzE2jMw7u4Tt40Tx+QSZxpzh95/H6cMKoja9XuW7iMdLJYBB0o9G1CaAgg==} | ||||
| 932 | + | ||||
| 933 | + '@tailwindcss/oxide-android-arm64@4.3.3': | ||||
| 934 | + resolution: {integrity: sha512-Y85A2gmPSkl5Ve5qR86GL4HT509cFqQh1aes9p3sSkyTPwt0Pppf3GkwGe4JPACcRYjgJIEhQgM6dBClnr0NYw==} | ||||
| 935 | + engines: {node: '>= 20'} | ||||
| 936 | + cpu: [arm64] | ||||
| 937 | + os: [android] | ||||
| 938 | + | ||||
| 939 | + '@tailwindcss/oxide-darwin-arm64@4.3.3': | ||||
| 940 | + resolution: {integrity: sha512-BiaWatpBcERQFDlOjRDpIVXuFK5PJez5SA4JMg6VYZdBYU+qKfV/vqjcIs+IYmtitf1xYQZTwXvU/8y4lfZUGw==} | ||||
| 941 | + engines: {node: '>= 20'} | ||||
| 942 | + cpu: [arm64] | ||||
| 943 | + os: [darwin] | ||||
| 944 | + | ||||
| 945 | + '@tailwindcss/oxide-darwin-x64@4.3.3': | ||||
| 946 | + resolution: {integrity: sha512-fAeUqfV5ndhxRwai8cXGzdLvul9utWOmeTkv69unv4ZXixjn61Z+p9lCWdwOwA3TYboG3BwdVuN/RDjhBRl0mw==} | ||||
| 947 | + engines: {node: '>= 20'} | ||||
| 948 | + cpu: [x64] | ||||
| 949 | + os: [darwin] | ||||
| 950 | + | ||||
| 951 | + '@tailwindcss/oxide-freebsd-x64@4.3.3': | ||||
| 952 | + resolution: {integrity: sha512-iyf5bV6+wnAlflVeEy7R25dupxTNECZN5QMI0qNT6eT+EgaGdZcKhGkr5SdoaWiLJ3spLqIY9VCeSGrwmtg4kw==} | ||||
| 953 | + engines: {node: '>= 20'} | ||||
| 954 | + cpu: [x64] | ||||
| 955 | + os: [freebsd] | ||||
| 956 | + | ||||
| 957 | + '@tailwindcss/oxide-linux-arm-gnueabihf@4.3.3': | ||||
| 958 | + resolution: {integrity: sha512-aAYUprJAJQWWbRrPvtjdroZ56Md+JM8pMiopS6xGEwDfLhqj+2ver2p4nU4Mb3CRqcMmNBjo8KkUgcxhkzVQGQ==} | ||||
| 959 | + engines: {node: '>= 20'} | ||||
| 960 | + cpu: [arm] | ||||
| 961 | + os: [linux] | ||||
| 962 | + | ||||
| 963 | + '@tailwindcss/oxide-linux-arm64-gnu@4.3.3': | ||||
| 964 | + resolution: {integrity: sha512-nDxldcEENOxZRzC2uu9jrutZdAAQtb+8WWDCSnWL1zvBk1+FN+x6MtDViPB5AJMfttVCUhehGWus3XBPgatM/w==} | ||||
| 965 | + engines: {node: '>= 20'} | ||||
| 966 | + cpu: [arm64] | ||||
| 967 | + os: [linux] | ||||
| 968 | + libc: [glibc] | ||||
| 969 | + | ||||
| 970 | + '@tailwindcss/oxide-linux-arm64-musl@4.3.3': | ||||
| 971 | + resolution: {integrity: sha512-Md44bD6veX/PC5iyF8cDVnw4HBIANZepRZZ7a8DQOvkfo5WUBwcp6iAuCUz23u+4SUkhJlD3eL7hNdW8ezd/kA==} | ||||
| 972 | + engines: {node: '>= 20'} | ||||
| 973 | + cpu: [arm64] | ||||
| 974 | + os: [linux] | ||||
| 975 | + libc: [musl] | ||||
| 976 | + | ||||
| 977 | + '@tailwindcss/oxide-linux-x64-gnu@4.3.3': | ||||
| 978 | + resolution: {integrity: sha512-tx7us1muwOKAKWao2v/GaafFeQboE6aj88vC6ziN2NCGcRm8gWUhwjzg+YdVB1e4boAtdtma4L43onunI6NS4w==} | ||||
| 979 | + engines: {node: '>= 20'} | ||||
| 980 | + cpu: [x64] | ||||
| 981 | + os: [linux] | ||||
| 982 | + libc: [glibc] | ||||
| 983 | + | ||||
| 984 | + '@tailwindcss/oxide-linux-x64-musl@4.3.3': | ||||
| 985 | + resolution: {integrity: sha512-SJxX60smvHgasZoBy11dX6YRjXJFovwWBoedhbQPOBzgFWBHGB+TVPWB9BxzR7TTxU8FQZAI2AyiNCMzFm8Img==} | ||||
| 986 | + engines: {node: '>= 20'} | ||||
| 987 | + cpu: [x64] | ||||
| 988 | + os: [linux] | ||||
| 989 | + libc: [musl] | ||||
| 990 | + | ||||
| 991 | + '@tailwindcss/oxide-wasm32-wasi@4.3.3': | ||||
| 992 | + resolution: {integrity: sha512-jx1+rPhY/5Ympkktd656HBWEBLxP7dH06losBLjjf5vgCODXvi9KhtftWcMIwTFIDqBr7cRnQkdLnAG+IOlGvQ==} | ||||
| 993 | + engines: {node: '>=14.0.0'} | ||||
| 994 | + cpu: [wasm32] | ||||
| 995 | + bundledDependencies: | ||||
| 996 | + - '@napi-rs/wasm-runtime' | ||||
| 997 | + - '@emnapi/core' | ||||
| 998 | + - '@emnapi/runtime' | ||||
| 999 | + - '@tybys/wasm-util' | ||||
| 1000 | + - '@emnapi/wasi-threads' | ||||
| 1001 | + - tslib | ||||
| 1002 | + | ||||
| 1003 | + '@tailwindcss/oxide-win32-arm64-msvc@4.3.3': | ||||
| 1004 | + resolution: {integrity: sha512-3rc292Ca2ceK6Ulcc/bAVnTs/3nDtoPhyEKlgPv+yQJQi/JS/AMJlqzxvlDacL1nekbrcf6bTqp/jV4qgnPxNQ==} | ||||
| 1005 | + engines: {node: '>= 20'} | ||||
| 1006 | + cpu: [arm64] | ||||
| 1007 | + os: [win32] | ||||
| 1008 | + | ||||
| 1009 | + '@tailwindcss/oxide-win32-x64-msvc@4.3.3': | ||||
| 1010 | + resolution: {integrity: sha512-yJ0pwIVc/nYeGoV02WtsN8KYyLQv7kyI2wDnkezyJlGGjkd4QLwDGAwl47YpPJeuI0M0ObaXGSPjvWDPeTPggw==} | ||||
| 1011 | + engines: {node: '>= 20'} | ||||
| 1012 | + cpu: [x64] | ||||
| 1013 | + os: [win32] | ||||
| 1014 | + | ||||
| 1015 | + '@tailwindcss/oxide@4.3.3': | ||||
| 1016 | + resolution: {integrity: sha512-krXjAikiaFSPaK/FkAQT5UTx3VormQaiZ5hBFlJZ9UFQGB/rwg1MZIhHAG9smMQRTdyJxP6Qt5MwMtdyU5FWrA==} | ||||
| 1017 | + engines: {node: '>= 20'} | ||||
| 1018 | + | ||||
| 1019 | + '@tailwindcss/postcss@4.3.3': | ||||
| 1020 | + resolution: {integrity: sha512-JTSZZGQi1AyKirbLN3azmjVzef92tcX7h+iSqPdaeStyFpGpDlKvvpxeOE8njhbUanbRwr3z8DyzhICWnMtQeg==} | ||||
| 1021 | + | ||||
| 1022 | + '@tybys/wasm-util@0.10.4': | ||||
| 1023 | + resolution: {integrity: sha512-W3c4gRigFS0T/Ma4qIYF3GDAc5AQdHb1yL5znJT1Zv1YaD9Kitx656wBjvr19qbiosmZT8lWDM5BEMynUqX65A==} | ||||
| 1024 | + | ||||
| 1025 | + '@types/d3-array@3.2.2': | ||||
| 1026 | + resolution: {integrity: sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw==} | ||||
| 1027 | + | ||||
| 1028 | + '@types/d3-axis@3.0.6': | ||||
| 1029 | + resolution: {integrity: sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw==} | ||||
| 1030 | + | ||||
| 1031 | + '@types/d3-brush@3.0.6': | ||||
| 1032 | + resolution: {integrity: sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A==} | ||||
| 1033 | + | ||||
| 1034 | + '@types/d3-chord@3.0.6': | ||||
| 1035 | + resolution: {integrity: sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg==} | ||||
| 1036 | + | ||||
| 1037 | + '@types/d3-color@3.1.3': | ||||
| 1038 | + resolution: {integrity: sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==} | ||||
| 1039 | + | ||||
| 1040 | + '@types/d3-contour@3.0.6': | ||||
| 1041 | + resolution: {integrity: sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg==} | ||||
| 1042 | + | ||||
| 1043 | + '@types/d3-delaunay@6.0.4': | ||||
| 1044 | + resolution: {integrity: sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw==} | ||||
| 1045 | + | ||||
| 1046 | + '@types/d3-dispatch@3.0.7': | ||||
| 1047 | + resolution: {integrity: sha512-5o9OIAdKkhN1QItV2oqaE5KMIiXAvDWBDPrD85e58Qlz1c1kI/J0NcqbEG88CoTwJrYe7ntUCVfeUl2UJKbWgA==} | ||||
| 1048 | + | ||||
| 1049 | + '@types/d3-drag@3.0.7': | ||||
| 1050 | + resolution: {integrity: sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ==} | ||||
| 1051 | + | ||||
| 1052 | + '@types/d3-dsv@3.0.7': | ||||
| 1053 | + resolution: {integrity: sha512-n6QBF9/+XASqcKK6waudgL0pf/S5XHPPI8APyMLLUHd8NqouBGLsU8MgtO7NINGtPBtk9Kko/W4ea0oAspwh9g==} | ||||
| 1054 | + | ||||
| 1055 | + '@types/d3-ease@3.0.2': | ||||
| 1056 | + resolution: {integrity: sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==} | ||||
| 1057 | + | ||||
| 1058 | + '@types/d3-fetch@3.0.7': | ||||
| 1059 | + resolution: {integrity: sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA==} | ||||
| 1060 | + | ||||
| 1061 | + '@types/d3-force@3.0.10': | ||||
| 1062 | + resolution: {integrity: sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw==} | ||||
| 1063 | + | ||||
| 1064 | + '@types/d3-format@3.0.4': | ||||
| 1065 | + resolution: {integrity: sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g==} | ||||
| 1066 | + | ||||
| 1067 | + '@types/d3-geo@3.1.1': | ||||
| 1068 | + resolution: {integrity: sha512-65Emv9fQiQQqphLlRkuQ5ypPsOmWPhtBGCMv61JDPEPMvsx+gzhGf74yw1a78xFKPj6zw4AgQICJoQv0vK9M2w==} | ||||
| 1069 | + | ||||
| 1070 | + '@types/d3-hierarchy@3.1.7': | ||||
| 1071 | + resolution: {integrity: sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg==} | ||||
| 1072 | + | ||||
| 1073 | + '@types/d3-interpolate@3.0.4': | ||||
| 1074 | + resolution: {integrity: sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==} | ||||
| 1075 | + | ||||
| 1076 | + '@types/d3-path@3.1.1': | ||||
| 1077 | + resolution: {integrity: sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==} | ||||
| 1078 | + | ||||
| 1079 | + '@types/d3-polygon@3.0.2': | ||||
| 1080 | + resolution: {integrity: sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA==} | ||||
| 1081 | + | ||||
| 1082 | + '@types/d3-quadtree@3.0.6': | ||||
| 1083 | + resolution: {integrity: sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg==} | ||||
| 1084 | + | ||||
| 1085 | + '@types/d3-random@3.0.4': | ||||
| 1086 | + resolution: {integrity: sha512-UHYId5WTCx4L4YNel7NU00XUXXgvgpgZOvp10PuvsQENjMDXhh2RyFc0KBjO7B45ne4Ha1yVH7ii0vnzKkuzWA==} | ||||
| 1087 | + | ||||
| 1088 | + '@types/d3-scale-chromatic@3.1.0': | ||||
| 1089 | + resolution: {integrity: sha512-iWMJgwkK7yTRmWqRB5plb1kadXyQ5Sj8V/zYlFGMUBbIPKQScw+Dku9cAAMgJG+z5GYDoMjWGLVOvjghDEFnKQ==} | ||||
| 1090 | + | ||||
| 1091 | + '@types/d3-scale@4.0.9': | ||||
| 1092 | + resolution: {integrity: sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==} | ||||
| 1093 | + | ||||
| 1094 | + '@types/d3-selection@3.0.12': | ||||
| 1095 | + resolution: {integrity: sha512-Qe/KWYhEiIIxGs7HrAAjMfShxKldx19SJtr5zu53f3afPsdZNz7HHtdTLXo/kqeiWNXVycI24kSnfzBYkTzpgw==} | ||||
| 1096 | + | ||||
| 1097 | + '@types/d3-shape@3.2.0': | ||||
| 1098 | + resolution: {integrity: sha512-kVd74ta9eof3eJOvbNd1vGKS/XERRyQbT26Og63hIsvDO84cjD5gEOhsXf26w3FSoNlPVz84DOFcKv/oou+fMw==} | ||||
| 1099 | + | ||||
| 1100 | + '@types/d3-time-format@4.0.3': | ||||
| 1101 | + resolution: {integrity: sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg==} | ||||
| 1102 | + | ||||
| 1103 | + '@types/d3-time@3.0.4': | ||||
| 1104 | + resolution: {integrity: sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==} | ||||
| 1105 | + | ||||
| 1106 | + '@types/d3-timer@3.0.2': | ||||
| 1107 | + resolution: {integrity: sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==} | ||||
| 1108 | + | ||||
| 1109 | + '@types/d3-transition@3.0.9': | ||||
| 1110 | + resolution: {integrity: sha512-uZS5shfxzO3rGlu0cC3bjmMFKsXv+SmZZcgp0KD22ts4uGXp5EVYGzu/0YdwZeKmddhcAccYtREJKkPfXkZuCg==} | ||||
| 1111 | + | ||||
| 1112 | + '@types/d3-zoom@3.0.9': | ||||
| 1113 | + resolution: {integrity: sha512-0sE1406XBYJGiqD3AusTl9ZqC//2mIXix51tbom25gDCA8ri4xnSZg28CaSE8Srl6FClqABUKfsn0qghgdepMA==} | ||||
| 1114 | + | ||||
| 1115 | + '@types/d3@7.4.3': | ||||
| 1116 | + resolution: {integrity: sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww==} | ||||
| 1117 | + | ||||
| 1118 | + '@types/debug@4.1.13': | ||||
| 1119 | + resolution: {integrity: sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==} | ||||
| 1120 | + | ||||
| 1121 | + '@types/esrecurse@4.3.1': | ||||
| 1122 | + resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} | ||||
| 1123 | + | ||||
| 1124 | + '@types/estree-jsx@1.0.5': | ||||
| 1125 | + resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} | ||||
| 1126 | + | ||||
| 1127 | + '@types/estree@1.0.10': | ||||
| 1128 | + resolution: {integrity: sha512-lTyOMnOcmRBzdCv6/4zUZCrEhV0xrqQiUZBZtVcbmLHBXKLnN8q89v/wKRF/Q0HbwVsqbIG3o5HDoFl9sduM+g==} | ||||
| 1129 | + | ||||
| 1130 | + '@types/geojson@7946.0.16': | ||||
| 1131 | + resolution: {integrity: sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==} | ||||
| 1132 | + | ||||
| 1133 | + '@types/hast@3.0.5': | ||||
| 1134 | + resolution: {integrity: sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==} | ||||
| 1135 | + | ||||
| 1136 | + '@types/json-schema@7.0.15': | ||||
| 1137 | + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} | ||||
| 1138 | + | ||||
| 1139 | + '@types/json5@0.0.29': | ||||
| 1140 | + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} | ||||
| 1141 | + | ||||
| 1142 | + '@types/katex@0.16.8': | ||||
| 1143 | + resolution: {integrity: sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg==} | ||||
| 1144 | + | ||||
| 1145 | + '@types/mdast@4.0.4': | ||||
| 1146 | + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} | ||||
| 1147 | + | ||||
| 1148 | + '@types/ms@2.1.0': | ||||
| 1149 | + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} | ||||
| 1150 | + | ||||
| 1151 | + '@types/node@26.6.6': | ||||
| 1152 | + resolution: {integrity: sha512-MzQj+8Kx3XI40OmUAE6Qoh58ZMNstNNMwn2nfd3qWsfe7nDNSqJNzes4njhz6AHwrSHOffSLwXU6yb474Q4aog==} | ||||
| 1153 | + | ||||
| 1154 | + '@types/pdf-parse@1.1.5': | ||||
| 1155 | + resolution: {integrity: sha512-kBfrSXsloMnUJOKi25s3+hRmkycHfLK6A09eRGqF/N8BkQoPUmaCr+q8Cli5FnfohEz/rsv82zAiPz/LXtOGhA==} | ||||
| 1156 | + | ||||
| 1157 | + '@types/pngjs@6.0.5': | ||||
| 1158 | + resolution: {integrity: sha512-0k5eKfrA83JOZPppLtS2C7OUtyNAl2wKNxfyYl9Q5g9lPkgBl/9hNyAu6HuEH2J4XmIv2znEpkDd0SaZVxW6iQ==} | ||||
| 1159 | + | ||||
| 1160 | + '@types/react-dom@19.3.0': | ||||
| 1161 | + resolution: {integrity: sha512-ZI7bU42mZXXKHn/qNLEw2IrbiINU7X5+vfgdixBHkCNpYWXjKgfQ/P+uyGb5CjOLB9UcnTeg3rylQtV2hym44Q==} | ||||
| 1162 | + peerDependencies: | ||||
| 1163 | + '@types/react': ^19.3.0 | ||||
| 1164 | + | ||||
| 1165 | + '@types/react@19.3.0': | ||||
| 1166 | + resolution: {integrity: sha512-N0rFCuH9YoxG9/m61l9MfpJKfmLOVU0em7ipIz6TRgSSkvReLB9vL85GB+yr8Bs5leqpvg96JSwF4ZS1s4viQg==} | ||||
| 1167 | + | ||||
| 1168 | + '@types/trusted-types@2.0.7': | ||||
| 1169 | + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} | ||||
| 1170 | + | ||||
| 1171 | + '@types/unist@2.0.11': | ||||
| 1172 | + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} | ||||
| 1173 | + | ||||
| 1174 | + '@types/unist@3.0.3': | ||||
| 1175 | + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} | ||||
| 1176 | + | ||||
| 1177 | + '@types/use-sync-external-store@0.0.6': | ||||
| 1178 | + resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} | ||||
| 1179 | + | ||||
| 1180 | + '@typescript-eslint/eslint-plugin@8.72.1': | ||||
| 1181 | + resolution: {integrity: sha512-5CokTWXpmbylfFabsbvHC0CAw3XLaGnoa+nFJX5FR592h/LoZsENUE6p/rg5xvkKrFEXz6pYmgI29AgXc2N3BQ==} | ||||
| 1182 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1183 | + peerDependencies: | ||||
| 1184 | + '@typescript-eslint/parser': ^8.72.1 | ||||
| 1185 | + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 | ||||
| 1186 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1187 | + | ||||
| 1188 | + '@typescript-eslint/parser@8.72.1': | ||||
| 1189 | + resolution: {integrity: sha512-ZGwZP4OCfyA0AQTpEAMWz+rtX01DRhQWW5hB0ucKDEIX5U7jdmPSaMx94rQfaPAQzIYz2BimOgKOJtjfpRFQ9g==} | ||||
| 1190 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1191 | + peerDependencies: | ||||
| 1192 | + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 | ||||
| 1193 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1194 | + | ||||
| 1195 | + '@typescript-eslint/project-service@8.72.1': | ||||
| 1196 | + resolution: {integrity: sha512-fAuVMkwdO/huI8nyo/WKnNKf6Gag93S56Rh3Ts5mGcavwSdaN8tRg1gCeIGX8PF+nzp1BjGfO4gHhGzW1J6jTg==} | ||||
| 1197 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1198 | + peerDependencies: | ||||
| 1199 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1200 | + | ||||
| 1201 | + '@typescript-eslint/scope-manager@8.72.1': | ||||
| 1202 | + resolution: {integrity: sha512-lC/t6eMCZZQAAKZEYGL6RDVSuFehpdmMT6h+nJIjIa6oylN/PwDgDVtEIbB7O9xFfZYtZAYLoLlDNWKJhtF+uQ==} | ||||
| 1203 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1204 | + | ||||
| 1205 | + '@typescript-eslint/tsconfig-utils@8.72.1': | ||||
| 1206 | + resolution: {integrity: sha512-e4D5R5vpeAEPBxT2BAzsFQL3sbwyeeeo5+aczgNSRK1V734jE7pTqaGFU+fXapWEQwnZbpFaTn32+Z8DwS6OTg==} | ||||
| 1207 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1208 | + peerDependencies: | ||||
| 1209 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1210 | + | ||||
| 1211 | + '@typescript-eslint/type-utils@8.72.1': | ||||
| 1212 | + resolution: {integrity: sha512-iY2wlmyrXJmx4yxUGP3aYCFF3cA/6ShddOKmLU2dx7LnEykbAM8WThlxZEfd1NddqceF6eJmZUayxx9oKIYNlg==} | ||||
| 1213 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1214 | + peerDependencies: | ||||
| 1215 | + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 | ||||
| 1216 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1217 | + | ||||
| 1218 | + '@typescript-eslint/types@8.72.1': | ||||
| 1219 | + resolution: {integrity: sha512-LmE5IhQet1BWOWEXqBrVtBPsMAOQ6Nzk35d+WLh3mk4EUF33sqlfxjio1MdYeSvKSG5skactKKuixBIKXhL4Rw==} | ||||
| 1220 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1221 | + | ||||
| 1222 | + '@typescript-eslint/typescript-estree@8.72.1': | ||||
| 1223 | + resolution: {integrity: sha512-DAlUoUV93hIvrtIQLwCbmZQYVZwOMhiHJrOVUUIWicFZaIYjTRqlY3I/NZevfkLmSqkNHRu2qYDcq9lrn16oOQ==} | ||||
| 1224 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1225 | + peerDependencies: | ||||
| 1226 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1227 | + | ||||
| 1228 | + '@typescript-eslint/utils@8.72.1': | ||||
| 1229 | + resolution: {integrity: sha512-5v5liypurJBFHCBNqh/RjsymAD+VWcE0djuGY/BUqp5fC3Qn+luWDEksjuTtWjPn6i5zQlUtkZCRG/CYG0yCkA==} | ||||
| 1230 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1231 | + peerDependencies: | ||||
| 1232 | + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 | ||||
| 1233 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 1234 | + | ||||
| 1235 | + '@typescript-eslint/visitor-keys@8.72.1': | ||||
| 1236 | + resolution: {integrity: sha512-SB8xqipSzZHUePCCLNeYxqnxq83X61/qzNhjQGbTfjxGZIeOEP7tBgWYX05Tcd6CgE02WdTJnh5b8kMZJ/+bnQ==} | ||||
| 1237 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 1238 | + | ||||
| 1239 | + '@typescript/typescript-aix-ppc64@7.0.2': | ||||
| 1240 | + resolution: {integrity: sha512-MTKKkWB7p/0E9xi1d1tHtZ5PiLkGEMIq88pK2CubZjOsLtYTLqhgIgi6zepFa+9GHZ6h05NMCkQxGKiPXMxXtQ==} | ||||
| 1241 | + engines: {node: '>=16.20.0'} | ||||
| 1242 | + cpu: [ppc64] | ||||
| 1243 | + os: [aix] | ||||
| 1244 | + | ||||
| 1245 | + '@typescript/typescript-darwin-arm64@7.0.2': | ||||
| 1246 | + resolution: {integrity: sha512-gowzar9MwS/aRWp6f3a4KUqzRjAZjOsmGNCM6LcTgXum+dBfgsBVMN+AgvOCCbguXyick6LJhpBszxMebJ8syA==} | ||||
| 1247 | + engines: {node: '>=16.20.0'} | ||||
| 1248 | + cpu: [arm64] | ||||
| 1249 | + os: [darwin] | ||||
| 1250 | + | ||||
| 1251 | + '@typescript/typescript-darwin-x64@7.0.2': | ||||
| 1252 | + resolution: {integrity: sha512-SZ9xZInqApNlNGc9s0W1VSsktYSOe9cFqNOIqmN1Gs8SmkjKZYFt017G4VwPxASInODuAdbTW7sXiFUf893RgA==} | ||||
| 1253 | + engines: {node: '>=16.20.0'} | ||||
| 1254 | + cpu: [x64] | ||||
| 1255 | + os: [darwin] | ||||
| 1256 | + | ||||
| 1257 | + '@typescript/typescript-freebsd-arm64@7.0.2': | ||||
| 1258 | + resolution: {integrity: sha512-W5NH4y/J0plIIS5b2xvTEkU7JFxyqdMAOgf+Ilhl0vHQXKO5dZoxd+C/jEtq56c4F3wk71RB4BMRQ2XdI+bwYQ==} | ||||
| 1259 | + engines: {node: '>=16.20.0'} | ||||
| 1260 | + cpu: [arm64] | ||||
| 1261 | + os: [freebsd] | ||||
| 1262 | + | ||||
| 1263 | + '@typescript/typescript-freebsd-x64@7.0.2': | ||||
| 1264 | + resolution: {integrity: sha512-UMGDx5sTpzNw3WiPebH7l90IWfJggEd+egHt/q6p7/Cm3zqoV7VxkGXt+3DxPIw8CcmvAB0j3sVVfbhX+M4Tpw==} | ||||
| 1265 | + engines: {node: '>=16.20.0'} | ||||
| 1266 | + cpu: [x64] | ||||
| 1267 | + os: [freebsd] | ||||
| 1268 | + | ||||
| 1269 | + '@typescript/typescript-linux-arm64@7.0.2': | ||||
| 1270 | + resolution: {integrity: sha512-Qh4eU4/y3yDjnfjjyPYihMj5/ODIlmt+Bzu17OI+fiSRDW57QmU5SiN63exPRNJPKUzcc1INa1NXdrJ+MqHjUQ==} | ||||
| 1271 | + engines: {node: '>=16.20.0'} | ||||
| 1272 | + cpu: [arm64] | ||||
| 1273 | + os: [linux] | ||||
| 1274 | + | ||||
| 1275 | + '@typescript/typescript-linux-arm@7.0.2': | ||||
| 1276 | + resolution: {integrity: sha512-gffT3xPz9sR7j/YJExkyPntrI0P2EP9XbOyWzth2/Gs0RstK+90RBcO0ncXoXy/beYll1SXw846Nf2zdnEz0QQ==} | ||||
| 1277 | + engines: {node: '>=16.20.0'} | ||||
| 1278 | + cpu: [arm] | ||||
| 1279 | + os: [linux] | ||||
| 1280 | + | ||||
| 1281 | + '@typescript/typescript-linux-loong64@7.0.2': | ||||
| 1282 | + resolution: {integrity: sha512-uEHck9i8hoAzXPiYRib1O7miOnz23SxIeVl6F4LXox+qov1K35jHcEW6VHKvZI+pyvl7fZEP4MCU5LYvIq1GuQ==} | ||||
| 1283 | + engines: {node: '>=16.20.0'} | ||||
| 1284 | + cpu: [loong64] | ||||
| 1285 | + os: [linux] | ||||
| 1286 | + | ||||
| 1287 | + '@typescript/typescript-linux-mips64el@7.0.2': | ||||
| 1288 | + resolution: {integrity: sha512-R4KvAMnE43W5Qeqb0Ly56O3mWMWIAgsMyz36DCaycd5nbg/9kzm0liw3JocfRqyJY0KPmzFjbswozXyW0DnIYA==} | ||||
| 1289 | + engines: {node: '>=16.20.0'} | ||||
| 1290 | + cpu: [mips64el] | ||||
| 1291 | + os: [linux] | ||||
| 1292 | + | ||||
| 1293 | + '@typescript/typescript-linux-ppc64@7.0.2': | ||||
| 1294 | + resolution: {integrity: sha512-DORx5b3sd/4S7eayxm4FQv+A7CrkUIGRaHiwI8oiHTAI1fAPWhF4J0vAlkC8biAlHSVVwxMQ3tjZ2/DVbnQiiA==} | ||||
| 1295 | + engines: {node: '>=16.20.0'} | ||||
| 1296 | + cpu: [ppc64] | ||||
| 1297 | + os: [linux] | ||||
| 1298 | + | ||||
| 1299 | + '@typescript/typescript-linux-riscv64@7.0.2': | ||||
| 1300 | + resolution: {integrity: sha512-wf0jqEDOjrPRnKwYRyyJDRo11KMbvMFrU+q4zqKyChODBzvlkbhNQfKvLxQCcwTpdDaXSHZTVuh0JoCrKCUMHQ==} | ||||
| 1301 | + engines: {node: '>=16.20.0'} | ||||
| 1302 | + cpu: [riscv64] | ||||
| 1303 | + os: [linux] | ||||
| 1304 | + | ||||
| 1305 | + '@typescript/typescript-linux-s390x@7.0.2': | ||||
| 1306 | + resolution: {integrity: sha512-IkwJc3L7yhytWd/ewjyxNDfOmswCm9GWMJT/ue/dU4aZNbwZeYAetq42VyLmsmSjvoX7z74X6ZaYCtzAr0EuGw==} | ||||
| 1307 | + engines: {node: '>=16.20.0'} | ||||
| 1308 | + cpu: [s390x] | ||||
| 1309 | + os: [linux] | ||||
| 1310 | + | ||||
| 1311 | + '@typescript/typescript-linux-x64@7.0.2': | ||||
| 1312 | + resolution: {integrity: sha512-EYdf2cNg7rgCWJnxCdJ+F3V39O8ihb37eHAu1LK8oAFizgTQbPOK7zHHXbPt8rX24COqODXeI3sIf0fCXG7H/A==} | ||||
| 1313 | + engines: {node: '>=16.20.0'} | ||||
| 1314 | + cpu: [x64] | ||||
| 1315 | + os: [linux] | ||||
| 1316 | + | ||||
| 1317 | + '@typescript/typescript-netbsd-arm64@7.0.2': | ||||
| 1318 | + resolution: {integrity: sha512-+polYF4MF04aPpO5FTkHran9yUQDSXqy5GiSDKpsll5jy3l3+g9QLhpf39T+ePtefhXLOGrLl0QIjkQP6VnelA==} | ||||
| 1319 | + engines: {node: '>=16.20.0'} | ||||
| 1320 | + cpu: [arm64] | ||||
| 1321 | + os: [netbsd] | ||||
| 1322 | + | ||||
| 1323 | + '@typescript/typescript-netbsd-x64@7.0.2': | ||||
| 1324 | + resolution: {integrity: sha512-8YIT0EHM/3dq10ZOVF/A7pc/YSMtbcecct4rWtexrnSCHOPcpC2KTLXfTCR6vDpnSiY12heNb1GiN/wu+T/FyA==} | ||||
| 1325 | + engines: {node: '>=16.20.0'} | ||||
| 1326 | + cpu: [x64] | ||||
| 1327 | + os: [netbsd] | ||||
| 1328 | + | ||||
| 1329 | + '@typescript/typescript-openbsd-arm64@7.0.2': | ||||
| 1330 | + resolution: {integrity: sha512-APT8+ClYnuYm1u9+kgGXoMj2VzWzcymwh2gNSQVySHfkRDGOTVkoWLjCmOQSaO+PoqQ57B0flRp9SA+7GnnkzQ==} | ||||
| 1331 | + engines: {node: '>=16.20.0'} | ||||
| 1332 | + cpu: [arm64] | ||||
| 1333 | + os: [openbsd] | ||||
| 1334 | + | ||||
| 1335 | + '@typescript/typescript-openbsd-x64@7.0.2': | ||||
| 1336 | + resolution: {integrity: sha512-yX7s+Q0Dln0Dt9tEzZsAjXXR/+ytBM7AlglaqyeMPxQszJ1JhlJdZ6jLA+IzldHtflX81em7lDao1xXu+aRRkg==} | ||||
| 1337 | + engines: {node: '>=16.20.0'} | ||||
| 1338 | + cpu: [x64] | ||||
| 1339 | + os: [openbsd] | ||||
| 1340 | + | ||||
| 1341 | + '@typescript/typescript-sunos-x64@7.0.2': | ||||
| 1342 | + resolution: {integrity: sha512-dLJDGaLZ1D4HPQn62u1n8mBDkJREwMsAkCdkwd4Ieqw+x3TUyTsqY0YiBCtE6H6OzzgGk3iuZ3vFWRS+E8/d1g==} | ||||
| 1343 | + engines: {node: '>=16.20.0'} | ||||
| 1344 | + cpu: [x64] | ||||
| 1345 | + os: [sunos] | ||||
| 1346 | + | ||||
| 1347 | + '@typescript/typescript-win32-arm64@7.0.2': | ||||
| 1348 | + resolution: {integrity: sha512-Gyl1Vy6OsWesLzmq+EP0Fb7b4Nid5232AvcA2SFcdYreldpNtYFFofPjnt62y9hQy7VTaZp65ICJjuAQRaVcIQ==} | ||||
| 1349 | + engines: {node: '>=16.20.0'} | ||||
| 1350 | + cpu: [arm64] | ||||
| 1351 | + os: [win32] | ||||
| 1352 | + | ||||
| 1353 | + '@typescript/typescript-win32-x64@7.0.2': | ||||
| 1354 | + resolution: {integrity: sha512-0BQ3HkAHHlKLSp1qRvf3SUhGpGsDuhB/jgFw75guyqbxJqEaS0Cw/VFO8i2nHglJUzQCRtMMR/IBAKE3ETMC4g==} | ||||
| 1355 | + engines: {node: '>=16.20.0'} | ||||
| 1356 | + cpu: [x64] | ||||
| 1357 | + os: [win32] | ||||
| 1358 | + | ||||
| 1359 | + '@ungap/structured-clone@1.4.0': | ||||
| 1360 | + resolution: {integrity: sha512-1mEZtMKPM09vDmQt5y7YvmN2+DFTP7Tg0EWXdic8/C6VRnpb33e4ghisCIE3WZjsE2N8mf+QV1Zqh7ZFYLWInQ==} | ||||
| 1361 | + | ||||
| 1362 | + '@unrs/resolver-binding-android-arm-eabi@1.12.2': | ||||
| 1363 | + resolution: {integrity: sha512-g5T90pqg1bo/7mytQx6F4iBNC0Wsh9cu+z9veDbFjc7HjpesJFWD7QMS0NGStXM075+7dJPPVvBbpZlnrdpi/w==} | ||||
| 1364 | + cpu: [arm] | ||||
| 1365 | + os: [android] | ||||
| 1366 | + | ||||
| 1367 | + '@unrs/resolver-binding-android-arm64@1.12.2': | ||||
| 1368 | + resolution: {integrity: sha512-YGCRZv/9GLhwmz6mYDeTsm/92BAyR28l6c2ReweVW5pWgfsitWLY8upvfRlGdoyD8HjeTHSYJWyZGD4KJA/nFQ==} | ||||
| 1369 | + cpu: [arm64] | ||||
| 1370 | + os: [android] | ||||
| 1371 | + | ||||
| 1372 | + '@unrs/resolver-binding-darwin-arm64@1.12.2': | ||||
| 1373 | + resolution: {integrity: sha512-u9DiNT1auQMO20A9SyTuG3wUgQWB9Z7KjAg0uFuCDR1FsAY8A0CG2S6JpHS1xwm/w1G08bjXZDcyOCjv1WAm2w==} | ||||
| 1374 | + cpu: [arm64] | ||||
| 1375 | + os: [darwin] | ||||
| 1376 | + | ||||
| 1377 | + '@unrs/resolver-binding-darwin-x64@1.12.2': | ||||
| 1378 | + resolution: {integrity: sha512-f7rPLi/T1HVKZu/u6t87lroib16n8vrSzcyxI7lg4BGO9UF26KhQL44sd9eOUgrTYhvRXtWOIZT5PejdPyJfUA==} | ||||
| 1379 | + cpu: [x64] | ||||
| 1380 | + os: [darwin] | ||||
| 1381 | + | ||||
| 1382 | + '@unrs/resolver-binding-freebsd-x64@1.12.2': | ||||
| 1383 | + resolution: {integrity: sha512-BpcOjWCJub6nRZUS2zA20pmLvjtqAtGejETaIyRLiZiQf++cbrjltLA5NN/xaXfqeOBOSlMFbemIl5/S5tljmg==} | ||||
| 1384 | + cpu: [x64] | ||||
| 1385 | + os: [freebsd] | ||||
| 1386 | + | ||||
| 1387 | + '@unrs/resolver-binding-linux-arm-gnueabihf@1.12.2': | ||||
| 1388 | + resolution: {integrity: sha512-vZTDvdSISZjJx66OzJqtsOhzifbqRjbmI1Mnu49fQDwog5GtDI4QidRiEAYbZCRj9C8YZEW+3ZjqsyS9GR4k2A==} | ||||
| 1389 | + cpu: [arm] | ||||
| 1390 | + os: [linux] | ||||
| 1391 | + | ||||
| 1392 | + '@unrs/resolver-binding-linux-arm-musleabihf@1.12.2': | ||||
| 1393 | + resolution: {integrity: sha512-BiPI+IrIlwcW4nLLMM21+B1dFPzd55yAVgVGrdgDjNef+ch03GdxrcyaIz8X9SsQirh/kCQ7mviyWlMxdh2D7g==} | ||||
| 1394 | + cpu: [arm] | ||||
| 1395 | + os: [linux] | ||||
| 1396 | + | ||||
| 1397 | + '@unrs/resolver-binding-linux-arm64-gnu@1.12.2': | ||||
| 1398 | + resolution: {integrity: sha512-zJc0H99FEPoFfSrNpa91HYfxzfAJCr502oxNK1cfdC9hlaFI43RT+JFCann9JUgZmLzzntChHyn13Sgn9ljHNg==} | ||||
| 1399 | + cpu: [arm64] | ||||
| 1400 | + os: [linux] | ||||
| 1401 | + libc: [glibc] | ||||
| 1402 | + | ||||
| 1403 | + '@unrs/resolver-binding-linux-arm64-musl@1.12.2': | ||||
| 1404 | + resolution: {integrity: sha512-KQ3Lki6l+Pz1k/eBipN41ES+YUK30beLGb9YqcB1O542cyLCNE6GaxrfcY3T6EezmGGk84wb5XyO9loTM9tkcA==} | ||||
| 1405 | + cpu: [arm64] | ||||
| 1406 | + os: [linux] | ||||
| 1407 | + libc: [musl] | ||||
| 1408 | + | ||||
| 1409 | + '@unrs/resolver-binding-linux-loong64-gnu@1.12.2': | ||||
| 1410 | + resolution: {integrity: sha512-3SJGEh1DborhG6pyxvhPzCT4bbSIVihsvgJc13P1bHG7KLdNDaF9T3gsTwFc7Jw/5Y5/iWOjkEx7Zy0NvCGX3Q==} | ||||
| 1411 | + cpu: [loong64] | ||||
| 1412 | + os: [linux] | ||||
| 1413 | + libc: [glibc] | ||||
| 1414 | + | ||||
| 1415 | + '@unrs/resolver-binding-linux-loong64-musl@1.12.2': | ||||
| 1416 | + resolution: {integrity: sha512-jiuG/Obbel7uw1PwHNFfrkiKhLAF6mnyZ6aWlOAVN9WqKm8v0OFGnciJIHu8+CMvXLQ8AD51LPzAoUfT21D5Ew==} | ||||
| 1417 | + cpu: [loong64] | ||||
| 1418 | + os: [linux] | ||||
| 1419 | + libc: [musl] | ||||
| 1420 | + | ||||
| 1421 | + '@unrs/resolver-binding-linux-ppc64-gnu@1.12.2': | ||||
| 1422 | + resolution: {integrity: sha512-q7xRvVpmcfeL+LlZg8Pbbo6QaTZwDU5BaGZbwfhkEsXJn3Was8xYfE0RBH266xZt0rM6B7i8xAYIvjthuUIWHg==} | ||||
| 1423 | + cpu: [ppc64] | ||||
| 1424 | + os: [linux] | ||||
| 1425 | + libc: [glibc] | ||||
| 1426 | + | ||||
| 1427 | + '@unrs/resolver-binding-linux-riscv64-gnu@1.12.2': | ||||
| 1428 | + resolution: {integrity: sha512-0CVdx6lcnT3Q9inOH8tsMIOJ6ImndllMjqJHg8RLVdB7Vq4SfkEXl9mCSsVNuNA4MCYycRicCUxPCabVHJRr6A==} | ||||
| 1429 | + cpu: [riscv64] | ||||
| 1430 | + os: [linux] | ||||
| 1431 | + libc: [glibc] | ||||
| 1432 | + | ||||
| 1433 | + '@unrs/resolver-binding-linux-riscv64-musl@1.12.2': | ||||
| 1434 | + resolution: {integrity: sha512-iOwlRo9vnp6R6ohHQS11n0NnfdXx/omhkocmIfaPRpQhKZ+3BDMkkdRVh53qjkFkpPddf+FETA28NwGN7l5l+w==} | ||||
| 1435 | + cpu: [riscv64] | ||||
| 1436 | + os: [linux] | ||||
| 1437 | + libc: [musl] | ||||
| 1438 | + | ||||
| 1439 | + '@unrs/resolver-binding-linux-s390x-gnu@1.12.2': | ||||
| 1440 | + resolution: {integrity: sha512-HYJtLfXq94q8iZNFT1lknx258wlkkWhZeUXJRqzKBBUJ00CvZ+N33zgbCqimLjsyw5Va6uUxhVa12mI+kaveEw==} | ||||
| 1441 | + cpu: [s390x] | ||||
| 1442 | + os: [linux] | ||||
| 1443 | + libc: [glibc] | ||||
| 1444 | + | ||||
| 1445 | + '@unrs/resolver-binding-linux-x64-gnu@1.12.2': | ||||
| 1446 | + resolution: {integrity: sha512-mPsUhunKKDih5O96Y6enDQyHc1SqBPlY1E/SfMWDM3EdJ95Z9CArPeCVwCCqbP45ljvivdEk8Fxn+SIb1rDAJQ==} | ||||
| 1447 | + cpu: [x64] | ||||
| 1448 | + os: [linux] | ||||
| 1449 | + libc: [glibc] | ||||
| 1450 | + | ||||
| 1451 | + '@unrs/resolver-binding-linux-x64-musl@1.12.2': | ||||
| 1452 | + resolution: {integrity: sha512-azrt6+5ydLd8Vt210AAFis/lZevSfPw93EJRIJG+xPu4WCJ8K0kppCTpMyLPcKT7H15M4Jnt2tMp5bOvCkRC6A==} | ||||
| 1453 | + cpu: [x64] | ||||
| 1454 | + os: [linux] | ||||
| 1455 | + libc: [musl] | ||||
| 1456 | + | ||||
| 1457 | + '@unrs/resolver-binding-openharmony-arm64@1.12.2': | ||||
| 1458 | + resolution: {integrity: sha512-YZ9hP4O0X9PQb8eO980qmLNGH4zT3I9+SZTdt0Pr0YyuGQhYKoOZkV02VzrzyOZJ5xIJ3UFIenKkUkGg8GjgWQ==} | ||||
| 1459 | + cpu: [arm64] | ||||
| 1460 | + os: [openharmony] | ||||
| 1461 | + | ||||
| 1462 | + '@unrs/resolver-binding-wasm32-wasi@1.12.2': | ||||
| 1463 | + resolution: {integrity: sha512-tYFDIkMxSflfEc/h92ZWNsZlHSwgimbNHSO3PL2JWQHfCuC2q316jMyYU9TIWZsFK2bQwyK5VAdYgn8ygPj69A==} | ||||
| 1464 | + engines: {node: '>=14.0.0'} | ||||
| 1465 | + cpu: [wasm32] | ||||
| 1466 | + | ||||
| 1467 | + '@unrs/resolver-binding-win32-arm64-msvc@1.12.2': | ||||
| 1468 | + resolution: {integrity: sha512-qzNyg3xL0VPQmCaUh+N5jSitce6k+uCBfMDesWRnlULOZaqUkaJ0ybdT+UqlAWJoQjuqfIU/0Ptx9bteN4D82g==} | ||||
| 1469 | + cpu: [arm64] | ||||
| 1470 | + os: [win32] | ||||
| 1471 | + | ||||
| 1472 | + '@unrs/resolver-binding-win32-ia32-msvc@1.12.2': | ||||
| 1473 | + resolution: {integrity: sha512-WD9sY00OfpHVGfsnHZoA8jVT+esS/Bg8z8jzxp5BnDCjjwsuKsPQrzswwpFy4J1AUJbXPRfkpcX0mXrzeXW79g==} | ||||
| 1474 | + cpu: [ia32] | ||||
| 1475 | + os: [win32] | ||||
| 1476 | + | ||||
| 1477 | + '@unrs/resolver-binding-win32-x64-msvc@1.12.2': | ||||
| 1478 | + resolution: {integrity: sha512-nAB74NfSNKknqQ1RrYj6uz8FcXEomu/MATJZxh/x+BArzN2U3JbOYC0APYzUIGhVY3m5hRxA8VPNdPBoG8txlA==} | ||||
| 1479 | + cpu: [x64] | ||||
| 1480 | + os: [win32] | ||||
| 1481 | + | ||||
| 1482 | + '@upsetjs/venn.js@2.0.0': | ||||
| 1483 | + resolution: {integrity: sha512-WbBhLrooyePuQ1VZxrJjtLvTc4NVfpOyKx0sKqioq9bX1C1m7Jgykkn8gLrtwumBioXIqam8DLxp88Adbue6Hw==} | ||||
| 1484 | + | ||||
| 1485 | + '@xmldom/xmldom@0.8.15': | ||||
| 1486 | + resolution: {integrity: sha512-/5NV/vDALVFDXgLmfsy9TRCBlKwO2LNBFzpzvb9iIj+jR+eSc6DLYYvVOdivT/jm7MtU6TebYuRmzEOI7w40UA==} | ||||
| 1487 | + engines: {node: '>=10.0.0'} | ||||
| 1488 | + | ||||
| 1489 | + acorn-jsx@5.3.2: | ||||
| 1490 | + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} | ||||
| 1491 | + peerDependencies: | ||||
| 1492 | + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 | ||||
| 1493 | + | ||||
| 1494 | + acorn@8.19.0: | ||||
| 1495 | + resolution: {integrity: sha512-oJlA3XiRm7Cyk6qFD2Jn8ak9B7jSy0qy00ADO3+8dpT0LSjFihQYv4C02LFCSYJV3Q37xYwwRy5m+IpIiUzqWw==} | ||||
| 1496 | + engines: {node: '>=0.4.0'} | ||||
| 1497 | + hasBin: true | ||||
| 1498 | + | ||||
| 1499 | + adler-32@1.3.1: | ||||
| 1500 | + resolution: {integrity: sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==} | ||||
| 1501 | + engines: {node: '>=0.8'} | ||||
| 1502 | + | ||||
| 1503 | + ajv@6.15.0: | ||||
| 1504 | + resolution: {integrity: sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==} | ||||
| 1505 | + | ||||
| 1506 | + argparse@1.0.10: | ||||
| 1507 | + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} | ||||
| 1508 | + | ||||
| 1509 | + aria-query@5.3.2: | ||||
| 1510 | + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} | ||||
| 1511 | + engines: {node: '>= 0.4'} | ||||
| 1512 | + | ||||
| 1513 | + array-buffer-byte-length@1.0.2: | ||||
| 1514 | + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} | ||||
| 1515 | + engines: {node: '>= 0.4'} | ||||
| 1516 | + | ||||
| 1517 | + array-includes@3.2.0: | ||||
| 1518 | + resolution: {integrity: sha512-VXY5eFRarnXcYxwBjJzPmEhH55+rmP79/+ueDhi0F+TuqfHCItagIHqxeUZrmgrOPa31QTh9H85DjX3FfJ0FTg==} | ||||
| 1519 | + engines: {node: '>= 0.4'} | ||||
| 1520 | + | ||||
| 1521 | + array.prototype.findlast@1.2.5: | ||||
| 1522 | + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} | ||||
| 1523 | + engines: {node: '>= 0.4'} | ||||
| 1524 | + | ||||
| 1525 | + array.prototype.findlastindex@1.2.6: | ||||
| 1526 | + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} | ||||
| 1527 | + engines: {node: '>= 0.4'} | ||||
| 1528 | + | ||||
| 1529 | + array.prototype.flat@1.3.3: | ||||
| 1530 | + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} | ||||
| 1531 | + engines: {node: '>= 0.4'} | ||||
| 1532 | + | ||||
| 1533 | + array.prototype.flatmap@1.3.3: | ||||
| 1534 | + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} | ||||
| 1535 | + engines: {node: '>= 0.4'} | ||||
| 1536 | + | ||||
| 1537 | + array.prototype.tosorted@1.1.4: | ||||
| 1538 | + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} | ||||
| 1539 | + engines: {node: '>= 0.4'} | ||||
| 1540 | + | ||||
| 1541 | + arraybuffer.prototype.slice@1.0.4: | ||||
| 1542 | + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} | ||||
| 1543 | + engines: {node: '>= 0.4'} | ||||
| 1544 | + | ||||
| 1545 | + ast-types-flow@0.0.8: | ||||
| 1546 | + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} | ||||
| 1547 | + | ||||
| 1548 | + async-function@1.0.0: | ||||
| 1549 | + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} | ||||
| 1550 | + engines: {node: '>= 0.4'} | ||||
| 1551 | + | ||||
| 1552 | + available-typed-arrays@1.0.7: | ||||
| 1553 | + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} | ||||
| 1554 | + engines: {node: '>= 0.4'} | ||||
| 1555 | + | ||||
| 1556 | + axe-core@4.14.0: | ||||
| 1557 | + resolution: {integrity: sha512-9WTZxEjsZ7b13TH8JPmbV2z8CHbl80/2hm3XPEG4JgNdQLK81IBRXmSxHfMAOkSqQeRxT/0dwNDz2GOm3zzpcQ==} | ||||
| 1558 | + engines: {node: '>=4'} | ||||
| 1559 | + | ||||
| 1560 | + axobject-query@4.1.0: | ||||
| 1561 | + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} | ||||
| 1562 | + engines: {node: '>= 0.4'} | ||||
| 1563 | + | ||||
| 1564 | + bail@2.0.2: | ||||
| 1565 | + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} | ||||
| 1566 | + | ||||
| 1567 | + balanced-match@1.0.2: | ||||
| 1568 | + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} | ||||
| 1569 | + | ||||
| 1570 | + balanced-match@4.0.4: | ||||
| 1571 | + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} | ||||
| 1572 | + engines: {node: 18 || 20 || >=22} | ||||
| 1573 | + | ||||
| 1574 | + base64-js@1.5.1: | ||||
| 1575 | + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} | ||||
| 1576 | + | ||||
| 1577 | + baseline-browser-mapping@2.11.34: | ||||
| 1578 | + resolution: {integrity: sha512-Aqr8mA1kIvyJ3UY5YAY7ib8LSo1DmDMbMnVqGPtsKW1LxaFQFwn9Eb3yvq2fUKJsRvaXjnAV7R5osqETapzNiA==} | ||||
| 1579 | + engines: {node: '>=6.0.0'} | ||||
| 1580 | + hasBin: true | ||||
| 1581 | + | ||||
| 1582 | + brace-expansion@1.1.21: | ||||
| 1583 | + resolution: {integrity: sha512-9zeA+KLZNNzglF2TPKRQEDyx6Yby7daAkuy8MiPzpXPsYDWi/DRM8jmwUDxokQjYqBpv5DgPiwD4h4ZZSy1Ujw==} | ||||
| 1584 | + | ||||
| 1585 | + brace-expansion@5.0.12: | ||||
| 1586 | + resolution: {integrity: sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==} | ||||
| 1587 | + engines: {node: 20 || >=22} | ||||
| 1588 | + | ||||
| 1589 | + braces@3.0.3: | ||||
| 1590 | + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} | ||||
| 1591 | + engines: {node: '>=8'} | ||||
| 1592 | + | ||||
| 1593 | + browserslist@4.29.5: | ||||
| 1594 | + resolution: {integrity: sha512-khTmKu5NGYTotqcYo8Bew2k4RAE9PuXRSFRXG2lQBrCEQHyeQ/vX6gKMxfokwywBsLiXZMnHsmWMG1pnO8J7uQ==} | ||||
| 1595 | + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} | ||||
| 1596 | + hasBin: true | ||||
| 1597 | + | ||||
| 1598 | + cacheable@2.5.0: | ||||
| 1599 | + resolution: {integrity: sha512-60cyAOytib/OzBw1JNSoSV/boK1AtHryDIjvVBk7XbN4ugfkM3+Sry7fEjNgPMGgOjuaZPAp8ruZ0Cxafwyq9g==} | ||||
| 1600 | + | ||||
| 1601 | + call-bind-apply-helpers@1.0.2: | ||||
| 1602 | + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} | ||||
| 1603 | + engines: {node: '>= 0.4'} | ||||
| 1604 | + | ||||
| 1605 | + call-bind@1.0.9: | ||||
| 1606 | + resolution: {integrity: sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==} | ||||
| 1607 | + engines: {node: '>= 0.4'} | ||||
| 1608 | + | ||||
| 1609 | + call-bound@1.0.4: | ||||
| 1610 | + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} | ||||
| 1611 | + engines: {node: '>= 0.4'} | ||||
| 1612 | + | ||||
| 1613 | + caniuse-lite@1.0.30001820: | ||||
| 1614 | + resolution: {integrity: sha512-gfWD6MxqVCqAOwmODfZf7DchWvlrA+SRdNX7ceLfg3xRqe5ssjjpF7EgslC/0tiLiNTajdaNN/q8c/5u/7Gz8w==} | ||||
| 1615 | + | ||||
| 1616 | + ccount@2.0.1: | ||||
| 1617 | + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} | ||||
| 1618 | + | ||||
| 1619 | + cfb@1.2.2: | ||||
| 1620 | + resolution: {integrity: sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==} | ||||
| 1621 | + engines: {node: '>=0.8'} | ||||
| 1622 | + | ||||
| 1623 | + character-entities-html4@2.1.0: | ||||
| 1624 | + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} | ||||
| 1625 | + | ||||
| 1626 | + character-entities-legacy@3.0.0: | ||||
| 1627 | + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} | ||||
| 1628 | + | ||||
| 1629 | + character-entities@2.0.2: | ||||
| 1630 | + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} | ||||
| 1631 | + | ||||
| 1632 | + character-reference-invalid@2.0.1: | ||||
| 1633 | + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} | ||||
| 1634 | + | ||||
| 1635 | + chevrotain@13.2.0: | ||||
| 1636 | + resolution: {integrity: sha512-GTouk5YzgBxlTPCaDn5q0q2EJKkrYmnPF+HmF8v0Qo4r3iyPG7HJivkN1wthCXZcm3sIcZFpGTRovLPNdJNRCA==} | ||||
| 1637 | + engines: {node: '>=22.0.0'} | ||||
| 1638 | + | ||||
| 1639 | + client-only@0.0.1: | ||||
| 1640 | + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} | ||||
| 1641 | + | ||||
| 1642 | + clsx@2.1.1: | ||||
| 1643 | + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} | ||||
| 1644 | + engines: {node: '>=6'} | ||||
| 1645 | + | ||||
| 1646 | + codepage@1.15.0: | ||||
| 1647 | + resolution: {integrity: sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==} | ||||
| 1648 | + engines: {node: '>=0.8'} | ||||
| 1649 | + | ||||
| 1650 | + comma-separated-tokens@2.0.3: | ||||
| 1651 | + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} | ||||
| 1652 | + | ||||
| 1653 | + commander@15.0.0: | ||||
| 1654 | + resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==} | ||||
| 1655 | + engines: {node: '>=22.12.0'} | ||||
| 1656 | + | ||||
| 1657 | + commander@7.2.0: | ||||
| 1658 | + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} | ||||
| 1659 | + engines: {node: '>= 10'} | ||||
| 1660 | + | ||||
| 1661 | + commander@8.3.0: | ||||
| 1662 | + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} | ||||
| 1663 | + engines: {node: '>= 12'} | ||||
| 1664 | + | ||||
| 1665 | + concat-map@0.0.1: | ||||
| 1666 | + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} | ||||
| 1667 | + | ||||
| 1668 | + convert-source-map@2.0.0: | ||||
| 1669 | + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} | ||||
| 1670 | + | ||||
| 1671 | + core-util-is@1.0.3: | ||||
| 1672 | + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} | ||||
| 1673 | + | ||||
| 1674 | + cose-base@1.0.3: | ||||
| 1675 | + resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==} | ||||
| 1676 | + | ||||
| 1677 | + cose-base@2.2.0: | ||||
| 1678 | + resolution: {integrity: sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==} | ||||
| 1679 | + | ||||
| 1680 | + crc-32@1.2.2: | ||||
| 1681 | + resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} | ||||
| 1682 | + engines: {node: '>=0.8'} | ||||
| 1683 | + hasBin: true | ||||
| 1684 | + | ||||
| 1685 | + cross-spawn@7.0.6: | ||||
| 1686 | + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} | ||||
| 1687 | + engines: {node: '>= 8'} | ||||
| 1688 | + | ||||
| 1689 | + csstype@3.2.3: | ||||
| 1690 | + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} | ||||
| 1691 | + | ||||
| 1692 | + cytoscape-cose-bilkent@4.1.0: | ||||
| 1693 | + resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==} | ||||
| 1694 | + peerDependencies: | ||||
| 1695 | + cytoscape: ^3.2.0 | ||||
| 1696 | + | ||||
| 1697 | + cytoscape-fcose@2.2.0: | ||||
| 1698 | + resolution: {integrity: sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==} | ||||
| 1699 | + peerDependencies: | ||||
| 1700 | + cytoscape: ^3.2.0 | ||||
| 1701 | + | ||||
| 1702 | + cytoscape@3.34.4: | ||||
| 1703 | + resolution: {integrity: sha512-msY99tMY8iWTg+sIPGfSqDcPNOt4xcj+v/K/7qUFaCUxxlqnMkUYLBjRUzn9W5CU/R2hrmtJa5+UtovrEM2ctg==} | ||||
| 1704 | + engines: {node: '>=0.10'} | ||||
| 1705 | + | ||||
| 1706 | + d3-array@2.12.1: | ||||
| 1707 | + resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==} | ||||
| 1708 | + | ||||
| 1709 | + d3-array@3.2.4: | ||||
| 1710 | + resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} | ||||
| 1711 | + engines: {node: '>=12'} | ||||
| 1712 | + | ||||
| 1713 | + d3-axis@3.0.0: | ||||
| 1714 | + resolution: {integrity: sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==} | ||||
| 1715 | + engines: {node: '>=12'} | ||||
| 1716 | + | ||||
| 1717 | + d3-brush@3.0.0: | ||||
| 1718 | + resolution: {integrity: sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==} | ||||
| 1719 | + engines: {node: '>=12'} | ||||
| 1720 | + | ||||
| 1721 | + d3-chord@3.0.1: | ||||
| 1722 | + resolution: {integrity: sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==} | ||||
| 1723 | + engines: {node: '>=12'} | ||||
| 1724 | + | ||||
| 1725 | + d3-color@3.1.0: | ||||
| 1726 | + resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} | ||||
| 1727 | + engines: {node: '>=12'} | ||||
| 1728 | + | ||||
| 1729 | + d3-contour@4.0.2: | ||||
| 1730 | + resolution: {integrity: sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==} | ||||
| 1731 | + engines: {node: '>=12'} | ||||
| 1732 | + | ||||
| 1733 | + d3-delaunay@6.0.4: | ||||
| 1734 | + resolution: {integrity: sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==} | ||||
| 1735 | + engines: {node: '>=12'} | ||||
| 1736 | + | ||||
| 1737 | + d3-dispatch@3.0.1: | ||||
| 1738 | + resolution: {integrity: sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==} | ||||
| 1739 | + engines: {node: '>=12'} | ||||
| 1740 | + | ||||
| 1741 | + d3-drag@3.0.0: | ||||
| 1742 | + resolution: {integrity: sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==} | ||||
| 1743 | + engines: {node: '>=12'} | ||||
| 1744 | + | ||||
| 1745 | + d3-dsv@3.0.1: | ||||
| 1746 | + resolution: {integrity: sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==} | ||||
| 1747 | + engines: {node: '>=12'} | ||||
| 1748 | + hasBin: true | ||||
| 1749 | + | ||||
| 1750 | + d3-ease@3.0.1: | ||||
| 1751 | + resolution: {integrity: sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==} | ||||
| 1752 | + engines: {node: '>=12'} | ||||
| 1753 | + | ||||
| 1754 | + d3-fetch@3.0.1: | ||||
| 1755 | + resolution: {integrity: sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==} | ||||
| 1756 | + engines: {node: '>=12'} | ||||
| 1757 | + | ||||
| 1758 | + d3-force@3.0.0: | ||||
| 1759 | + resolution: {integrity: sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==} | ||||
| 1760 | + engines: {node: '>=12'} | ||||
| 1761 | + | ||||
| 1762 | + d3-format@3.1.2: | ||||
| 1763 | + resolution: {integrity: sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg==} | ||||
| 1764 | + engines: {node: '>=12'} | ||||
| 1765 | + | ||||
| 1766 | + d3-geo@3.1.1: | ||||
| 1767 | + resolution: {integrity: sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==} | ||||
| 1768 | + engines: {node: '>=12'} | ||||
| 1769 | + | ||||
| 1770 | + d3-hierarchy@3.1.2: | ||||
| 1771 | + resolution: {integrity: sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==} | ||||
| 1772 | + engines: {node: '>=12'} | ||||
| 1773 | + | ||||
| 1774 | + d3-interpolate@3.0.1: | ||||
| 1775 | + resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} | ||||
| 1776 | + engines: {node: '>=12'} | ||||
| 1777 | + | ||||
| 1778 | + d3-path@1.0.9: | ||||
| 1779 | + resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==} | ||||
| 1780 | + | ||||
| 1781 | + d3-path@3.1.0: | ||||
| 1782 | + resolution: {integrity: sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==} | ||||
| 1783 | + engines: {node: '>=12'} | ||||
| 1784 | + | ||||
| 1785 | + d3-polygon@3.0.1: | ||||
| 1786 | + resolution: {integrity: sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==} | ||||
| 1787 | + engines: {node: '>=12'} | ||||
| 1788 | + | ||||
| 1789 | + d3-quadtree@3.0.1: | ||||
| 1790 | + resolution: {integrity: sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==} | ||||
| 1791 | + engines: {node: '>=12'} | ||||
| 1792 | + | ||||
| 1793 | + d3-random@3.0.1: | ||||
| 1794 | + resolution: {integrity: sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==} | ||||
| 1795 | + engines: {node: '>=12'} | ||||
| 1796 | + | ||||
| 1797 | + d3-sankey@0.12.3: | ||||
| 1798 | + resolution: {integrity: sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==} | ||||
| 1799 | + | ||||
| 1800 | + d3-scale-chromatic@3.1.0: | ||||
| 1801 | + resolution: {integrity: sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==} | ||||
| 1802 | + engines: {node: '>=12'} | ||||
| 1803 | + | ||||
| 1804 | + d3-scale@4.0.2: | ||||
| 1805 | + resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} | ||||
| 1806 | + engines: {node: '>=12'} | ||||
| 1807 | + | ||||
| 1808 | + d3-selection@3.0.0: | ||||
| 1809 | + resolution: {integrity: sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==} | ||||
| 1810 | + engines: {node: '>=12'} | ||||
| 1811 | + | ||||
| 1812 | + d3-shape@1.3.7: | ||||
| 1813 | + resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==} | ||||
| 1814 | + | ||||
| 1815 | + d3-shape@3.2.0: | ||||
| 1816 | + resolution: {integrity: sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==} | ||||
| 1817 | + engines: {node: '>=12'} | ||||
| 1818 | + | ||||
| 1819 | + d3-time-format@4.1.0: | ||||
| 1820 | + resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} | ||||
| 1821 | + engines: {node: '>=12'} | ||||
| 1822 | + | ||||
| 1823 | + d3-time@3.1.0: | ||||
| 1824 | + resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} | ||||
| 1825 | + engines: {node: '>=12'} | ||||
| 1826 | + | ||||
| 1827 | + d3-timer@3.0.1: | ||||
| 1828 | + resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==} | ||||
| 1829 | + engines: {node: '>=12'} | ||||
| 1830 | + | ||||
| 1831 | + d3-transition@3.0.1: | ||||
| 1832 | + resolution: {integrity: sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==} | ||||
| 1833 | + engines: {node: '>=12'} | ||||
| 1834 | + peerDependencies: | ||||
| 1835 | + d3-selection: 2 - 3 | ||||
| 1836 | + | ||||
| 1837 | + d3-zoom@3.0.0: | ||||
| 1838 | + resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==} | ||||
| 1839 | + engines: {node: '>=12'} | ||||
| 1840 | + | ||||
| 1841 | + d3@7.9.0: | ||||
| 1842 | + resolution: {integrity: sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==} | ||||
| 1843 | + engines: {node: '>=12'} | ||||
| 1844 | + | ||||
| 1845 | + dagre-d3-es@7.0.14: | ||||
| 1846 | + resolution: {integrity: sha512-P4rFMVq9ESWqmOgK+dlXvOtLwYg0i7u0HBGJER0LZDJT2VHIPAMZ/riPxqJceWMStH5+E61QxFra9kIS3AqdMg==} | ||||
| 1847 | + | ||||
| 1848 | + damerau-levenshtein@1.0.8: | ||||
| 1849 | + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} | ||||
| 1850 | + | ||||
| 1851 | + data-view-buffer@1.0.2: | ||||
| 1852 | + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} | ||||
| 1853 | + engines: {node: '>= 0.4'} | ||||
| 1854 | + | ||||
| 1855 | + data-view-byte-length@1.0.2: | ||||
| 1856 | + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} | ||||
| 1857 | + engines: {node: '>= 0.4'} | ||||
| 1858 | + | ||||
| 1859 | + data-view-byte-offset@1.0.1: | ||||
| 1860 | + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} | ||||
| 1861 | + engines: {node: '>= 0.4'} | ||||
| 1862 | + | ||||
| 1863 | + date-fns@4.4.0: | ||||
| 1864 | + resolution: {integrity: sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==} | ||||
| 1865 | + | ||||
| 1866 | + dayjs@1.11.23: | ||||
| 1867 | + resolution: {integrity: sha512-QDTCU0M0MxR3hQfnlDJfwekQiaanm1ubOD231u73WBckQ/fsamwRLiE2GBz6D3a/xF1NgfiDLJjXBa1hYOYTtQ==} | ||||
| 1868 | + | ||||
| 1869 | + debug@3.2.7: | ||||
| 1870 | + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} | ||||
| 1871 | + peerDependencies: | ||||
| 1872 | + supports-color: '*' | ||||
| 1873 | + peerDependenciesMeta: | ||||
| 1874 | + supports-color: | ||||
| 1875 | + optional: true | ||||
| 1876 | + | ||||
| 1877 | + debug@4.4.3: | ||||
| 1878 | + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} | ||||
| 1879 | + engines: {node: '>=6.0'} | ||||
| 1880 | + peerDependencies: | ||||
| 1881 | + supports-color: '*' | ||||
| 1882 | + peerDependenciesMeta: | ||||
| 1883 | + supports-color: | ||||
| 1884 | + optional: true | ||||
| 1885 | + | ||||
| 1886 | + decimal.js-light@2.5.1: | ||||
| 1887 | + resolution: {integrity: sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==} | ||||
| 1888 | + | ||||
| 1889 | + decode-named-character-reference@1.3.0: | ||||
| 1890 | + resolution: {integrity: sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==} | ||||
| 1891 | + | ||||
| 1892 | + deep-is@0.1.4: | ||||
| 1893 | + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} | ||||
| 1894 | + | ||||
| 1895 | + define-data-property@1.1.4: | ||||
| 1896 | + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} | ||||
| 1897 | + engines: {node: '>= 0.4'} | ||||
| 1898 | + | ||||
| 1899 | + define-properties@1.2.1: | ||||
| 1900 | + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} | ||||
| 1901 | + engines: {node: '>= 0.4'} | ||||
| 1902 | + | ||||
| 1903 | + delaunator@5.1.0: | ||||
| 1904 | + resolution: {integrity: sha512-AGrQ4QSgssa1NGmWmLPqN5NY2KajF5MqxetNEO+o0n3ZwZZeTmt7bBnvzHWrmkZFxGgr4HdyFgelzgi06otLuQ==} | ||||
| 1905 | + | ||||
| 1906 | + dequal@2.0.3: | ||||
| 1907 | + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} | ||||
| 1908 | + engines: {node: '>=6'} | ||||
| 1909 | + | ||||
| 1910 | + detect-libc@2.1.2: | ||||
| 1911 | + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} | ||||
| 1912 | + engines: {node: '>=8'} | ||||
| 1913 | + | ||||
| 1914 | + devlop@1.1.0: | ||||
| 1915 | + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} | ||||
| 1916 | + | ||||
| 1917 | + dingbat-to-unicode@1.0.2: | ||||
| 1918 | + resolution: {integrity: sha512-R0bRerYzy/EZP6QzD3Hkl6JjUDA1Mnn+pd928w0nWjPzihnbAR6dcjGJGiRyznj5E4S1duEKzWrTqw02DPcdzg==} | ||||
| 1919 | + | ||||
| 1920 | + doctrine@2.1.0: | ||||
| 1921 | + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} | ||||
| 1922 | + engines: {node: '>=0.10.0'} | ||||
| 1923 | + | ||||
| 1924 | + docx@9.15.0: | ||||
| 1925 | + resolution: {integrity: sha512-+7gjG6c7aHdi7Yr4idGCsLe6oCXomrCT9cq4SwdNKDH1IQKNIP5t4LIRtCrIYd87k3EO7YTl3VobYCy8Gd+6qg==} | ||||
| 1926 | + engines: {node: '>=16'} | ||||
| 1927 | + | ||||
| 1928 | + dompurify@3.4.17: | ||||
| 1929 | + resolution: {integrity: sha512-B/pSlYVHQ58kqISD/yDjuJ1yfzI34m1gF4lAod2bwSRhiN4K5Cl3H8Af7hqB2PmTL911tdEudnnXn5FnhRoz0w==} | ||||
| 1930 | + | ||||
| 1931 | + duck@0.1.12: | ||||
| 1932 | + resolution: {integrity: sha512-wkctla1O6VfP89gQ+J/yDesM0S7B7XLXjKGzXxMDVFg7uEn706niAtyYovKbyq1oT9YwDcly721/iUWoc8MVRg==} | ||||
| 1933 | + | ||||
| 1934 | + dunder-proto@1.0.1: | ||||
| 1935 | + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} | ||||
| 1936 | + engines: {node: '>= 0.4'} | ||||
| 1937 | + | ||||
| 1938 | + electron-to-chromium@1.5.471: | ||||
| 1939 | + resolution: {integrity: sha512-Lo7jyyneHRYUQYM3WZ2rBEei9FcUIwValFPLifTbr4NTpc6oyUB+nN2rrOtbn3CE5pgz930mYxRJeD+glR7d6Q==} | ||||
| 1940 | + | ||||
| 1941 | + elkjs@0.9.3: | ||||
| 1942 | + resolution: {integrity: sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==} | ||||
| 1943 | + | ||||
| 1944 | + emoji-regex@9.2.2: | ||||
| 1945 | + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} | ||||
| 1946 | + | ||||
| 1947 | + enhanced-resolve@5.26.0: | ||||
| 1948 | + resolution: {integrity: sha512-9vhedylFonb2YGogzUKX6+Ja72gOJbN1QHAqdrvqLwhdl/QWbKopzoUC9EbQNVsAns/bx/4uyqalrQAoy1IByw==} | ||||
| 1949 | + engines: {node: '>=10.13.0'} | ||||
| 1950 | + | ||||
| 1951 | + entities@6.0.1: | ||||
| 1952 | + resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} | ||||
| 1953 | + engines: {node: '>=0.12'} | ||||
| 1954 | + | ||||
| 1955 | + es-abstract-get@1.0.0: | ||||
| 1956 | + resolution: {integrity: sha512-6PMWXpdhshVvFp+FoWYs1EvG1Nj0tvk0dZM+XcK0xMEM1czRVcP6ohqPWHy6qPagSpC8j4+p89WXlT+xXJs/fg==} | ||||
| 1957 | + engines: {node: '>= 0.4'} | ||||
| 1958 | + | ||||
| 1959 | + es-abstract@1.24.2: | ||||
| 1960 | + resolution: {integrity: sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==} | ||||
| 1961 | + engines: {node: '>= 0.4'} | ||||
| 1962 | + | ||||
| 1963 | + es-define-property@1.0.1: | ||||
| 1964 | + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} | ||||
| 1965 | + engines: {node: '>= 0.4'} | ||||
| 1966 | + | ||||
| 1967 | + es-errors@1.3.0: | ||||
| 1968 | + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} | ||||
| 1969 | + engines: {node: '>= 0.4'} | ||||
| 1970 | + | ||||
| 1971 | + es-iterator-helpers@1.4.0: | ||||
| 1972 | + resolution: {integrity: sha512-c/A0P0oxkACDc+cKWw8evLXK83oBKgn0qPOqCYT4x9uolpCIJAcYvJC9QYKNDRPsTeGyCrQ326jrvgZWdCdK5Q==} | ||||
| 1973 | + engines: {node: '>= 0.4'} | ||||
| 1974 | + | ||||
| 1975 | + es-object-atoms@1.1.2: | ||||
| 1976 | + resolution: {integrity: sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==} | ||||
| 1977 | + engines: {node: '>= 0.4'} | ||||
| 1978 | + | ||||
| 1979 | + es-set-tostringtag@2.1.0: | ||||
| 1980 | + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} | ||||
| 1981 | + engines: {node: '>= 0.4'} | ||||
| 1982 | + | ||||
| 1983 | + es-shim-unscopables@1.1.0: | ||||
| 1984 | + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} | ||||
| 1985 | + engines: {node: '>= 0.4'} | ||||
| 1986 | + | ||||
| 1987 | + es-to-primitive@1.3.4: | ||||
| 1988 | + resolution: {integrity: sha512-yPDz7wqpg1/mmHLmS3tcfTfbw5f1eryXvyghYBffGdERwe+mV7ZcWzTR8LR17Kvqt3qfPurjlonmnq3MKXIOXw==} | ||||
| 1989 | + engines: {node: '>= 0.4'} | ||||
| 1990 | + | ||||
| 1991 | + es-toolkit@1.53.1: | ||||
| 1992 | + resolution: {integrity: sha512-VhMc6IXmexu8iYFfL2aaAww6IvJTdHlqBLruLoEUs33YD4IcP5DdZcLOybMsMmmLsiy1c8PsiLsrM0DdIuuRUA==} | ||||
| 1993 | + | ||||
| 1994 | + esbuild@0.28.2: | ||||
| 1995 | + resolution: {integrity: sha512-HKVLS8dvII+xoKW9kmqxbRKrnWEXfJJr/FZhhJmiqIB0e053QNYFqOBouTMO/k5sID4MvCiUCvv8b9M4h32wIA==} | ||||
| 1996 | + engines: {node: '>=18'} | ||||
| 1997 | + hasBin: true | ||||
| 1998 | + | ||||
| 1999 | + escalade@3.2.0: | ||||
| 2000 | + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} | ||||
| 2001 | + engines: {node: '>=6'} | ||||
| 2002 | + | ||||
| 2003 | + escape-string-regexp@4.0.0: | ||||
| 2004 | + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} | ||||
| 2005 | + engines: {node: '>=10'} | ||||
| 2006 | + | ||||
| 2007 | + escape-string-regexp@5.0.0: | ||||
| 2008 | + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} | ||||
| 2009 | + engines: {node: '>=12'} | ||||
| 2010 | + | ||||
| 2011 | + eslint-config-next@16.4.3: | ||||
| 2012 | + resolution: {integrity: sha512-j9IqBma6abp800frdUURaizYMgXOK+jNGyq6CsYcM9AxpSJs5D/TgMNGeAmRUilZvA7g9V1Tr71gNg9/SVTuMQ==} | ||||
| 2013 | + peerDependencies: | ||||
| 2014 | + eslint: '>=9.0.0' | ||||
| 2015 | + typescript: '>=3.3.1' | ||||
| 2016 | + peerDependenciesMeta: | ||||
| 2017 | + typescript: | ||||
| 2018 | + optional: true | ||||
| 2019 | + | ||||
| 2020 | + eslint-import-resolver-node@0.3.10: | ||||
| 2021 | + resolution: {integrity: sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==} | ||||
| 2022 | + | ||||
| 2023 | + eslint-import-resolver-typescript@3.10.1: | ||||
| 2024 | + resolution: {integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==} | ||||
| 2025 | + engines: {node: ^14.18.0 || >=16.0.0} | ||||
| 2026 | + peerDependencies: | ||||
| 2027 | + eslint: '*' | ||||
| 2028 | + eslint-plugin-import: '*' | ||||
| 2029 | + eslint-plugin-import-x: '*' | ||||
| 2030 | + peerDependenciesMeta: | ||||
| 2031 | + eslint-plugin-import: | ||||
| 2032 | + optional: true | ||||
| 2033 | + eslint-plugin-import-x: | ||||
| 2034 | + optional: true | ||||
| 2035 | + | ||||
| 2036 | + eslint-module-utils@2.14.0: | ||||
| 2037 | + resolution: {integrity: sha512-W2WCRZ9Dqntd+2u8jJcVMV2PKulc6RdLgUUoh/yQr3uB6lo/ZOeGx11sv60/8S4QFFKNslAlWhr9u0Ef7ZW6Ig==} | ||||
| 2038 | + engines: {node: '>=4'} | ||||
| 2039 | + peerDependencies: | ||||
| 2040 | + '@typescript-eslint/parser': '*' | ||||
| 2041 | + eslint: '*' | ||||
| 2042 | + eslint-import-resolver-node: '*' | ||||
| 2043 | + eslint-import-resolver-typescript: '*' | ||||
| 2044 | + eslint-import-resolver-webpack: '*' | ||||
| 2045 | + peerDependenciesMeta: | ||||
| 2046 | + '@typescript-eslint/parser': | ||||
| 2047 | + optional: true | ||||
| 2048 | + eslint: | ||||
| 2049 | + optional: true | ||||
| 2050 | + eslint-import-resolver-node: | ||||
| 2051 | + optional: true | ||||
| 2052 | + eslint-import-resolver-typescript: | ||||
| 2053 | + optional: true | ||||
| 2054 | + eslint-import-resolver-webpack: | ||||
| 2055 | + optional: true | ||||
| 2056 | + | ||||
| 2057 | + eslint-plugin-import@2.32.0: | ||||
| 2058 | + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} | ||||
| 2059 | + engines: {node: '>=4'} | ||||
| 2060 | + peerDependencies: | ||||
| 2061 | + '@typescript-eslint/parser': '*' | ||||
| 2062 | + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 | ||||
| 2063 | + peerDependenciesMeta: | ||||
| 2064 | + '@typescript-eslint/parser': | ||||
| 2065 | + optional: true | ||||
| 2066 | + | ||||
| 2067 | + eslint-plugin-jsx-a11y@6.10.2: | ||||
| 2068 | + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} | ||||
| 2069 | + engines: {node: '>=4.0'} | ||||
| 2070 | + peerDependencies: | ||||
| 2071 | + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 | ||||
| 2072 | + | ||||
| 2073 | + eslint-plugin-react-hooks@7.1.1: | ||||
| 2074 | + resolution: {integrity: sha512-f2I7Gw6JbvCexzIInuSbZpfdQ44D7iqdWX01FKLvrPgqxoE7oMj8clOfto8U6vYiz4yd5oKu39rRSVOe1zRu0g==} | ||||
| 2075 | + engines: {node: '>=18'} | ||||
| 2076 | + peerDependencies: | ||||
| 2077 | + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 || ^10.0.0 | ||||
| 2078 | + | ||||
| 2079 | + eslint-plugin-react@7.37.5: | ||||
| 2080 | + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} | ||||
| 2081 | + engines: {node: '>=4'} | ||||
| 2082 | + peerDependencies: | ||||
| 2083 | + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 | ||||
| 2084 | + | ||||
| 2085 | + eslint-scope@9.1.2: | ||||
| 2086 | + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} | ||||
| 2087 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 2088 | + | ||||
| 2089 | + eslint-visitor-keys@3.4.3: | ||||
| 2090 | + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} | ||||
| 2091 | + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | ||||
| 2092 | + | ||||
| 2093 | + eslint-visitor-keys@5.0.1: | ||||
| 2094 | + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} | ||||
| 2095 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 2096 | + | ||||
| 2097 | + eslint@10.14.0: | ||||
| 2098 | + resolution: {integrity: sha512-T0pNsxkb9IKmtQjhpK3d7nWOpFv+YHuMbTJnSVMoQblF0onvXfErrtp4V1jHtsQPan7dKaGVD0q1WCXnzMF31A==} | ||||
| 2099 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 2100 | + hasBin: true | ||||
| 2101 | + peerDependencies: | ||||
| 2102 | + jiti: '*' | ||||
| 2103 | + peerDependenciesMeta: | ||||
| 2104 | + jiti: | ||||
| 2105 | + optional: true | ||||
| 2106 | + | ||||
| 2107 | + espree@11.2.0: | ||||
| 2108 | + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} | ||||
| 2109 | + engines: {node: ^20.19.0 || ^22.13.0 || >=24} | ||||
| 2110 | + | ||||
| 2111 | + esquery@1.7.0: | ||||
| 2112 | + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} | ||||
| 2113 | + engines: {node: '>=0.10'} | ||||
| 2114 | + | ||||
| 2115 | + esrecurse@4.3.0: | ||||
| 2116 | + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} | ||||
| 2117 | + engines: {node: '>=4.0'} | ||||
| 2118 | + | ||||
| 2119 | + estraverse@5.3.0: | ||||
| 2120 | + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} | ||||
| 2121 | + engines: {node: '>=4.0'} | ||||
| 2122 | + | ||||
| 2123 | + estree-util-is-identifier-name@3.0.0: | ||||
| 2124 | + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} | ||||
| 2125 | + | ||||
| 2126 | + esutils@2.0.3: | ||||
| 2127 | + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} | ||||
| 2128 | + engines: {node: '>=0.10.0'} | ||||
| 2129 | + | ||||
| 2130 | + eventemitter3@5.0.4: | ||||
| 2131 | + resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} | ||||
| 2132 | + | ||||
| 2133 | + extend@3.0.2: | ||||
| 2134 | + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} | ||||
| 2135 | + | ||||
| 2136 | + fast-deep-equal@3.1.3: | ||||
| 2137 | + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} | ||||
| 2138 | + | ||||
| 2139 | + fast-glob@3.3.1: | ||||
| 2140 | + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} | ||||
| 2141 | + engines: {node: '>=8.6.0'} | ||||
| 2142 | + | ||||
| 2143 | + fast-json-stable-stringify@2.1.0: | ||||
| 2144 | + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} | ||||
| 2145 | + | ||||
| 2146 | + fast-levenshtein@2.0.6: | ||||
| 2147 | + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} | ||||
| 2148 | + | ||||
| 2149 | + fast-sha256@1.3.0: | ||||
| 2150 | + resolution: {integrity: sha512-n11RGP/lrWEFI/bWdygLxhI+pVeo1ZYIVwvvPkW7azl/rOy+F3HYRZ2K5zeE9mmkhQppyv9sQFx0JM9UabnpPQ==} | ||||
| 2151 | + | ||||
| 2152 | + fastq@1.20.3: | ||||
| 2153 | + resolution: {integrity: sha512-XKv5nnLs6nLF71NgiKJLIZFLkPyIEuOselLG7ujZnGrRfQK8HpvY+WqKhAJUAdLomwVHErVS4LfxFlPq0/FTAw==} | ||||
| 2154 | + | ||||
| 2155 | + fdir@6.5.0: | ||||
| 2156 | + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} | ||||
| 2157 | + engines: {node: '>=12.0.0'} | ||||
| 2158 | + peerDependencies: | ||||
| 2159 | + picomatch: ^3 || ^4 | ||||
| 2160 | + peerDependenciesMeta: | ||||
| 2161 | + picomatch: | ||||
| 2162 | + optional: true | ||||
| 2163 | + | ||||
| 2164 | + fflate@0.8.3: | ||||
| 2165 | + resolution: {integrity: sha512-tbZNuJrLwGUp3zshBtdy4W+ORxZuIh8a5ilyIEQDC5rY1f3U20JMry0Ll3WBzU58EZKsEuJFXhb5gwv8CsPvgA==} | ||||
| 2166 | + | ||||
| 2167 | + file-entry-cache@11.1.5: | ||||
| 2168 | + resolution: {integrity: sha512-+PFTHITI08JIGhnNpGNI8T8inUpgZfk3GNEqfT9R2zZV2iFXg3CvqzSl/uEhs7TSGujYRELEANyDvS8Fj7+S7Q==} | ||||
| 2169 | + | ||||
| 2170 | + fill-range@7.1.1: | ||||
| 2171 | + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} | ||||
| 2172 | + engines: {node: '>=8'} | ||||
| 2173 | + | ||||
| 2174 | + find-up@5.0.0: | ||||
| 2175 | + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} | ||||
| 2176 | + engines: {node: '>=10'} | ||||
| 2177 | + | ||||
| 2178 | + flat-cache@6.1.23: | ||||
| 2179 | + resolution: {integrity: sha512-f++BY9pTk+983xK1FLzlLpmM0i0z+jHmx3QESGkURMXujQZz1k5wzwX6hjnQ8goaD0B+sYnDK1yZ6MTyZfUaqA==} | ||||
| 2180 | + | ||||
| 2181 | + flatted@3.4.4: | ||||
| 2182 | + resolution: {integrity: sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==} | ||||
| 2183 | + | ||||
| 2184 | + for-each@0.3.5: | ||||
| 2185 | + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} | ||||
| 2186 | + engines: {node: '>= 0.4'} | ||||
| 2187 | + | ||||
| 2188 | + frac@1.1.2: | ||||
| 2189 | + resolution: {integrity: sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==} | ||||
| 2190 | + engines: {node: '>=0.8'} | ||||
| 2191 | + | ||||
| 2192 | + fsevents@2.3.3: | ||||
| 2193 | + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} | ||||
| 2194 | + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} | ||||
| 2195 | + os: [darwin] | ||||
| 2196 | + | ||||
| 2197 | + function-bind@1.1.2: | ||||
| 2198 | + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} | ||||
| 2199 | + | ||||
| 2200 | + function.prototype.name@1.2.0: | ||||
| 2201 | + resolution: {integrity: sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==} | ||||
| 2202 | + engines: {node: '>= 0.4'} | ||||
| 2203 | + | ||||
| 2204 | + functions-have-names@1.2.3: | ||||
| 2205 | + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} | ||||
| 2206 | + | ||||
| 2207 | + generator-function@2.0.1: | ||||
| 2208 | + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} | ||||
| 2209 | + engines: {node: '>= 0.4'} | ||||
| 2210 | + | ||||
| 2211 | + gensync@1.0.0-beta.2: | ||||
| 2212 | + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} | ||||
| 2213 | + engines: {node: '>=6.9.0'} | ||||
| 2214 | + | ||||
| 2215 | + get-intrinsic@1.3.0: | ||||
| 2216 | + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} | ||||
| 2217 | + engines: {node: '>= 0.4'} | ||||
| 2218 | + | ||||
| 2219 | + get-proto@1.0.1: | ||||
| 2220 | + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} | ||||
| 2221 | + engines: {node: '>= 0.4'} | ||||
| 2222 | + | ||||
| 2223 | + get-symbol-description@1.1.0: | ||||
| 2224 | + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} | ||||
| 2225 | + engines: {node: '>= 0.4'} | ||||
| 2226 | + | ||||
| 2227 | + get-tsconfig@4.14.3: | ||||
| 2228 | + resolution: {integrity: sha512-++QEw4DIY7WGoukz+/+A/8dGYPT9l9yIadnmSgZ8Rjr3YVSVDipQSO9CdnJo9ePqFqUUqh+wk9uIaoiAwsiPkA==} | ||||
| 2229 | + | ||||
| 2230 | + glob-parent@5.1.2: | ||||
| 2231 | + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} | ||||
| 2232 | + engines: {node: '>= 6'} | ||||
| 2233 | + | ||||
| 2234 | + glob-parent@6.0.2: | ||||
| 2235 | + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} | ||||
| 2236 | + engines: {node: '>=10.13.0'} | ||||
| 2237 | + | ||||
| 2238 | + globals@16.4.0: | ||||
| 2239 | + resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==} | ||||
| 2240 | + engines: {node: '>=18'} | ||||
| 2241 | + | ||||
| 2242 | + globalthis@1.0.4: | ||||
| 2243 | + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} | ||||
| 2244 | + engines: {node: '>= 0.4'} | ||||
| 2245 | + | ||||
| 2246 | + gopd@1.2.0: | ||||
| 2247 | + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} | ||||
| 2248 | + engines: {node: '>= 0.4'} | ||||
| 2249 | + | ||||
| 2250 | + graceful-fs@4.2.11: | ||||
| 2251 | + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} | ||||
| 2252 | + | ||||
| 2253 | + hachure-fill@0.5.2: | ||||
| 2254 | + resolution: {integrity: sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==} | ||||
| 2255 | + | ||||
| 2256 | + has-bigints@1.1.0: | ||||
| 2257 | + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} | ||||
| 2258 | + engines: {node: '>= 0.4'} | ||||
| 2259 | + | ||||
| 2260 | + has-property-descriptors@1.0.2: | ||||
| 2261 | + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} | ||||
| 2262 | + | ||||
| 2263 | + has-proto@1.2.0: | ||||
| 2264 | + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} | ||||
| 2265 | + engines: {node: '>= 0.4'} | ||||
| 2266 | + | ||||
| 2267 | + has-symbols@1.1.0: | ||||
| 2268 | + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} | ||||
| 2269 | + engines: {node: '>= 0.4'} | ||||
| 2270 | + | ||||
| 2271 | + has-tostringtag@1.0.2: | ||||
| 2272 | + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} | ||||
| 2273 | + engines: {node: '>= 0.4'} | ||||
| 2274 | + | ||||
| 2275 | + hashery@1.5.1: | ||||
| 2276 | + resolution: {integrity: sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==} | ||||
| 2277 | + engines: {node: '>=20'} | ||||
| 2278 | + | ||||
| 2279 | + hasown@2.0.4: | ||||
| 2280 | + resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} | ||||
| 2281 | + engines: {node: '>= 0.4'} | ||||
| 2282 | + | ||||
| 2283 | + hast-util-from-dom@5.0.1: | ||||
| 2284 | + resolution: {integrity: sha512-N+LqofjR2zuzTjCPzyDUdSshy4Ma6li7p/c3pA78uTwzFgENbgbUrm2ugwsOdcjI1muO+o6Dgzp9p8WHtn/39Q==} | ||||
| 2285 | + | ||||
| 2286 | + hast-util-from-html-isomorphic@2.0.0: | ||||
| 2287 | + resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==} | ||||
| 2288 | + | ||||
| 2289 | + hast-util-from-html@2.0.3: | ||||
| 2290 | + resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} | ||||
| 2291 | + | ||||
| 2292 | + hast-util-from-parse5@8.0.4: | ||||
| 2293 | + resolution: {integrity: sha512-Yq7XlXor0Cpb71sI2E0zpv8QxQ5a6rfhDEETk4bcgrFX2SvJAY2PHocWwFtL6U9qyfiyByW3wZ6sZEfP2kW81g==} | ||||
| 2294 | + | ||||
| 2295 | + hast-util-parse-selector@4.0.0: | ||||
| 2296 | + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} | ||||
| 2297 | + | ||||
| 2298 | + hast-util-to-jsx-runtime@2.3.7: | ||||
| 2299 | + resolution: {integrity: sha512-F7DNV2NMcTxA4GqPVHnXzX+mpoPHAIY9rJAVH3CZ1FdBZOcBUEjUuvMkMpHVs/sicEtznh9tMGj5WUR9S4E2rg==} | ||||
| 2300 | + | ||||
| 2301 | + hast-util-to-text@4.0.3: | ||||
| 2302 | + resolution: {integrity: sha512-5yrlWOvGFs6CqHriUpSsNrjzT/Tdo+IOQudbznxOn8K5qblp18MJyzOg8IgDOKQ8MYgQcJA7SusuCjSpDr8mSA==} | ||||
| 2303 | + | ||||
| 2304 | + hast-util-whitespace@3.0.0: | ||||
| 2305 | + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} | ||||
| 2306 | + | ||||
| 2307 | + hastscript@9.0.3: | ||||
| 2308 | + resolution: {integrity: sha512-1ALZXSmCGmW3h8AMz4R4+QKSKFi7sNgXLVwmwB8FYVtl1CwQ3WDkSAEY/d5tp1g/vbQgq2s1WlHgfO3jbw1TsA==} | ||||
| 2309 | + | ||||
| 2310 | + hermes-estree@0.25.1: | ||||
| 2311 | + resolution: {integrity: sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==} | ||||
| 2312 | + | ||||
| 2313 | + hermes-parser@0.25.1: | ||||
| 2314 | + resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==} | ||||
| 2315 | + | ||||
| 2316 | + highlight.js@11.11.2: | ||||
| 2317 | + resolution: {integrity: sha512-oaXMACAU0kzOMXBjWpNcX+vlwSBCIAiZ9BHa7gA15NOTtT2L/l8OSZDuqS2XppOhZBPJ7hm4o8ep2kyuip2uEQ==} | ||||
| 2318 | + engines: {node: '>=12.0.0'} | ||||
| 2319 | + | ||||
| 2320 | + highlight.js@11.12.0: | ||||
| 2321 | + resolution: {integrity: sha512-nbfWpyRMcMrPMmDwJB+dhX/eiaPKtc2RB+0QZskqJ3WjRA/FDS0e9hZrx8EC/lbEv8gXy98FcDbNa/dspAaJMg==} | ||||
| 2322 | + engines: {node: '>=12.0.0'} | ||||
| 2323 | + | ||||
| 2324 | + hookified@1.15.1: | ||||
| 2325 | + resolution: {integrity: sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==} | ||||
| 2326 | + | ||||
| 2327 | + hookified@2.2.0: | ||||
| 2328 | + resolution: {integrity: sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==} | ||||
| 2329 | + | ||||
| 2330 | + html-url-attributes@3.0.1: | ||||
| 2331 | + resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} | ||||
| 2332 | + | ||||
| 2333 | + iconv-lite@0.6.3: | ||||
| 2334 | + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} | ||||
| 2335 | + engines: {node: '>=0.10.0'} | ||||
| 2336 | + | ||||
| 2337 | + ignore@5.3.2: | ||||
| 2338 | + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} | ||||
| 2339 | + engines: {node: '>= 4'} | ||||
| 2340 | + | ||||
| 2341 | + ignore@7.0.14: | ||||
| 2342 | + resolution: {integrity: sha512-wCBiZ77u1tuWde6G/nfOtLaCTYcFDU5yCzARzK10y+rLhzYoL7a7yEemcopcc2Mzow7gZOIjnV2ym1NYmdiJOQ==} | ||||
| 2343 | + engines: {node: '>= 4'} | ||||
| 2344 | + | ||||
| 2345 | + immediate@3.0.6: | ||||
| 2346 | + resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} | ||||
| 2347 | + | ||||
| 2348 | + immer@11.2.9: | ||||
| 2349 | + resolution: {integrity: sha512-IQ4UEtXjZjyefyWjtLEDXUSrF6T2hwjKPi6BIJl3bY/2XXW24d6cNGdXJSBOA/+KNnuiXkZY6DR0C3efolhitA==} | ||||
| 2350 | + | ||||
| 2351 | + import-meta-resolve@4.2.0: | ||||
| 2352 | + resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} | ||||
| 2353 | + | ||||
| 2354 | + imurmurhash@0.1.4: | ||||
| 2355 | + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} | ||||
| 2356 | + engines: {node: '>=0.8.19'} | ||||
| 2357 | + | ||||
| 2358 | + inherits@2.0.4: | ||||
| 2359 | + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} | ||||
| 2360 | + | ||||
| 2361 | + inline-style-parser@0.2.9: | ||||
| 2362 | + resolution: {integrity: sha512-IttN8BqKLxzUrnTqHI+/hwAJQItBAUjdoHERCDv+oOuX48VP6bzW8+QjOXSfoevzq3YrYAwX1uLHp8TqO9yIeg==} | ||||
| 2363 | + | ||||
| 2364 | + internal-slot@1.1.0: | ||||
| 2365 | + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} | ||||
| 2366 | + engines: {node: '>= 0.4'} | ||||
| 2367 | + | ||||
| 2368 | + internmap@1.0.1: | ||||
| 2369 | + resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==} | ||||
| 2370 | + | ||||
| 2371 | + internmap@2.0.3: | ||||
| 2372 | + resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} | ||||
| 2373 | + engines: {node: '>=12'} | ||||
| 2374 | + | ||||
| 2375 | + is-alphabetical@2.0.1: | ||||
| 2376 | + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} | ||||
| 2377 | + | ||||
| 2378 | + is-alphanumerical@2.0.1: | ||||
| 2379 | + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} | ||||
| 2380 | + | ||||
| 2381 | + is-array-buffer@3.0.5: | ||||
| 2382 | + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} | ||||
| 2383 | + engines: {node: '>= 0.4'} | ||||
| 2384 | + | ||||
| 2385 | + is-async-function@2.1.1: | ||||
| 2386 | + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} | ||||
| 2387 | + engines: {node: '>= 0.4'} | ||||
| 2388 | + | ||||
| 2389 | + is-bigint@1.1.0: | ||||
| 2390 | + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} | ||||
| 2391 | + engines: {node: '>= 0.4'} | ||||
| 2392 | + | ||||
| 2393 | + is-boolean-object@1.2.2: | ||||
| 2394 | + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} | ||||
| 2395 | + engines: {node: '>= 0.4'} | ||||
| 2396 | + | ||||
| 2397 | + is-bun-module@2.0.0: | ||||
| 2398 | + resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} | ||||
| 2399 | + | ||||
| 2400 | + is-callable@1.2.7: | ||||
| 2401 | + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} | ||||
| 2402 | + engines: {node: '>= 0.4'} | ||||
| 2403 | + | ||||
| 2404 | + is-core-module@2.17.0: | ||||
| 2405 | + resolution: {integrity: sha512-J/vG0zBCbIKOQFfufSwyXdMrsohyJIUNkrnmo6WZGzoM7tr/lsbfW5b2BvisL6zsyMzK9UxV9L6c7AoFbyXHOA==} | ||||
| 2406 | + engines: {node: '>= 0.4'} | ||||
| 2407 | + | ||||
| 2408 | + is-data-view@1.0.2: | ||||
| 2409 | + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} | ||||
| 2410 | + engines: {node: '>= 0.4'} | ||||
| 2411 | + | ||||
| 2412 | + is-date-object@1.1.0: | ||||
| 2413 | + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} | ||||
| 2414 | + engines: {node: '>= 0.4'} | ||||
| 2415 | + | ||||
| 2416 | + is-decimal@2.0.1: | ||||
| 2417 | + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} | ||||
| 2418 | + | ||||
| 2419 | + is-document.all@1.0.0: | ||||
| 2420 | + resolution: {integrity: sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==} | ||||
| 2421 | + engines: {node: '>= 0.4'} | ||||
| 2422 | + | ||||
| 2423 | + is-extglob@2.1.1: | ||||
| 2424 | + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} | ||||
| 2425 | + engines: {node: '>=0.10.0'} | ||||
| 2426 | + | ||||
| 2427 | + is-finalizationregistry@1.1.1: | ||||
| 2428 | + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} | ||||
| 2429 | + engines: {node: '>= 0.4'} | ||||
| 2430 | + | ||||
| 2431 | + is-generator-function@1.1.2: | ||||
| 2432 | + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} | ||||
| 2433 | + engines: {node: '>= 0.4'} | ||||
| 2434 | + | ||||
| 2435 | + is-glob@4.0.3: | ||||
| 2436 | + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} | ||||
| 2437 | + engines: {node: '>=0.10.0'} | ||||
| 2438 | + | ||||
| 2439 | + is-hexadecimal@2.0.1: | ||||
| 2440 | + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} | ||||
| 2441 | + | ||||
| 2442 | + is-map@2.0.3: | ||||
| 2443 | + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} | ||||
| 2444 | + engines: {node: '>= 0.4'} | ||||
| 2445 | + | ||||
| 2446 | + is-negative-zero@2.0.3: | ||||
| 2447 | + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} | ||||
| 2448 | + engines: {node: '>= 0.4'} | ||||
| 2449 | + | ||||
| 2450 | + is-number-object@1.1.1: | ||||
| 2451 | + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} | ||||
| 2452 | + engines: {node: '>= 0.4'} | ||||
| 2453 | + | ||||
| 2454 | + is-number@7.0.0: | ||||
| 2455 | + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} | ||||
| 2456 | + engines: {node: '>=0.12.0'} | ||||
| 2457 | + | ||||
| 2458 | + is-plain-obj@4.1.0: | ||||
| 2459 | + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} | ||||
| 2460 | + engines: {node: '>=12'} | ||||
| 2461 | + | ||||
| 2462 | + is-regex@1.2.1: | ||||
| 2463 | + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} | ||||
| 2464 | + engines: {node: '>= 0.4'} | ||||
| 2465 | + | ||||
| 2466 | + is-set@2.0.3: | ||||
| 2467 | + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} | ||||
| 2468 | + engines: {node: '>= 0.4'} | ||||
| 2469 | + | ||||
| 2470 | + is-shared-array-buffer@1.0.4: | ||||
| 2471 | + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} | ||||
| 2472 | + engines: {node: '>= 0.4'} | ||||
| 2473 | + | ||||
| 2474 | + is-string@1.1.1: | ||||
| 2475 | + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} | ||||
| 2476 | + engines: {node: '>= 0.4'} | ||||
| 2477 | + | ||||
| 2478 | + is-symbol@1.1.1: | ||||
| 2479 | + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} | ||||
| 2480 | + engines: {node: '>= 0.4'} | ||||
| 2481 | + | ||||
| 2482 | + is-typed-array@1.1.15: | ||||
| 2483 | + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} | ||||
| 2484 | + engines: {node: '>= 0.4'} | ||||
| 2485 | + | ||||
| 2486 | + is-weakmap@2.0.2: | ||||
| 2487 | + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} | ||||
| 2488 | + engines: {node: '>= 0.4'} | ||||
| 2489 | + | ||||
| 2490 | + is-weakref@1.1.1: | ||||
| 2491 | + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} | ||||
| 2492 | + engines: {node: '>= 0.4'} | ||||
| 2493 | + | ||||
| 2494 | + is-weakset@2.0.4: | ||||
| 2495 | + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} | ||||
| 2496 | + engines: {node: '>= 0.4'} | ||||
| 2497 | + | ||||
| 2498 | + isarray@1.0.0: | ||||
| 2499 | + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} | ||||
| 2500 | + | ||||
| 2501 | + isarray@2.0.5: | ||||
| 2502 | + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} | ||||
| 2503 | + | ||||
| 2504 | + isexe@2.0.0: | ||||
| 2505 | + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} | ||||
| 2506 | + | ||||
| 2507 | + iterator.prototype@1.1.5: | ||||
| 2508 | + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} | ||||
| 2509 | + engines: {node: '>= 0.4'} | ||||
| 2510 | + | ||||
| 2511 | + jiti@2.7.0: | ||||
| 2512 | + resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==} | ||||
| 2513 | + hasBin: true | ||||
| 2514 | + | ||||
| 2515 | + js-tokens@4.0.0: | ||||
| 2516 | + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} | ||||
| 2517 | + | ||||
| 2518 | + jsesc@3.1.0: | ||||
| 2519 | + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} | ||||
| 2520 | + engines: {node: '>=6'} | ||||
| 2521 | + hasBin: true | ||||
| 2522 | + | ||||
| 2523 | + json-schema-to-ts@3.1.1: | ||||
| 2524 | + resolution: {integrity: sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==} | ||||
| 2525 | + engines: {node: '>=16'} | ||||
| 2526 | + | ||||
| 2527 | + json-schema-traverse@0.4.1: | ||||
| 2528 | + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} | ||||
| 2529 | + | ||||
| 2530 | + json-stable-stringify-without-jsonify@1.0.1: | ||||
| 2531 | + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} | ||||
| 2532 | + | ||||
| 2533 | + json5@1.0.2: | ||||
| 2534 | + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} | ||||
| 2535 | + hasBin: true | ||||
| 2536 | + | ||||
| 2537 | + json5@2.2.3: | ||||
| 2538 | + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} | ||||
| 2539 | + engines: {node: '>=6'} | ||||
| 2540 | + hasBin: true | ||||
| 2541 | + | ||||
| 2542 | + jsx-ast-utils@3.3.5: | ||||
| 2543 | + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} | ||||
| 2544 | + engines: {node: '>=4.0'} | ||||
| 2545 | + | ||||
| 2546 | + jszip@3.10.2: | ||||
| 2547 | + resolution: {integrity: sha512-3l+rb15IOWtUhU0H5MFqES/T6Kh7abYwjosBey/vD6hDt8zoEffkSC5Ws5SGtgVw3gBx2NEbhTeSW1+kWkpyTQ==} | ||||
| 2548 | + | ||||
| 2549 | + katex@0.16.47: | ||||
| 2550 | + resolution: {integrity: sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==} | ||||
| 2551 | + hasBin: true | ||||
| 2552 | + | ||||
| 2553 | + katex@0.18.11: | ||||
| 2554 | + resolution: {integrity: sha512-yvyz/2VMKqoho/35Hat5w37wIEdWJ5ElVMidTAlWrxr5uW4aBGsEpveTmKh18/zw08v/7lGswCPon4OhqmqrTA==} | ||||
| 2555 | + deprecated: Accidentally published with breaking changes. Use 0.19.0 instead. | ||||
| 2556 | + hasBin: true | ||||
| 2557 | + | ||||
| 2558 | + katex@0.19.1: | ||||
| 2559 | + resolution: {integrity: sha512-jG8uKntjSEcm2EpQOh0XturpPuuC9r3Sq5HLHdsFdWZT27E672SF19QEi+of0/YeOy15lDgRhKvr5614uRrEfA==} | ||||
| 2560 | + hasBin: true | ||||
| 2561 | + | ||||
| 2562 | + keyv@5.6.0: | ||||
| 2563 | + resolution: {integrity: sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==} | ||||
| 2564 | + | ||||
| 2565 | + khroma@2.1.0: | ||||
| 2566 | + resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==} | ||||
| 2567 | + | ||||
| 2568 | + language-subtag-registry@0.3.23: | ||||
| 2569 | + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} | ||||
| 2570 | + | ||||
| 2571 | + language-tags@1.0.9: | ||||
| 2572 | + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} | ||||
| 2573 | + engines: {node: '>=0.10'} | ||||
| 2574 | + | ||||
| 2575 | + layout-base@1.0.2: | ||||
| 2576 | + resolution: {integrity: sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==} | ||||
| 2577 | + | ||||
| 2578 | + layout-base@2.0.1: | ||||
| 2579 | + resolution: {integrity: sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==} | ||||
| 2580 | + | ||||
| 2581 | + levn@0.4.1: | ||||
| 2582 | + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} | ||||
| 2583 | + engines: {node: '>= 0.8.0'} | ||||
| 2584 | + | ||||
| 2585 | + lie@3.3.0: | ||||
| 2586 | + resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} | ||||
| 2587 | + | ||||
| 2588 | + lightningcss-android-arm64@1.32.0: | ||||
| 2589 | + resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} | ||||
| 2590 | + engines: {node: '>= 12.0.0'} | ||||
| 2591 | + cpu: [arm64] | ||||
| 2592 | + os: [android] | ||||
| 2593 | + | ||||
| 2594 | + lightningcss-darwin-arm64@1.32.0: | ||||
| 2595 | + resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} | ||||
| 2596 | + engines: {node: '>= 12.0.0'} | ||||
| 2597 | + cpu: [arm64] | ||||
| 2598 | + os: [darwin] | ||||
| 2599 | + | ||||
| 2600 | + lightningcss-darwin-x64@1.32.0: | ||||
| 2601 | + resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} | ||||
| 2602 | + engines: {node: '>= 12.0.0'} | ||||
| 2603 | + cpu: [x64] | ||||
| 2604 | + os: [darwin] | ||||
| 2605 | + | ||||
| 2606 | + lightningcss-freebsd-x64@1.32.0: | ||||
| 2607 | + resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} | ||||
| 2608 | + engines: {node: '>= 12.0.0'} | ||||
| 2609 | + cpu: [x64] | ||||
| 2610 | + os: [freebsd] | ||||
| 2611 | + | ||||
| 2612 | + lightningcss-linux-arm-gnueabihf@1.32.0: | ||||
| 2613 | + resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} | ||||
| 2614 | + engines: {node: '>= 12.0.0'} | ||||
| 2615 | + cpu: [arm] | ||||
| 2616 | + os: [linux] | ||||
| 2617 | + | ||||
| 2618 | + lightningcss-linux-arm64-gnu@1.32.0: | ||||
| 2619 | + resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} | ||||
| 2620 | + engines: {node: '>= 12.0.0'} | ||||
| 2621 | + cpu: [arm64] | ||||
| 2622 | + os: [linux] | ||||
| 2623 | + libc: [glibc] | ||||
| 2624 | + | ||||
| 2625 | + lightningcss-linux-arm64-musl@1.32.0: | ||||
| 2626 | + resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} | ||||
| 2627 | + engines: {node: '>= 12.0.0'} | ||||
| 2628 | + cpu: [arm64] | ||||
| 2629 | + os: [linux] | ||||
| 2630 | + libc: [musl] | ||||
| 2631 | + | ||||
| 2632 | + lightningcss-linux-x64-gnu@1.32.0: | ||||
| 2633 | + resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} | ||||
| 2634 | + engines: {node: '>= 12.0.0'} | ||||
| 2635 | + cpu: [x64] | ||||
| 2636 | + os: [linux] | ||||
| 2637 | + libc: [glibc] | ||||
| 2638 | + | ||||
| 2639 | + lightningcss-linux-x64-musl@1.32.0: | ||||
| 2640 | + resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} | ||||
| 2641 | + engines: {node: '>= 12.0.0'} | ||||
| 2642 | + cpu: [x64] | ||||
| 2643 | + os: [linux] | ||||
| 2644 | + libc: [musl] | ||||
| 2645 | + | ||||
| 2646 | + lightningcss-win32-arm64-msvc@1.32.0: | ||||
| 2647 | + resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} | ||||
| 2648 | + engines: {node: '>= 12.0.0'} | ||||
| 2649 | + cpu: [arm64] | ||||
| 2650 | + os: [win32] | ||||
| 2651 | + | ||||
| 2652 | + lightningcss-win32-x64-msvc@1.32.0: | ||||
| 2653 | + resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} | ||||
| 2654 | + engines: {node: '>= 12.0.0'} | ||||
| 2655 | + cpu: [x64] | ||||
| 2656 | + os: [win32] | ||||
| 2657 | + | ||||
| 2658 | + lightningcss@1.32.0: | ||||
| 2659 | + resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} | ||||
| 2660 | + engines: {node: '>= 12.0.0'} | ||||
| 2661 | + | ||||
| 2662 | + locate-path@6.0.0: | ||||
| 2663 | + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} | ||||
| 2664 | + engines: {node: '>=10'} | ||||
| 2665 | + | ||||
| 2666 | + lodash-es@4.18.1: | ||||
| 2667 | + resolution: {integrity: sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==} | ||||
| 2668 | + | ||||
| 2669 | + longest-streak@3.1.0: | ||||
| 2670 | + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} | ||||
| 2671 | + | ||||
| 2672 | + loose-envify@1.4.0: | ||||
| 2673 | + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} | ||||
| 2674 | + hasBin: true | ||||
| 2675 | + | ||||
| 2676 | + lop@0.4.2: | ||||
| 2677 | + resolution: {integrity: sha512-RefILVDQ4DKoRZsJ4Pj22TxE3omDO47yFpkIBoDKzkqPRISs5U1cnAdg/5583YPkWPaLIYHOKRMQSvjFsO26cw==} | ||||
| 2678 | + | ||||
| 2679 | + lowlight@3.3.0: | ||||
| 2680 | + resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} | ||||
| 2681 | + | ||||
| 2682 | + lru-cache@5.1.1: | ||||
| 2683 | + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} | ||||
| 2684 | + | ||||
| 2685 | + lucide-react@1.66.0: | ||||
| 2686 | + resolution: {integrity: sha512-8zjbi/Us+ETXqfBwmXF/FHrWGIqOdE6zT1yUdRJLQVoptomSkB0zdFWVIM667t9K8djWDaXdkBkqi2qVTuDNiw==} | ||||
| 2687 | + peerDependencies: | ||||
| 2688 | + '@types/react': '*' | ||||
| 2689 | + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 2690 | + peerDependenciesMeta: | ||||
| 2691 | + '@types/react': | ||||
| 2692 | + optional: true | ||||
| 2693 | + | ||||
| 2694 | + magic-string@0.30.21: | ||||
| 2695 | + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} | ||||
| 2696 | + | ||||
| 2697 | + mammoth@1.13.0: | ||||
| 2698 | + resolution: {integrity: sha512-2cawcYFcP7ISfXbBcL9lmVgTNWo88v/52ND1gnywHtVT/pX0//puPnf0iMPV9ZgmuvNOE+zkIhDgZ9M2c2dDDg==} | ||||
| 2699 | + engines: {node: '>=12.0.0'} | ||||
| 2700 | + hasBin: true | ||||
| 2701 | + | ||||
| 2702 | + markdown-table@3.0.4: | ||||
| 2703 | + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} | ||||
| 2704 | + | ||||
| 2705 | + marked@16.4.2: | ||||
| 2706 | + resolution: {integrity: sha512-TI3V8YYWvkVf3KJe1dRkpnjs68JUPyEa5vjKrp1XEEJUAOaQc+Qj+L1qWbPd0SJuAdQkFU0h73sXXqwDYxsiDA==} | ||||
| 2707 | + engines: {node: '>= 20'} | ||||
| 2708 | + hasBin: true | ||||
| 2709 | + | ||||
| 2710 | + math-intrinsics@1.1.0: | ||||
| 2711 | + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} | ||||
| 2712 | + engines: {node: '>= 0.4'} | ||||
| 2713 | + | ||||
| 2714 | + mdast-util-find-and-replace@3.0.4: | ||||
| 2715 | + resolution: {integrity: sha512-z4B5c6jrnJ1ltOQemhWYPBSAo6y42Z8Gt2yEgfgNTMcLSU59B8bfj8Z8AnAlJrBGLnqkdAUZ7jdDEqQw3KuipQ==} | ||||
| 2716 | + | ||||
| 2717 | + mdast-util-from-markdown@2.1.0: | ||||
| 2718 | + resolution: {integrity: sha512-KRLgmPaP2H1ul2bpoJkOS+9pAcDAAj9Nu1mqLnh8NLeJG5tlvj42TH80PIGBpROWlRXLk0lDrWNuZCFy/tsB4A==} | ||||
| 2719 | + | ||||
| 2720 | + mdast-util-gfm-autolink-literal@2.0.1: | ||||
| 2721 | + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} | ||||
| 2722 | + | ||||
| 2723 | + mdast-util-gfm-footnote@2.1.0: | ||||
| 2724 | + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} | ||||
| 2725 | + | ||||
| 2726 | + mdast-util-gfm-strikethrough@2.0.1: | ||||
| 2727 | + resolution: {integrity: sha512-OuJHqvr455pwu2OaOrir7dbzqs4jlWKOtlu9L6GjcIjjQwNyw02VntQsr/Ek6/A13vgnXfUhBekWRUP1OkNivw==} | ||||
| 2728 | + | ||||
| 2729 | + mdast-util-gfm-table@2.0.0: | ||||
| 2730 | + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} | ||||
| 2731 | + | ||||
| 2732 | + mdast-util-gfm-task-list-item@2.0.0: | ||||
| 2733 | + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} | ||||
| 2734 | + | ||||
| 2735 | + mdast-util-gfm@3.1.0: | ||||
| 2736 | + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} | ||||
| 2737 | + | ||||
| 2738 | + mdast-util-math@3.0.0: | ||||
| 2739 | + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} | ||||
| 2740 | + | ||||
| 2741 | + mdast-util-mdx-expression@2.0.1: | ||||
| 2742 | + resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} | ||||
| 2743 | + | ||||
| 2744 | + mdast-util-mdx-jsx@3.2.0: | ||||
| 2745 | + resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==} | ||||
| 2746 | + | ||||
| 2747 | + mdast-util-mdxjs-esm@2.0.1: | ||||
| 2748 | + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} | ||||
| 2749 | + | ||||
| 2750 | + mdast-util-phrasing@4.1.0: | ||||
| 2751 | + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} | ||||
| 2752 | + | ||||
| 2753 | + mdast-util-to-hast@13.2.1: | ||||
| 2754 | + resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} | ||||
| 2755 | + | ||||
| 2756 | + mdast-util-to-markdown@2.2.1: | ||||
| 2757 | + resolution: {integrity: sha512-ThatlCBxG2GE+mljhNSfZPv56d3QrGiRh97jjYgIk80IzS4uU6d7cHAaexCYSAmUCCcOs3grJ07kX3oTGsFUOw==} | ||||
| 2758 | + | ||||
| 2759 | + mdast-util-to-string@4.0.0: | ||||
| 2760 | + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} | ||||
| 2761 | + | ||||
| 2762 | + merge2@1.4.1: | ||||
| 2763 | + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} | ||||
| 2764 | + engines: {node: '>= 8'} | ||||
| 2765 | + | ||||
| 2766 | + mermaid@12.2.0: | ||||
| 2767 | + resolution: {integrity: sha512-w7nr/SFrLO7BaVTs3dQTvYSV6nYSBj0Yy9DjBhsIJtAcHqRzXSq4Pg32ujHZ/AdWsAMNEvvhbm5dt9E2tOiHzw==} | ||||
| 2768 | + engines: {node: '>=22.12.0'} | ||||
| 2769 | + | ||||
| 2770 | + micromark-core-commonmark@2.0.4: | ||||
| 2771 | + resolution: {integrity: sha512-wxEeE8v8XVvOrxn1TZj74qYhAtTQsSqufHVS3uNVyT1MupXxhyaHk8/9xDNPh9BmL77QNDgWTkZ3RsYHB2ry7w==} | ||||
| 2772 | + | ||||
| 2773 | + micromark-extension-gfm-autolink-literal@2.1.0: | ||||
| 2774 | + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} | ||||
| 2775 | + | ||||
| 2776 | + micromark-extension-gfm-footnote@2.1.0: | ||||
| 2777 | + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} | ||||
| 2778 | + | ||||
| 2779 | + micromark-extension-gfm-strikethrough@2.1.0: | ||||
| 2780 | + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} | ||||
| 2781 | + | ||||
| 2782 | + micromark-extension-gfm-table@2.1.2: | ||||
| 2783 | + resolution: {integrity: sha512-pRzm4kDTu0MjlmBkxmS9yYhw60nncfcEwu9NNdPFSQEFXS95ZKyIIyTSHu/o3ReBUrLKYEq+7YaXCRn/bPB4MA==} | ||||
| 2784 | + | ||||
| 2785 | + micromark-extension-gfm-tagfilter@2.0.0: | ||||
| 2786 | + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} | ||||
| 2787 | + | ||||
| 2788 | + micromark-extension-gfm-task-list-item@2.1.0: | ||||
| 2789 | + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} | ||||
| 2790 | + | ||||
| 2791 | + micromark-extension-gfm@3.0.0: | ||||
| 2792 | + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} | ||||
| 2793 | + | ||||
| 2794 | + micromark-extension-math@3.1.0: | ||||
| 2795 | + resolution: {integrity: sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==} | ||||
| 2796 | + | ||||
| 2797 | + micromark-factory-destination@2.0.1: | ||||
| 2798 | + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} | ||||
| 2799 | + | ||||
| 2800 | + micromark-factory-label@2.0.1: | ||||
| 2801 | + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} | ||||
| 2802 | + | ||||
| 2803 | + micromark-factory-space@2.1.0: | ||||
| 2804 | + resolution: {integrity: sha512-fS8hnLIjnjvdQIj39Geug8wWsR0HrYZ43KShKxNfwT7t2LOHo/LbWZEzEaSOjwtjdCsjoE6syHhonEzW0zv0+Q==} | ||||
| 2805 | + | ||||
| 2806 | + micromark-factory-title@2.0.1: | ||||
| 2807 | + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} | ||||
| 2808 | + | ||||
| 2809 | + micromark-factory-whitespace@2.0.1: | ||||
| 2810 | + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} | ||||
| 2811 | + | ||||
| 2812 | + micromark-util-character@2.1.1: | ||||
| 2813 | + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} | ||||
| 2814 | + | ||||
| 2815 | + micromark-util-chunked@2.0.1: | ||||
| 2816 | + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} | ||||
| 2817 | + | ||||
| 2818 | + micromark-util-classify-character@2.0.1: | ||||
| 2819 | + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} | ||||
| 2820 | + | ||||
| 2821 | + micromark-util-combine-extensions@2.0.1: | ||||
| 2822 | + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} | ||||
| 2823 | + | ||||
| 2824 | + micromark-util-decode-numeric-character-reference@2.0.2: | ||||
| 2825 | + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} | ||||
| 2826 | + | ||||
| 2827 | + micromark-util-decode-string@2.0.1: | ||||
| 2828 | + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} | ||||
| 2829 | + | ||||
| 2830 | + micromark-util-edit-map@1.0.0: | ||||
| 2831 | + resolution: {integrity: sha512-Pa2ljlsEL6sVwFaYeyrOLSYbQt73JvGbPOYFq+9AElXiSnfI5Q4465RRZ1sHv7lDjDOnGRDDaqPXqClqWK/q1Q==} | ||||
| 2832 | + | ||||
| 2833 | + micromark-util-encode@2.0.1: | ||||
| 2834 | + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} | ||||
| 2835 | + | ||||
| 2836 | + micromark-util-html-tag-name@2.0.1: | ||||
| 2837 | + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} | ||||
| 2838 | + | ||||
| 2839 | + micromark-util-normalize-identifier@2.0.1: | ||||
| 2840 | + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} | ||||
| 2841 | + | ||||
| 2842 | + micromark-util-resolve-all@2.0.1: | ||||
| 2843 | + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} | ||||
| 2844 | + | ||||
| 2845 | + micromark-util-sanitize-uri@2.0.1: | ||||
| 2846 | + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} | ||||
| 2847 | + | ||||
| 2848 | + micromark-util-subtokenize@2.1.0: | ||||
| 2849 | + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} | ||||
| 2850 | + | ||||
| 2851 | + micromark-util-symbol@2.0.1: | ||||
| 2852 | + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} | ||||
| 2853 | + | ||||
| 2854 | + micromark-util-types@2.0.3: | ||||
| 2855 | + resolution: {integrity: sha512-oxB2Ik03hI0gv+VNn9tnh1t1YEe9MDPptViAEgfdf3YQHsn0pzGTgCdlSCJXcwhqm8phaEuM7zeEu3QQzVBrPg==} | ||||
| 2856 | + | ||||
| 2857 | + micromark@4.0.3: | ||||
| 2858 | + resolution: {integrity: sha512-oGYfQzHSG5dOMovQcJ3fyTmZlWAWpi0XA0sJwJs+i6OT88o1+Jtw/8z0CmdowSLxGhhFK89rQ/oXph/wN02PNw==} | ||||
| 2859 | + | ||||
| 2860 | + micromatch@4.0.8: | ||||
| 2861 | + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} | ||||
| 2862 | + engines: {node: '>=8.6'} | ||||
| 2863 | + | ||||
| 2864 | + mime@4.1.2: | ||||
| 2865 | + resolution: {integrity: sha512-ikRzZ2RwbUVDyL9SsU0f2Phcmav4yq5r8faH5ZZKHtOZrMBLnrQOrj0uvqZ5R1uQnj+RO7Wcklw/lAf81mP9LQ==} | ||||
| 2866 | + engines: {node: '>=16'} | ||||
| 2867 | + hasBin: true | ||||
| 2868 | + | ||||
| 2869 | + minimatch@10.2.6: | ||||
| 2870 | + resolution: {integrity: sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==} | ||||
| 2871 | + engines: {node: 18 || 20 || >=22} | ||||
| 2872 | + | ||||
| 2873 | + minimatch@3.1.5: | ||||
| 2874 | + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} | ||||
| 2875 | + | ||||
| 2876 | + minimist@1.2.8: | ||||
| 2877 | + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} | ||||
| 2878 | + | ||||
| 2879 | + ms@2.1.3: | ||||
| 2880 | + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} | ||||
| 2881 | + | ||||
| 2882 | + nanoid@3.3.20: | ||||
| 2883 | + resolution: {integrity: sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ==} | ||||
| 2884 | + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} | ||||
| 2885 | + hasBin: true | ||||
| 2886 | + | ||||
| 2887 | + nanoid@6.0.2: | ||||
| 2888 | + resolution: {integrity: sha512-hIvVOb9Qr1p/9CNNLOe0OlWvgx/ziTsVwKN/GDSsuArN2K0wDiafP3s0SWmsm7o2BdnyS8Z9Z64NFBUbn6ziBg==} | ||||
| 2889 | + engines: {node: ^22 || ^24 || >=26} | ||||
| 2890 | + hasBin: true | ||||
| 2891 | + | ||||
| 2892 | + napi-postinstall@0.3.7: | ||||
| 2893 | + resolution: {integrity: sha512-jyU4cU4kVAmy/3qjP+DcoQTNXfINHc+dFw54gGqWC8nu0mpV0kOnk7kff+J+Q18SbX0k3Np8Rm7yFjd3phatNQ==} | ||||
| 2894 | + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} | ||||
| 2895 | + hasBin: true | ||||
| 2896 | + | ||||
| 2897 | + natural-compare@1.4.0: | ||||
| 2898 | + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} | ||||
| 2899 | + | ||||
| 2900 | + next@16.4.3: | ||||
| 2901 | + resolution: {integrity: sha512-OqxKTGi9u80FydydsMNYNjnuje9Au+kvHlt2GZ//ftdpDHm1dxKqAaENoOOTX5wKzn+9vaKUNIfZeyZUuLhCnA==} | ||||
| 2902 | + engines: {node: '>=20.9.0'} | ||||
| 2903 | + hasBin: true | ||||
| 2904 | + peerDependencies: | ||||
| 2905 | + '@opentelemetry/api': ^1.1.0 | ||||
| 2906 | + '@playwright/test': ^1.51.1 | ||||
| 2907 | + babel-plugin-react-compiler: '*' | ||||
| 2908 | + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 | ||||
| 2909 | + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 | ||||
| 2910 | + sass: ^1.3.0 | ||||
| 2911 | + peerDependenciesMeta: | ||||
| 2912 | + '@opentelemetry/api': | ||||
| 2913 | + optional: true | ||||
| 2914 | + '@playwright/test': | ||||
| 2915 | + optional: true | ||||
| 2916 | + babel-plugin-react-compiler: | ||||
| 2917 | + optional: true | ||||
| 2918 | + sass: | ||||
| 2919 | + optional: true | ||||
| 2920 | + | ||||
| 2921 | + node-exports-info@1.6.2: | ||||
| 2922 | + resolution: {integrity: sha512-kXs9Go0cah0qHVV2v389IXQLdLCeE1xfFtjOAF+iobu0OIoG1pje8At2vMHyaPMiPMnG/LWP50twML21eMcAag==} | ||||
| 2923 | + engines: {node: '>= 0.4'} | ||||
| 2924 | + | ||||
| 2925 | + node-releases@2.0.62: | ||||
| 2926 | + resolution: {integrity: sha512-A0Eq+qVDQI97IbAD6g/HriIuv256el9N8EwF4+xqJ49pwrdRYpdCSmLk0sO4I3fnS6hpYE5v22B73Bk+WArEoQ==} | ||||
| 2927 | + engines: {node: '>=18'} | ||||
| 2928 | + | ||||
| 2929 | + object-assign@4.1.1: | ||||
| 2930 | + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} | ||||
| 2931 | + engines: {node: '>=0.10.0'} | ||||
| 2932 | + | ||||
| 2933 | + object-inspect@1.13.4: | ||||
| 2934 | + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} | ||||
| 2935 | + engines: {node: '>= 0.4'} | ||||
| 2936 | + | ||||
| 2937 | + object-keys@1.1.1: | ||||
| 2938 | + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} | ||||
| 2939 | + engines: {node: '>= 0.4'} | ||||
| 2940 | + | ||||
| 2941 | + object.assign@4.1.7: | ||||
| 2942 | + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} | ||||
| 2943 | + engines: {node: '>= 0.4'} | ||||
| 2944 | + | ||||
| 2945 | + object.entries@1.1.9: | ||||
| 2946 | + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} | ||||
| 2947 | + engines: {node: '>= 0.4'} | ||||
| 2948 | + | ||||
| 2949 | + object.fromentries@2.0.8: | ||||
| 2950 | + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} | ||||
| 2951 | + engines: {node: '>= 0.4'} | ||||
| 2952 | + | ||||
| 2953 | + object.groupby@1.0.3: | ||||
| 2954 | + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} | ||||
| 2955 | + engines: {node: '>= 0.4'} | ||||
| 2956 | + | ||||
| 2957 | + object.values@1.2.1: | ||||
| 2958 | + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} | ||||
| 2959 | + engines: {node: '>= 0.4'} | ||||
| 2960 | + | ||||
| 2961 | + openai@7.47.0: | ||||
| 2962 | + resolution: {integrity: sha512-BYa2RYgocAv9WjPUJmNu8fICuA1fFhkTBEpiR3sC5L1K6v8Hnhc8pcnQEhu8l/+W1XKA+JUaBa7HpT+AK1s77w==} | ||||
| 2963 | + engines: {node: '>=22.0.0'} | ||||
| 2964 | + peerDependencies: | ||||
| 2965 | + '@aws-sdk/credential-provider-node': '>=3.972.0 <4' | ||||
| 2966 | + '@smithy/hash-node': '>=4.3.0 <5' | ||||
| 2967 | + '@smithy/signature-v4': '>=5.4.0 <6' | ||||
| 2968 | + google-auth-library: '>=9.15.1 <12' | ||||
| 2969 | + undici: '>=5 <9' | ||||
| 2970 | + ws: ^8.21.0 | ||||
| 2971 | + zod: ^3.25 || ^4.0 | ||||
| 2972 | + peerDependenciesMeta: | ||||
| 2973 | + '@aws-sdk/credential-provider-node': | ||||
| 2974 | + optional: true | ||||
| 2975 | + '@smithy/hash-node': | ||||
| 2976 | + optional: true | ||||
| 2977 | + '@smithy/signature-v4': | ||||
| 2978 | + optional: true | ||||
| 2979 | + google-auth-library: | ||||
| 2980 | + optional: true | ||||
| 2981 | + undici: | ||||
| 2982 | + optional: true | ||||
| 2983 | + ws: | ||||
| 2984 | + optional: true | ||||
| 2985 | + zod: | ||||
| 2986 | + optional: true | ||||
| 2987 | + | ||||
| 2988 | + option@0.2.4: | ||||
| 2989 | + resolution: {integrity: sha512-pkEqbDyl8ou5cpq+VsnQbe/WlEy5qS7xPzMS1U55OCG9KPvwFD46zDbxQIj3egJSFc3D+XhYOPUzz49zQAVy7A==} | ||||
| 2990 | + | ||||
| 2991 | + optionator@0.9.4: | ||||
| 2992 | + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} | ||||
| 2993 | + engines: {node: '>= 0.8.0'} | ||||
| 2994 | + | ||||
| 2995 | + own-keys@1.0.2: | ||||
| 2996 | + resolution: {integrity: sha512-19YVAg7T+WTrxggPukVq7DjTv6+PJ867TmhCvBsYwmbFCsZd344rq2Ld1p0wo8f8Qrrhgp82c6FJRqdXWtSEhg==} | ||||
| 2997 | + engines: {node: '>= 0.4'} | ||||
| 2998 | + | ||||
| 2999 | + p-limit@3.1.0: | ||||
| 3000 | + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} | ||||
| 3001 | + engines: {node: '>=10'} | ||||
| 3002 | + | ||||
| 3003 | + p-locate@5.0.0: | ||||
| 3004 | + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} | ||||
| 3005 | + engines: {node: '>=10'} | ||||
| 3006 | + | ||||
| 3007 | + package-manager-detector@1.9.0: | ||||
| 3008 | + resolution: {integrity: sha512-zAMfbta9nPA8AKkA4WdmNAT8R8s6Dk0/xwPsqNnRidMFcLo1YkLuPDTgs2f64XdzS8vbLNnoJ+uUIkgbz7oRHA==} | ||||
| 3009 | + | ||||
| 3010 | + pako@1.0.11: | ||||
| 3011 | + resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} | ||||
| 3012 | + | ||||
| 3013 | + parse-entities@4.0.2: | ||||
| 3014 | + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} | ||||
| 3015 | + | ||||
| 3016 | + parse5@7.3.0: | ||||
| 3017 | + resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} | ||||
| 3018 | + | ||||
| 3019 | + path-data-parser@0.1.0: | ||||
| 3020 | + resolution: {integrity: sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==} | ||||
| 3021 | + | ||||
| 3022 | + path-exists@4.0.0: | ||||
| 3023 | + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} | ||||
| 3024 | + engines: {node: '>=8'} | ||||
| 3025 | + | ||||
| 3026 | + path-key@3.1.1: | ||||
| 3027 | + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} | ||||
| 3028 | + engines: {node: '>=8'} | ||||
| 3029 | + | ||||
| 3030 | + path-parse@1.0.7: | ||||
| 3031 | + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} | ||||
| 3032 | + | ||||
| 3033 | + pdf-parse@2.4.5: | ||||
| 3034 | + resolution: {integrity: sha512-mHU89HGh7v+4u2ubfnevJ03lmPgQ5WU4CxAVmTSh/sxVTEDYd1er/dKS/A6vg77NX47KTEoihq8jZBLr8Cxuwg==} | ||||
| 3035 | + engines: {node: '>=20.16.0 <21 || >=22.3.0'} | ||||
| 3036 | + hasBin: true | ||||
| 3037 | + | ||||
| 3038 | + pdfjs-dist@5.4.296: | ||||
| 3039 | + resolution: {integrity: sha512-DlOzet0HO7OEnmUmB6wWGJrrdvbyJKftI1bhMitK7O2N8W2gc757yyYBbINy9IDafXAV9wmKr9t7xsTaNKRG5Q==} | ||||
| 3040 | + engines: {node: '>=20.16.0 || >=22.3.0'} | ||||
| 3041 | + | ||||
| 3042 | + picocolors@1.1.1: | ||||
| 3043 | + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} | ||||
| 3044 | + | ||||
| 3045 | + picomatch@2.3.2: | ||||
| 3046 | + resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} | ||||
| 3047 | + engines: {node: '>=8.6'} | ||||
| 3048 | + | ||||
| 3049 | + picomatch@4.0.7: | ||||
| 3050 | + resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==} | ||||
| 3051 | + engines: {node: '>=12'} | ||||
| 3052 | + | ||||
| 3053 | + pngjs@7.0.0: | ||||
| 3054 | + resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==} | ||||
| 3055 | + engines: {node: '>=14.19.0'} | ||||
| 3056 | + | ||||
| 3057 | + points-on-curve@0.2.0: | ||||
| 3058 | + resolution: {integrity: sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==} | ||||
| 3059 | + | ||||
| 3060 | + points-on-path@0.2.1: | ||||
| 3061 | + resolution: {integrity: sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==} | ||||
| 3062 | + | ||||
| 3063 | + possible-typed-array-names@1.1.0: | ||||
| 3064 | + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} | ||||
| 3065 | + engines: {node: '>= 0.4'} | ||||
| 3066 | + | ||||
| 3067 | + postcss@8.5.23: | ||||
| 3068 | + resolution: {integrity: sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==} | ||||
| 3069 | + engines: {node: ^10 || ^12 || >=14} | ||||
| 3070 | + | ||||
| 3071 | + postgres@4.0.0: | ||||
| 3072 | + resolution: {integrity: sha512-kBh8qXtcvvIAc00DftQyOxz7M/3Zxww1tRMXZPLzipNXXl5PIzHml+9zB3Mrge2U8ldc0WF1ZdLp1iYQi7Kh3A==} | ||||
| 3073 | + engines: {node: '>=20'} | ||||
| 3074 | + | ||||
| 3075 | + prelude-ls@1.2.1: | ||||
| 3076 | + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} | ||||
| 3077 | + engines: {node: '>= 0.8.0'} | ||||
| 3078 | + | ||||
| 3079 | + process-nextick-args@2.0.1: | ||||
| 3080 | + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} | ||||
| 3081 | + | ||||
| 3082 | + prop-types@15.8.1: | ||||
| 3083 | + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} | ||||
| 3084 | + | ||||
| 3085 | + property-information@7.2.0: | ||||
| 3086 | + resolution: {integrity: sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==} | ||||
| 3087 | + | ||||
| 3088 | + punycode@2.3.1: | ||||
| 3089 | + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} | ||||
| 3090 | + engines: {node: '>=6'} | ||||
| 3091 | + | ||||
| 3092 | + qified@0.10.1: | ||||
| 3093 | + resolution: {integrity: sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==} | ||||
| 3094 | + engines: {node: '>=20'} | ||||
| 3095 | + | ||||
| 3096 | + queue-microtask@1.2.3: | ||||
| 3097 | + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} | ||||
| 3098 | + | ||||
| 3099 | + react-dom@19.3.0: | ||||
| 3100 | + resolution: {integrity: sha512-JDk8dgif51OjFoDE70+OT9ICyYr+69HlmihNwp1+Nsfbna3t5sIiCa9ZJktDmQ4/1b/rn26hIAR2uYXDMr5r0Q==} | ||||
| 3101 | + peerDependencies: | ||||
| 3102 | + react: ^19.3.0 | ||||
| 3103 | + | ||||
| 3104 | + react-is@16.13.1: | ||||
| 3105 | + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} | ||||
| 3106 | + | ||||
| 3107 | + react-markdown@10.1.0: | ||||
| 3108 | + resolution: {integrity: sha512-qKxVopLT/TyA6BX3Ue5NwabOsAzm0Q7kAPwq6L+wWDwisYs7R8vZ0nRXqq6rkueboxpkjvLGU9fWifiX/ZZFxQ==} | ||||
| 3109 | + peerDependencies: | ||||
| 3110 | + '@types/react': '>=18' | ||||
| 3111 | + react: '>=18' | ||||
| 3112 | + | ||||
| 3113 | + react-redux@9.3.1: | ||||
| 3114 | + resolution: {integrity: sha512-vxMLT0lalUjbZPkoTepWyKAZbjIIFssNx/CEL9lTfwQBU6XpkGSmCNdcCIrkOBUgB68uftZMnbXVb6DwGnhRKQ==} | ||||
| 3115 | + peerDependencies: | ||||
| 3116 | + '@types/react': ^18.2.25 || ^19 | ||||
| 3117 | + react: ^18.0 || ^19 | ||||
| 3118 | + redux: ^5.0.0 | ||||
| 3119 | + peerDependenciesMeta: | ||||
| 3120 | + '@types/react': | ||||
| 3121 | + optional: true | ||||
| 3122 | + redux: | ||||
| 3123 | + optional: true | ||||
| 3124 | + | ||||
| 3125 | + react@19.3.0: | ||||
| 3126 | + resolution: {integrity: sha512-E8LUcbtBWt20bbl2YoHfx4ZDBdxVTfOKtCZn9cDSJ4l6/nuoApcpIBcj47t2wZoVX8g2ZHuMHbiShgCR1T5Sog==} | ||||
| 3127 | + engines: {node: '>=0.10.0'} | ||||
| 3128 | + | ||||
| 3129 | + readable-stream@2.3.8: | ||||
| 3130 | + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} | ||||
| 3131 | + | ||||
| 3132 | + recharts@3.10.1: | ||||
| 3133 | + resolution: {integrity: sha512-QXFrvt6IVcw7eeZCoyXTwkIJAX3Dv1nyVhMicXJ47GsGDDpcN8z6o644DibE9XjpBTThtsomLKnTV6lc+cVFUA==} | ||||
| 3134 | + engines: {node: '>=18'} | ||||
| 3135 | + peerDependencies: | ||||
| 3136 | + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 3137 | + react-dom: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 3138 | + react-is: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 3139 | + | ||||
| 3140 | + redux-thunk@3.1.0: | ||||
| 3141 | + resolution: {integrity: sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==} | ||||
| 3142 | + peerDependencies: | ||||
| 3143 | + redux: ^5.0.0 | ||||
| 3144 | + | ||||
| 3145 | + redux@5.0.1: | ||||
| 3146 | + resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} | ||||
| 3147 | + | ||||
| 3148 | + reflect.getprototypeof@1.0.10: | ||||
| 3149 | + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} | ||||
| 3150 | + engines: {node: '>= 0.4'} | ||||
| 3151 | + | ||||
| 3152 | + regexp.prototype.flags@1.5.4: | ||||
| 3153 | + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} | ||||
| 3154 | + engines: {node: '>= 0.4'} | ||||
| 3155 | + | ||||
| 3156 | + rehype-highlight@7.0.2: | ||||
| 3157 | + resolution: {integrity: sha512-k158pK7wdC2qL3M5NcZROZ2tR/l7zOzjxXd5VGdcfIyoijjQqpHd3JKtYSBDpDZ38UI2WJWuFAtkMDxmx5kstA==} | ||||
| 3158 | + | ||||
| 3159 | + rehype-katex@7.0.1: | ||||
| 3160 | + resolution: {integrity: sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==} | ||||
| 3161 | + | ||||
| 3162 | + remark-gfm@4.0.1: | ||||
| 3163 | + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} | ||||
| 3164 | + | ||||
| 3165 | + remark-math@6.0.0: | ||||
| 3166 | + resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==} | ||||
| 3167 | + | ||||
| 3168 | + remark-parse@11.0.0: | ||||
| 3169 | + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} | ||||
| 3170 | + | ||||
| 3171 | + remark-rehype@11.1.2: | ||||
| 3172 | + resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} | ||||
| 3173 | + | ||||
| 3174 | + remark-stringify@11.0.0: | ||||
| 3175 | + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} | ||||
| 3176 | + | ||||
| 3177 | + reselect@5.2.0: | ||||
| 3178 | + resolution: {integrity: sha512-AgZ3UOZm3YndfrJ4OYjgrT7bmCm/1iqkjvEfH/oYjzh6PD2qw4QuT3jjnXIrpdt4MTpMXclMT3lXbmRY+XRakw==} | ||||
| 3179 | + | ||||
| 3180 | + resolve-pkg-maps@1.0.0: | ||||
| 3181 | + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} | ||||
| 3182 | + | ||||
| 3183 | + resolve@2.0.0-next.7: | ||||
| 3184 | + resolution: {integrity: sha512-tqt+NBWwyaMgw3zDsnygx4CByWjQEJHOPMdslYhppaQSJUtL/D4JO9CcBBlhPoI8lz9oJIDXkwXfhF4aWqP8xQ==} | ||||
| 3185 | + engines: {node: '>= 0.4'} | ||||
| 3186 | + hasBin: true | ||||
| 3187 | + | ||||
| 3188 | + reusify@1.1.0: | ||||
| 3189 | + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} | ||||
| 3190 | + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} | ||||
| 3191 | + | ||||
| 3192 | + robust-predicates@3.0.3: | ||||
| 3193 | + resolution: {integrity: sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA==} | ||||
| 3194 | + | ||||
| 3195 | + roughjs@4.6.6: | ||||
| 3196 | + resolution: {integrity: sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==} | ||||
| 3197 | + | ||||
| 3198 | + run-parallel@1.2.0: | ||||
| 3199 | + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} | ||||
| 3200 | + | ||||
| 3201 | + rw@1.3.3: | ||||
| 3202 | + resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==} | ||||
| 3203 | + | ||||
| 3204 | + safe-array-concat@1.1.4: | ||||
| 3205 | + resolution: {integrity: sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==} | ||||
| 3206 | + engines: {node: '>=0.4'} | ||||
| 3207 | + | ||||
| 3208 | + safe-buffer@5.1.2: | ||||
| 3209 | + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} | ||||
| 3210 | + | ||||
| 3211 | + safe-push-apply@1.0.0: | ||||
| 3212 | + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} | ||||
| 3213 | + engines: {node: '>= 0.4'} | ||||
| 3214 | + | ||||
| 3215 | + safe-regex-test@1.1.0: | ||||
| 3216 | + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} | ||||
| 3217 | + engines: {node: '>= 0.4'} | ||||
| 3218 | + | ||||
| 3219 | + safer-buffer@2.1.2: | ||||
| 3220 | + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} | ||||
| 3221 | + | ||||
| 3222 | + scheduler@0.28.0: | ||||
| 3223 | + resolution: {integrity: sha512-juorfCmIkIw8tT+p5BXSm6PJjQF/ycEYmKyzURCIt/RaZIhL+PulbQ9Yu2z1HdOJDdqDTlxA1+xKBmHXJsczAw==} | ||||
| 3224 | + | ||||
| 3225 | + semver@6.3.1: | ||||
| 3226 | + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} | ||||
| 3227 | + hasBin: true | ||||
| 3228 | + | ||||
| 3229 | + semver@7.8.5: | ||||
| 3230 | + resolution: {integrity: sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==} | ||||
| 3231 | + engines: {node: '>=10'} | ||||
| 3232 | + hasBin: true | ||||
| 3233 | + | ||||
| 3234 | + set-function-length@1.2.2: | ||||
| 3235 | + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} | ||||
| 3236 | + engines: {node: '>= 0.4'} | ||||
| 3237 | + | ||||
| 3238 | + set-function-name@2.0.2: | ||||
| 3239 | + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} | ||||
| 3240 | + engines: {node: '>= 0.4'} | ||||
| 3241 | + | ||||
| 3242 | + set-proto@1.0.0: | ||||
| 3243 | + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} | ||||
| 3244 | + engines: {node: '>= 0.4'} | ||||
| 3245 | + | ||||
| 3246 | + setimmediate@1.0.5: | ||||
| 3247 | + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} | ||||
| 3248 | + | ||||
| 3249 | + sharp@0.35.5: | ||||
| 3250 | + resolution: {integrity: sha512-Ywn4OnzGukp7CDMrp08RQ50YKmuwG47brZgIVPTvBaaAfQlRlygrRqSrxdCiL9M+LlzLBiJ68IR1QqvzHyjC7g==} | ||||
| 3251 | + engines: {node: '>=20.9.0'} | ||||
| 3252 | + peerDependencies: | ||||
| 3253 | + '@types/node': '*' | ||||
| 3254 | + peerDependenciesMeta: | ||||
| 3255 | + '@types/node': | ||||
| 3256 | + optional: true | ||||
| 3257 | + | ||||
| 3258 | + shebang-command@2.0.0: | ||||
| 3259 | + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} | ||||
| 3260 | + engines: {node: '>=8'} | ||||
| 3261 | + | ||||
| 3262 | + shebang-regex@3.0.0: | ||||
| 3263 | + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} | ||||
| 3264 | + engines: {node: '>=8'} | ||||
| 3265 | + | ||||
| 3266 | + side-channel-list@1.0.1: | ||||
| 3267 | + resolution: {integrity: sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==} | ||||
| 3268 | + engines: {node: '>= 0.4'} | ||||
| 3269 | + | ||||
| 3270 | + side-channel-map@1.0.1: | ||||
| 3271 | + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} | ||||
| 3272 | + engines: {node: '>= 0.4'} | ||||
| 3273 | + | ||||
| 3274 | + side-channel-weakmap@1.0.2: | ||||
| 3275 | + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} | ||||
| 3276 | + engines: {node: '>= 0.4'} | ||||
| 3277 | + | ||||
| 3278 | + side-channel@1.1.1: | ||||
| 3279 | + resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} | ||||
| 3280 | + engines: {node: '>= 0.4'} | ||||
| 3281 | + | ||||
| 3282 | + source-map-js@1.2.2: | ||||
| 3283 | + resolution: {integrity: sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==} | ||||
| 3284 | + engines: {node: '>=0.10.0'} | ||||
| 3285 | + | ||||
| 3286 | + space-separated-tokens@2.0.2: | ||||
| 3287 | + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} | ||||
| 3288 | + | ||||
| 3289 | + sprintf-js@1.0.3: | ||||
| 3290 | + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} | ||||
| 3291 | + | ||||
| 3292 | + ssf@0.11.2: | ||||
| 3293 | + resolution: {integrity: sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==} | ||||
| 3294 | + engines: {node: '>=0.8'} | ||||
| 3295 | + | ||||
| 3296 | + stable-hash@0.0.5: | ||||
| 3297 | + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} | ||||
| 3298 | + | ||||
| 3299 | + standardwebhooks@1.1.1: | ||||
| 3300 | + resolution: {integrity: sha512-bCbX9ZEyFkWPsRz7Bl3NuQUJohmwGSev/yhr7vhaGPlc4AfIrspIRa6cPTBuI1ItmrTDJ4d/S2hCsfe4+vQGnQ==} | ||||
| 3301 | + | ||||
| 3302 | + stop-iteration-iterator@1.1.0: | ||||
| 3303 | + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} | ||||
| 3304 | + engines: {node: '>= 0.4'} | ||||
| 3305 | + | ||||
| 3306 | + string.prototype.includes@2.0.1: | ||||
| 3307 | + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} | ||||
| 3308 | + engines: {node: '>= 0.4'} | ||||
| 3309 | + | ||||
| 3310 | + string.prototype.matchall@4.1.0: | ||||
| 3311 | + resolution: {integrity: sha512-tHNHTxInrYLCga9O9YGxWA3G9/nnzQw8UGAyqGx3Ar1pSTTzIuM4woFSq4SowkXCjJIwq5sIiQvEfRI9tCH1qQ==} | ||||
| 3312 | + engines: {node: '>= 0.4'} | ||||
| 3313 | + | ||||
| 3314 | + string.prototype.repeat@1.0.0: | ||||
| 3315 | + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} | ||||
| 3316 | + | ||||
| 3317 | + string.prototype.trim@1.2.11: | ||||
| 3318 | + resolution: {integrity: sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==} | ||||
| 3319 | + engines: {node: '>= 0.4'} | ||||
| 3320 | + | ||||
| 3321 | + string.prototype.trimend@1.0.10: | ||||
| 3322 | + resolution: {integrity: sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==} | ||||
| 3323 | + engines: {node: '>= 0.4'} | ||||
| 3324 | + | ||||
| 3325 | + string.prototype.trimstart@1.0.8: | ||||
| 3326 | + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} | ||||
| 3327 | + engines: {node: '>= 0.4'} | ||||
| 3328 | + | ||||
| 3329 | + string_decoder@1.1.1: | ||||
| 3330 | + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} | ||||
| 3331 | + | ||||
| 3332 | + stringify-entities@4.0.4: | ||||
| 3333 | + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} | ||||
| 3334 | + | ||||
| 3335 | + strip-bom@3.0.0: | ||||
| 3336 | + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} | ||||
| 3337 | + engines: {node: '>=4'} | ||||
| 3338 | + | ||||
| 3339 | + style-to-object@2.0.2: | ||||
| 3340 | + resolution: {integrity: sha512-QmbXPUylqU80HAgTOJeEOdbA40W9KtxmjMhQy+tq+b8F2aoh3aQLuy82hh2jm2qsC9hR9eI0+eQidTMydKcqRA==} | ||||
| 3341 | + | ||||
| 3342 | + styled-jsx@5.1.6: | ||||
| 3343 | + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} | ||||
| 3344 | + engines: {node: '>= 12.0.0'} | ||||
| 3345 | + peerDependencies: | ||||
| 3346 | + '@babel/core': '*' | ||||
| 3347 | + babel-plugin-macros: '*' | ||||
| 3348 | + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' | ||||
| 3349 | + peerDependenciesMeta: | ||||
| 3350 | + '@babel/core': | ||||
| 3351 | + optional: true | ||||
| 3352 | + babel-plugin-macros: | ||||
| 3353 | + optional: true | ||||
| 3354 | + | ||||
| 3355 | + stylis@4.4.0: | ||||
| 3356 | + resolution: {integrity: sha512-5Z9ZpRzfuH6l/UAvCPAPUo3665Nk2wLaZU3x+TLHKVzIz33+sbJqbtrYoC3KD4/uVOr2Zp+L0LySezP9OHV9yA==} | ||||
| 3357 | + | ||||
| 3358 | + supports-preserve-symlinks-flag@1.0.0: | ||||
| 3359 | + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} | ||||
| 3360 | + engines: {node: '>= 0.4'} | ||||
| 3361 | + | ||||
| 3362 | + swr@2.5.1: | ||||
| 3363 | + resolution: {integrity: sha512-BRw55e8r0B7SpDN20CAzoQAHl7y1yP7/Zt7oqUjMv0vSt2u2Xnkm88Ws+VypbV9BXHQVuSuyVq7zMjO16wSExw==} | ||||
| 3364 | + peerDependencies: | ||||
| 3365 | + react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 3366 | + | ||||
| 3367 | + tailwindcss@4.3.3: | ||||
| 3368 | + resolution: {integrity: sha512-gOhV3P7ufE62QDGg1zVaTgCR+EtPv92k2nIhVcVKcLmxT1sUBsQGhnZj175j+MqRt4zLF7ic+sCYjfhxMxj7YQ==} | ||||
| 3369 | + | ||||
| 3370 | + tapable@2.3.3: | ||||
| 3371 | + resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==} | ||||
| 3372 | + engines: {node: '>=6'} | ||||
| 3373 | + | ||||
| 3374 | + tiny-invariant@1.3.3: | ||||
| 3375 | + resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} | ||||
| 3376 | + | ||||
| 3377 | + tinyexec@1.3.1: | ||||
| 3378 | + resolution: {integrity: sha512-GCvB3aoys96IuDFBMcTB46JOR6mdMtAToqwiW8JlWhsoh1mhHi/xn9ss/Dg7N555GiJyEt2qzoG/NHCwM6h1EA==} | ||||
| 3379 | + engines: {node: '>=18'} | ||||
| 3380 | + | ||||
| 3381 | + tinyglobby@0.2.17: | ||||
| 3382 | + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} | ||||
| 3383 | + engines: {node: '>=12.0.0'} | ||||
| 3384 | + | ||||
| 3385 | + to-regex-range@5.0.1: | ||||
| 3386 | + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} | ||||
| 3387 | + engines: {node: '>=8.0'} | ||||
| 3388 | + | ||||
| 3389 | + trim-lines@3.0.1: | ||||
| 3390 | + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} | ||||
| 3391 | + | ||||
| 3392 | + trough@2.2.0: | ||||
| 3393 | + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} | ||||
| 3394 | + | ||||
| 3395 | + ts-algebra@2.0.0: | ||||
| 3396 | + resolution: {integrity: sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==} | ||||
| 3397 | + | ||||
| 3398 | + ts-api-utils@2.5.0: | ||||
| 3399 | + resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==} | ||||
| 3400 | + engines: {node: '>=18.12'} | ||||
| 3401 | + peerDependencies: | ||||
| 3402 | + typescript: '>=4.8.4' | ||||
| 3403 | + | ||||
| 3404 | + ts-dedent@2.3.0: | ||||
| 3405 | + resolution: {integrity: sha512-JfJeIHke7y2egdGGgRAvpCwYFUsHlM2gPcrVOxFkznt/4uzQ7HFmvE63iFHVLBJNDuyDOQgijDK/tXH/f6Msjg==} | ||||
| 3406 | + engines: {node: '>=6.10'} | ||||
| 3407 | + | ||||
| 3408 | + tsconfig-paths@3.15.0: | ||||
| 3409 | + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} | ||||
| 3410 | + | ||||
| 3411 | + tslib@2.9.1: | ||||
| 3412 | + resolution: {integrity: sha512-a4Ux9VKuIMHsOS7ENbEq6hK2ZGYIT27Rtl0E4eD9KqwxhKiQeMZE/9xb3IdYwWaSOyIBQLExhQgXDTYoiCxnWA==} | ||||
| 3413 | + | ||||
| 3414 | + tsx@4.23.15: | ||||
| 3415 | + resolution: {integrity: sha512-Yiex1Ovn8z2xPpOWckIiysV1SSyRMY9BkLF++q0yKiDxCqRhosKfMg3janKkiLBwZ5c/YryloKwGZcrEmtwxKw==} | ||||
| 3416 | + engines: {node: '>=18.0.0'} | ||||
| 3417 | + hasBin: true | ||||
| 3418 | + | ||||
| 3419 | + type-check@0.4.0: | ||||
| 3420 | + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} | ||||
| 3421 | + engines: {node: '>= 0.8.0'} | ||||
| 3422 | + | ||||
| 3423 | + typed-array-buffer@1.0.3: | ||||
| 3424 | + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} | ||||
| 3425 | + engines: {node: '>= 0.4'} | ||||
| 3426 | + | ||||
| 3427 | + typed-array-byte-length@1.0.3: | ||||
| 3428 | + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} | ||||
| 3429 | + engines: {node: '>= 0.4'} | ||||
| 3430 | + | ||||
| 3431 | + typed-array-byte-offset@1.0.5: | ||||
| 3432 | + resolution: {integrity: sha512-0FHJvLPqZ7KJzp17O13jfsAjsqazgrxBu2zEK95PmUz8lv2+GjRuxUInCr2Rk9Dms3ihN21zJ929ZO43yJ95QQ==} | ||||
| 3433 | + engines: {node: '>= 0.4'} | ||||
| 3434 | + | ||||
| 3435 | + typed-array-length@1.0.8: | ||||
| 3436 | + resolution: {integrity: sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==} | ||||
| 3437 | + engines: {node: '>= 0.4'} | ||||
| 3438 | + | ||||
| 3439 | + typescript-eslint@8.72.1: | ||||
| 3440 | + resolution: {integrity: sha512-3Li9FfPmQp45nxEtFD1ZCrYFI3cYK5kpyNtmm1H7lMagm8u9sy6PTjy3ytwQZs7KNukOyKFHAZ6z6GjYFeaeXw==} | ||||
| 3441 | + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} | ||||
| 3442 | + peerDependencies: | ||||
| 3443 | + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 | ||||
| 3444 | + typescript: '>=4.8.4 <6.1.0' | ||||
| 3445 | + | ||||
| 3446 | + typescript@7.0.2: | ||||
| 3447 | + resolution: {integrity: sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA==} | ||||
| 3448 | + engines: {node: '>=16.20.0'} | ||||
| 3449 | + hasBin: true | ||||
| 3450 | + | ||||
| 3451 | + unbox-primitive@1.1.0: | ||||
| 3452 | + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} | ||||
| 3453 | + engines: {node: '>= 0.4'} | ||||
| 3454 | + | ||||
| 3455 | + underscore@1.13.8: | ||||
| 3456 | + resolution: {integrity: sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==} | ||||
| 3457 | + | ||||
| 3458 | + undici-types@8.9.0: | ||||
| 3459 | + resolution: {integrity: sha512-KTDyRTYX8sWmKXAikPHHSyc63CRPETMctyjKFupcC6OBLXT3xsN0e9aF7m+mIXutFWpUXuedtowG7iLOzp0kQg==} | ||||
| 3460 | + | ||||
| 3461 | + unified@11.0.5: | ||||
| 3462 | + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} | ||||
| 3463 | + | ||||
| 3464 | + unist-util-is@6.0.1: | ||||
| 3465 | + resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} | ||||
| 3466 | + | ||||
| 3467 | + unist-util-position@5.0.0: | ||||
| 3468 | + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} | ||||
| 3469 | + | ||||
| 3470 | + unist-util-remove-position@5.0.0: | ||||
| 3471 | + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} | ||||
| 3472 | + | ||||
| 3473 | + unist-util-stringify-position@4.0.0: | ||||
| 3474 | + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} | ||||
| 3475 | + | ||||
| 3476 | + unist-util-visit-parents@6.1.0: | ||||
| 3477 | + resolution: {integrity: sha512-vKXxz6O38sKDj1mtx/k2cWvkkFBuYGx6uGrlzBkVeWCRF/F8sdI0j3Wbkz/5rVNRRuVc8UrgRdbCxNhmYXgP3w==} | ||||
| 3478 | + | ||||
| 3479 | + unist-util-visit@5.2.0: | ||||
| 3480 | + resolution: {integrity: sha512-fpsYs/VVoZxfGY9/j3FQpZmN8wdLJaV1Pt38AaJNZu9uKIHcFU3halCdBveEq1HGKO1OEfJY65w1zvoFV1b3qQ==} | ||||
| 3481 | + | ||||
| 3482 | + unrs-resolver@1.12.2: | ||||
| 3483 | + resolution: {integrity: sha512-dmlRxBJJayXjqTwC+JtF1HhJmgf3ftQ3YejFcZrf4+KKtJv0qDsK1pjqaaVjG7wJ5NJ6UVP1OqRMQ71Z4C3rxQ==} | ||||
| 3484 | + | ||||
| 3485 | + update-browserslist-db@1.3.4: | ||||
| 3486 | + resolution: {integrity: sha512-t8wonIOdQyOjtPd2VktlBu6QjTVTks6v8bSi7kd0r2Vll8TK1JYDZtRRdbmCHOAMphkZgrzK+L+vXK4pyZ8t4A==} | ||||
| 3487 | + hasBin: true | ||||
| 3488 | + peerDependencies: | ||||
| 3489 | + browserslist: '>= 4.21.0' | ||||
| 3490 | + | ||||
| 3491 | + uri-js@4.4.1: | ||||
| 3492 | + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} | ||||
| 3493 | + | ||||
| 3494 | + use-sync-external-store@1.7.0: | ||||
| 3495 | + resolution: {integrity: sha512-6L+EeigHMQhdaIPNIFUKwfWJSwWFQ8gJbJ2DLOs5sDIegTwR9fRxvnM3uciHKjIZhFz+KAv2emhWMRvDmMcY8A==} | ||||
| 3496 | + peerDependencies: | ||||
| 3497 | + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 | ||||
| 3498 | + | ||||
| 3499 | + util-deprecate@1.0.2: | ||||
| 3500 | + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} | ||||
| 3501 | + | ||||
| 3502 | + uuid@14.0.3: | ||||
| 3503 | + resolution: {integrity: sha512-Sc5u1VVln93y1Xnz4R+CunOZc7R9LUcTmhj7Rc7Eg3HVcf7rVn2FOoa812fe0W8p3jD7xeoGSYbfqCGGH2B6xw==} | ||||
| 3504 | + hasBin: true | ||||
| 3505 | + | ||||
| 3506 | + vfile-location@5.0.3: | ||||
| 3507 | + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} | ||||
| 3508 | + | ||||
| 3509 | + vfile-message@4.0.3: | ||||
| 3510 | + resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} | ||||
| 3511 | + | ||||
| 3512 | + vfile@6.0.3: | ||||
| 3513 | + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} | ||||
| 3514 | + | ||||
| 3515 | + victory-vendor@37.4.1: | ||||
| 3516 | + resolution: {integrity: sha512-geV4p2GVfVM9lgm9ZRS3pvsbAPS+BUGhM9W9nPzPHTKi+/+KjNrFXdgP6KkG+XspNZuvcXmchcrtklfuQ4gniw==} | ||||
| 3517 | + | ||||
| 3518 | + web-namespaces@2.0.1: | ||||
| 3519 | + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} | ||||
| 3520 | + | ||||
| 3521 | + which-boxed-primitive@1.1.1: | ||||
| 3522 | + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} | ||||
| 3523 | + engines: {node: '>= 0.4'} | ||||
| 3524 | + | ||||
| 3525 | + which-builtin-type@1.2.1: | ||||
| 3526 | + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} | ||||
| 3527 | + engines: {node: '>= 0.4'} | ||||
| 3528 | + | ||||
| 3529 | + which-collection@1.0.2: | ||||
| 3530 | + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} | ||||
| 3531 | + engines: {node: '>= 0.4'} | ||||
| 3532 | + | ||||
| 3533 | + which-typed-array@1.1.24: | ||||
| 3534 | + resolution: {integrity: sha512-wk4Mf4pR5mRP7eYuuTBCIQ9d0ud2Fv2jRLQpfgnRjbOxAFHmjKFValgTpitVKzJJS8ajnYQV2Du1SZ8j6b/EUQ==} | ||||
| 3535 | + engines: {node: '>= 0.4'} | ||||
| 3536 | + | ||||
| 3537 | + which@2.0.2: | ||||
| 3538 | + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} | ||||
| 3539 | + engines: {node: '>= 8'} | ||||
| 3540 | + hasBin: true | ||||
| 3541 | + | ||||
| 3542 | + wmf@1.0.2: | ||||
| 3543 | + resolution: {integrity: sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==} | ||||
| 3544 | + engines: {node: '>=0.8'} | ||||
| 3545 | + | ||||
| 3546 | + word-wrap@1.2.5: | ||||
| 3547 | + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} | ||||
| 3548 | + engines: {node: '>=0.10.0'} | ||||
| 3549 | + | ||||
| 3550 | + word@0.3.0: | ||||
| 3551 | + resolution: {integrity: sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==} | ||||
| 3552 | + engines: {node: '>=0.8'} | ||||
| 3553 | + | ||||
| 3554 | + xlsx@0.18.5: | ||||
| 3555 | + resolution: {integrity: sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==} | ||||
| 3556 | + engines: {node: '>=0.8'} | ||||
| 3557 | + hasBin: true | ||||
| 3558 | + | ||||
| 3559 | + xmlbuilder@10.1.1: | ||||
| 3560 | + resolution: {integrity: sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg==} | ||||
| 3561 | + engines: {node: '>=4.0'} | ||||
| 3562 | + | ||||
| 3563 | + yallist@3.1.1: | ||||
| 3564 | + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} | ||||
| 3565 | + | ||||
| 3566 | + yocto-queue@0.1.0: | ||||
| 3567 | + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} | ||||
| 3568 | + engines: {node: '>=10'} | ||||
| 3569 | + | ||||
| 3570 | + zod-validation-error@4.0.2: | ||||
| 3571 | + resolution: {integrity: sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==} | ||||
| 3572 | + engines: {node: '>=18.0.0'} | ||||
| 3573 | + peerDependencies: | ||||
| 3574 | + zod: ^3.25.0 || ^4.0.0 | ||||
| 3575 | + | ||||
| 3576 | + zod@4.6.7: | ||||
| 3577 | + resolution: {integrity: sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==} | ||||
| 3578 | + | ||||
| 3579 | + zwitch@2.0.4: | ||||
| 3580 | + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} | ||||
| 3581 | + | ||||
| 3582 | +snapshots: | ||||
| 3583 | + | ||||
| 3584 | + '@alloc/quick-lru@5.3.0': {} | ||||
| 3585 | + | ||||
| 3586 | + '@antfu/install-pkg@2.1.0': | ||||
| 3587 | + dependencies: | ||||
| 3588 | + package-manager-detector: 1.9.0 | ||||
| 3589 | + tinyexec: 1.3.1 | ||||
| 3590 | + | ||||
| 3591 | + '@anthropic-ai/sdk@1.3.0(zod@4.6.7)': | ||||
| 3592 | + dependencies: | ||||
| 3593 | + '@opentelemetry/api': 1.10.0 | ||||
| 3594 | + json-schema-to-ts: 3.1.1 | ||||
| 3595 | + standardwebhooks: 1.1.1 | ||||
| 3596 | + optionalDependencies: | ||||
| 3597 | + zod: 4.6.7 | ||||
| 3598 | + | ||||
| 3599 | + '@babel/code-frame@7.29.7': | ||||
| 3600 | + dependencies: | ||||
| 3601 | + '@babel/helper-validator-identifier': 7.29.7 | ||||
| 3602 | + js-tokens: 4.0.0 | ||||
| 3603 | + picocolors: 1.1.1 | ||||
| 3604 | + | ||||
| 3605 | + '@babel/compat-data@7.29.7': {} | ||||
| 3606 | + | ||||
| 3607 | + '@babel/core@7.29.7': | ||||
| 3608 | + dependencies: | ||||
| 3609 | + '@babel/code-frame': 7.29.7 | ||||
| 3610 | + '@babel/generator': 7.29.12 | ||||
| 3611 | + '@babel/helper-compilation-targets': 7.29.7 | ||||
| 3612 | + '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) | ||||
| 3613 | + '@babel/helpers': 7.29.10 | ||||
| 3614 | + '@babel/parser': 7.29.12 | ||||
| 3615 | + '@babel/template': 7.29.7 | ||||
| 3616 | + '@babel/traverse': 7.29.12 | ||||
| 3617 | + '@babel/types': 7.29.11 | ||||
| 3618 | + '@jridgewell/remapping': 2.3.5 | ||||
| 3619 | + convert-source-map: 2.0.0 | ||||
| 3620 | + debug: 4.4.3 | ||||
| 3621 | + gensync: 1.0.0-beta.2 | ||||
| 3622 | + json5: 2.2.3 | ||||
| 3623 | + semver: 6.3.1 | ||||
| 3624 | + transitivePeerDependencies: | ||||
| 3625 | + - supports-color | ||||
| 3626 | + | ||||
| 3627 | + '@babel/generator@7.29.12': | ||||
| 3628 | + dependencies: | ||||
| 3629 | + '@babel/parser': 7.29.12 | ||||
| 3630 | + '@babel/types': 7.29.11 | ||||
| 3631 | + '@jridgewell/gen-mapping': 0.3.13 | ||||
| 3632 | + '@jridgewell/trace-mapping': 0.3.31 | ||||
| 3633 | + jsesc: 3.1.0 | ||||
| 3634 | + | ||||
| 3635 | + '@babel/helper-compilation-targets@7.29.7': | ||||
| 3636 | + dependencies: | ||||
| 3637 | + '@babel/compat-data': 7.29.7 | ||||
| 3638 | + '@babel/helper-validator-option': 7.29.7 | ||||
| 3639 | + browserslist: 4.29.5 | ||||
| 3640 | + lru-cache: 5.1.1 | ||||
| 3641 | + semver: 6.3.1 | ||||
| 3642 | + | ||||
| 3643 | + '@babel/helper-globals@7.29.7': {} | ||||
| 3644 | + | ||||
| 3645 | + '@babel/helper-module-imports@7.29.7': | ||||
| 3646 | + dependencies: | ||||
| 3647 | + '@babel/traverse': 7.29.12 | ||||
| 3648 | + '@babel/types': 7.29.11 | ||||
| 3649 | + transitivePeerDependencies: | ||||
| 3650 | + - supports-color | ||||
| 3651 | + | ||||
| 3652 | + '@babel/helper-module-transforms@7.29.7(@babel/core@7.29.7)': | ||||
| 3653 | + dependencies: | ||||
| 3654 | + '@babel/core': 7.29.7 | ||||
| 3655 | + '@babel/helper-module-imports': 7.29.7 | ||||
| 3656 | + '@babel/helper-validator-identifier': 7.29.7 | ||||
| 3657 | + '@babel/traverse': 7.29.12 | ||||
| 3658 | + transitivePeerDependencies: | ||||
| 3659 | + - supports-color | ||||
| 3660 | + | ||||
| 3661 | + '@babel/helper-string-parser@7.29.11': {} | ||||
| 3662 | + | ||||
| 3663 | + '@babel/helper-validator-identifier@7.29.7': {} | ||||
| 3664 | + | ||||
| 3665 | + '@babel/helper-validator-option@7.29.7': {} | ||||
| 3666 | + | ||||
| 3667 | + '@babel/helpers@7.29.10': | ||||
| 3668 | + dependencies: | ||||
| 3669 | + '@babel/template': 7.29.7 | ||||
| 3670 | + '@babel/types': 7.29.11 | ||||
| 3671 | + | ||||
| 3672 | + '@babel/parser@7.29.12': | ||||
| 3673 | + dependencies: | ||||
| 3674 | + '@babel/types': 7.29.11 | ||||
| 3675 | + | ||||
| 3676 | + '@babel/runtime@7.29.10': {} | ||||
| 3677 | + | ||||
| 3678 | + '@babel/template@7.29.7': | ||||
| 3679 | + dependencies: | ||||
| 3680 | + '@babel/code-frame': 7.29.7 | ||||
| 3681 | + '@babel/parser': 7.29.12 | ||||
| 3682 | + '@babel/types': 7.29.11 | ||||
| 3683 | + | ||||
| 3684 | + '@babel/traverse@7.29.12': | ||||
| 3685 | + dependencies: | ||||
| 3686 | + '@babel/code-frame': 7.29.7 | ||||
| 3687 | + '@babel/generator': 7.29.12 | ||||
| 3688 | + '@babel/helper-globals': 7.29.7 | ||||
| 3689 | + '@babel/parser': 7.29.12 | ||||
| 3690 | + '@babel/template': 7.29.7 | ||||
| 3691 | + '@babel/types': 7.29.11 | ||||
| 3692 | + debug: 4.4.3 | ||||
| 3693 | + transitivePeerDependencies: | ||||
| 3694 | + - supports-color | ||||
| 3695 | + | ||||
| 3696 | + '@babel/types@7.29.11': | ||||
| 3697 | + dependencies: | ||||
| 3698 | + '@babel/helper-string-parser': 7.29.11 | ||||
| 3699 | + '@babel/helper-validator-identifier': 7.29.7 | ||||
| 3700 | + | ||||
| 3701 | + '@braintree/sanitize-url@7.1.2': {} | ||||
| 3702 | + | ||||
| 3703 | + '@cacheable/memory@2.2.0': | ||||
| 3704 | + dependencies: | ||||
| 3705 | + '@cacheable/utils': 2.5.0 | ||||
| 3706 | + '@keyv/bigmap': 1.3.1(keyv@5.6.0) | ||||
| 3707 | + hookified: 1.15.1 | ||||
| 3708 | + keyv: 5.6.0 | ||||
| 3709 | + | ||||
| 3710 | + '@cacheable/utils@2.5.0': | ||||
| 3711 | + dependencies: | ||||
| 3712 | + hashery: 1.5.1 | ||||
| 3713 | + keyv: 5.6.0 | ||||
| 3714 | + | ||||
| 3715 | + '@chevrotain/cst-dts-gen@13.2.0': | ||||
| 3716 | + dependencies: | ||||
| 3717 | + '@chevrotain/gast': 13.2.0 | ||||
| 3718 | + '@chevrotain/types': 13.2.0 | ||||
| 3719 | + | ||||
| 3720 | + '@chevrotain/gast@13.2.0': | ||||
| 3721 | + dependencies: | ||||
| 3722 | + '@chevrotain/types': 13.2.0 | ||||
| 3723 | + | ||||
| 3724 | + '@chevrotain/regexp-to-ast@13.2.0': {} | ||||
| 3725 | + | ||||
| 3726 | + '@chevrotain/types@13.2.0': {} | ||||
| 3727 | + | ||||
| 3728 | + '@chevrotain/utils@13.2.0': {} | ||||
| 3729 | + | ||||
| 3730 | + '@emnapi/core@1.10.0': | ||||
| 3731 | + dependencies: | ||||
| 3732 | + '@emnapi/wasi-threads': 1.2.1 | ||||
| 3733 | + tslib: 2.9.1 | ||||
| 3734 | + optional: true | ||||
| 3735 | + | ||||
| 3736 | + '@emnapi/runtime@1.10.0': | ||||
| 3737 | + dependencies: | ||||
| 3738 | + tslib: 2.9.1 | ||||
| 3739 | + optional: true | ||||
| 3740 | + | ||||
| 3741 | + '@emnapi/runtime@1.11.3': | ||||
| 3742 | + dependencies: | ||||
| 3743 | + tslib: 2.9.1 | ||||
| 3744 | + optional: true | ||||
| 3745 | + | ||||
| 3746 | + '@emnapi/wasi-threads@1.2.1': | ||||
| 3747 | + dependencies: | ||||
| 3748 | + tslib: 2.9.1 | ||||
| 3749 | + optional: true | ||||
| 3750 | + | ||||
| 3751 | + '@esbuild/aix-ppc64@0.28.2': | ||||
| 3752 | + optional: true | ||||
| 3753 | + | ||||
| 3754 | + '@esbuild/android-arm64@0.28.2': | ||||
| 3755 | + optional: true | ||||
| 3756 | + | ||||
| 3757 | + '@esbuild/android-arm@0.28.2': | ||||
| 3758 | + optional: true | ||||
| 3759 | + | ||||
| 3760 | + '@esbuild/android-x64@0.28.2': | ||||
| 3761 | + optional: true | ||||
| 3762 | + | ||||
| 3763 | + '@esbuild/darwin-arm64@0.28.2': | ||||
| 3764 | + optional: true | ||||
| 3765 | + | ||||
| 3766 | + '@esbuild/darwin-x64@0.28.2': | ||||
| 3767 | + optional: true | ||||
| 3768 | + | ||||
| 3769 | + '@esbuild/freebsd-arm64@0.28.2': | ||||
| 3770 | + optional: true | ||||
| 3771 | + | ||||
| 3772 | + '@esbuild/freebsd-x64@0.28.2': | ||||
| 3773 | + optional: true | ||||
| 3774 | + | ||||
| 3775 | + '@esbuild/linux-arm64@0.28.2': | ||||
| 3776 | + optional: true | ||||
| 3777 | + | ||||
| 3778 | + '@esbuild/linux-arm@0.28.2': | ||||
| 3779 | + optional: true | ||||
| 3780 | + | ||||
| 3781 | + '@esbuild/linux-ia32@0.28.2': | ||||
| 3782 | + optional: true | ||||
| 3783 | + | ||||
| 3784 | + '@esbuild/linux-loong64@0.28.2': | ||||
| 3785 | + optional: true | ||||
| 3786 | + | ||||
| 3787 | + '@esbuild/linux-mips64el@0.28.2': | ||||
| 3788 | + optional: true | ||||
| 3789 | + | ||||
| 3790 | + '@esbuild/linux-ppc64@0.28.2': | ||||
| 3791 | + optional: true | ||||
| 3792 | + | ||||
| 3793 | + '@esbuild/linux-riscv64@0.28.2': | ||||
| 3794 | + optional: true | ||||
| 3795 | + | ||||
| 3796 | + '@esbuild/linux-s390x@0.28.2': | ||||
| 3797 | + optional: true | ||||
| 3798 | + | ||||
| 3799 | + '@esbuild/linux-x64@0.28.2': | ||||
| 3800 | + optional: true | ||||
| 3801 | + | ||||
| 3802 | + '@esbuild/netbsd-arm64@0.28.2': | ||||
| 3803 | + optional: true | ||||
| 3804 | + | ||||
| 3805 | + '@esbuild/netbsd-x64@0.28.2': | ||||
| 3806 | + optional: true | ||||
| 3807 | + | ||||
| 3808 | + '@esbuild/openbsd-arm64@0.28.2': | ||||
| 3809 | + optional: true | ||||
| 3810 | + | ||||
| 3811 | + '@esbuild/openbsd-x64@0.28.2': | ||||
| 3812 | + optional: true | ||||
| 3813 | + | ||||
| 3814 | + '@esbuild/openharmony-arm64@0.28.2': | ||||
| 3815 | + optional: true | ||||
| 3816 | + | ||||
| 3817 | + '@esbuild/sunos-x64@0.28.2': | ||||
| 3818 | + optional: true | ||||
| 3819 | + | ||||
| 3820 | + '@esbuild/win32-arm64@0.28.2': | ||||
| 3821 | + optional: true | ||||
| 3822 | + | ||||
| 3823 | + '@esbuild/win32-ia32@0.28.2': | ||||
| 3824 | + optional: true | ||||
| 3825 | + | ||||
| 3826 | + '@esbuild/win32-x64@0.28.2': | ||||
| 3827 | + optional: true | ||||
| 3828 | + | ||||
| 3829 | + '@eslint-community/eslint-utils@4.10.1(eslint@10.14.0(jiti@2.7.0))': | ||||
| 3830 | + dependencies: | ||||
| 3831 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 3832 | + eslint-visitor-keys: 3.4.3 | ||||
| 3833 | + | ||||
| 3834 | + '@eslint-community/eslint-utils@4.9.1(eslint@10.14.0(jiti@2.7.0))': | ||||
| 3835 | + dependencies: | ||||
| 3836 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 3837 | + eslint-visitor-keys: 3.4.3 | ||||
| 3838 | + | ||||
| 3839 | + '@eslint-community/regexpp@4.12.2': {} | ||||
| 3840 | + | ||||
| 3841 | + '@eslint/config-array@0.23.5': | ||||
| 3842 | + dependencies: | ||||
| 3843 | + '@eslint/object-schema': 3.0.5 | ||||
| 3844 | + debug: 4.4.3 | ||||
| 3845 | + minimatch: 10.2.6 | ||||
| 3846 | + transitivePeerDependencies: | ||||
| 3847 | + - supports-color | ||||
| 3848 | + | ||||
| 3849 | + '@eslint/config-helpers@0.7.0': | ||||
| 3850 | + dependencies: | ||||
| 3851 | + '@eslint/core': 1.2.1 | ||||
| 3852 | + | ||||
| 3853 | + '@eslint/core@1.2.1': | ||||
| 3854 | + dependencies: | ||||
| 3855 | + '@types/json-schema': 7.0.15 | ||||
| 3856 | + | ||||
| 3857 | + '@eslint/object-schema@3.0.5': {} | ||||
| 3858 | + | ||||
| 3859 | + '@eslint/plugin-kit@0.7.3': | ||||
| 3860 | + dependencies: | ||||
| 3861 | + '@eslint/core': 1.2.1 | ||||
| 3862 | + levn: 0.4.1 | ||||
| 3863 | + | ||||
| 3864 | + '@humanfs/core@0.19.2': | ||||
| 3865 | + dependencies: | ||||
| 3866 | + '@humanfs/types': 0.15.0 | ||||
| 3867 | + | ||||
| 3868 | + '@humanfs/node@0.16.8': | ||||
| 3869 | + dependencies: | ||||
| 3870 | + '@humanfs/core': 0.19.2 | ||||
| 3871 | + '@humanfs/types': 0.15.0 | ||||
| 3872 | + '@humanwhocodes/retry': 0.4.3 | ||||
| 3873 | + | ||||
| 3874 | + '@humanfs/types@0.15.0': {} | ||||
| 3875 | + | ||||
| 3876 | + '@humanwhocodes/module-importer@1.0.1': {} | ||||
| 3877 | + | ||||
| 3878 | + '@humanwhocodes/retry@0.4.3': {} | ||||
| 3879 | + | ||||
| 3880 | + '@iconify/types@2.0.0': {} | ||||
| 3881 | + | ||||
| 3882 | + '@iconify/utils@3.1.7': | ||||
| 3883 | + dependencies: | ||||
| 3884 | + '@antfu/install-pkg': 2.1.0 | ||||
| 3885 | + '@iconify/types': 2.0.0 | ||||
| 3886 | + import-meta-resolve: 4.2.0 | ||||
| 3887 | + | ||||
| 3888 | + '@img/colour@1.1.0': | ||||
| 3889 | + optional: true | ||||
| 3890 | + | ||||
| 3891 | + '@img/sharp-darwin-arm64@0.35.5': | ||||
| 3892 | + optionalDependencies: | ||||
| 3893 | + '@img/sharp-libvips-darwin-arm64': 1.3.4 | ||||
| 3894 | + optional: true | ||||
| 3895 | + | ||||
| 3896 | + '@img/sharp-darwin-x64@0.35.5': | ||||
| 3897 | + optionalDependencies: | ||||
| 3898 | + '@img/sharp-libvips-darwin-x64': 1.3.4 | ||||
| 3899 | + optional: true | ||||
| 3900 | + | ||||
| 3901 | + '@img/sharp-freebsd-wasm32@0.35.5': | ||||
| 3902 | + dependencies: | ||||
| 3903 | + '@img/sharp-wasm32': 0.35.5 | ||||
| 3904 | + optional: true | ||||
| 3905 | + | ||||
| 3906 | + '@img/sharp-libvips-darwin-arm64@1.3.4': | ||||
| 3907 | + optional: true | ||||
| 3908 | + | ||||
| 3909 | + '@img/sharp-libvips-darwin-x64@1.3.4': | ||||
| 3910 | + optional: true | ||||
| 3911 | + | ||||
| 3912 | + '@img/sharp-libvips-linux-arm64@1.3.4': | ||||
| 3913 | + optional: true | ||||
| 3914 | + | ||||
| 3915 | + '@img/sharp-libvips-linux-arm@1.3.4': | ||||
| 3916 | + optional: true | ||||
| 3917 | + | ||||
| 3918 | + '@img/sharp-libvips-linux-ppc64@1.3.4': | ||||
| 3919 | + optional: true | ||||
| 3920 | + | ||||
| 3921 | + '@img/sharp-libvips-linux-riscv64@1.3.4': | ||||
| 3922 | + optional: true | ||||
| 3923 | + | ||||
| 3924 | + '@img/sharp-libvips-linux-s390x@1.3.4': | ||||
| 3925 | + optional: true | ||||
| 3926 | + | ||||
| 3927 | + '@img/sharp-libvips-linux-x64@1.3.4': | ||||
| 3928 | + optional: true | ||||
| 3929 | + | ||||
| 3930 | + '@img/sharp-libvips-linuxmusl-arm64@1.3.4': | ||||
| 3931 | + optional: true | ||||
| 3932 | + | ||||
| 3933 | + '@img/sharp-libvips-linuxmusl-x64@1.3.4': | ||||
| 3934 | + optional: true | ||||
| 3935 | + | ||||
| 3936 | + '@img/sharp-linux-arm64@0.35.5': | ||||
| 3937 | + optionalDependencies: | ||||
| 3938 | + '@img/sharp-libvips-linux-arm64': 1.3.4 | ||||
| 3939 | + optional: true | ||||
| 3940 | + | ||||
| 3941 | + '@img/sharp-linux-arm@0.35.5': | ||||
| 3942 | + optionalDependencies: | ||||
| 3943 | + '@img/sharp-libvips-linux-arm': 1.3.4 | ||||
| 3944 | + optional: true | ||||
| 3945 | + | ||||
| 3946 | + '@img/sharp-linux-ppc64@0.35.5': | ||||
| 3947 | + optionalDependencies: | ||||
| 3948 | + '@img/sharp-libvips-linux-ppc64': 1.3.4 | ||||
| 3949 | + optional: true | ||||
| 3950 | + | ||||
| 3951 | + '@img/sharp-linux-riscv64@0.35.5': | ||||
| 3952 | + optionalDependencies: | ||||
| 3953 | + '@img/sharp-libvips-linux-riscv64': 1.3.4 | ||||
| 3954 | + optional: true | ||||
| 3955 | + | ||||
| 3956 | + '@img/sharp-linux-s390x@0.35.5': | ||||
| 3957 | + optionalDependencies: | ||||
| 3958 | + '@img/sharp-libvips-linux-s390x': 1.3.4 | ||||
| 3959 | + optional: true | ||||
| 3960 | + | ||||
| 3961 | + '@img/sharp-linux-x64@0.35.5': | ||||
| 3962 | + optionalDependencies: | ||||
| 3963 | + '@img/sharp-libvips-linux-x64': 1.3.4 | ||||
| 3964 | + optional: true | ||||
| 3965 | + | ||||
| 3966 | + '@img/sharp-linuxmusl-arm64@0.35.5': | ||||
| 3967 | + optionalDependencies: | ||||
| 3968 | + '@img/sharp-libvips-linuxmusl-arm64': 1.3.4 | ||||
| 3969 | + optional: true | ||||
| 3970 | + | ||||
| 3971 | + '@img/sharp-linuxmusl-x64@0.35.5': | ||||
| 3972 | + optionalDependencies: | ||||
| 3973 | + '@img/sharp-libvips-linuxmusl-x64': 1.3.4 | ||||
| 3974 | + optional: true | ||||
| 3975 | + | ||||
| 3976 | + '@img/sharp-wasm32@0.35.5': | ||||
| 3977 | + dependencies: | ||||
| 3978 | + '@emnapi/runtime': 1.11.3 | ||||
| 3979 | + optional: true | ||||
| 3980 | + | ||||
| 3981 | + '@img/sharp-webcontainers-wasm32@0.35.5': | ||||
| 3982 | + dependencies: | ||||
| 3983 | + '@img/sharp-wasm32': 0.35.5 | ||||
| 3984 | + optional: true | ||||
| 3985 | + | ||||
| 3986 | + '@img/sharp-win32-arm64@0.35.5': | ||||
| 3987 | + optional: true | ||||
| 3988 | + | ||||
| 3989 | + '@img/sharp-win32-ia32@0.35.5': | ||||
| 3990 | + optional: true | ||||
| 3991 | + | ||||
| 3992 | + '@img/sharp-win32-x64@0.35.5': | ||||
| 3993 | + optional: true | ||||
| 3994 | + | ||||
| 3995 | + '@jridgewell/gen-mapping@0.3.13': | ||||
| 3996 | + dependencies: | ||||
| 3997 | + '@jridgewell/sourcemap-codec': 1.6.0 | ||||
| 3998 | + '@jridgewell/trace-mapping': 0.3.31 | ||||
| 3999 | + | ||||
| 4000 | + '@jridgewell/remapping@2.3.5': | ||||
| 4001 | + dependencies: | ||||
| 4002 | + '@jridgewell/gen-mapping': 0.3.13 | ||||
| 4003 | + '@jridgewell/trace-mapping': 0.3.31 | ||||
| 4004 | + | ||||
| 4005 | + '@jridgewell/resolve-uri@3.1.2': {} | ||||
| 4006 | + | ||||
| 4007 | + '@jridgewell/sourcemap-codec@1.6.0': {} | ||||
| 4008 | + | ||||
| 4009 | + '@jridgewell/trace-mapping@0.3.31': | ||||
| 4010 | + dependencies: | ||||
| 4011 | + '@jridgewell/resolve-uri': 3.1.2 | ||||
| 4012 | + '@jridgewell/sourcemap-codec': 1.6.0 | ||||
| 4013 | + | ||||
| 4014 | + '@keyv/bigmap@1.3.1(keyv@5.6.0)': | ||||
| 4015 | + dependencies: | ||||
| 4016 | + hashery: 1.5.1 | ||||
| 4017 | + hookified: 1.15.1 | ||||
| 4018 | + keyv: 5.6.0 | ||||
| 4019 | + | ||||
| 4020 | + '@keyv/serialize@1.1.1': {} | ||||
| 4021 | + | ||||
| 4022 | + '@mermaid-js/parser@2.0.1': | ||||
| 4023 | + dependencies: | ||||
| 4024 | + '@chevrotain/types': 13.2.0 | ||||
| 4025 | + | ||||
| 4026 | + '@napi-rs/canvas-android-arm64@0.1.80': | ||||
| 4027 | + optional: true | ||||
| 4028 | + | ||||
| 4029 | + '@napi-rs/canvas-darwin-arm64@0.1.80': | ||||
| 4030 | + optional: true | ||||
| 4031 | + | ||||
| 4032 | + '@napi-rs/canvas-darwin-x64@0.1.80': | ||||
| 4033 | + optional: true | ||||
| 4034 | + | ||||
| 4035 | + '@napi-rs/canvas-linux-arm-gnueabihf@0.1.80': | ||||
| 4036 | + optional: true | ||||
| 4037 | + | ||||
| 4038 | + '@napi-rs/canvas-linux-arm64-gnu@0.1.80': | ||||
| 4039 | + optional: true | ||||
| 4040 | + | ||||
| 4041 | + '@napi-rs/canvas-linux-arm64-musl@0.1.80': | ||||
| 4042 | + optional: true | ||||
| 4043 | + | ||||
| 4044 | + '@napi-rs/canvas-linux-riscv64-gnu@0.1.80': | ||||
| 4045 | + optional: true | ||||
| 4046 | + | ||||
| 4047 | + '@napi-rs/canvas-linux-x64-gnu@0.1.80': | ||||
| 4048 | + optional: true | ||||
| 4049 | + | ||||
| 4050 | + '@napi-rs/canvas-linux-x64-musl@0.1.80': | ||||
| 4051 | + optional: true | ||||
| 4052 | + | ||||
| 4053 | + '@napi-rs/canvas-win32-x64-msvc@0.1.80': | ||||
| 4054 | + optional: true | ||||
| 4055 | + | ||||
| 4056 | + '@napi-rs/canvas@0.1.80': | ||||
| 4057 | + optionalDependencies: | ||||
| 4058 | + '@napi-rs/canvas-android-arm64': 0.1.80 | ||||
| 4059 | + '@napi-rs/canvas-darwin-arm64': 0.1.80 | ||||
| 4060 | + '@napi-rs/canvas-darwin-x64': 0.1.80 | ||||
| 4061 | + '@napi-rs/canvas-linux-arm-gnueabihf': 0.1.80 | ||||
| 4062 | + '@napi-rs/canvas-linux-arm64-gnu': 0.1.80 | ||||
| 4063 | + '@napi-rs/canvas-linux-arm64-musl': 0.1.80 | ||||
| 4064 | + '@napi-rs/canvas-linux-riscv64-gnu': 0.1.80 | ||||
| 4065 | + '@napi-rs/canvas-linux-x64-gnu': 0.1.80 | ||||
| 4066 | + '@napi-rs/canvas-linux-x64-musl': 0.1.80 | ||||
| 4067 | + '@napi-rs/canvas-win32-x64-msvc': 0.1.80 | ||||
| 4068 | + | ||||
| 4069 | + '@napi-rs/wasm-runtime@1.2.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': | ||||
| 4070 | + dependencies: | ||||
| 4071 | + '@emnapi/core': 1.10.0 | ||||
| 4072 | + '@emnapi/runtime': 1.10.0 | ||||
| 4073 | + '@tybys/wasm-util': 0.10.4 | ||||
| 4074 | + optional: true | ||||
| 4075 | + | ||||
| 4076 | + '@next/env@16.4.3': {} | ||||
| 4077 | + | ||||
| 4078 | + '@next/eslint-plugin-next@16.4.3(eslint@10.14.0(jiti@2.7.0))': | ||||
| 4079 | + dependencies: | ||||
| 4080 | + '@eslint-community/eslint-utils': 4.9.1(eslint@10.14.0(jiti@2.7.0)) | ||||
| 4081 | + fast-glob: 3.3.1 | ||||
| 4082 | + transitivePeerDependencies: | ||||
| 4083 | + - eslint | ||||
| 4084 | + | ||||
| 4085 | + '@next/swc-darwin-arm64@16.4.3': | ||||
| 4086 | + optional: true | ||||
| 4087 | + | ||||
| 4088 | + '@next/swc-darwin-x64@16.4.3': | ||||
| 4089 | + optional: true | ||||
| 4090 | + | ||||
| 4091 | + '@next/swc-linux-arm64-gnu@16.4.3': | ||||
| 4092 | + optional: true | ||||
| 4093 | + | ||||
| 4094 | + '@next/swc-linux-arm64-musl@16.4.3': | ||||
| 4095 | + optional: true | ||||
| 4096 | + | ||||
| 4097 | + '@next/swc-linux-x64-gnu@16.4.3': | ||||
| 4098 | + optional: true | ||||
| 4099 | + | ||||
| 4100 | + '@next/swc-linux-x64-musl@16.4.3': | ||||
| 4101 | + optional: true | ||||
| 4102 | + | ||||
| 4103 | + '@next/swc-win32-arm64-msvc@16.4.3': | ||||
| 4104 | + optional: true | ||||
| 4105 | + | ||||
| 4106 | + '@next/swc-win32-x64-msvc@16.4.3': | ||||
| 4107 | + optional: true | ||||
| 4108 | + | ||||
| 4109 | + '@node-rs/argon2-android-arm-eabi@2.2.2': | ||||
| 4110 | + optional: true | ||||
| 4111 | + | ||||
| 4112 | + '@node-rs/argon2-android-arm64@2.2.2': | ||||
| 4113 | + optional: true | ||||
| 4114 | + | ||||
| 4115 | + '@node-rs/argon2-darwin-arm64@2.2.2': | ||||
| 4116 | + optional: true | ||||
| 4117 | + | ||||
| 4118 | + '@node-rs/argon2-darwin-x64@2.2.2': | ||||
| 4119 | + optional: true | ||||
| 4120 | + | ||||
| 4121 | + '@node-rs/argon2-freebsd-x64@2.2.2': | ||||
| 4122 | + optional: true | ||||
| 4123 | + | ||||
| 4124 | + '@node-rs/argon2-linux-arm-gnueabihf@2.2.2': | ||||
| 4125 | + optional: true | ||||
| 4126 | + | ||||
| 4127 | + '@node-rs/argon2-linux-arm64-gnu@2.2.2': | ||||
| 4128 | + optional: true | ||||
| 4129 | + | ||||
| 4130 | + '@node-rs/argon2-linux-arm64-musl@2.2.2': | ||||
| 4131 | + optional: true | ||||
| 4132 | + | ||||
| 4133 | + '@node-rs/argon2-linux-x64-gnu@2.2.2': | ||||
| 4134 | + optional: true | ||||
| 4135 | + | ||||
| 4136 | + '@node-rs/argon2-linux-x64-musl@2.2.2': | ||||
| 4137 | + optional: true | ||||
| 4138 | + | ||||
| 4139 | + '@node-rs/argon2-win32-arm64-msvc@2.2.2': | ||||
| 4140 | + optional: true | ||||
| 4141 | + | ||||
| 4142 | + '@node-rs/argon2-win32-ia32-msvc@2.2.2': | ||||
| 4143 | + optional: true | ||||
| 4144 | + | ||||
| 4145 | + '@node-rs/argon2-win32-x64-msvc@2.2.2': | ||||
| 4146 | + optional: true | ||||
| 4147 | + | ||||
| 4148 | + '@node-rs/argon2@2.2.2': | ||||
| 4149 | + optionalDependencies: | ||||
| 4150 | + '@node-rs/argon2-android-arm-eabi': 2.2.2 | ||||
| 4151 | + '@node-rs/argon2-android-arm64': 2.2.2 | ||||
| 4152 | + '@node-rs/argon2-darwin-arm64': 2.2.2 | ||||
| 4153 | + '@node-rs/argon2-darwin-x64': 2.2.2 | ||||
| 4154 | + '@node-rs/argon2-freebsd-x64': 2.2.2 | ||||
| 4155 | + '@node-rs/argon2-linux-arm-gnueabihf': 2.2.2 | ||||
| 4156 | + '@node-rs/argon2-linux-arm64-gnu': 2.2.2 | ||||
| 4157 | + '@node-rs/argon2-linux-arm64-musl': 2.2.2 | ||||
| 4158 | + '@node-rs/argon2-linux-x64-gnu': 2.2.2 | ||||
| 4159 | + '@node-rs/argon2-linux-x64-musl': 2.2.2 | ||||
| 4160 | + '@node-rs/argon2-win32-arm64-msvc': 2.2.2 | ||||
| 4161 | + '@node-rs/argon2-win32-ia32-msvc': 2.2.2 | ||||
| 4162 | + '@node-rs/argon2-win32-x64-msvc': 2.2.2 | ||||
| 4163 | + | ||||
| 4164 | + '@nodelib/fs.scandir@2.1.5': | ||||
| 4165 | + dependencies: | ||||
| 4166 | + '@nodelib/fs.stat': 2.0.5 | ||||
| 4167 | + run-parallel: 1.2.0 | ||||
| 4168 | + | ||||
| 4169 | + '@nodelib/fs.stat@2.0.5': {} | ||||
| 4170 | + | ||||
| 4171 | + '@nodelib/fs.walk@1.2.8': | ||||
| 4172 | + dependencies: | ||||
| 4173 | + '@nodelib/fs.scandir': 2.1.5 | ||||
| 4174 | + fastq: 1.20.3 | ||||
| 4175 | + | ||||
| 4176 | + '@nolyfill/is-core-module@1.0.39': {} | ||||
| 4177 | + | ||||
| 4178 | + '@opentelemetry/api@1.10.0': {} | ||||
| 4179 | + | ||||
| 4180 | + '@reduxjs/toolkit@2.13.0(react-redux@9.3.1(@types/react@19.3.0)(react@19.3.0)(redux@5.0.1))(react@19.3.0)': | ||||
| 4181 | + dependencies: | ||||
| 4182 | + '@standard-schema/spec': 1.1.0 | ||||
| 4183 | + '@standard-schema/utils': 0.3.0 | ||||
| 4184 | + immer: 11.2.9 | ||||
| 4185 | + redux: 5.0.1 | ||||
| 4186 | + redux-thunk: 3.1.0(redux@5.0.1) | ||||
| 4187 | + reselect: 5.2.0 | ||||
| 4188 | + optionalDependencies: | ||||
| 4189 | + react: 19.3.0 | ||||
| 4190 | + react-redux: 9.3.1(@types/react@19.3.0)(react@19.3.0)(redux@5.0.1) | ||||
| 4191 | + | ||||
| 4192 | + '@rtsao/scc@1.1.0': {} | ||||
| 4193 | + | ||||
| 4194 | + '@stablelib/base64@1.0.1': {} | ||||
| 4195 | + | ||||
| 4196 | + '@standard-schema/spec@1.1.0': {} | ||||
| 4197 | + | ||||
| 4198 | + '@standard-schema/utils@0.3.0': {} | ||||
| 4199 | + | ||||
| 4200 | + '@swc/helpers@0.5.23': | ||||
| 4201 | + dependencies: | ||||
| 4202 | + tslib: 2.9.1 | ||||
| 4203 | + | ||||
| 4204 | + '@tailwindcss/node@4.3.3': | ||||
| 4205 | + dependencies: | ||||
| 4206 | + '@jridgewell/remapping': 2.3.5 | ||||
| 4207 | + enhanced-resolve: 5.26.0 | ||||
| 4208 | + jiti: 2.7.0 | ||||
| 4209 | + lightningcss: 1.32.0 | ||||
| 4210 | + magic-string: 0.30.21 | ||||
| 4211 | + source-map-js: 1.2.2 | ||||
| 4212 | + tailwindcss: 4.3.3 | ||||
| 4213 | + | ||||
| 4214 | + '@tailwindcss/oxide-android-arm64@4.3.3': | ||||
| 4215 | + optional: true | ||||
| 4216 | + | ||||
| 4217 | + '@tailwindcss/oxide-darwin-arm64@4.3.3': | ||||
| 4218 | + optional: true | ||||
| 4219 | + | ||||
| 4220 | + '@tailwindcss/oxide-darwin-x64@4.3.3': | ||||
| 4221 | + optional: true | ||||
| 4222 | + | ||||
| 4223 | + '@tailwindcss/oxide-freebsd-x64@4.3.3': | ||||
| 4224 | + optional: true | ||||
| 4225 | + | ||||
| 4226 | + '@tailwindcss/oxide-linux-arm-gnueabihf@4.3.3': | ||||
| 4227 | + optional: true | ||||
| 4228 | + | ||||
| 4229 | + '@tailwindcss/oxide-linux-arm64-gnu@4.3.3': | ||||
| 4230 | + optional: true | ||||
| 4231 | + | ||||
| 4232 | + '@tailwindcss/oxide-linux-arm64-musl@4.3.3': | ||||
| 4233 | + optional: true | ||||
| 4234 | + | ||||
| 4235 | + '@tailwindcss/oxide-linux-x64-gnu@4.3.3': | ||||
| 4236 | + optional: true | ||||
| 4237 | + | ||||
| 4238 | + '@tailwindcss/oxide-linux-x64-musl@4.3.3': | ||||
| 4239 | + optional: true | ||||
| 4240 | + | ||||
| 4241 | + '@tailwindcss/oxide-wasm32-wasi@4.3.3': | ||||
| 4242 | + optional: true | ||||
| 4243 | + | ||||
| 4244 | + '@tailwindcss/oxide-win32-arm64-msvc@4.3.3': | ||||
| 4245 | + optional: true | ||||
| 4246 | + | ||||
| 4247 | + '@tailwindcss/oxide-win32-x64-msvc@4.3.3': | ||||
| 4248 | + optional: true | ||||
| 4249 | + | ||||
| 4250 | + '@tailwindcss/oxide@4.3.3': | ||||
| 4251 | + optionalDependencies: | ||||
| 4252 | + '@tailwindcss/oxide-android-arm64': 4.3.3 | ||||
| 4253 | + '@tailwindcss/oxide-darwin-arm64': 4.3.3 | ||||
| 4254 | + '@tailwindcss/oxide-darwin-x64': 4.3.3 | ||||
| 4255 | + '@tailwindcss/oxide-freebsd-x64': 4.3.3 | ||||
| 4256 | + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.3.3 | ||||
| 4257 | + '@tailwindcss/oxide-linux-arm64-gnu': 4.3.3 | ||||
| 4258 | + '@tailwindcss/oxide-linux-arm64-musl': 4.3.3 | ||||
| 4259 | + '@tailwindcss/oxide-linux-x64-gnu': 4.3.3 | ||||
| 4260 | + '@tailwindcss/oxide-linux-x64-musl': 4.3.3 | ||||
| 4261 | + '@tailwindcss/oxide-wasm32-wasi': 4.3.3 | ||||
| 4262 | + '@tailwindcss/oxide-win32-arm64-msvc': 4.3.3 | ||||
| 4263 | + '@tailwindcss/oxide-win32-x64-msvc': 4.3.3 | ||||
| 4264 | + | ||||
| 4265 | + '@tailwindcss/postcss@4.3.3': | ||||
| 4266 | + dependencies: | ||||
| 4267 | + '@alloc/quick-lru': 5.3.0 | ||||
| 4268 | + '@tailwindcss/node': 4.3.3 | ||||
| 4269 | + '@tailwindcss/oxide': 4.3.3 | ||||
| 4270 | + postcss: 8.5.23 | ||||
| 4271 | + tailwindcss: 4.3.3 | ||||
| 4272 | + | ||||
| 4273 | + '@tybys/wasm-util@0.10.4': | ||||
| 4274 | + dependencies: | ||||
| 4275 | + tslib: 2.9.1 | ||||
| 4276 | + optional: true | ||||
| 4277 | + | ||||
| 4278 | + '@types/d3-array@3.2.2': {} | ||||
| 4279 | + | ||||
| 4280 | + '@types/d3-axis@3.0.6': | ||||
| 4281 | + dependencies: | ||||
| 4282 | + '@types/d3-selection': 3.0.12 | ||||
| 4283 | + | ||||
| 4284 | + '@types/d3-brush@3.0.6': | ||||
| 4285 | + dependencies: | ||||
| 4286 | + '@types/d3-selection': 3.0.12 | ||||
| 4287 | + | ||||
| 4288 | + '@types/d3-chord@3.0.6': {} | ||||
| 4289 | + | ||||
| 4290 | + '@types/d3-color@3.1.3': {} | ||||
| 4291 | + | ||||
| 4292 | + '@types/d3-contour@3.0.6': | ||||
| 4293 | + dependencies: | ||||
| 4294 | + '@types/d3-array': 3.2.2 | ||||
| 4295 | + '@types/geojson': 7946.0.16 | ||||
| 4296 | + | ||||
| 4297 | + '@types/d3-delaunay@6.0.4': {} | ||||
| 4298 | + | ||||
| 4299 | + '@types/d3-dispatch@3.0.7': {} | ||||
| 4300 | + | ||||
| 4301 | + '@types/d3-drag@3.0.7': | ||||
| 4302 | + dependencies: | ||||
| 4303 | + '@types/d3-selection': 3.0.12 | ||||
| 4304 | + | ||||
| 4305 | + '@types/d3-dsv@3.0.7': {} | ||||
| 4306 | + | ||||
| 4307 | + '@types/d3-ease@3.0.2': {} | ||||
| 4308 | + | ||||
| 4309 | + '@types/d3-fetch@3.0.7': | ||||
| 4310 | + dependencies: | ||||
| 4311 | + '@types/d3-dsv': 3.0.7 | ||||
| 4312 | + | ||||
| 4313 | + '@types/d3-force@3.0.10': {} | ||||
| 4314 | + | ||||
| 4315 | + '@types/d3-format@3.0.4': {} | ||||
| 4316 | + | ||||
| 4317 | + '@types/d3-geo@3.1.1': | ||||
| 4318 | + dependencies: | ||||
| 4319 | + '@types/geojson': 7946.0.16 | ||||
| 4320 | + | ||||
| 4321 | + '@types/d3-hierarchy@3.1.7': {} | ||||
| 4322 | + | ||||
| 4323 | + '@types/d3-interpolate@3.0.4': | ||||
| 4324 | + dependencies: | ||||
| 4325 | + '@types/d3-color': 3.1.3 | ||||
| 4326 | + | ||||
| 4327 | + '@types/d3-path@3.1.1': {} | ||||
| 4328 | + | ||||
| 4329 | + '@types/d3-polygon@3.0.2': {} | ||||
| 4330 | + | ||||
| 4331 | + '@types/d3-quadtree@3.0.6': {} | ||||
| 4332 | + | ||||
| 4333 | + '@types/d3-random@3.0.4': {} | ||||
| 4334 | + | ||||
| 4335 | + '@types/d3-scale-chromatic@3.1.0': {} | ||||
| 4336 | + | ||||
| 4337 | + '@types/d3-scale@4.0.9': | ||||
| 4338 | + dependencies: | ||||
| 4339 | + '@types/d3-time': 3.0.4 | ||||
| 4340 | + | ||||
| 4341 | + '@types/d3-selection@3.0.12': {} | ||||
| 4342 | + | ||||
| 4343 | + '@types/d3-shape@3.2.0': | ||||
| 4344 | + dependencies: | ||||
| 4345 | + '@types/d3-path': 3.1.1 | ||||
| 4346 | + | ||||
| 4347 | + '@types/d3-time-format@4.0.3': {} | ||||
| 4348 | + | ||||
| 4349 | + '@types/d3-time@3.0.4': {} | ||||
| 4350 | + | ||||
| 4351 | + '@types/d3-timer@3.0.2': {} | ||||
| 4352 | + | ||||
| 4353 | + '@types/d3-transition@3.0.9': | ||||
| 4354 | + dependencies: | ||||
| 4355 | + '@types/d3-selection': 3.0.12 | ||||
| 4356 | + | ||||
| 4357 | + '@types/d3-zoom@3.0.9': | ||||
| 4358 | + dependencies: | ||||
| 4359 | + '@types/d3-interpolate': 3.0.4 | ||||
| 4360 | + '@types/d3-selection': 3.0.12 | ||||
| 4361 | + | ||||
| 4362 | + '@types/d3@7.4.3': | ||||
| 4363 | + dependencies: | ||||
| 4364 | + '@types/d3-array': 3.2.2 | ||||
| 4365 | + '@types/d3-axis': 3.0.6 | ||||
| 4366 | + '@types/d3-brush': 3.0.6 | ||||
| 4367 | + '@types/d3-chord': 3.0.6 | ||||
| 4368 | + '@types/d3-color': 3.1.3 | ||||
| 4369 | + '@types/d3-contour': 3.0.6 | ||||
| 4370 | + '@types/d3-delaunay': 6.0.4 | ||||
| 4371 | + '@types/d3-dispatch': 3.0.7 | ||||
| 4372 | + '@types/d3-drag': 3.0.7 | ||||
| 4373 | + '@types/d3-dsv': 3.0.7 | ||||
| 4374 | + '@types/d3-ease': 3.0.2 | ||||
| 4375 | + '@types/d3-fetch': 3.0.7 | ||||
| 4376 | + '@types/d3-force': 3.0.10 | ||||
| 4377 | + '@types/d3-format': 3.0.4 | ||||
| 4378 | + '@types/d3-geo': 3.1.1 | ||||
| 4379 | + '@types/d3-hierarchy': 3.1.7 | ||||
| 4380 | + '@types/d3-interpolate': 3.0.4 | ||||
| 4381 | + '@types/d3-path': 3.1.1 | ||||
| 4382 | + '@types/d3-polygon': 3.0.2 | ||||
| 4383 | + '@types/d3-quadtree': 3.0.6 | ||||
| 4384 | + '@types/d3-random': 3.0.4 | ||||
| 4385 | + '@types/d3-scale': 4.0.9 | ||||
| 4386 | + '@types/d3-scale-chromatic': 3.1.0 | ||||
| 4387 | + '@types/d3-selection': 3.0.12 | ||||
| 4388 | + '@types/d3-shape': 3.2.0 | ||||
| 4389 | + '@types/d3-time': 3.0.4 | ||||
| 4390 | + '@types/d3-time-format': 4.0.3 | ||||
| 4391 | + '@types/d3-timer': 3.0.2 | ||||
| 4392 | + '@types/d3-transition': 3.0.9 | ||||
| 4393 | + '@types/d3-zoom': 3.0.9 | ||||
| 4394 | + | ||||
| 4395 | + '@types/debug@4.1.13': | ||||
| 4396 | + dependencies: | ||||
| 4397 | + '@types/ms': 2.1.0 | ||||
| 4398 | + | ||||
| 4399 | + '@types/esrecurse@4.3.1': {} | ||||
| 4400 | + | ||||
| 4401 | + '@types/estree-jsx@1.0.5': | ||||
| 4402 | + dependencies: | ||||
| 4403 | + '@types/estree': 1.0.10 | ||||
| 4404 | + | ||||
| 4405 | + '@types/estree@1.0.10': {} | ||||
| 4406 | + | ||||
| 4407 | + '@types/geojson@7946.0.16': {} | ||||
| 4408 | + | ||||
| 4409 | + '@types/hast@3.0.5': | ||||
| 4410 | + dependencies: | ||||
| 4411 | + '@types/unist': 3.0.3 | ||||
| 4412 | + | ||||
| 4413 | + '@types/json-schema@7.0.15': {} | ||||
| 4414 | + | ||||
| 4415 | + '@types/json5@0.0.29': {} | ||||
| 4416 | + | ||||
| 4417 | + '@types/katex@0.16.8': {} | ||||
| 4418 | + | ||||
| 4419 | + '@types/mdast@4.0.4': | ||||
| 4420 | + dependencies: | ||||
| 4421 | + '@types/unist': 3.0.3 | ||||
| 4422 | + | ||||
| 4423 | + '@types/ms@2.1.0': {} | ||||
| 4424 | + | ||||
| 4425 | + '@types/node@26.6.6': | ||||
| 4426 | + dependencies: | ||||
| 4427 | + undici-types: 8.9.0 | ||||
| 4428 | + | ||||
| 4429 | + '@types/pdf-parse@1.1.5': | ||||
| 4430 | + dependencies: | ||||
| 4431 | + '@types/node': 26.6.6 | ||||
| 4432 | + | ||||
| 4433 | + '@types/pngjs@6.0.5': | ||||
| 4434 | + dependencies: | ||||
| 4435 | + '@types/node': 26.6.6 | ||||
| 4436 | + | ||||
| 4437 | + '@types/react-dom@19.3.0(@types/react@19.3.0)': | ||||
| 4438 | + dependencies: | ||||
| 4439 | + '@types/react': 19.3.0 | ||||
| 4440 | + | ||||
| 4441 | + '@types/react@19.3.0': | ||||
| 4442 | + dependencies: | ||||
| 4443 | + csstype: 3.2.3 | ||||
| 4444 | + | ||||
| 4445 | + '@types/trusted-types@2.0.7': | ||||
| 4446 | + optional: true | ||||
| 4447 | + | ||||
| 4448 | + '@types/unist@2.0.11': {} | ||||
| 4449 | + | ||||
| 4450 | + '@types/unist@3.0.3': {} | ||||
| 4451 | + | ||||
| 4452 | + '@types/use-sync-external-store@0.0.6': {} | ||||
| 4453 | + | ||||
| 4454 | + '@typescript-eslint/eslint-plugin@8.72.1(@typescript-eslint/parser@8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2))(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2)': | ||||
| 4455 | + dependencies: | ||||
| 4456 | + '@eslint-community/regexpp': 4.12.2 | ||||
| 4457 | + '@typescript-eslint/parser': 8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2) | ||||
| 4458 | + '@typescript-eslint/scope-manager': 8.72.1 | ||||
| 4459 | + '@typescript-eslint/type-utils': 8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2) | ||||
| 4460 | + '@typescript-eslint/utils': 8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2) | ||||
| 4461 | + '@typescript-eslint/visitor-keys': 8.72.1 | ||||
| 4462 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 4463 | + ignore: 7.0.14 | ||||
| 4464 | + natural-compare: 1.4.0 | ||||
| 4465 | + ts-api-utils: 2.5.0(typescript@7.0.2) | ||||
| 4466 | + typescript: 7.0.2 | ||||
| 4467 | + transitivePeerDependencies: | ||||
| 4468 | + - supports-color | ||||
| 4469 | + | ||||
| 4470 | + '@typescript-eslint/parser@8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2)': | ||||
| 4471 | + dependencies: | ||||
| 4472 | + '@typescript-eslint/scope-manager': 8.72.1 | ||||
| 4473 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4474 | + '@typescript-eslint/typescript-estree': 8.72.1(typescript@7.0.2) | ||||
| 4475 | + '@typescript-eslint/visitor-keys': 8.72.1 | ||||
| 4476 | + debug: 4.4.3 | ||||
| 4477 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 4478 | + typescript: 7.0.2 | ||||
| 4479 | + transitivePeerDependencies: | ||||
| 4480 | + - supports-color | ||||
| 4481 | + | ||||
| 4482 | + '@typescript-eslint/project-service@8.72.1(typescript@7.0.2)': | ||||
| 4483 | + dependencies: | ||||
| 4484 | + '@typescript-eslint/tsconfig-utils': 8.72.1(typescript@7.0.2) | ||||
| 4485 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4486 | + debug: 4.4.3 | ||||
| 4487 | + typescript: 7.0.2 | ||||
| 4488 | + transitivePeerDependencies: | ||||
| 4489 | + - supports-color | ||||
| 4490 | + | ||||
| 4491 | + '@typescript-eslint/scope-manager@8.72.1': | ||||
| 4492 | + dependencies: | ||||
| 4493 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4494 | + '@typescript-eslint/visitor-keys': 8.72.1 | ||||
| 4495 | + | ||||
| 4496 | + '@typescript-eslint/tsconfig-utils@8.72.1(typescript@7.0.2)': | ||||
| 4497 | + dependencies: | ||||
| 4498 | + typescript: 7.0.2 | ||||
| 4499 | + | ||||
| 4500 | + '@typescript-eslint/type-utils@8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2)': | ||||
| 4501 | + dependencies: | ||||
| 4502 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4503 | + '@typescript-eslint/typescript-estree': 8.72.1(typescript@7.0.2) | ||||
| 4504 | + '@typescript-eslint/utils': 8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2) | ||||
| 4505 | + debug: 4.4.3 | ||||
| 4506 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 4507 | + ts-api-utils: 2.5.0(typescript@7.0.2) | ||||
| 4508 | + typescript: 7.0.2 | ||||
| 4509 | + transitivePeerDependencies: | ||||
| 4510 | + - supports-color | ||||
| 4511 | + | ||||
| 4512 | + '@typescript-eslint/types@8.72.1': {} | ||||
| 4513 | + | ||||
| 4514 | + '@typescript-eslint/typescript-estree@8.72.1(typescript@7.0.2)': | ||||
| 4515 | + dependencies: | ||||
| 4516 | + '@typescript-eslint/project-service': 8.72.1(typescript@7.0.2) | ||||
| 4517 | + '@typescript-eslint/tsconfig-utils': 8.72.1(typescript@7.0.2) | ||||
| 4518 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4519 | + '@typescript-eslint/visitor-keys': 8.72.1 | ||||
| 4520 | + debug: 4.4.3 | ||||
| 4521 | + minimatch: 10.2.6 | ||||
| 4522 | + semver: 7.8.5 | ||||
| 4523 | + tinyglobby: 0.2.17 | ||||
| 4524 | + ts-api-utils: 2.5.0(typescript@7.0.2) | ||||
| 4525 | + typescript: 7.0.2 | ||||
| 4526 | + transitivePeerDependencies: | ||||
| 4527 | + - supports-color | ||||
| 4528 | + | ||||
| 4529 | + '@typescript-eslint/utils@8.72.1(eslint@10.14.0(jiti@2.7.0))(typescript@7.0.2)': | ||||
| 4530 | + dependencies: | ||||
| 4531 | + '@eslint-community/eslint-utils': 4.10.1(eslint@10.14.0(jiti@2.7.0)) | ||||
| 4532 | + '@typescript-eslint/scope-manager': 8.72.1 | ||||
| 4533 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4534 | + '@typescript-eslint/typescript-estree': 8.72.1(typescript@7.0.2) | ||||
| 4535 | + eslint: 10.14.0(jiti@2.7.0) | ||||
| 4536 | + typescript: 7.0.2 | ||||
| 4537 | + transitivePeerDependencies: | ||||
| 4538 | + - supports-color | ||||
| 4539 | + | ||||
| 4540 | + '@typescript-eslint/visitor-keys@8.72.1': | ||||
| 4541 | + dependencies: | ||||
| 4542 | + '@typescript-eslint/types': 8.72.1 | ||||
| 4543 | + eslint-visitor-keys: 5.0.1 | ||||
| 4544 | + | ||||
| 4545 | + '@typescript/typescript-aix-ppc64@7.0.2': | ||||
| 4546 | + optional: true | ||||
| 4547 | + | ||||
| 4548 | + '@typescript/typescript-darwin-arm64@7.0.2': | ||||
| 4549 | + optional: true | ||||
| 4550 | + | ||||
| 4551 | + '@typescript/typescript-darwin-x64@7.0.2': | ||||
| 4552 | + optional: true | ||||
| 4553 | + | ||||
| 4554 | + '@typescript/typescript-freebsd-arm64@7.0.2': | ||||
| 4555 | + optional: true | ||||
| 4556 | + | ||||
| 4557 | + '@typescript/typescript-freebsd-x64@7.0.2': | ||||
| 4558 | + optional: true | ||||
| 4559 | + | ||||
| 4560 | + '@typescript/typescript-linux-arm64@7.0.2': | ||||
| 4561 | + optional: true | ||||
| 4562 | + | ||||
| 4563 | + '@typescript/typescript-linux-arm@7.0.2': | ||||
| 4564 | + optional: true | ||||
| 4565 | + | ||||
| 4566 | + '@typescript/typescript-linux-loong64@7.0.2': | ||||
| 4567 | + optional: true | ||||
| 4568 | + | ||||
| 4569 | + '@typescript/typescript-linux-mips64el@7.0.2': | ||||
| 4570 | + optional: true | ||||
| 4571 | + | ||||
| 4572 | + '@typescript/typescript-linux-ppc64@7.0.2': | ||||
| 4573 | + optional: true | ||||
| 4574 | + | ||||
| 4575 | + '@typescript/typescript-linux-riscv64@7.0.2': | ||||
| 4576 | + optional: true | ||||
| 4577 | + | ||||
| 4578 | + '@typescript/typescript-linux-s390x@7.0.2': | ||||
| 4579 | + optional: true | ||||
| 4580 | + | ||||
| 4581 | + '@typescript/typescript-linux-x64@7.0.2': | ||||
| 4582 | + optional: true | ||||
| 4583 | + | ||||
| 4584 | + '@typescript/typescript-netbsd-arm64@7.0.2': | ||||
| 4585 | + optional: true | ||||
| 4586 | + | ||||
| 4587 | + '@typescript/typescript-netbsd-x64@7.0.2': | ||||
| 4588 | + optional: true | ||||
| 4589 | + | ||||
| 4590 | + '@typescript/typescript-openbsd-arm64@7.0.2': | ||||
| 4591 | + optional: true | ||||
| 4592 | + | ||||
| 4593 | + '@typescript/typescript-openbsd-x64@7.0.2': | ||||
| 4594 | + optional: true | ||||
| 4595 | + | ||||
| 4596 | + '@typescript/typescript-sunos-x64@7.0.2': | ||||
| 4597 | + optional: true | ||||
| 4598 | + | ||||
| 4599 | + '@typescript/typescript-win32-arm64@7.0.2': | ||||
| 4600 | + optional: true | ||||
| 4601 | + | ||||
| 4602 | + '@typescript/typescript-win32-x64@7.0.2': | ||||
| 4603 | + optional: true | ||||
| 4604 | + | ||||
| 4605 | + '@ungap/structured-clone@1.4.0': {} | ||||
| 4606 | + | ||||
| 4607 | + '@unrs/resolver-binding-android-arm-eabi@1.12.2': | ||||
| 4608 | + optional: true | ||||
| 4609 | + | ||||
| 4610 | + '@unrs/resolver-binding-android-arm64@1.12.2': | ||||
Diff truncated — file too large.