@funkai/models 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/.generated/entries.json +23 -0
  2. package/.generated/req.txt +1 -0
  3. package/.turbo/turbo-build.log +145 -0
  4. package/.turbo/turbo-typecheck.log +4 -0
  5. package/CHANGELOG.md +23 -0
  6. package/README.md +95 -0
  7. package/dist/alibaba-B6q4Ng1R.mjs +957 -0
  8. package/dist/alibaba-B6q4Ng1R.mjs.map +1 -0
  9. package/dist/amazon-bedrock-Cv9AHQBH.mjs +2070 -0
  10. package/dist/amazon-bedrock-Cv9AHQBH.mjs.map +1 -0
  11. package/dist/anthropic-yB7ST97_.mjs +651 -0
  12. package/dist/anthropic-yB7ST97_.mjs.map +1 -0
  13. package/dist/cerebras-COfl7XM-.mjs +95 -0
  14. package/dist/cerebras-COfl7XM-.mjs.map +1 -0
  15. package/dist/cohere-B7TgO0hT.mjs +271 -0
  16. package/dist/cohere-B7TgO0hT.mjs.map +1 -0
  17. package/dist/deepinfra-B0GxUwCG.mjs +636 -0
  18. package/dist/deepinfra-B0GxUwCG.mjs.map +1 -0
  19. package/dist/deepseek-D64ZEsvS.mjs +50 -0
  20. package/dist/deepseek-D64ZEsvS.mjs.map +1 -0
  21. package/dist/fireworks-ai-DJYvdAi_.mjs +304 -0
  22. package/dist/fireworks-ai-DJYvdAi_.mjs.map +1 -0
  23. package/dist/google-BypRl349.mjs +833 -0
  24. package/dist/google-BypRl349.mjs.map +1 -0
  25. package/dist/google-vertex-DbS-zTGD.mjs +730 -0
  26. package/dist/google-vertex-DbS-zTGD.mjs.map +1 -0
  27. package/dist/groq-ei_PerYi.mjs +381 -0
  28. package/dist/groq-ei_PerYi.mjs.map +1 -0
  29. package/dist/huggingface-DaM1EeLP.mjs +456 -0
  30. package/dist/huggingface-DaM1EeLP.mjs.map +1 -0
  31. package/dist/inception-CspEzqNV.mjs +101 -0
  32. package/dist/inception-CspEzqNV.mjs.map +1 -0
  33. package/dist/index.d.mts +30314 -0
  34. package/dist/index.d.mts.map +1 -0
  35. package/dist/index.mjs +271 -0
  36. package/dist/index.mjs.map +1 -0
  37. package/dist/llama-Cf3-koap.mjs +161 -0
  38. package/dist/llama-Cf3-koap.mjs.map +1 -0
  39. package/dist/mistral-BI9MdAO4.mjs +579 -0
  40. package/dist/mistral-BI9MdAO4.mjs.map +1 -0
  41. package/dist/nvidia-COHacuoa.mjs +1625 -0
  42. package/dist/nvidia-COHacuoa.mjs.map +1 -0
  43. package/dist/openai-C0nCfZUq.mjs +1023 -0
  44. package/dist/openai-C0nCfZUq.mjs.map +1 -0
  45. package/dist/openrouter-DSFzxKQb.mjs +4608 -0
  46. package/dist/openrouter-DSFzxKQb.mjs.map +1 -0
  47. package/dist/perplexity-zeZ2WlBU.mjs +96 -0
  48. package/dist/perplexity-zeZ2WlBU.mjs.map +1 -0
  49. package/dist/providers/alibaba.d.mts +1795 -0
  50. package/dist/providers/alibaba.d.mts.map +1 -0
  51. package/dist/providers/alibaba.mjs +39 -0
  52. package/dist/providers/alibaba.mjs.map +1 -0
  53. package/dist/providers/amazon-bedrock.d.mts +3713 -0
  54. package/dist/providers/amazon-bedrock.d.mts.map +1 -0
  55. package/dist/providers/amazon-bedrock.mjs +39 -0
  56. package/dist/providers/amazon-bedrock.mjs.map +1 -0
  57. package/dist/providers/anthropic.d.mts +1109 -0
  58. package/dist/providers/anthropic.d.mts.map +1 -0
  59. package/dist/providers/anthropic.mjs +39 -0
  60. package/dist/providers/anthropic.mjs.map +1 -0
  61. package/dist/providers/cerebras.d.mts +219 -0
  62. package/dist/providers/cerebras.d.mts.map +1 -0
  63. package/dist/providers/cerebras.mjs +39 -0
  64. package/dist/providers/cerebras.mjs.map +1 -0
  65. package/dist/providers/cohere.d.mts +555 -0
  66. package/dist/providers/cohere.d.mts.map +1 -0
  67. package/dist/providers/cohere.mjs +39 -0
  68. package/dist/providers/cohere.mjs.map +1 -0
  69. package/dist/providers/deepinfra.d.mts +1245 -0
  70. package/dist/providers/deepinfra.d.mts.map +1 -0
  71. package/dist/providers/deepinfra.mjs +39 -0
  72. package/dist/providers/deepinfra.mjs.map +1 -0
  73. package/dist/providers/deepseek.d.mts +139 -0
  74. package/dist/providers/deepseek.d.mts.map +1 -0
  75. package/dist/providers/deepseek.mjs +39 -0
  76. package/dist/providers/deepseek.mjs.map +1 -0
  77. package/dist/providers/fireworks-ai.d.mts +611 -0
  78. package/dist/providers/fireworks-ai.d.mts.map +1 -0
  79. package/dist/providers/fireworks-ai.mjs +39 -0
  80. package/dist/providers/fireworks-ai.mjs.map +1 -0
  81. package/dist/providers/google-vertex.d.mts +1227 -0
  82. package/dist/providers/google-vertex.d.mts.map +1 -0
  83. package/dist/providers/google-vertex.mjs +39 -0
  84. package/dist/providers/google-vertex.mjs.map +1 -0
  85. package/dist/providers/google.d.mts +1359 -0
  86. package/dist/providers/google.d.mts.map +1 -0
  87. package/dist/providers/google.mjs +39 -0
  88. package/dist/providers/google.mjs.map +1 -0
  89. package/dist/providers/groq.d.mts +765 -0
  90. package/dist/providers/groq.d.mts.map +1 -0
  91. package/dist/providers/groq.mjs +39 -0
  92. package/dist/providers/groq.mjs.map +1 -0
  93. package/dist/providers/huggingface.d.mts +901 -0
  94. package/dist/providers/huggingface.d.mts.map +1 -0
  95. package/dist/providers/huggingface.mjs +39 -0
  96. package/dist/providers/huggingface.mjs.map +1 -0
  97. package/dist/providers/inception.d.mts +231 -0
  98. package/dist/providers/inception.d.mts.map +1 -0
  99. package/dist/providers/inception.mjs +39 -0
  100. package/dist/providers/inception.mjs.map +1 -0
  101. package/dist/providers/llama.d.mts +345 -0
  102. package/dist/providers/llama.d.mts.map +1 -0
  103. package/dist/providers/llama.mjs +39 -0
  104. package/dist/providers/llama.mjs.map +1 -0
  105. package/dist/providers/mistral.d.mts +1143 -0
  106. package/dist/providers/mistral.d.mts.map +1 -0
  107. package/dist/providers/mistral.mjs +39 -0
  108. package/dist/providers/mistral.mjs.map +1 -0
  109. package/dist/providers/nvidia.d.mts +3117 -0
  110. package/dist/providers/nvidia.d.mts.map +1 -0
  111. package/dist/providers/nvidia.mjs +39 -0
  112. package/dist/providers/nvidia.mjs.map +1 -0
  113. package/dist/providers/openai.d.mts +1963 -0
  114. package/dist/providers/openai.d.mts.map +1 -0
  115. package/dist/providers/openai.mjs +39 -0
  116. package/dist/providers/openai.mjs.map +1 -0
  117. package/dist/providers/openrouter.d.mts +8531 -0
  118. package/dist/providers/openrouter.d.mts.map +1 -0
  119. package/dist/providers/openrouter.mjs +39 -0
  120. package/dist/providers/openrouter.mjs.map +1 -0
  121. package/dist/providers/perplexity.d.mts +221 -0
  122. package/dist/providers/perplexity.d.mts.map +1 -0
  123. package/dist/providers/perplexity.mjs +39 -0
  124. package/dist/providers/perplexity.mjs.map +1 -0
  125. package/dist/providers/togetherai.d.mts +767 -0
  126. package/dist/providers/togetherai.d.mts.map +1 -0
  127. package/dist/providers/togetherai.mjs +39 -0
  128. package/dist/providers/togetherai.mjs.map +1 -0
  129. package/dist/providers/xai.d.mts +1161 -0
  130. package/dist/providers/xai.d.mts.map +1 -0
  131. package/dist/providers/xai.mjs +39 -0
  132. package/dist/providers/xai.mjs.map +1 -0
  133. package/dist/togetherai-BvcxUfPE.mjs +382 -0
  134. package/dist/togetherai-BvcxUfPE.mjs.map +1 -0
  135. package/dist/types-DjdaZckF.d.mts +71 -0
  136. package/dist/types-DjdaZckF.d.mts.map +1 -0
  137. package/dist/xai-fSuAkQJo.mjs +587 -0
  138. package/dist/xai-fSuAkQJo.mjs.map +1 -0
  139. package/docs/catalog/filtering.md +102 -0
  140. package/docs/catalog/overview.md +168 -0
  141. package/docs/catalog/providers.md +73 -0
  142. package/docs/cost/overview.md +125 -0
  143. package/docs/guides/filter-models.md +113 -0
  144. package/docs/guides/setup-resolver.md +106 -0
  145. package/docs/guides/track-costs.md +133 -0
  146. package/docs/overview.md +139 -0
  147. package/docs/provider/configuration.md +100 -0
  148. package/docs/provider/openrouter.md +105 -0
  149. package/docs/provider/overview.md +131 -0
  150. package/docs/troubleshooting.md +100 -0
  151. package/package.json +142 -0
  152. package/providers.json +39 -0
  153. package/scripts/generate-models.ts +392 -0
  154. package/src/catalog/index.test.ts +124 -0
  155. package/src/catalog/index.ts +65 -0
  156. package/src/catalog/providers/alibaba.ts +468 -0
  157. package/src/catalog/providers/amazon-bedrock.ts +941 -0
  158. package/src/catalog/providers/anthropic.ts +270 -0
  159. package/src/catalog/providers/cerebras.ts +61 -0
  160. package/src/catalog/providers/cohere.ts +149 -0
  161. package/src/catalog/providers/deepinfra.ts +325 -0
  162. package/src/catalog/providers/deepseek.ts +39 -0
  163. package/src/catalog/providers/fireworks-ai.ts +160 -0
  164. package/src/catalog/providers/google-vertex.ts +314 -0
  165. package/src/catalog/providers/google.ts +347 -0
  166. package/src/catalog/providers/groq.ts +204 -0
  167. package/src/catalog/providers/huggingface.ts +237 -0
  168. package/src/catalog/providers/inception.ts +61 -0
  169. package/src/catalog/providers/index.ts +59 -0
  170. package/src/catalog/providers/llama.ts +94 -0
  171. package/src/catalog/providers/mistral.ts +303 -0
  172. package/src/catalog/providers/nvidia.ts +820 -0
  173. package/src/catalog/providers/openai.ts +501 -0
  174. package/src/catalog/providers/openrouter.ts +2201 -0
  175. package/src/catalog/providers/perplexity.ts +61 -0
  176. package/src/catalog/providers/togetherai.ts +204 -0
  177. package/src/catalog/providers/xai.ts +292 -0
  178. package/src/catalog/types.ts +86 -0
  179. package/src/cost/calculate.test.ts +157 -0
  180. package/src/cost/calculate.ts +43 -0
  181. package/src/cost/index.ts +2 -0
  182. package/src/cost/types.ts +25 -0
  183. package/src/index.ts +25 -0
  184. package/src/provider/index.ts +9 -0
  185. package/src/provider/openrouter.test.ts +125 -0
  186. package/src/provider/openrouter.ts +110 -0
  187. package/src/provider/resolver.test.ts +138 -0
  188. package/src/provider/resolver.ts +125 -0
  189. package/src/provider/types.ts +39 -0
  190. package/src/providers/alibaba.ts +65 -0
  191. package/src/providers/amazon-bedrock.ts +67 -0
  192. package/src/providers/anthropic.ts +65 -0
  193. package/src/providers/cerebras.ts +65 -0
  194. package/src/providers/cohere.ts +65 -0
  195. package/src/providers/deepinfra.ts +65 -0
  196. package/src/providers/deepseek.ts +65 -0
  197. package/src/providers/fireworks-ai.ts +65 -0
  198. package/src/providers/google-vertex.ts +67 -0
  199. package/src/providers/google.ts +65 -0
  200. package/src/providers/groq.ts +65 -0
  201. package/src/providers/huggingface.ts +67 -0
  202. package/src/providers/inception.ts +65 -0
  203. package/src/providers/llama.ts +65 -0
  204. package/src/providers/mistral.ts +65 -0
  205. package/src/providers/nvidia.ts +65 -0
  206. package/src/providers/openai.ts +65 -0
  207. package/src/providers/openrouter.ts +67 -0
  208. package/src/providers/perplexity.ts +67 -0
  209. package/src/providers/togetherai.ts +65 -0
  210. package/src/providers/xai.ts +65 -0
  211. package/tsconfig.json +25 -0
  212. package/tsdown.config.ts +23 -0
  213. package/vitest.config.ts +29 -0
@@ -0,0 +1,1109 @@
1
+ import { n as ModelDefinition } from "../types-DjdaZckF.mjs";
2
+ import { LiteralUnion } from "type-fest";
3
+
4
+ //#region src/catalog/providers/anthropic.d.ts
5
+ declare const ANTHROPIC_MODELS: readonly [{
6
+ readonly id: "claude-opus-4-5-20251101";
7
+ readonly name: "Claude Opus 4.5";
8
+ readonly provider: "anthropic";
9
+ readonly family: "claude-opus";
10
+ readonly pricing: {
11
+ readonly input: 0.000005;
12
+ readonly output: 0.000025;
13
+ readonly cacheRead: 5e-7;
14
+ readonly cacheWrite: 0.00000625;
15
+ };
16
+ readonly contextWindow: 200000;
17
+ readonly maxOutput: 64000;
18
+ readonly modalities: {
19
+ readonly input: readonly ["text", "image", "pdf"];
20
+ readonly output: readonly ["text"];
21
+ };
22
+ readonly capabilities: {
23
+ readonly reasoning: true;
24
+ readonly toolCall: true;
25
+ readonly attachment: true;
26
+ readonly structuredOutput: false;
27
+ };
28
+ }, {
29
+ readonly id: "claude-3-5-haiku-latest";
30
+ readonly name: "Claude Haiku 3.5 (latest)";
31
+ readonly provider: "anthropic";
32
+ readonly family: "claude-haiku";
33
+ readonly pricing: {
34
+ readonly input: 8e-7;
35
+ readonly output: 0.000004;
36
+ readonly cacheRead: 8e-8;
37
+ readonly cacheWrite: 0.000001;
38
+ };
39
+ readonly contextWindow: 200000;
40
+ readonly maxOutput: 8192;
41
+ readonly modalities: {
42
+ readonly input: readonly ["text", "image", "pdf"];
43
+ readonly output: readonly ["text"];
44
+ };
45
+ readonly capabilities: {
46
+ readonly reasoning: false;
47
+ readonly toolCall: true;
48
+ readonly attachment: true;
49
+ readonly structuredOutput: false;
50
+ };
51
+ }, {
52
+ readonly id: "claude-opus-4-1";
53
+ readonly name: "Claude Opus 4.1 (latest)";
54
+ readonly provider: "anthropic";
55
+ readonly family: "claude-opus";
56
+ readonly pricing: {
57
+ readonly input: 0.000015;
58
+ readonly output: 0.000075;
59
+ readonly cacheRead: 0.0000015;
60
+ readonly cacheWrite: 0.00001875;
61
+ };
62
+ readonly contextWindow: 200000;
63
+ readonly maxOutput: 32000;
64
+ readonly modalities: {
65
+ readonly input: readonly ["text", "image", "pdf"];
66
+ readonly output: readonly ["text"];
67
+ };
68
+ readonly capabilities: {
69
+ readonly reasoning: true;
70
+ readonly toolCall: true;
71
+ readonly attachment: true;
72
+ readonly structuredOutput: false;
73
+ };
74
+ }, {
75
+ readonly id: "claude-3-5-sonnet-20241022";
76
+ readonly name: "Claude Sonnet 3.5 v2";
77
+ readonly provider: "anthropic";
78
+ readonly family: "claude-sonnet";
79
+ readonly pricing: {
80
+ readonly input: 0.000003;
81
+ readonly output: 0.000015;
82
+ readonly cacheRead: 3e-7;
83
+ readonly cacheWrite: 0.00000375;
84
+ };
85
+ readonly contextWindow: 200000;
86
+ readonly maxOutput: 8192;
87
+ readonly modalities: {
88
+ readonly input: readonly ["text", "image", "pdf"];
89
+ readonly output: readonly ["text"];
90
+ };
91
+ readonly capabilities: {
92
+ readonly reasoning: false;
93
+ readonly toolCall: true;
94
+ readonly attachment: true;
95
+ readonly structuredOutput: false;
96
+ };
97
+ }, {
98
+ readonly id: "claude-3-sonnet-20240229";
99
+ readonly name: "Claude Sonnet 3";
100
+ readonly provider: "anthropic";
101
+ readonly family: "claude-sonnet";
102
+ readonly pricing: {
103
+ readonly input: 0.000003;
104
+ readonly output: 0.000015;
105
+ readonly cacheRead: 3e-7;
106
+ readonly cacheWrite: 3e-7;
107
+ };
108
+ readonly contextWindow: 200000;
109
+ readonly maxOutput: 4096;
110
+ readonly modalities: {
111
+ readonly input: readonly ["text", "image", "pdf"];
112
+ readonly output: readonly ["text"];
113
+ };
114
+ readonly capabilities: {
115
+ readonly reasoning: false;
116
+ readonly toolCall: true;
117
+ readonly attachment: true;
118
+ readonly structuredOutput: false;
119
+ };
120
+ }, {
121
+ readonly id: "claude-opus-4-6";
122
+ readonly name: "Claude Opus 4.6";
123
+ readonly provider: "anthropic";
124
+ readonly family: "claude-opus";
125
+ readonly pricing: {
126
+ readonly input: 0.000005;
127
+ readonly output: 0.000025;
128
+ readonly cacheRead: 5e-7;
129
+ readonly cacheWrite: 0.00000625;
130
+ };
131
+ readonly contextWindow: 1000000;
132
+ readonly maxOutput: 128000;
133
+ readonly modalities: {
134
+ readonly input: readonly ["text", "image", "pdf"];
135
+ readonly output: readonly ["text"];
136
+ };
137
+ readonly capabilities: {
138
+ readonly reasoning: true;
139
+ readonly toolCall: true;
140
+ readonly attachment: true;
141
+ readonly structuredOutput: false;
142
+ };
143
+ }, {
144
+ readonly id: "claude-sonnet-4-6";
145
+ readonly name: "Claude Sonnet 4.6";
146
+ readonly provider: "anthropic";
147
+ readonly family: "claude-sonnet";
148
+ readonly pricing: {
149
+ readonly input: 0.000003;
150
+ readonly output: 0.000015;
151
+ readonly cacheRead: 3e-7;
152
+ readonly cacheWrite: 0.00000375;
153
+ };
154
+ readonly contextWindow: 1000000;
155
+ readonly maxOutput: 64000;
156
+ readonly modalities: {
157
+ readonly input: readonly ["text", "image", "pdf"];
158
+ readonly output: readonly ["text"];
159
+ };
160
+ readonly capabilities: {
161
+ readonly reasoning: true;
162
+ readonly toolCall: true;
163
+ readonly attachment: true;
164
+ readonly structuredOutput: false;
165
+ };
166
+ }, {
167
+ readonly id: "claude-sonnet-4-0";
168
+ readonly name: "Claude Sonnet 4 (latest)";
169
+ readonly provider: "anthropic";
170
+ readonly family: "claude-sonnet";
171
+ readonly pricing: {
172
+ readonly input: 0.000003;
173
+ readonly output: 0.000015;
174
+ readonly cacheRead: 3e-7;
175
+ readonly cacheWrite: 0.00000375;
176
+ };
177
+ readonly contextWindow: 200000;
178
+ readonly maxOutput: 64000;
179
+ readonly modalities: {
180
+ readonly input: readonly ["text", "image", "pdf"];
181
+ readonly output: readonly ["text"];
182
+ };
183
+ readonly capabilities: {
184
+ readonly reasoning: true;
185
+ readonly toolCall: true;
186
+ readonly attachment: true;
187
+ readonly structuredOutput: false;
188
+ };
189
+ }, {
190
+ readonly id: "claude-opus-4-20250514";
191
+ readonly name: "Claude Opus 4";
192
+ readonly provider: "anthropic";
193
+ readonly family: "claude-opus";
194
+ readonly pricing: {
195
+ readonly input: 0.000015;
196
+ readonly output: 0.000075;
197
+ readonly cacheRead: 0.0000015;
198
+ readonly cacheWrite: 0.00001875;
199
+ };
200
+ readonly contextWindow: 200000;
201
+ readonly maxOutput: 32000;
202
+ readonly modalities: {
203
+ readonly input: readonly ["text", "image", "pdf"];
204
+ readonly output: readonly ["text"];
205
+ };
206
+ readonly capabilities: {
207
+ readonly reasoning: true;
208
+ readonly toolCall: true;
209
+ readonly attachment: true;
210
+ readonly structuredOutput: false;
211
+ };
212
+ }, {
213
+ readonly id: "claude-sonnet-4-5-20250929";
214
+ readonly name: "Claude Sonnet 4.5";
215
+ readonly provider: "anthropic";
216
+ readonly family: "claude-sonnet";
217
+ readonly pricing: {
218
+ readonly input: 0.000003;
219
+ readonly output: 0.000015;
220
+ readonly cacheRead: 3e-7;
221
+ readonly cacheWrite: 0.00000375;
222
+ };
223
+ readonly contextWindow: 200000;
224
+ readonly maxOutput: 64000;
225
+ readonly modalities: {
226
+ readonly input: readonly ["text", "image", "pdf"];
227
+ readonly output: readonly ["text"];
228
+ };
229
+ readonly capabilities: {
230
+ readonly reasoning: true;
231
+ readonly toolCall: true;
232
+ readonly attachment: true;
233
+ readonly structuredOutput: false;
234
+ };
235
+ }, {
236
+ readonly id: "claude-opus-4-0";
237
+ readonly name: "Claude Opus 4 (latest)";
238
+ readonly provider: "anthropic";
239
+ readonly family: "claude-opus";
240
+ readonly pricing: {
241
+ readonly input: 0.000015;
242
+ readonly output: 0.000075;
243
+ readonly cacheRead: 0.0000015;
244
+ readonly cacheWrite: 0.00001875;
245
+ };
246
+ readonly contextWindow: 200000;
247
+ readonly maxOutput: 32000;
248
+ readonly modalities: {
249
+ readonly input: readonly ["text", "image", "pdf"];
250
+ readonly output: readonly ["text"];
251
+ };
252
+ readonly capabilities: {
253
+ readonly reasoning: true;
254
+ readonly toolCall: true;
255
+ readonly attachment: true;
256
+ readonly structuredOutput: false;
257
+ };
258
+ }, {
259
+ readonly id: "claude-3-5-haiku-20241022";
260
+ readonly name: "Claude Haiku 3.5";
261
+ readonly provider: "anthropic";
262
+ readonly family: "claude-haiku";
263
+ readonly pricing: {
264
+ readonly input: 8e-7;
265
+ readonly output: 0.000004;
266
+ readonly cacheRead: 8e-8;
267
+ readonly cacheWrite: 0.000001;
268
+ };
269
+ readonly contextWindow: 200000;
270
+ readonly maxOutput: 8192;
271
+ readonly modalities: {
272
+ readonly input: readonly ["text", "image", "pdf"];
273
+ readonly output: readonly ["text"];
274
+ };
275
+ readonly capabilities: {
276
+ readonly reasoning: false;
277
+ readonly toolCall: true;
278
+ readonly attachment: true;
279
+ readonly structuredOutput: false;
280
+ };
281
+ }, {
282
+ readonly id: "claude-3-5-sonnet-20240620";
283
+ readonly name: "Claude Sonnet 3.5";
284
+ readonly provider: "anthropic";
285
+ readonly family: "claude-sonnet";
286
+ readonly pricing: {
287
+ readonly input: 0.000003;
288
+ readonly output: 0.000015;
289
+ readonly cacheRead: 3e-7;
290
+ readonly cacheWrite: 0.00000375;
291
+ };
292
+ readonly contextWindow: 200000;
293
+ readonly maxOutput: 8192;
294
+ readonly modalities: {
295
+ readonly input: readonly ["text", "image", "pdf"];
296
+ readonly output: readonly ["text"];
297
+ };
298
+ readonly capabilities: {
299
+ readonly reasoning: false;
300
+ readonly toolCall: true;
301
+ readonly attachment: true;
302
+ readonly structuredOutput: false;
303
+ };
304
+ }, {
305
+ readonly id: "claude-3-7-sonnet-latest";
306
+ readonly name: "Claude Sonnet 3.7 (latest)";
307
+ readonly provider: "anthropic";
308
+ readonly family: "claude-sonnet";
309
+ readonly pricing: {
310
+ readonly input: 0.000003;
311
+ readonly output: 0.000015;
312
+ readonly cacheRead: 3e-7;
313
+ readonly cacheWrite: 0.00000375;
314
+ };
315
+ readonly contextWindow: 200000;
316
+ readonly maxOutput: 64000;
317
+ readonly modalities: {
318
+ readonly input: readonly ["text", "image", "pdf"];
319
+ readonly output: readonly ["text"];
320
+ };
321
+ readonly capabilities: {
322
+ readonly reasoning: true;
323
+ readonly toolCall: true;
324
+ readonly attachment: true;
325
+ readonly structuredOutput: false;
326
+ };
327
+ }, {
328
+ readonly id: "claude-3-7-sonnet-20250219";
329
+ readonly name: "Claude Sonnet 3.7";
330
+ readonly provider: "anthropic";
331
+ readonly family: "claude-sonnet";
332
+ readonly pricing: {
333
+ readonly input: 0.000003;
334
+ readonly output: 0.000015;
335
+ readonly cacheRead: 3e-7;
336
+ readonly cacheWrite: 0.00000375;
337
+ };
338
+ readonly contextWindow: 200000;
339
+ readonly maxOutput: 64000;
340
+ readonly modalities: {
341
+ readonly input: readonly ["text", "image", "pdf"];
342
+ readonly output: readonly ["text"];
343
+ };
344
+ readonly capabilities: {
345
+ readonly reasoning: true;
346
+ readonly toolCall: true;
347
+ readonly attachment: true;
348
+ readonly structuredOutput: false;
349
+ };
350
+ }, {
351
+ readonly id: "claude-3-haiku-20240307";
352
+ readonly name: "Claude Haiku 3";
353
+ readonly provider: "anthropic";
354
+ readonly family: "claude-haiku";
355
+ readonly pricing: {
356
+ readonly input: 2.5e-7;
357
+ readonly output: 0.00000125;
358
+ readonly cacheRead: 3e-8;
359
+ readonly cacheWrite: 3e-7;
360
+ };
361
+ readonly contextWindow: 200000;
362
+ readonly maxOutput: 4096;
363
+ readonly modalities: {
364
+ readonly input: readonly ["text", "image", "pdf"];
365
+ readonly output: readonly ["text"];
366
+ };
367
+ readonly capabilities: {
368
+ readonly reasoning: false;
369
+ readonly toolCall: true;
370
+ readonly attachment: true;
371
+ readonly structuredOutput: false;
372
+ };
373
+ }, {
374
+ readonly id: "claude-haiku-4-5-20251001";
375
+ readonly name: "Claude Haiku 4.5";
376
+ readonly provider: "anthropic";
377
+ readonly family: "claude-haiku";
378
+ readonly pricing: {
379
+ readonly input: 0.000001;
380
+ readonly output: 0.000005;
381
+ readonly cacheRead: 1e-7;
382
+ readonly cacheWrite: 0.00000125;
383
+ };
384
+ readonly contextWindow: 200000;
385
+ readonly maxOutput: 64000;
386
+ readonly modalities: {
387
+ readonly input: readonly ["text", "image", "pdf"];
388
+ readonly output: readonly ["text"];
389
+ };
390
+ readonly capabilities: {
391
+ readonly reasoning: true;
392
+ readonly toolCall: true;
393
+ readonly attachment: true;
394
+ readonly structuredOutput: false;
395
+ };
396
+ }, {
397
+ readonly id: "claude-haiku-4-5";
398
+ readonly name: "Claude Haiku 4.5 (latest)";
399
+ readonly provider: "anthropic";
400
+ readonly family: "claude-haiku";
401
+ readonly pricing: {
402
+ readonly input: 0.000001;
403
+ readonly output: 0.000005;
404
+ readonly cacheRead: 1e-7;
405
+ readonly cacheWrite: 0.00000125;
406
+ };
407
+ readonly contextWindow: 200000;
408
+ readonly maxOutput: 64000;
409
+ readonly modalities: {
410
+ readonly input: readonly ["text", "image", "pdf"];
411
+ readonly output: readonly ["text"];
412
+ };
413
+ readonly capabilities: {
414
+ readonly reasoning: true;
415
+ readonly toolCall: true;
416
+ readonly attachment: true;
417
+ readonly structuredOutput: false;
418
+ };
419
+ }, {
420
+ readonly id: "claude-opus-4-5";
421
+ readonly name: "Claude Opus 4.5 (latest)";
422
+ readonly provider: "anthropic";
423
+ readonly family: "claude-opus";
424
+ readonly pricing: {
425
+ readonly input: 0.000005;
426
+ readonly output: 0.000025;
427
+ readonly cacheRead: 5e-7;
428
+ readonly cacheWrite: 0.00000625;
429
+ };
430
+ readonly contextWindow: 200000;
431
+ readonly maxOutput: 64000;
432
+ readonly modalities: {
433
+ readonly input: readonly ["text", "image", "pdf"];
434
+ readonly output: readonly ["text"];
435
+ };
436
+ readonly capabilities: {
437
+ readonly reasoning: true;
438
+ readonly toolCall: true;
439
+ readonly attachment: true;
440
+ readonly structuredOutput: false;
441
+ };
442
+ }, {
443
+ readonly id: "claude-3-opus-20240229";
444
+ readonly name: "Claude Opus 3";
445
+ readonly provider: "anthropic";
446
+ readonly family: "claude-opus";
447
+ readonly pricing: {
448
+ readonly input: 0.000015;
449
+ readonly output: 0.000075;
450
+ readonly cacheRead: 0.0000015;
451
+ readonly cacheWrite: 0.00001875;
452
+ };
453
+ readonly contextWindow: 200000;
454
+ readonly maxOutput: 4096;
455
+ readonly modalities: {
456
+ readonly input: readonly ["text", "image", "pdf"];
457
+ readonly output: readonly ["text"];
458
+ };
459
+ readonly capabilities: {
460
+ readonly reasoning: false;
461
+ readonly toolCall: true;
462
+ readonly attachment: true;
463
+ readonly structuredOutput: false;
464
+ };
465
+ }, {
466
+ readonly id: "claude-sonnet-4-5";
467
+ readonly name: "Claude Sonnet 4.5 (latest)";
468
+ readonly provider: "anthropic";
469
+ readonly family: "claude-sonnet";
470
+ readonly pricing: {
471
+ readonly input: 0.000003;
472
+ readonly output: 0.000015;
473
+ readonly cacheRead: 3e-7;
474
+ readonly cacheWrite: 0.00000375;
475
+ };
476
+ readonly contextWindow: 200000;
477
+ readonly maxOutput: 64000;
478
+ readonly modalities: {
479
+ readonly input: readonly ["text", "image", "pdf"];
480
+ readonly output: readonly ["text"];
481
+ };
482
+ readonly capabilities: {
483
+ readonly reasoning: true;
484
+ readonly toolCall: true;
485
+ readonly attachment: true;
486
+ readonly structuredOutput: false;
487
+ };
488
+ }, {
489
+ readonly id: "claude-sonnet-4-20250514";
490
+ readonly name: "Claude Sonnet 4";
491
+ readonly provider: "anthropic";
492
+ readonly family: "claude-sonnet";
493
+ readonly pricing: {
494
+ readonly input: 0.000003;
495
+ readonly output: 0.000015;
496
+ readonly cacheRead: 3e-7;
497
+ readonly cacheWrite: 0.00000375;
498
+ };
499
+ readonly contextWindow: 200000;
500
+ readonly maxOutput: 64000;
501
+ readonly modalities: {
502
+ readonly input: readonly ["text", "image", "pdf"];
503
+ readonly output: readonly ["text"];
504
+ };
505
+ readonly capabilities: {
506
+ readonly reasoning: true;
507
+ readonly toolCall: true;
508
+ readonly attachment: true;
509
+ readonly structuredOutput: false;
510
+ };
511
+ }, {
512
+ readonly id: "claude-opus-4-1-20250805";
513
+ readonly name: "Claude Opus 4.1";
514
+ readonly provider: "anthropic";
515
+ readonly family: "claude-opus";
516
+ readonly pricing: {
517
+ readonly input: 0.000015;
518
+ readonly output: 0.000075;
519
+ readonly cacheRead: 0.0000015;
520
+ readonly cacheWrite: 0.00001875;
521
+ };
522
+ readonly contextWindow: 200000;
523
+ readonly maxOutput: 32000;
524
+ readonly modalities: {
525
+ readonly input: readonly ["text", "image", "pdf"];
526
+ readonly output: readonly ["text"];
527
+ };
528
+ readonly capabilities: {
529
+ readonly reasoning: true;
530
+ readonly toolCall: true;
531
+ readonly attachment: true;
532
+ readonly structuredOutput: false;
533
+ };
534
+ }];
535
+ //#endregion
536
+ //#region src/providers/anthropic.d.ts
537
+ /**
538
+ * Known model identifiers for Anthropic.
539
+ *
540
+ * @example
541
+ * ```typescript
542
+ * import type { AnthropicModelId } from '@funkai/models/anthropic'
543
+ *
544
+ * const id: AnthropicModelId = 'claude-opus-4-5-20251101'
545
+ * ```
546
+ */
547
+ type AnthropicModelId = (typeof ANTHROPIC_MODELS)[number]["id"];
548
+ /**
549
+ * All Anthropic models in the catalog.
550
+ *
551
+ * @example
552
+ * ```typescript
553
+ * import { anthropicModels } from '@funkai/models/anthropic'
554
+ *
555
+ * for (const m of anthropicModels) {
556
+ * console.log(m.id, m.pricing.input)
557
+ * }
558
+ * ```
559
+ */
560
+ declare const anthropicModels: readonly [{
561
+ readonly id: "claude-opus-4-5-20251101";
562
+ readonly name: "Claude Opus 4.5";
563
+ readonly provider: "anthropic";
564
+ readonly family: "claude-opus";
565
+ readonly pricing: {
566
+ readonly input: 0.000005;
567
+ readonly output: 0.000025;
568
+ readonly cacheRead: 5e-7;
569
+ readonly cacheWrite: 0.00000625;
570
+ };
571
+ readonly contextWindow: 200000;
572
+ readonly maxOutput: 64000;
573
+ readonly modalities: {
574
+ readonly input: readonly ["text", "image", "pdf"];
575
+ readonly output: readonly ["text"];
576
+ };
577
+ readonly capabilities: {
578
+ readonly reasoning: true;
579
+ readonly toolCall: true;
580
+ readonly attachment: true;
581
+ readonly structuredOutput: false;
582
+ };
583
+ }, {
584
+ readonly id: "claude-3-5-haiku-latest";
585
+ readonly name: "Claude Haiku 3.5 (latest)";
586
+ readonly provider: "anthropic";
587
+ readonly family: "claude-haiku";
588
+ readonly pricing: {
589
+ readonly input: 8e-7;
590
+ readonly output: 0.000004;
591
+ readonly cacheRead: 8e-8;
592
+ readonly cacheWrite: 0.000001;
593
+ };
594
+ readonly contextWindow: 200000;
595
+ readonly maxOutput: 8192;
596
+ readonly modalities: {
597
+ readonly input: readonly ["text", "image", "pdf"];
598
+ readonly output: readonly ["text"];
599
+ };
600
+ readonly capabilities: {
601
+ readonly reasoning: false;
602
+ readonly toolCall: true;
603
+ readonly attachment: true;
604
+ readonly structuredOutput: false;
605
+ };
606
+ }, {
607
+ readonly id: "claude-opus-4-1";
608
+ readonly name: "Claude Opus 4.1 (latest)";
609
+ readonly provider: "anthropic";
610
+ readonly family: "claude-opus";
611
+ readonly pricing: {
612
+ readonly input: 0.000015;
613
+ readonly output: 0.000075;
614
+ readonly cacheRead: 0.0000015;
615
+ readonly cacheWrite: 0.00001875;
616
+ };
617
+ readonly contextWindow: 200000;
618
+ readonly maxOutput: 32000;
619
+ readonly modalities: {
620
+ readonly input: readonly ["text", "image", "pdf"];
621
+ readonly output: readonly ["text"];
622
+ };
623
+ readonly capabilities: {
624
+ readonly reasoning: true;
625
+ readonly toolCall: true;
626
+ readonly attachment: true;
627
+ readonly structuredOutput: false;
628
+ };
629
+ }, {
630
+ readonly id: "claude-3-5-sonnet-20241022";
631
+ readonly name: "Claude Sonnet 3.5 v2";
632
+ readonly provider: "anthropic";
633
+ readonly family: "claude-sonnet";
634
+ readonly pricing: {
635
+ readonly input: 0.000003;
636
+ readonly output: 0.000015;
637
+ readonly cacheRead: 3e-7;
638
+ readonly cacheWrite: 0.00000375;
639
+ };
640
+ readonly contextWindow: 200000;
641
+ readonly maxOutput: 8192;
642
+ readonly modalities: {
643
+ readonly input: readonly ["text", "image", "pdf"];
644
+ readonly output: readonly ["text"];
645
+ };
646
+ readonly capabilities: {
647
+ readonly reasoning: false;
648
+ readonly toolCall: true;
649
+ readonly attachment: true;
650
+ readonly structuredOutput: false;
651
+ };
652
+ }, {
653
+ readonly id: "claude-3-sonnet-20240229";
654
+ readonly name: "Claude Sonnet 3";
655
+ readonly provider: "anthropic";
656
+ readonly family: "claude-sonnet";
657
+ readonly pricing: {
658
+ readonly input: 0.000003;
659
+ readonly output: 0.000015;
660
+ readonly cacheRead: 3e-7;
661
+ readonly cacheWrite: 3e-7;
662
+ };
663
+ readonly contextWindow: 200000;
664
+ readonly maxOutput: 4096;
665
+ readonly modalities: {
666
+ readonly input: readonly ["text", "image", "pdf"];
667
+ readonly output: readonly ["text"];
668
+ };
669
+ readonly capabilities: {
670
+ readonly reasoning: false;
671
+ readonly toolCall: true;
672
+ readonly attachment: true;
673
+ readonly structuredOutput: false;
674
+ };
675
+ }, {
676
+ readonly id: "claude-opus-4-6";
677
+ readonly name: "Claude Opus 4.6";
678
+ readonly provider: "anthropic";
679
+ readonly family: "claude-opus";
680
+ readonly pricing: {
681
+ readonly input: 0.000005;
682
+ readonly output: 0.000025;
683
+ readonly cacheRead: 5e-7;
684
+ readonly cacheWrite: 0.00000625;
685
+ };
686
+ readonly contextWindow: 1000000;
687
+ readonly maxOutput: 128000;
688
+ readonly modalities: {
689
+ readonly input: readonly ["text", "image", "pdf"];
690
+ readonly output: readonly ["text"];
691
+ };
692
+ readonly capabilities: {
693
+ readonly reasoning: true;
694
+ readonly toolCall: true;
695
+ readonly attachment: true;
696
+ readonly structuredOutput: false;
697
+ };
698
+ }, {
699
+ readonly id: "claude-sonnet-4-6";
700
+ readonly name: "Claude Sonnet 4.6";
701
+ readonly provider: "anthropic";
702
+ readonly family: "claude-sonnet";
703
+ readonly pricing: {
704
+ readonly input: 0.000003;
705
+ readonly output: 0.000015;
706
+ readonly cacheRead: 3e-7;
707
+ readonly cacheWrite: 0.00000375;
708
+ };
709
+ readonly contextWindow: 1000000;
710
+ readonly maxOutput: 64000;
711
+ readonly modalities: {
712
+ readonly input: readonly ["text", "image", "pdf"];
713
+ readonly output: readonly ["text"];
714
+ };
715
+ readonly capabilities: {
716
+ readonly reasoning: true;
717
+ readonly toolCall: true;
718
+ readonly attachment: true;
719
+ readonly structuredOutput: false;
720
+ };
721
+ }, {
722
+ readonly id: "claude-sonnet-4-0";
723
+ readonly name: "Claude Sonnet 4 (latest)";
724
+ readonly provider: "anthropic";
725
+ readonly family: "claude-sonnet";
726
+ readonly pricing: {
727
+ readonly input: 0.000003;
728
+ readonly output: 0.000015;
729
+ readonly cacheRead: 3e-7;
730
+ readonly cacheWrite: 0.00000375;
731
+ };
732
+ readonly contextWindow: 200000;
733
+ readonly maxOutput: 64000;
734
+ readonly modalities: {
735
+ readonly input: readonly ["text", "image", "pdf"];
736
+ readonly output: readonly ["text"];
737
+ };
738
+ readonly capabilities: {
739
+ readonly reasoning: true;
740
+ readonly toolCall: true;
741
+ readonly attachment: true;
742
+ readonly structuredOutput: false;
743
+ };
744
+ }, {
745
+ readonly id: "claude-opus-4-20250514";
746
+ readonly name: "Claude Opus 4";
747
+ readonly provider: "anthropic";
748
+ readonly family: "claude-opus";
749
+ readonly pricing: {
750
+ readonly input: 0.000015;
751
+ readonly output: 0.000075;
752
+ readonly cacheRead: 0.0000015;
753
+ readonly cacheWrite: 0.00001875;
754
+ };
755
+ readonly contextWindow: 200000;
756
+ readonly maxOutput: 32000;
757
+ readonly modalities: {
758
+ readonly input: readonly ["text", "image", "pdf"];
759
+ readonly output: readonly ["text"];
760
+ };
761
+ readonly capabilities: {
762
+ readonly reasoning: true;
763
+ readonly toolCall: true;
764
+ readonly attachment: true;
765
+ readonly structuredOutput: false;
766
+ };
767
+ }, {
768
+ readonly id: "claude-sonnet-4-5-20250929";
769
+ readonly name: "Claude Sonnet 4.5";
770
+ readonly provider: "anthropic";
771
+ readonly family: "claude-sonnet";
772
+ readonly pricing: {
773
+ readonly input: 0.000003;
774
+ readonly output: 0.000015;
775
+ readonly cacheRead: 3e-7;
776
+ readonly cacheWrite: 0.00000375;
777
+ };
778
+ readonly contextWindow: 200000;
779
+ readonly maxOutput: 64000;
780
+ readonly modalities: {
781
+ readonly input: readonly ["text", "image", "pdf"];
782
+ readonly output: readonly ["text"];
783
+ };
784
+ readonly capabilities: {
785
+ readonly reasoning: true;
786
+ readonly toolCall: true;
787
+ readonly attachment: true;
788
+ readonly structuredOutput: false;
789
+ };
790
+ }, {
791
+ readonly id: "claude-opus-4-0";
792
+ readonly name: "Claude Opus 4 (latest)";
793
+ readonly provider: "anthropic";
794
+ readonly family: "claude-opus";
795
+ readonly pricing: {
796
+ readonly input: 0.000015;
797
+ readonly output: 0.000075;
798
+ readonly cacheRead: 0.0000015;
799
+ readonly cacheWrite: 0.00001875;
800
+ };
801
+ readonly contextWindow: 200000;
802
+ readonly maxOutput: 32000;
803
+ readonly modalities: {
804
+ readonly input: readonly ["text", "image", "pdf"];
805
+ readonly output: readonly ["text"];
806
+ };
807
+ readonly capabilities: {
808
+ readonly reasoning: true;
809
+ readonly toolCall: true;
810
+ readonly attachment: true;
811
+ readonly structuredOutput: false;
812
+ };
813
+ }, {
814
+ readonly id: "claude-3-5-haiku-20241022";
815
+ readonly name: "Claude Haiku 3.5";
816
+ readonly provider: "anthropic";
817
+ readonly family: "claude-haiku";
818
+ readonly pricing: {
819
+ readonly input: 8e-7;
820
+ readonly output: 0.000004;
821
+ readonly cacheRead: 8e-8;
822
+ readonly cacheWrite: 0.000001;
823
+ };
824
+ readonly contextWindow: 200000;
825
+ readonly maxOutput: 8192;
826
+ readonly modalities: {
827
+ readonly input: readonly ["text", "image", "pdf"];
828
+ readonly output: readonly ["text"];
829
+ };
830
+ readonly capabilities: {
831
+ readonly reasoning: false;
832
+ readonly toolCall: true;
833
+ readonly attachment: true;
834
+ readonly structuredOutput: false;
835
+ };
836
+ }, {
837
+ readonly id: "claude-3-5-sonnet-20240620";
838
+ readonly name: "Claude Sonnet 3.5";
839
+ readonly provider: "anthropic";
840
+ readonly family: "claude-sonnet";
841
+ readonly pricing: {
842
+ readonly input: 0.000003;
843
+ readonly output: 0.000015;
844
+ readonly cacheRead: 3e-7;
845
+ readonly cacheWrite: 0.00000375;
846
+ };
847
+ readonly contextWindow: 200000;
848
+ readonly maxOutput: 8192;
849
+ readonly modalities: {
850
+ readonly input: readonly ["text", "image", "pdf"];
851
+ readonly output: readonly ["text"];
852
+ };
853
+ readonly capabilities: {
854
+ readonly reasoning: false;
855
+ readonly toolCall: true;
856
+ readonly attachment: true;
857
+ readonly structuredOutput: false;
858
+ };
859
+ }, {
860
+ readonly id: "claude-3-7-sonnet-latest";
861
+ readonly name: "Claude Sonnet 3.7 (latest)";
862
+ readonly provider: "anthropic";
863
+ readonly family: "claude-sonnet";
864
+ readonly pricing: {
865
+ readonly input: 0.000003;
866
+ readonly output: 0.000015;
867
+ readonly cacheRead: 3e-7;
868
+ readonly cacheWrite: 0.00000375;
869
+ };
870
+ readonly contextWindow: 200000;
871
+ readonly maxOutput: 64000;
872
+ readonly modalities: {
873
+ readonly input: readonly ["text", "image", "pdf"];
874
+ readonly output: readonly ["text"];
875
+ };
876
+ readonly capabilities: {
877
+ readonly reasoning: true;
878
+ readonly toolCall: true;
879
+ readonly attachment: true;
880
+ readonly structuredOutput: false;
881
+ };
882
+ }, {
883
+ readonly id: "claude-3-7-sonnet-20250219";
884
+ readonly name: "Claude Sonnet 3.7";
885
+ readonly provider: "anthropic";
886
+ readonly family: "claude-sonnet";
887
+ readonly pricing: {
888
+ readonly input: 0.000003;
889
+ readonly output: 0.000015;
890
+ readonly cacheRead: 3e-7;
891
+ readonly cacheWrite: 0.00000375;
892
+ };
893
+ readonly contextWindow: 200000;
894
+ readonly maxOutput: 64000;
895
+ readonly modalities: {
896
+ readonly input: readonly ["text", "image", "pdf"];
897
+ readonly output: readonly ["text"];
898
+ };
899
+ readonly capabilities: {
900
+ readonly reasoning: true;
901
+ readonly toolCall: true;
902
+ readonly attachment: true;
903
+ readonly structuredOutput: false;
904
+ };
905
+ }, {
906
+ readonly id: "claude-3-haiku-20240307";
907
+ readonly name: "Claude Haiku 3";
908
+ readonly provider: "anthropic";
909
+ readonly family: "claude-haiku";
910
+ readonly pricing: {
911
+ readonly input: 2.5e-7;
912
+ readonly output: 0.00000125;
913
+ readonly cacheRead: 3e-8;
914
+ readonly cacheWrite: 3e-7;
915
+ };
916
+ readonly contextWindow: 200000;
917
+ readonly maxOutput: 4096;
918
+ readonly modalities: {
919
+ readonly input: readonly ["text", "image", "pdf"];
920
+ readonly output: readonly ["text"];
921
+ };
922
+ readonly capabilities: {
923
+ readonly reasoning: false;
924
+ readonly toolCall: true;
925
+ readonly attachment: true;
926
+ readonly structuredOutput: false;
927
+ };
928
+ }, {
929
+ readonly id: "claude-haiku-4-5-20251001";
930
+ readonly name: "Claude Haiku 4.5";
931
+ readonly provider: "anthropic";
932
+ readonly family: "claude-haiku";
933
+ readonly pricing: {
934
+ readonly input: 0.000001;
935
+ readonly output: 0.000005;
936
+ readonly cacheRead: 1e-7;
937
+ readonly cacheWrite: 0.00000125;
938
+ };
939
+ readonly contextWindow: 200000;
940
+ readonly maxOutput: 64000;
941
+ readonly modalities: {
942
+ readonly input: readonly ["text", "image", "pdf"];
943
+ readonly output: readonly ["text"];
944
+ };
945
+ readonly capabilities: {
946
+ readonly reasoning: true;
947
+ readonly toolCall: true;
948
+ readonly attachment: true;
949
+ readonly structuredOutput: false;
950
+ };
951
+ }, {
952
+ readonly id: "claude-haiku-4-5";
953
+ readonly name: "Claude Haiku 4.5 (latest)";
954
+ readonly provider: "anthropic";
955
+ readonly family: "claude-haiku";
956
+ readonly pricing: {
957
+ readonly input: 0.000001;
958
+ readonly output: 0.000005;
959
+ readonly cacheRead: 1e-7;
960
+ readonly cacheWrite: 0.00000125;
961
+ };
962
+ readonly contextWindow: 200000;
963
+ readonly maxOutput: 64000;
964
+ readonly modalities: {
965
+ readonly input: readonly ["text", "image", "pdf"];
966
+ readonly output: readonly ["text"];
967
+ };
968
+ readonly capabilities: {
969
+ readonly reasoning: true;
970
+ readonly toolCall: true;
971
+ readonly attachment: true;
972
+ readonly structuredOutput: false;
973
+ };
974
+ }, {
975
+ readonly id: "claude-opus-4-5";
976
+ readonly name: "Claude Opus 4.5 (latest)";
977
+ readonly provider: "anthropic";
978
+ readonly family: "claude-opus";
979
+ readonly pricing: {
980
+ readonly input: 0.000005;
981
+ readonly output: 0.000025;
982
+ readonly cacheRead: 5e-7;
983
+ readonly cacheWrite: 0.00000625;
984
+ };
985
+ readonly contextWindow: 200000;
986
+ readonly maxOutput: 64000;
987
+ readonly modalities: {
988
+ readonly input: readonly ["text", "image", "pdf"];
989
+ readonly output: readonly ["text"];
990
+ };
991
+ readonly capabilities: {
992
+ readonly reasoning: true;
993
+ readonly toolCall: true;
994
+ readonly attachment: true;
995
+ readonly structuredOutput: false;
996
+ };
997
+ }, {
998
+ readonly id: "claude-3-opus-20240229";
999
+ readonly name: "Claude Opus 3";
1000
+ readonly provider: "anthropic";
1001
+ readonly family: "claude-opus";
1002
+ readonly pricing: {
1003
+ readonly input: 0.000015;
1004
+ readonly output: 0.000075;
1005
+ readonly cacheRead: 0.0000015;
1006
+ readonly cacheWrite: 0.00001875;
1007
+ };
1008
+ readonly contextWindow: 200000;
1009
+ readonly maxOutput: 4096;
1010
+ readonly modalities: {
1011
+ readonly input: readonly ["text", "image", "pdf"];
1012
+ readonly output: readonly ["text"];
1013
+ };
1014
+ readonly capabilities: {
1015
+ readonly reasoning: false;
1016
+ readonly toolCall: true;
1017
+ readonly attachment: true;
1018
+ readonly structuredOutput: false;
1019
+ };
1020
+ }, {
1021
+ readonly id: "claude-sonnet-4-5";
1022
+ readonly name: "Claude Sonnet 4.5 (latest)";
1023
+ readonly provider: "anthropic";
1024
+ readonly family: "claude-sonnet";
1025
+ readonly pricing: {
1026
+ readonly input: 0.000003;
1027
+ readonly output: 0.000015;
1028
+ readonly cacheRead: 3e-7;
1029
+ readonly cacheWrite: 0.00000375;
1030
+ };
1031
+ readonly contextWindow: 200000;
1032
+ readonly maxOutput: 64000;
1033
+ readonly modalities: {
1034
+ readonly input: readonly ["text", "image", "pdf"];
1035
+ readonly output: readonly ["text"];
1036
+ };
1037
+ readonly capabilities: {
1038
+ readonly reasoning: true;
1039
+ readonly toolCall: true;
1040
+ readonly attachment: true;
1041
+ readonly structuredOutput: false;
1042
+ };
1043
+ }, {
1044
+ readonly id: "claude-sonnet-4-20250514";
1045
+ readonly name: "Claude Sonnet 4";
1046
+ readonly provider: "anthropic";
1047
+ readonly family: "claude-sonnet";
1048
+ readonly pricing: {
1049
+ readonly input: 0.000003;
1050
+ readonly output: 0.000015;
1051
+ readonly cacheRead: 3e-7;
1052
+ readonly cacheWrite: 0.00000375;
1053
+ };
1054
+ readonly contextWindow: 200000;
1055
+ readonly maxOutput: 64000;
1056
+ readonly modalities: {
1057
+ readonly input: readonly ["text", "image", "pdf"];
1058
+ readonly output: readonly ["text"];
1059
+ };
1060
+ readonly capabilities: {
1061
+ readonly reasoning: true;
1062
+ readonly toolCall: true;
1063
+ readonly attachment: true;
1064
+ readonly structuredOutput: false;
1065
+ };
1066
+ }, {
1067
+ readonly id: "claude-opus-4-1-20250805";
1068
+ readonly name: "Claude Opus 4.1";
1069
+ readonly provider: "anthropic";
1070
+ readonly family: "claude-opus";
1071
+ readonly pricing: {
1072
+ readonly input: 0.000015;
1073
+ readonly output: 0.000075;
1074
+ readonly cacheRead: 0.0000015;
1075
+ readonly cacheWrite: 0.00001875;
1076
+ };
1077
+ readonly contextWindow: 200000;
1078
+ readonly maxOutput: 32000;
1079
+ readonly modalities: {
1080
+ readonly input: readonly ["text", "image", "pdf"];
1081
+ readonly output: readonly ["text"];
1082
+ };
1083
+ readonly capabilities: {
1084
+ readonly reasoning: true;
1085
+ readonly toolCall: true;
1086
+ readonly attachment: true;
1087
+ readonly structuredOutput: false;
1088
+ };
1089
+ }];
1090
+ /**
1091
+ * Look up an Anthropic model by ID.
1092
+ *
1093
+ * @param id - The provider-native model identifier.
1094
+ * @returns The matching model definition, or `null`.
1095
+ *
1096
+ * @example
1097
+ * ```typescript
1098
+ * import { anthropicModel } from '@funkai/models/anthropic'
1099
+ *
1100
+ * const m = anthropicModel('claude-opus-4-5-20251101')
1101
+ * if (m) {
1102
+ * console.log(m.pricing.input)
1103
+ * }
1104
+ * ```
1105
+ */
1106
+ declare function anthropicModel(id: LiteralUnion<AnthropicModelId, string>): ModelDefinition | null;
1107
+ //#endregion
1108
+ export { AnthropicModelId, anthropicModel, anthropicModels };
1109
+ //# sourceMappingURL=anthropic.d.mts.map