@earendil-works/pi-ai 0.80.9 → 0.81.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 (258) hide show
  1. package/README.md +4 -2
  2. package/dist/api/openai-codex-responses.d.ts.map +1 -1
  3. package/dist/api/openai-codex-responses.js +2 -7
  4. package/dist/api/openai-codex-responses.js.map +1 -1
  5. package/dist/api/openai-completions.d.ts.map +1 -1
  6. package/dist/api/openai-completions.js +14 -2
  7. package/dist/api/openai-completions.js.map +1 -1
  8. package/dist/api/pi-messages.d.ts.map +1 -1
  9. package/dist/api/pi-messages.js +2 -4
  10. package/dist/api/pi-messages.js.map +1 -1
  11. package/dist/auth/helpers.d.ts.map +1 -1
  12. package/dist/auth/helpers.js +3 -2
  13. package/dist/auth/helpers.js.map +1 -1
  14. package/dist/env-api-keys.d.ts.map +1 -1
  15. package/dist/env-api-keys.js +2 -0
  16. package/dist/env-api-keys.js.map +1 -1
  17. package/dist/image-models.generated.d.ts +60 -0
  18. package/dist/image-models.generated.d.ts.map +1 -1
  19. package/dist/image-models.generated.js +236 -176
  20. package/dist/image-models.generated.js.map +1 -1
  21. package/dist/index.d.ts +2 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/models-store.d.ts +2 -0
  26. package/dist/models-store.d.ts.map +1 -1
  27. package/dist/models-store.js.map +1 -1
  28. package/dist/models.generated.d.ts +4379 -22338
  29. package/dist/models.generated.d.ts.map +1 -1
  30. package/dist/models.generated.js +4 -0
  31. package/dist/models.generated.js.map +1 -1
  32. package/dist/providers/all.d.ts +2 -0
  33. package/dist/providers/all.d.ts.map +1 -1
  34. package/dist/providers/all.js +8 -0
  35. package/dist/providers/all.js.map +1 -1
  36. package/dist/providers/amazon-bedrock.d.ts.map +1 -1
  37. package/dist/providers/amazon-bedrock.js +3 -2
  38. package/dist/providers/amazon-bedrock.js.map +1 -1
  39. package/dist/providers/amazon-bedrock.models.d.ts +436 -1988
  40. package/dist/providers/amazon-bedrock.models.d.ts.map +1 -1
  41. package/dist/providers/amazon-bedrock.models.js +2 -1892
  42. package/dist/providers/amazon-bedrock.models.js.map +1 -1
  43. package/dist/providers/ant-ling.models.d.ts +10 -80
  44. package/dist/providers/ant-ling.models.d.ts.map +1 -1
  45. package/dist/providers/ant-ling.models.js +2 -57
  46. package/dist/providers/ant-ling.models.js.map +1 -1
  47. package/dist/providers/anthropic.models.d.ts +43 -267
  48. package/dist/providers/anthropic.models.d.ts.map +1 -1
  49. package/dist/providers/anthropic.models.js +2 -252
  50. package/dist/providers/anthropic.models.js.map +1 -1
  51. package/dist/providers/azure-openai-responses.models.d.ts +184 -883
  52. package/dist/providers/azure-openai-responses.models.d.ts.map +1 -1
  53. package/dist/providers/azure-openai-responses.models.js +2 -811
  54. package/dist/providers/azure-openai-responses.models.js.map +1 -1
  55. package/dist/providers/cerebras.models.d.ts +10 -60
  56. package/dist/providers/cerebras.models.d.ts.map +1 -1
  57. package/dist/providers/cerebras.models.js +2 -56
  58. package/dist/providers/cerebras.models.js.map +1 -1
  59. package/dist/providers/cloudflare-ai-gateway.models.d.ts +168 -884
  60. package/dist/providers/cloudflare-ai-gateway.models.d.ts.map +1 -1
  61. package/dist/providers/cloudflare-ai-gateway.models.js +2 -755
  62. package/dist/providers/cloudflare-ai-gateway.models.js.map +1 -1
  63. package/dist/providers/cloudflare-workers-ai.models.d.ts +40 -286
  64. package/dist/providers/cloudflare-workers-ai.models.d.ts.map +1 -1
  65. package/dist/providers/cloudflare-workers-ai.models.js +2 -236
  66. package/dist/providers/cloudflare-workers-ai.models.js.map +1 -1
  67. package/dist/providers/data/.manifest.json +1 -0
  68. package/dist/providers/data/amazon-bedrock.json +1 -0
  69. package/dist/providers/data/ant-ling.json +1 -0
  70. package/dist/providers/data/anthropic.json +1 -0
  71. package/dist/providers/data/azure-openai-responses.json +1 -0
  72. package/dist/providers/data/cerebras.json +1 -0
  73. package/dist/providers/data/cloudflare-ai-gateway.json +1 -0
  74. package/dist/providers/data/cloudflare-workers-ai.json +1 -0
  75. package/dist/providers/data/deepseek.json +1 -0
  76. package/dist/providers/data/fireworks.json +1 -0
  77. package/dist/providers/data/github-copilot.json +1 -0
  78. package/dist/providers/data/google-vertex.json +1 -0
  79. package/dist/providers/data/google.json +1 -0
  80. package/dist/providers/data/groq.json +1 -0
  81. package/dist/providers/data/huggingface.json +1 -0
  82. package/dist/providers/data/kimi-coding.json +1 -0
  83. package/dist/providers/data/minimax-cn.json +1 -0
  84. package/dist/providers/data/minimax.json +1 -0
  85. package/dist/providers/data/mistral.json +1 -0
  86. package/dist/providers/data/moonshotai-cn.json +1 -0
  87. package/dist/providers/data/moonshotai.json +1 -0
  88. package/dist/providers/data/nvidia.json +1 -0
  89. package/dist/providers/data/openai-codex.json +1 -0
  90. package/dist/providers/data/openai.json +1 -0
  91. package/dist/providers/data/opencode-go.json +1 -0
  92. package/dist/providers/data/opencode.json +1 -0
  93. package/dist/providers/data/openrouter.json +1 -0
  94. package/dist/providers/data/qwen-token-plan-cn.json +1 -0
  95. package/dist/providers/data/qwen-token-plan.json +1 -0
  96. package/dist/providers/data/together.json +1 -0
  97. package/dist/providers/data/vercel-ai-gateway.json +1 -0
  98. package/dist/providers/data/xai.json +1 -0
  99. package/dist/providers/data/xiaomi-token-plan-ams.json +1 -0
  100. package/dist/providers/data/xiaomi-token-plan-cn.json +1 -0
  101. package/dist/providers/data/xiaomi-token-plan-sgp.json +1 -0
  102. package/dist/providers/data/xiaomi.json +1 -0
  103. package/dist/providers/data/zai-coding-cn.json +1 -0
  104. package/dist/providers/data/zai.json +1 -0
  105. package/dist/providers/deepseek.models.d.ts +7 -58
  106. package/dist/providers/deepseek.models.d.ts.map +1 -1
  107. package/dist/providers/deepseek.models.js +2 -40
  108. package/dist/providers/deepseek.models.js.map +1 -1
  109. package/dist/providers/fireworks.models.d.ts +49 -362
  110. package/dist/providers/fireworks.models.d.ts.map +1 -1
  111. package/dist/providers/fireworks.models.js +2 -292
  112. package/dist/providers/fireworks.models.js.map +1 -1
  113. package/dist/providers/github-copilot.models.d.ts +85 -760
  114. package/dist/providers/github-copilot.models.d.ts.map +1 -1
  115. package/dist/providers/github-copilot.models.js +2 -538
  116. package/dist/providers/github-copilot.models.js.map +1 -1
  117. package/dist/providers/google-vertex.models.d.ts +31 -189
  118. package/dist/providers/google-vertex.models.d.ts.map +1 -1
  119. package/dist/providers/google-vertex.models.js +2 -179
  120. package/dist/providers/google-vertex.models.js.map +1 -1
  121. package/dist/providers/google.models.d.ts +49 -309
  122. package/dist/providers/google.models.d.ts.map +1 -1
  123. package/dist/providers/google.models.js +2 -285
  124. package/dist/providers/google.models.js.map +1 -1
  125. package/dist/providers/groq.models.d.ts +22 -118
  126. package/dist/providers/groq.models.d.ts.map +1 -1
  127. package/dist/providers/groq.models.js +2 -122
  128. package/dist/providers/groq.models.js.map +1 -1
  129. package/dist/providers/huggingface.models.d.ts +196 -979
  130. package/dist/providers/huggingface.models.d.ts.map +1 -1
  131. package/dist/providers/huggingface.models.js +2 -884
  132. package/dist/providers/huggingface.models.js.map +1 -1
  133. package/dist/providers/kimi-coding.models.d.ts +10 -97
  134. package/dist/providers/kimi-coding.models.d.ts.map +1 -1
  135. package/dist/providers/kimi-coding.models.js +2 -92
  136. package/dist/providers/kimi-coding.models.js.map +1 -1
  137. package/dist/providers/minimax-cn.models.d.ts +10 -48
  138. package/dist/providers/minimax-cn.models.d.ts.map +1 -1
  139. package/dist/providers/minimax-cn.models.js +2 -53
  140. package/dist/providers/minimax-cn.models.js.map +1 -1
  141. package/dist/providers/minimax.models.d.ts +10 -48
  142. package/dist/providers/minimax.models.d.ts.map +1 -1
  143. package/dist/providers/minimax.models.js +2 -53
  144. package/dist/providers/minimax.models.js.map +1 -1
  145. package/dist/providers/mistral.models.d.ts +91 -480
  146. package/dist/providers/mistral.models.d.ts.map +1 -1
  147. package/dist/providers/mistral.models.js +2 -512
  148. package/dist/providers/mistral.models.js.map +1 -1
  149. package/dist/providers/moonshotai-cn.models.d.ts +31 -257
  150. package/dist/providers/moonshotai-cn.models.d.ts.map +1 -1
  151. package/dist/providers/moonshotai-cn.models.js +2 -185
  152. package/dist/providers/moonshotai-cn.models.js.map +1 -1
  153. package/dist/providers/moonshotai.models.d.ts +31 -257
  154. package/dist/providers/moonshotai.models.d.ts.map +1 -1
  155. package/dist/providers/moonshotai.models.js +2 -185
  156. package/dist/providers/moonshotai.models.js.map +1 -1
  157. package/dist/providers/nvidia.models.d.ts +58 -541
  158. package/dist/providers/nvidia.models.d.ts.map +1 -1
  159. package/dist/providers/nvidia.models.js +2 -382
  160. package/dist/providers/nvidia.models.js.map +1 -1
  161. package/dist/providers/openai-codex.models.d.ts +22 -196
  162. package/dist/providers/openai-codex.models.d.ts.map +1 -1
  163. package/dist/providers/openai-codex.models.js +2 -139
  164. package/dist/providers/openai-codex.models.js.map +1 -1
  165. package/dist/providers/openai.models.d.ts +184 -954
  166. package/dist/providers/openai.models.d.ts.map +1 -1
  167. package/dist/providers/openai.models.js +2 -825
  168. package/dist/providers/openai.models.js.map +1 -1
  169. package/dist/providers/opencode-go.d.ts +1 -1
  170. package/dist/providers/opencode-go.d.ts.map +1 -1
  171. package/dist/providers/opencode-go.js +2 -0
  172. package/dist/providers/opencode-go.js.map +1 -1
  173. package/dist/providers/opencode-go.models.d.ts +48 -293
  174. package/dist/providers/opencode-go.models.d.ts.map +1 -1
  175. package/dist/providers/opencode-go.models.js +2 -237
  176. package/dist/providers/opencode-go.models.js.map +1 -1
  177. package/dist/providers/opencode.models.d.ts +160 -1185
  178. package/dist/providers/opencode.models.d.ts.map +1 -1
  179. package/dist/providers/opencode.models.js +2 -996
  180. package/dist/providers/opencode.models.js.map +1 -1
  181. package/dist/providers/openrouter.models.d.ts +1076 -5750
  182. package/dist/providers/openrouter.models.d.ts.map +1 -1
  183. package/dist/providers/openrouter.models.js +2 -4910
  184. package/dist/providers/openrouter.models.js.map +1 -1
  185. package/dist/providers/qwen-token-plan-cn.d.ts +3 -0
  186. package/dist/providers/qwen-token-plan-cn.d.ts.map +1 -0
  187. package/dist/providers/qwen-token-plan-cn.js +15 -0
  188. package/dist/providers/qwen-token-plan-cn.js.map +1 -0
  189. package/dist/providers/qwen-token-plan-cn.models.d.ts +64 -0
  190. package/dist/providers/qwen-token-plan-cn.models.d.ts.map +1 -0
  191. package/dist/providers/qwen-token-plan-cn.models.js +5 -0
  192. package/dist/providers/qwen-token-plan-cn.models.js.map +1 -0
  193. package/dist/providers/qwen-token-plan.d.ts +3 -0
  194. package/dist/providers/qwen-token-plan.d.ts.map +1 -0
  195. package/dist/providers/qwen-token-plan.js +15 -0
  196. package/dist/providers/qwen-token-plan.js.map +1 -0
  197. package/dist/providers/qwen-token-plan.models.d.ts +64 -0
  198. package/dist/providers/qwen-token-plan.models.d.ts.map +1 -0
  199. package/dist/providers/qwen-token-plan.models.js +5 -0
  200. package/dist/providers/qwen-token-plan.models.js.map +1 -0
  201. package/dist/providers/radius-config.d.ts.map +1 -1
  202. package/dist/providers/radius-config.js +18 -14
  203. package/dist/providers/radius-config.js.map +1 -1
  204. package/dist/providers/together.models.d.ts +49 -579
  205. package/dist/providers/together.models.d.ts.map +1 -1
  206. package/dist/providers/together.models.js +2 -377
  207. package/dist/providers/together.models.js.map +1 -1
  208. package/dist/providers/vercel-ai-gateway.models.d.ts +752 -3336
  209. package/dist/providers/vercel-ai-gateway.models.d.ts.map +1 -1
  210. package/dist/providers/vercel-ai-gateway.models.js +2 -3263
  211. package/dist/providers/vercel-ai-gateway.models.js.map +1 -1
  212. package/dist/providers/xai.models.d.ts +10 -175
  213. package/dist/providers/xai.models.d.ts.map +1 -1
  214. package/dist/providers/xai.models.js +2 -147
  215. package/dist/providers/xai.models.js.map +1 -1
  216. package/dist/providers/xiaomi-token-plan-ams.models.d.ts +10 -60
  217. package/dist/providers/xiaomi-token-plan-ams.models.d.ts.map +1 -1
  218. package/dist/providers/xiaomi-token-plan-ams.models.js +2 -56
  219. package/dist/providers/xiaomi-token-plan-ams.models.js.map +1 -1
  220. package/dist/providers/xiaomi-token-plan-cn.models.d.ts +10 -60
  221. package/dist/providers/xiaomi-token-plan-cn.models.d.ts.map +1 -1
  222. package/dist/providers/xiaomi-token-plan-cn.models.js +2 -56
  223. package/dist/providers/xiaomi-token-plan-cn.models.js.map +1 -1
  224. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts +10 -60
  225. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts.map +1 -1
  226. package/dist/providers/xiaomi-token-plan-sgp.models.js +2 -56
  227. package/dist/providers/xiaomi-token-plan-sgp.models.js.map +1 -1
  228. package/dist/providers/xiaomi.models.d.ts +19 -120
  229. package/dist/providers/xiaomi.models.d.ts.map +1 -1
  230. package/dist/providers/xiaomi.models.js +2 -110
  231. package/dist/providers/xiaomi.models.js.map +1 -1
  232. package/dist/providers/zai-coding-cn.models.d.ts +19 -144
  233. package/dist/providers/zai-coding-cn.models.d.ts.map +1 -1
  234. package/dist/providers/zai-coding-cn.models.js +2 -111
  235. package/dist/providers/zai-coding-cn.models.js.map +1 -1
  236. package/dist/providers/zai.models.d.ts +19 -144
  237. package/dist/providers/zai.models.d.ts.map +1 -1
  238. package/dist/providers/zai.models.js +2 -111
  239. package/dist/providers/zai.models.js.map +1 -1
  240. package/dist/types.d.ts +3 -1
  241. package/dist/types.d.ts.map +1 -1
  242. package/dist/types.js.map +1 -1
  243. package/dist/utils/overflow.d.ts +1 -0
  244. package/dist/utils/overflow.d.ts.map +1 -1
  245. package/dist/utils/overflow.js +3 -0
  246. package/dist/utils/overflow.js.map +1 -1
  247. package/dist/utils/retry.d.ts.map +1 -1
  248. package/dist/utils/retry.js +1 -0
  249. package/dist/utils/retry.js.map +1 -1
  250. package/dist/utils/text.d.ts +6 -0
  251. package/dist/utils/text.d.ts.map +1 -0
  252. package/dist/utils/text.js +10 -0
  253. package/dist/utils/text.js.map +1 -0
  254. package/dist/utils/uuid.d.ts +3 -0
  255. package/dist/utils/uuid.d.ts.map +1 -0
  256. package/dist/utils/uuid.js +46 -0
  257. package/dist/utils/uuid.js.map +1 -0
  258. package/package.json +8 -5
@@ -1,4913 +1,5 @@
1
1
  // This file is auto-generated by scripts/generate-models.ts
2
2
  // Do not edit manually - run 'npm run generate-models' to update
3
- export const OPENROUTER_MODELS = {
4
- "ai21/jamba-large-1.7": {
5
- id: "ai21/jamba-large-1.7",
6
- name: "AI21: Jamba Large 1.7",
7
- api: "openai-completions",
8
- provider: "openrouter",
9
- baseUrl: "https://openrouter.ai/api/v1",
10
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
11
- reasoning: false,
12
- input: ["text"],
13
- cost: {
14
- input: 2,
15
- output: 8,
16
- cacheRead: 0,
17
- cacheWrite: 0,
18
- },
19
- contextWindow: 256000,
20
- maxTokens: 4096,
21
- },
22
- "aion-labs/aion-2.0": {
23
- id: "aion-labs/aion-2.0",
24
- name: "AionLabs: Aion-2.0",
25
- api: "openai-completions",
26
- provider: "openrouter",
27
- baseUrl: "https://openrouter.ai/api/v1",
28
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
29
- reasoning: true,
30
- input: ["text"],
31
- cost: {
32
- input: 0.8,
33
- output: 1.6,
34
- cacheRead: 0.2,
35
- cacheWrite: 0,
36
- },
37
- contextWindow: 131072,
38
- maxTokens: 32768,
39
- },
40
- "aion-labs/aion-3.0": {
41
- id: "aion-labs/aion-3.0",
42
- name: "AionLabs: Aion-3.0",
43
- api: "openai-completions",
44
- provider: "openrouter",
45
- baseUrl: "https://openrouter.ai/api/v1",
46
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
47
- reasoning: true,
48
- input: ["text"],
49
- cost: {
50
- input: 3,
51
- output: 6,
52
- cacheRead: 0.75,
53
- cacheWrite: 0,
54
- },
55
- contextWindow: 131072,
56
- maxTokens: 32768,
57
- },
58
- "aion-labs/aion-3.0-mini": {
59
- id: "aion-labs/aion-3.0-mini",
60
- name: "AionLabs: Aion-3.0-Mini",
61
- api: "openai-completions",
62
- provider: "openrouter",
63
- baseUrl: "https://openrouter.ai/api/v1",
64
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
65
- reasoning: true,
66
- input: ["text"],
67
- cost: {
68
- input: 0.7,
69
- output: 1.4,
70
- cacheRead: 0.18,
71
- cacheWrite: 0,
72
- },
73
- contextWindow: 131072,
74
- maxTokens: 32768,
75
- },
76
- "amazon/nova-2-lite-v1": {
77
- id: "amazon/nova-2-lite-v1",
78
- name: "Amazon: Nova 2 Lite",
79
- api: "openai-completions",
80
- provider: "openrouter",
81
- baseUrl: "https://openrouter.ai/api/v1",
82
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
83
- reasoning: true,
84
- input: ["text", "image"],
85
- cost: {
86
- input: 0.3,
87
- output: 2.5,
88
- cacheRead: 0,
89
- cacheWrite: 0,
90
- },
91
- contextWindow: 1000000,
92
- maxTokens: 65535,
93
- },
94
- "amazon/nova-lite-v1": {
95
- id: "amazon/nova-lite-v1",
96
- name: "Amazon: Nova Lite 1.0",
97
- api: "openai-completions",
98
- provider: "openrouter",
99
- baseUrl: "https://openrouter.ai/api/v1",
100
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
101
- reasoning: false,
102
- input: ["text", "image"],
103
- cost: {
104
- input: 0.06,
105
- output: 0.24,
106
- cacheRead: 0,
107
- cacheWrite: 0,
108
- },
109
- contextWindow: 300000,
110
- maxTokens: 5120,
111
- },
112
- "amazon/nova-micro-v1": {
113
- id: "amazon/nova-micro-v1",
114
- name: "Amazon: Nova Micro 1.0",
115
- api: "openai-completions",
116
- provider: "openrouter",
117
- baseUrl: "https://openrouter.ai/api/v1",
118
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
119
- reasoning: false,
120
- input: ["text"],
121
- cost: {
122
- input: 0.035,
123
- output: 0.14,
124
- cacheRead: 0,
125
- cacheWrite: 0,
126
- },
127
- contextWindow: 128000,
128
- maxTokens: 5120,
129
- },
130
- "amazon/nova-premier-v1": {
131
- id: "amazon/nova-premier-v1",
132
- name: "Amazon: Nova Premier 1.0",
133
- api: "openai-completions",
134
- provider: "openrouter",
135
- baseUrl: "https://openrouter.ai/api/v1",
136
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
137
- reasoning: false,
138
- input: ["text", "image"],
139
- cost: {
140
- input: 2.5,
141
- output: 12.5,
142
- cacheRead: 0.625,
143
- cacheWrite: 0,
144
- },
145
- contextWindow: 1000000,
146
- maxTokens: 32000,
147
- },
148
- "amazon/nova-pro-v1": {
149
- id: "amazon/nova-pro-v1",
150
- name: "Amazon: Nova Pro 1.0",
151
- api: "openai-completions",
152
- provider: "openrouter",
153
- baseUrl: "https://openrouter.ai/api/v1",
154
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
155
- reasoning: false,
156
- input: ["text", "image"],
157
- cost: {
158
- input: 0.8,
159
- output: 3.2,
160
- cacheRead: 0,
161
- cacheWrite: 0,
162
- },
163
- contextWindow: 300000,
164
- maxTokens: 5120,
165
- },
166
- "anthropic/claude-3-haiku": {
167
- id: "anthropic/claude-3-haiku",
168
- name: "Anthropic: Claude 3 Haiku",
169
- api: "openai-completions",
170
- provider: "openrouter",
171
- baseUrl: "https://openrouter.ai/api/v1",
172
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
173
- reasoning: false,
174
- input: ["text", "image"],
175
- cost: {
176
- input: 0.25,
177
- output: 1.25,
178
- cacheRead: 0.03,
179
- cacheWrite: 0.3,
180
- },
181
- contextWindow: 200000,
182
- maxTokens: 4096,
183
- },
184
- "anthropic/claude-fable-5": {
185
- id: "anthropic/claude-fable-5",
186
- name: "Anthropic: Claude Fable 5",
187
- api: "openai-completions",
188
- provider: "openrouter",
189
- baseUrl: "https://openrouter.ai/api/v1",
190
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
191
- reasoning: true,
192
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "max": "max" },
193
- input: ["text", "image"],
194
- cost: {
195
- input: 10,
196
- output: 50,
197
- cacheRead: 1,
198
- cacheWrite: 12.5,
199
- },
200
- contextWindow: 1000000,
201
- maxTokens: 128000,
202
- },
203
- "anthropic/claude-haiku-4.5": {
204
- id: "anthropic/claude-haiku-4.5",
205
- name: "Anthropic: Claude Haiku 4.5",
206
- api: "openai-completions",
207
- provider: "openrouter",
208
- baseUrl: "https://openrouter.ai/api/v1",
209
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
210
- reasoning: true,
211
- input: ["text", "image"],
212
- cost: {
213
- input: 1,
214
- output: 5,
215
- cacheRead: 0.1,
216
- cacheWrite: 1.25,
217
- },
218
- contextWindow: 200000,
219
- maxTokens: 64000,
220
- },
221
- "anthropic/claude-opus-4": {
222
- id: "anthropic/claude-opus-4",
223
- name: "Anthropic: Claude Opus 4",
224
- api: "openai-completions",
225
- provider: "openrouter",
226
- baseUrl: "https://openrouter.ai/api/v1",
227
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
228
- reasoning: true,
229
- input: ["text", "image"],
230
- cost: {
231
- input: 15,
232
- output: 75,
233
- cacheRead: 1.5,
234
- cacheWrite: 18.75,
235
- },
236
- contextWindow: 200000,
237
- maxTokens: 32000,
238
- },
239
- "anthropic/claude-opus-4.1": {
240
- id: "anthropic/claude-opus-4.1",
241
- name: "Anthropic: Claude Opus 4.1",
242
- api: "openai-completions",
243
- provider: "openrouter",
244
- baseUrl: "https://openrouter.ai/api/v1",
245
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
246
- reasoning: true,
247
- input: ["text", "image"],
248
- cost: {
249
- input: 15,
250
- output: 75,
251
- cacheRead: 1.5,
252
- cacheWrite: 18.75,
253
- },
254
- contextWindow: 200000,
255
- maxTokens: 32000,
256
- },
257
- "anthropic/claude-opus-4.5": {
258
- id: "anthropic/claude-opus-4.5",
259
- name: "Anthropic: Claude Opus 4.5",
260
- api: "openai-completions",
261
- provider: "openrouter",
262
- baseUrl: "https://openrouter.ai/api/v1",
263
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
264
- reasoning: true,
265
- input: ["text", "image"],
266
- cost: {
267
- input: 5,
268
- output: 25,
269
- cacheRead: 0.5,
270
- cacheWrite: 6.25,
271
- },
272
- contextWindow: 200000,
273
- maxTokens: 64000,
274
- },
275
- "anthropic/claude-opus-4.6": {
276
- id: "anthropic/claude-opus-4.6",
277
- name: "Anthropic: Claude Opus 4.6",
278
- api: "openai-completions",
279
- provider: "openrouter",
280
- baseUrl: "https://openrouter.ai/api/v1",
281
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
282
- reasoning: true,
283
- thinkingLevelMap: { "max": "max" },
284
- input: ["text", "image"],
285
- cost: {
286
- input: 5,
287
- output: 25,
288
- cacheRead: 0.5,
289
- cacheWrite: 6.25,
290
- },
291
- contextWindow: 1000000,
292
- maxTokens: 128000,
293
- },
294
- "anthropic/claude-opus-4.7": {
295
- id: "anthropic/claude-opus-4.7",
296
- name: "Anthropic: Claude Opus 4.7",
297
- api: "openai-completions",
298
- provider: "openrouter",
299
- baseUrl: "https://openrouter.ai/api/v1",
300
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
301
- reasoning: true,
302
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
303
- input: ["text", "image"],
304
- cost: {
305
- input: 5,
306
- output: 25,
307
- cacheRead: 0.5,
308
- cacheWrite: 6.25,
309
- },
310
- contextWindow: 1000000,
311
- maxTokens: 128000,
312
- },
313
- "anthropic/claude-opus-4.7-fast": {
314
- id: "anthropic/claude-opus-4.7-fast",
315
- name: "Anthropic: Claude Opus 4.7 (Fast)",
316
- api: "openai-completions",
317
- provider: "openrouter",
318
- baseUrl: "https://openrouter.ai/api/v1",
319
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
320
- reasoning: true,
321
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
322
- input: ["text", "image"],
323
- cost: {
324
- input: 30,
325
- output: 150,
326
- cacheRead: 3,
327
- cacheWrite: 37.5,
328
- },
329
- contextWindow: 1000000,
330
- maxTokens: 128000,
331
- },
332
- "anthropic/claude-opus-4.8": {
333
- id: "anthropic/claude-opus-4.8",
334
- name: "Anthropic: Claude Opus 4.8",
335
- api: "openai-completions",
336
- provider: "openrouter",
337
- baseUrl: "https://openrouter.ai/api/v1",
338
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
339
- reasoning: true,
340
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
341
- input: ["text", "image"],
342
- cost: {
343
- input: 5,
344
- output: 25,
345
- cacheRead: 0.5,
346
- cacheWrite: 6.25,
347
- },
348
- contextWindow: 1000000,
349
- maxTokens: 128000,
350
- },
351
- "anthropic/claude-opus-4.8-fast": {
352
- id: "anthropic/claude-opus-4.8-fast",
353
- name: "Anthropic: Claude Opus 4.8 (Fast)",
354
- api: "openai-completions",
355
- provider: "openrouter",
356
- baseUrl: "https://openrouter.ai/api/v1",
357
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
358
- reasoning: true,
359
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
360
- input: ["text", "image"],
361
- cost: {
362
- input: 10,
363
- output: 50,
364
- cacheRead: 1,
365
- cacheWrite: 12.5,
366
- },
367
- contextWindow: 1000000,
368
- maxTokens: 128000,
369
- },
370
- "anthropic/claude-sonnet-4": {
371
- id: "anthropic/claude-sonnet-4",
372
- name: "Anthropic: Claude Sonnet 4",
373
- api: "openai-completions",
374
- provider: "openrouter",
375
- baseUrl: "https://openrouter.ai/api/v1",
376
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
377
- reasoning: true,
378
- input: ["text", "image"],
379
- cost: {
380
- input: 3,
381
- output: 15,
382
- cacheRead: 0.3,
383
- cacheWrite: 3.75,
384
- },
385
- contextWindow: 200000,
386
- maxTokens: 64000,
387
- },
388
- "anthropic/claude-sonnet-4.5": {
389
- id: "anthropic/claude-sonnet-4.5",
390
- name: "Anthropic: Claude Sonnet 4.5",
391
- api: "openai-completions",
392
- provider: "openrouter",
393
- baseUrl: "https://openrouter.ai/api/v1",
394
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
395
- reasoning: true,
396
- input: ["text", "image"],
397
- cost: {
398
- input: 3,
399
- output: 15,
400
- cacheRead: 0.3,
401
- cacheWrite: 3.75,
402
- },
403
- contextWindow: 1000000,
404
- maxTokens: 64000,
405
- },
406
- "anthropic/claude-sonnet-4.6": {
407
- id: "anthropic/claude-sonnet-4.6",
408
- name: "Anthropic: Claude Sonnet 4.6",
409
- api: "openai-completions",
410
- provider: "openrouter",
411
- baseUrl: "https://openrouter.ai/api/v1",
412
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
413
- reasoning: true,
414
- thinkingLevelMap: { "max": "max" },
415
- input: ["text", "image"],
416
- cost: {
417
- input: 3,
418
- output: 15,
419
- cacheRead: 0.3,
420
- cacheWrite: 3.75,
421
- },
422
- contextWindow: 1000000,
423
- maxTokens: 128000,
424
- },
425
- "anthropic/claude-sonnet-5": {
426
- id: "anthropic/claude-sonnet-5",
427
- name: "Anthropic: Claude Sonnet 5",
428
- api: "openai-completions",
429
- provider: "openrouter",
430
- baseUrl: "https://openrouter.ai/api/v1",
431
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
432
- reasoning: true,
433
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
434
- input: ["text", "image"],
435
- cost: {
436
- input: 2,
437
- output: 10,
438
- cacheRead: 0.2,
439
- cacheWrite: 2.5,
440
- },
441
- contextWindow: 1000000,
442
- maxTokens: 128000,
443
- },
444
- "arcee-ai/trinity-large-thinking": {
445
- id: "arcee-ai/trinity-large-thinking",
446
- name: "Arcee AI: Trinity Large Thinking",
447
- api: "openai-completions",
448
- provider: "openrouter",
449
- baseUrl: "https://openrouter.ai/api/v1",
450
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
451
- reasoning: true,
452
- input: ["text"],
453
- cost: {
454
- input: 0.25,
455
- output: 0.8,
456
- cacheRead: 0.06,
457
- cacheWrite: 0,
458
- },
459
- contextWindow: 262144,
460
- maxTokens: 80000,
461
- },
462
- "arcee-ai/virtuoso-large": {
463
- id: "arcee-ai/virtuoso-large",
464
- name: "Arcee AI: Virtuoso Large",
465
- api: "openai-completions",
466
- provider: "openrouter",
467
- baseUrl: "https://openrouter.ai/api/v1",
468
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
469
- reasoning: false,
470
- input: ["text"],
471
- cost: {
472
- input: 0.75,
473
- output: 1.2,
474
- cacheRead: 0,
475
- cacheWrite: 0,
476
- },
477
- contextWindow: 131072,
478
- maxTokens: 64000,
479
- },
480
- "auto": {
481
- id: "auto",
482
- name: "Auto",
483
- api: "openai-completions",
484
- provider: "openrouter",
485
- baseUrl: "https://openrouter.ai/api/v1",
486
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
487
- reasoning: true,
488
- input: ["text", "image"],
489
- cost: {
490
- input: 0,
491
- output: 0,
492
- cacheRead: 0,
493
- cacheWrite: 0,
494
- },
495
- contextWindow: 2000000,
496
- maxTokens: 30000,
497
- },
498
- "bytedance-seed/seed-1.6": {
499
- id: "bytedance-seed/seed-1.6",
500
- name: "ByteDance Seed: Seed 1.6",
501
- api: "openai-completions",
502
- provider: "openrouter",
503
- baseUrl: "https://openrouter.ai/api/v1",
504
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
505
- reasoning: true,
506
- input: ["text", "image"],
507
- cost: {
508
- input: 0.25,
509
- output: 2,
510
- cacheRead: 0,
511
- cacheWrite: 0,
512
- },
513
- contextWindow: 262144,
514
- maxTokens: 32768,
515
- },
516
- "bytedance-seed/seed-1.6-flash": {
517
- id: "bytedance-seed/seed-1.6-flash",
518
- name: "ByteDance Seed: Seed 1.6 Flash",
519
- api: "openai-completions",
520
- provider: "openrouter",
521
- baseUrl: "https://openrouter.ai/api/v1",
522
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
523
- reasoning: true,
524
- input: ["text", "image"],
525
- cost: {
526
- input: 0.075,
527
- output: 0.3,
528
- cacheRead: 0,
529
- cacheWrite: 0,
530
- },
531
- contextWindow: 262144,
532
- maxTokens: 32768,
533
- },
534
- "bytedance-seed/seed-2.0-lite": {
535
- id: "bytedance-seed/seed-2.0-lite",
536
- name: "ByteDance Seed: Seed-2.0-Lite",
537
- api: "openai-completions",
538
- provider: "openrouter",
539
- baseUrl: "https://openrouter.ai/api/v1",
540
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
541
- reasoning: true,
542
- input: ["text", "image"],
543
- cost: {
544
- input: 0.25,
545
- output: 2,
546
- cacheRead: 0,
547
- cacheWrite: 0,
548
- },
549
- contextWindow: 262144,
550
- maxTokens: 131072,
551
- },
552
- "bytedance-seed/seed-2.0-mini": {
553
- id: "bytedance-seed/seed-2.0-mini",
554
- name: "ByteDance Seed: Seed-2.0-Mini",
555
- api: "openai-completions",
556
- provider: "openrouter",
557
- baseUrl: "https://openrouter.ai/api/v1",
558
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
559
- reasoning: true,
560
- input: ["text", "image"],
561
- cost: {
562
- input: 0.1,
563
- output: 0.4,
564
- cacheRead: 0,
565
- cacheWrite: 0,
566
- },
567
- contextWindow: 262144,
568
- maxTokens: 131072,
569
- },
570
- "cohere/command-r-08-2024": {
571
- id: "cohere/command-r-08-2024",
572
- name: "Cohere: Command R (08-2024)",
573
- api: "openai-completions",
574
- provider: "openrouter",
575
- baseUrl: "https://openrouter.ai/api/v1",
576
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
577
- reasoning: false,
578
- input: ["text"],
579
- cost: {
580
- input: 0.15,
581
- output: 0.6,
582
- cacheRead: 0,
583
- cacheWrite: 0,
584
- },
585
- contextWindow: 128000,
586
- maxTokens: 4000,
587
- },
588
- "cohere/command-r-plus-08-2024": {
589
- id: "cohere/command-r-plus-08-2024",
590
- name: "Cohere: Command R+ (08-2024)",
591
- api: "openai-completions",
592
- provider: "openrouter",
593
- baseUrl: "https://openrouter.ai/api/v1",
594
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
595
- reasoning: false,
596
- input: ["text"],
597
- cost: {
598
- input: 2.5,
599
- output: 10,
600
- cacheRead: 0,
601
- cacheWrite: 0,
602
- },
603
- contextWindow: 128000,
604
- maxTokens: 4000,
605
- },
606
- "cohere/north-mini-code:free": {
607
- id: "cohere/north-mini-code:free",
608
- name: "Cohere: North Mini Code (free)",
609
- api: "openai-completions",
610
- provider: "openrouter",
611
- baseUrl: "https://openrouter.ai/api/v1",
612
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
613
- reasoning: true,
614
- input: ["text"],
615
- cost: {
616
- input: 0,
617
- output: 0,
618
- cacheRead: 0,
619
- cacheWrite: 0,
620
- },
621
- contextWindow: 256000,
622
- maxTokens: 64000,
623
- },
624
- "deepseek/deepseek-chat": {
625
- id: "deepseek/deepseek-chat",
626
- name: "DeepSeek: DeepSeek V3",
627
- api: "openai-completions",
628
- provider: "openrouter",
629
- baseUrl: "https://openrouter.ai/api/v1",
630
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
631
- reasoning: false,
632
- input: ["text"],
633
- cost: {
634
- input: 0.2002,
635
- output: 0.8001,
636
- cacheRead: 0,
637
- cacheWrite: 0,
638
- },
639
- contextWindow: 128000,
640
- maxTokens: 16000,
641
- },
642
- "deepseek/deepseek-chat-v3-0324": {
643
- id: "deepseek/deepseek-chat-v3-0324",
644
- name: "DeepSeek: DeepSeek V3 0324",
645
- api: "openai-completions",
646
- provider: "openrouter",
647
- baseUrl: "https://openrouter.ai/api/v1",
648
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
649
- reasoning: false,
650
- input: ["text"],
651
- cost: {
652
- input: 0.27,
653
- output: 1.12,
654
- cacheRead: 0.135,
655
- cacheWrite: 0,
656
- },
657
- contextWindow: 163840,
658
- maxTokens: 65536,
659
- },
660
- "deepseek/deepseek-chat-v3.1": {
661
- id: "deepseek/deepseek-chat-v3.1",
662
- name: "DeepSeek: DeepSeek V3.1",
663
- api: "openai-completions",
664
- provider: "openrouter",
665
- baseUrl: "https://openrouter.ai/api/v1",
666
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
667
- reasoning: true,
668
- input: ["text"],
669
- cost: {
670
- input: 0.25,
671
- output: 0.95,
672
- cacheRead: 0.13,
673
- cacheWrite: 0,
674
- },
675
- contextWindow: 163840,
676
- maxTokens: 32768,
677
- },
678
- "deepseek/deepseek-r1": {
679
- id: "deepseek/deepseek-r1",
680
- name: "DeepSeek: R1",
681
- api: "openai-completions",
682
- provider: "openrouter",
683
- baseUrl: "https://openrouter.ai/api/v1",
684
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
685
- reasoning: true,
686
- input: ["text"],
687
- cost: {
688
- input: 0.7,
689
- output: 2.5,
690
- cacheRead: 0,
691
- cacheWrite: 0,
692
- },
693
- contextWindow: 64000,
694
- maxTokens: 16000,
695
- },
696
- "deepseek/deepseek-r1-0528": {
697
- id: "deepseek/deepseek-r1-0528",
698
- name: "DeepSeek: R1 0528",
699
- api: "openai-completions",
700
- provider: "openrouter",
701
- baseUrl: "https://openrouter.ai/api/v1",
702
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
703
- reasoning: true,
704
- input: ["text"],
705
- cost: {
706
- input: 0.5,
707
- output: 2.15,
708
- cacheRead: 0.35,
709
- cacheWrite: 0,
710
- },
711
- contextWindow: 163840,
712
- maxTokens: 32768,
713
- },
714
- "deepseek/deepseek-v3.1-terminus": {
715
- id: "deepseek/deepseek-v3.1-terminus",
716
- name: "DeepSeek: DeepSeek V3.1 Terminus",
717
- api: "openai-completions",
718
- provider: "openrouter",
719
- baseUrl: "https://openrouter.ai/api/v1",
720
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
721
- reasoning: true,
722
- input: ["text"],
723
- cost: {
724
- input: 0.27,
725
- output: 1,
726
- cacheRead: 0.135,
727
- cacheWrite: 0,
728
- },
729
- contextWindow: 131072,
730
- maxTokens: 32768,
731
- },
732
- "deepseek/deepseek-v3.2": {
733
- id: "deepseek/deepseek-v3.2",
734
- name: "DeepSeek: DeepSeek V3.2",
735
- api: "openai-completions",
736
- provider: "openrouter",
737
- baseUrl: "https://openrouter.ai/api/v1",
738
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
739
- reasoning: true,
740
- input: ["text"],
741
- cost: {
742
- input: 0.269,
743
- output: 0.4,
744
- cacheRead: 0.1345,
745
- cacheWrite: 0,
746
- },
747
- contextWindow: 163840,
748
- maxTokens: 65536,
749
- },
750
- "deepseek/deepseek-v3.2-exp": {
751
- id: "deepseek/deepseek-v3.2-exp",
752
- name: "DeepSeek: DeepSeek V3.2 Exp",
753
- api: "openai-completions",
754
- provider: "openrouter",
755
- baseUrl: "https://openrouter.ai/api/v1",
756
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
757
- reasoning: true,
758
- input: ["text"],
759
- cost: {
760
- input: 0.27,
761
- output: 0.41,
762
- cacheRead: 0,
763
- cacheWrite: 0,
764
- },
765
- contextWindow: 163840,
766
- maxTokens: 65536,
767
- },
768
- "deepseek/deepseek-v4-flash": {
769
- id: "deepseek/deepseek-v4-flash",
770
- name: "DeepSeek: DeepSeek V4 Flash",
771
- api: "openai-completions",
772
- provider: "openrouter",
773
- baseUrl: "https://openrouter.ai/api/v1",
774
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter", "requiresReasoningContentOnAssistantMessages": true },
775
- reasoning: true,
776
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "max": null, "xhigh": "xhigh" },
777
- input: ["text"],
778
- cost: {
779
- input: 0.098,
780
- output: 0.196,
781
- cacheRead: 0.02,
782
- cacheWrite: 0,
783
- },
784
- contextWindow: 1048575,
785
- maxTokens: 4096,
786
- },
787
- "deepseek/deepseek-v4-pro": {
788
- id: "deepseek/deepseek-v4-pro",
789
- name: "DeepSeek: DeepSeek V4 Pro",
790
- api: "openai-completions",
791
- provider: "openrouter",
792
- baseUrl: "https://openrouter.ai/api/v1",
793
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter", "requiresReasoningContentOnAssistantMessages": true },
794
- reasoning: true,
795
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "max": null, "xhigh": "xhigh" },
796
- input: ["text"],
797
- cost: {
798
- input: 0.435,
799
- output: 0.87,
800
- cacheRead: 0.003625,
801
- cacheWrite: 0,
802
- },
803
- contextWindow: 1048576,
804
- maxTokens: 384000,
805
- },
806
- "google/gemini-2.5-flash": {
807
- id: "google/gemini-2.5-flash",
808
- name: "Google: Gemini 2.5 Flash",
809
- api: "openai-completions",
810
- provider: "openrouter",
811
- baseUrl: "https://openrouter.ai/api/v1",
812
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
813
- reasoning: true,
814
- input: ["text", "image"],
815
- cost: {
816
- input: 0.3,
817
- output: 2.5,
818
- cacheRead: 0.03,
819
- cacheWrite: 0.083333,
820
- },
821
- contextWindow: 1048576,
822
- maxTokens: 65535,
823
- },
824
- "google/gemini-2.5-flash-lite": {
825
- id: "google/gemini-2.5-flash-lite",
826
- name: "Google: Gemini 2.5 Flash Lite",
827
- api: "openai-completions",
828
- provider: "openrouter",
829
- baseUrl: "https://openrouter.ai/api/v1",
830
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
831
- reasoning: true,
832
- input: ["text", "image"],
833
- cost: {
834
- input: 0.1,
835
- output: 0.4,
836
- cacheRead: 0.01,
837
- cacheWrite: 0.083333,
838
- },
839
- contextWindow: 1048576,
840
- maxTokens: 65535,
841
- },
842
- "google/gemini-2.5-pro": {
843
- id: "google/gemini-2.5-pro",
844
- name: "Google: Gemini 2.5 Pro",
845
- api: "openai-completions",
846
- provider: "openrouter",
847
- baseUrl: "https://openrouter.ai/api/v1",
848
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
849
- reasoning: true,
850
- input: ["text", "image"],
851
- cost: {
852
- input: 1.25,
853
- output: 10,
854
- cacheRead: 0.125,
855
- cacheWrite: 0.375,
856
- },
857
- contextWindow: 1048576,
858
- maxTokens: 65536,
859
- },
860
- "google/gemini-2.5-pro-preview": {
861
- id: "google/gemini-2.5-pro-preview",
862
- name: "Google: Gemini 2.5 Pro Preview 06-05",
863
- api: "openai-completions",
864
- provider: "openrouter",
865
- baseUrl: "https://openrouter.ai/api/v1",
866
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
867
- reasoning: true,
868
- input: ["text", "image"],
869
- cost: {
870
- input: 1.25,
871
- output: 10,
872
- cacheRead: 0.125,
873
- cacheWrite: 0.375,
874
- },
875
- contextWindow: 1048576,
876
- maxTokens: 65536,
877
- },
878
- "google/gemini-2.5-pro-preview-05-06": {
879
- id: "google/gemini-2.5-pro-preview-05-06",
880
- name: "Google: Gemini 2.5 Pro Preview 05-06",
881
- api: "openai-completions",
882
- provider: "openrouter",
883
- baseUrl: "https://openrouter.ai/api/v1",
884
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
885
- reasoning: true,
886
- input: ["text", "image"],
887
- cost: {
888
- input: 1.25,
889
- output: 10,
890
- cacheRead: 0.125,
891
- cacheWrite: 0.375,
892
- },
893
- contextWindow: 1048576,
894
- maxTokens: 65535,
895
- },
896
- "google/gemini-3-flash-preview": {
897
- id: "google/gemini-3-flash-preview",
898
- name: "Google: Gemini 3 Flash Preview",
899
- api: "openai-completions",
900
- provider: "openrouter",
901
- baseUrl: "https://openrouter.ai/api/v1",
902
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
903
- reasoning: true,
904
- input: ["text", "image"],
905
- cost: {
906
- input: 0.5,
907
- output: 3,
908
- cacheRead: 0.05,
909
- cacheWrite: 0.083333,
910
- },
911
- contextWindow: 1048576,
912
- maxTokens: 65535,
913
- },
914
- "google/gemini-3-pro-image": {
915
- id: "google/gemini-3-pro-image",
916
- name: "Google: Nano Banana Pro (Gemini 3 Pro Image)",
917
- api: "openai-completions",
918
- provider: "openrouter",
919
- baseUrl: "https://openrouter.ai/api/v1",
920
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
921
- reasoning: true,
922
- input: ["text", "image"],
923
- cost: {
924
- input: 2,
925
- output: 12,
926
- cacheRead: 0.2,
927
- cacheWrite: 0.375,
928
- },
929
- contextWindow: 65536,
930
- maxTokens: 32768,
931
- },
932
- "google/gemini-3.1-flash-lite": {
933
- id: "google/gemini-3.1-flash-lite",
934
- name: "Google: Gemini 3.1 Flash Lite",
935
- api: "openai-completions",
936
- provider: "openrouter",
937
- baseUrl: "https://openrouter.ai/api/v1",
938
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
939
- reasoning: true,
940
- input: ["text", "image"],
941
- cost: {
942
- input: 0.25,
943
- output: 1.5,
944
- cacheRead: 0.025,
945
- cacheWrite: 0.083333,
946
- },
947
- contextWindow: 1048576,
948
- maxTokens: 65536,
949
- },
950
- "google/gemini-3.1-flash-lite-preview": {
951
- id: "google/gemini-3.1-flash-lite-preview",
952
- name: "Google: Gemini 3.1 Flash Lite Preview",
953
- api: "openai-completions",
954
- provider: "openrouter",
955
- baseUrl: "https://openrouter.ai/api/v1",
956
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
957
- reasoning: true,
958
- input: ["text", "image"],
959
- cost: {
960
- input: 0.25,
961
- output: 1.5,
962
- cacheRead: 0.025,
963
- cacheWrite: 0.083333,
964
- },
965
- contextWindow: 1048576,
966
- maxTokens: 65536,
967
- },
968
- "google/gemini-3.1-pro-preview": {
969
- id: "google/gemini-3.1-pro-preview",
970
- name: "Google: Gemini 3.1 Pro Preview",
971
- api: "openai-completions",
972
- provider: "openrouter",
973
- baseUrl: "https://openrouter.ai/api/v1",
974
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
975
- reasoning: true,
976
- input: ["text", "image"],
977
- cost: {
978
- input: 2,
979
- output: 12,
980
- cacheRead: 0.2,
981
- cacheWrite: 0.375,
982
- },
983
- contextWindow: 1048576,
984
- maxTokens: 65536,
985
- },
986
- "google/gemini-3.1-pro-preview-customtools": {
987
- id: "google/gemini-3.1-pro-preview-customtools",
988
- name: "Google: Gemini 3.1 Pro Preview Custom Tools",
989
- api: "openai-completions",
990
- provider: "openrouter",
991
- baseUrl: "https://openrouter.ai/api/v1",
992
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
993
- reasoning: true,
994
- input: ["text", "image"],
995
- cost: {
996
- input: 2,
997
- output: 12,
998
- cacheRead: 0.2,
999
- cacheWrite: 0.375,
1000
- },
1001
- contextWindow: 1048576,
1002
- maxTokens: 65536,
1003
- },
1004
- "google/gemini-3.5-flash": {
1005
- id: "google/gemini-3.5-flash",
1006
- name: "Google: Gemini 3.5 Flash",
1007
- api: "openai-completions",
1008
- provider: "openrouter",
1009
- baseUrl: "https://openrouter.ai/api/v1",
1010
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1011
- reasoning: true,
1012
- input: ["text", "image"],
1013
- cost: {
1014
- input: 1.5,
1015
- output: 9,
1016
- cacheRead: 0.15,
1017
- cacheWrite: 0.083333,
1018
- },
1019
- contextWindow: 1048576,
1020
- maxTokens: 65536,
1021
- },
1022
- "google/gemma-3-12b-it": {
1023
- id: "google/gemma-3-12b-it",
1024
- name: "Google: Gemma 3 12B",
1025
- api: "openai-completions",
1026
- provider: "openrouter",
1027
- baseUrl: "https://openrouter.ai/api/v1",
1028
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1029
- reasoning: false,
1030
- input: ["text", "image"],
1031
- cost: {
1032
- input: 0.05,
1033
- output: 0.15,
1034
- cacheRead: 0,
1035
- cacheWrite: 0,
1036
- },
1037
- contextWindow: 131072,
1038
- maxTokens: 16384,
1039
- },
1040
- "google/gemma-3-27b-it": {
1041
- id: "google/gemma-3-27b-it",
1042
- name: "Google: Gemma 3 27B",
1043
- api: "openai-completions",
1044
- provider: "openrouter",
1045
- baseUrl: "https://openrouter.ai/api/v1",
1046
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1047
- reasoning: false,
1048
- input: ["text", "image"],
1049
- cost: {
1050
- input: 0.08,
1051
- output: 0.45,
1052
- cacheRead: 0.04,
1053
- cacheWrite: 0,
1054
- },
1055
- contextWindow: 131072,
1056
- maxTokens: 131072,
1057
- },
1058
- "google/gemma-4-26b-a4b-it": {
1059
- id: "google/gemma-4-26b-a4b-it",
1060
- name: "Google: Gemma 4 26B A4B ",
1061
- api: "openai-completions",
1062
- provider: "openrouter",
1063
- baseUrl: "https://openrouter.ai/api/v1",
1064
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1065
- reasoning: true,
1066
- input: ["text", "image"],
1067
- cost: {
1068
- input: 0.1,
1069
- output: 0.3,
1070
- cacheRead: 0,
1071
- cacheWrite: 0,
1072
- },
1073
- contextWindow: 256000,
1074
- maxTokens: 256000,
1075
- },
1076
- "google/gemma-4-26b-a4b-it:free": {
1077
- id: "google/gemma-4-26b-a4b-it:free",
1078
- name: "Google: Gemma 4 26B A4B (free)",
1079
- api: "openai-completions",
1080
- provider: "openrouter",
1081
- baseUrl: "https://openrouter.ai/api/v1",
1082
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1083
- reasoning: true,
1084
- input: ["text", "image"],
1085
- cost: {
1086
- input: 0,
1087
- output: 0,
1088
- cacheRead: 0,
1089
- cacheWrite: 0,
1090
- },
1091
- contextWindow: 131072,
1092
- maxTokens: 32768,
1093
- },
1094
- "google/gemma-4-31b-it": {
1095
- id: "google/gemma-4-31b-it",
1096
- name: "Google: Gemma 4 31B",
1097
- api: "openai-completions",
1098
- provider: "openrouter",
1099
- baseUrl: "https://openrouter.ai/api/v1",
1100
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1101
- reasoning: true,
1102
- input: ["text", "image"],
1103
- cost: {
1104
- input: 0.22,
1105
- output: 0.55,
1106
- cacheRead: 0.12,
1107
- cacheWrite: 0,
1108
- },
1109
- contextWindow: 262144,
1110
- maxTokens: 262144,
1111
- },
1112
- "google/gemma-4-31b-it:free": {
1113
- id: "google/gemma-4-31b-it:free",
1114
- name: "Google: Gemma 4 31B (free)",
1115
- api: "openai-completions",
1116
- provider: "openrouter",
1117
- baseUrl: "https://openrouter.ai/api/v1",
1118
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1119
- reasoning: true,
1120
- input: ["text", "image"],
1121
- cost: {
1122
- input: 0,
1123
- output: 0,
1124
- cacheRead: 0,
1125
- cacheWrite: 0,
1126
- },
1127
- contextWindow: 262144,
1128
- maxTokens: 32768,
1129
- },
1130
- "ibm-granite/granite-4.1-8b": {
1131
- id: "ibm-granite/granite-4.1-8b",
1132
- name: "IBM: Granite 4.1 8B",
1133
- api: "openai-completions",
1134
- provider: "openrouter",
1135
- baseUrl: "https://openrouter.ai/api/v1",
1136
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1137
- reasoning: false,
1138
- input: ["text"],
1139
- cost: {
1140
- input: 0.05,
1141
- output: 0.1,
1142
- cacheRead: 0.05,
1143
- cacheWrite: 0,
1144
- },
1145
- contextWindow: 131072,
1146
- maxTokens: 131072,
1147
- },
1148
- "inception/mercury-2": {
1149
- id: "inception/mercury-2",
1150
- name: "Inception: Mercury 2",
1151
- api: "openai-completions",
1152
- provider: "openrouter",
1153
- baseUrl: "https://openrouter.ai/api/v1",
1154
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1155
- reasoning: true,
1156
- thinkingLevelMap: { "off": null },
1157
- input: ["text"],
1158
- cost: {
1159
- input: 0.25,
1160
- output: 0.75,
1161
- cacheRead: 0.025,
1162
- cacheWrite: 0,
1163
- },
1164
- contextWindow: 128000,
1165
- maxTokens: 50000,
1166
- },
1167
- "inclusionai/ling-2.6-1t": {
1168
- id: "inclusionai/ling-2.6-1t",
1169
- name: "inclusionAI: Ling-2.6-1T",
1170
- api: "openai-completions",
1171
- provider: "openrouter",
1172
- baseUrl: "https://openrouter.ai/api/v1",
1173
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1174
- reasoning: false,
1175
- input: ["text"],
1176
- cost: {
1177
- input: 0.075,
1178
- output: 0.625,
1179
- cacheRead: 0.015,
1180
- cacheWrite: 0,
1181
- },
1182
- contextWindow: 262144,
1183
- maxTokens: 32768,
1184
- },
1185
- "inclusionai/ling-2.6-flash": {
1186
- id: "inclusionai/ling-2.6-flash",
1187
- name: "inclusionAI: Ling-2.6-flash",
1188
- api: "openai-completions",
1189
- provider: "openrouter",
1190
- baseUrl: "https://openrouter.ai/api/v1",
1191
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1192
- reasoning: false,
1193
- input: ["text"],
1194
- cost: {
1195
- input: 0.01,
1196
- output: 0.03,
1197
- cacheRead: 0.002,
1198
- cacheWrite: 0,
1199
- },
1200
- contextWindow: 262144,
1201
- maxTokens: 32768,
1202
- },
1203
- "inclusionai/ring-2.6-1t": {
1204
- id: "inclusionai/ring-2.6-1t",
1205
- name: "inclusionAI: Ring-2.6-1T",
1206
- api: "openai-completions",
1207
- provider: "openrouter",
1208
- baseUrl: "https://openrouter.ai/api/v1",
1209
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1210
- reasoning: true,
1211
- input: ["text"],
1212
- cost: {
1213
- input: 0.075,
1214
- output: 0.625,
1215
- cacheRead: 0.015,
1216
- cacheWrite: 0,
1217
- },
1218
- contextWindow: 262144,
1219
- maxTokens: 65536,
1220
- },
1221
- "kwaipilot/kat-coder-air-v2.5": {
1222
- id: "kwaipilot/kat-coder-air-v2.5",
1223
- name: "Kwaipilot: KAT-Coder-Air V2.5",
1224
- api: "openai-completions",
1225
- provider: "openrouter",
1226
- baseUrl: "https://openrouter.ai/api/v1",
1227
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1228
- reasoning: false,
1229
- input: ["text"],
1230
- cost: {
1231
- input: 0.15,
1232
- output: 0.6,
1233
- cacheRead: 0.03,
1234
- cacheWrite: 0,
1235
- },
1236
- contextWindow: 256000,
1237
- maxTokens: 80000,
1238
- },
1239
- "kwaipilot/kat-coder-pro-v2": {
1240
- id: "kwaipilot/kat-coder-pro-v2",
1241
- name: "Kwaipilot: KAT-Coder-Pro V2",
1242
- api: "openai-completions",
1243
- provider: "openrouter",
1244
- baseUrl: "https://openrouter.ai/api/v1",
1245
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1246
- reasoning: false,
1247
- input: ["text"],
1248
- cost: {
1249
- input: 0.3,
1250
- output: 1.2,
1251
- cacheRead: 0.06,
1252
- cacheWrite: 0,
1253
- },
1254
- contextWindow: 256000,
1255
- maxTokens: 80000,
1256
- },
1257
- "kwaipilot/kat-coder-pro-v2.5": {
1258
- id: "kwaipilot/kat-coder-pro-v2.5",
1259
- name: "Kwaipilot: KAT-Coder-Pro V2.5",
1260
- api: "openai-completions",
1261
- provider: "openrouter",
1262
- baseUrl: "https://openrouter.ai/api/v1",
1263
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1264
- reasoning: false,
1265
- input: ["text"],
1266
- cost: {
1267
- input: 0.74,
1268
- output: 2.96,
1269
- cacheRead: 0.15,
1270
- cacheWrite: 0,
1271
- },
1272
- contextWindow: 256000,
1273
- maxTokens: 80000,
1274
- },
1275
- "meta-llama/llama-3.1-70b-instruct": {
1276
- id: "meta-llama/llama-3.1-70b-instruct",
1277
- name: "Meta: Llama 3.1 70B Instruct",
1278
- api: "openai-completions",
1279
- provider: "openrouter",
1280
- baseUrl: "https://openrouter.ai/api/v1",
1281
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1282
- reasoning: false,
1283
- input: ["text"],
1284
- cost: {
1285
- input: 0.4,
1286
- output: 0.4,
1287
- cacheRead: 0,
1288
- cacheWrite: 0,
1289
- },
1290
- contextWindow: 131072,
1291
- maxTokens: 16384,
1292
- },
1293
- "meta-llama/llama-3.1-8b-instruct": {
1294
- id: "meta-llama/llama-3.1-8b-instruct",
1295
- name: "Meta: Llama 3.1 8B Instruct",
1296
- api: "openai-completions",
1297
- provider: "openrouter",
1298
- baseUrl: "https://openrouter.ai/api/v1",
1299
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1300
- reasoning: false,
1301
- input: ["text"],
1302
- cost: {
1303
- input: 0.05,
1304
- output: 0.08,
1305
- cacheRead: 0.025,
1306
- cacheWrite: 0,
1307
- },
1308
- contextWindow: 131072,
1309
- maxTokens: 131072,
1310
- },
1311
- "meta-llama/llama-3.3-70b-instruct": {
1312
- id: "meta-llama/llama-3.3-70b-instruct",
1313
- name: "Meta: Llama 3.3 70B Instruct",
1314
- api: "openai-completions",
1315
- provider: "openrouter",
1316
- baseUrl: "https://openrouter.ai/api/v1",
1317
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1318
- reasoning: false,
1319
- input: ["text"],
1320
- cost: {
1321
- input: 0.13,
1322
- output: 0.4,
1323
- cacheRead: 0,
1324
- cacheWrite: 0,
1325
- },
1326
- contextWindow: 131072,
1327
- maxTokens: 128000,
1328
- },
1329
- "meta-llama/llama-3.3-70b-instruct:free": {
1330
- id: "meta-llama/llama-3.3-70b-instruct:free",
1331
- name: "Meta: Llama 3.3 70B Instruct (free)",
1332
- api: "openai-completions",
1333
- provider: "openrouter",
1334
- baseUrl: "https://openrouter.ai/api/v1",
1335
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1336
- reasoning: false,
1337
- input: ["text"],
1338
- cost: {
1339
- input: 0,
1340
- output: 0,
1341
- cacheRead: 0,
1342
- cacheWrite: 0,
1343
- },
1344
- contextWindow: 65536,
1345
- maxTokens: 4096,
1346
- },
1347
- "meta-llama/llama-4-maverick": {
1348
- id: "meta-llama/llama-4-maverick",
1349
- name: "Meta: Llama 4 Maverick",
1350
- api: "openai-completions",
1351
- provider: "openrouter",
1352
- baseUrl: "https://openrouter.ai/api/v1",
1353
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1354
- reasoning: false,
1355
- input: ["text", "image"],
1356
- cost: {
1357
- input: 0.2,
1358
- output: 0.8,
1359
- cacheRead: 0,
1360
- cacheWrite: 0,
1361
- },
1362
- contextWindow: 1048576,
1363
- maxTokens: 16384,
1364
- },
1365
- "meta-llama/llama-4-scout": {
1366
- id: "meta-llama/llama-4-scout",
1367
- name: "Meta: Llama 4 Scout",
1368
- api: "openai-completions",
1369
- provider: "openrouter",
1370
- baseUrl: "https://openrouter.ai/api/v1",
1371
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1372
- reasoning: false,
1373
- input: ["text", "image"],
1374
- cost: {
1375
- input: 0.1,
1376
- output: 0.3,
1377
- cacheRead: 0,
1378
- cacheWrite: 0,
1379
- },
1380
- contextWindow: 327680,
1381
- maxTokens: 16384,
1382
- },
1383
- "meta/muse-spark-1.1": {
1384
- id: "meta/muse-spark-1.1",
1385
- name: "Meta: Muse Spark 1.1",
1386
- api: "openai-completions",
1387
- provider: "openrouter",
1388
- baseUrl: "https://openrouter.ai/api/v1",
1389
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1390
- reasoning: true,
1391
- input: ["text", "image"],
1392
- cost: {
1393
- input: 1.25,
1394
- output: 4.25,
1395
- cacheRead: 0.15,
1396
- cacheWrite: 0,
1397
- },
1398
- contextWindow: 1048576,
1399
- maxTokens: 4096,
1400
- },
1401
- "minimax/minimax-m1": {
1402
- id: "minimax/minimax-m1",
1403
- name: "MiniMax: MiniMax M1",
1404
- api: "openai-completions",
1405
- provider: "openrouter",
1406
- baseUrl: "https://openrouter.ai/api/v1",
1407
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1408
- reasoning: true,
1409
- input: ["text"],
1410
- cost: {
1411
- input: 0.55,
1412
- output: 2.2,
1413
- cacheRead: 0,
1414
- cacheWrite: 0,
1415
- },
1416
- contextWindow: 1000000,
1417
- maxTokens: 40000,
1418
- },
1419
- "minimax/minimax-m2": {
1420
- id: "minimax/minimax-m2",
1421
- name: "MiniMax: MiniMax M2",
1422
- api: "openai-completions",
1423
- provider: "openrouter",
1424
- baseUrl: "https://openrouter.ai/api/v1",
1425
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1426
- reasoning: true,
1427
- input: ["text"],
1428
- cost: {
1429
- input: 0.255,
1430
- output: 1.02,
1431
- cacheRead: 0,
1432
- cacheWrite: 0,
1433
- },
1434
- contextWindow: 204800,
1435
- maxTokens: 131072,
1436
- },
1437
- "minimax/minimax-m2.1": {
1438
- id: "minimax/minimax-m2.1",
1439
- name: "MiniMax: MiniMax M2.1",
1440
- api: "openai-completions",
1441
- provider: "openrouter",
1442
- baseUrl: "https://openrouter.ai/api/v1",
1443
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1444
- reasoning: true,
1445
- input: ["text"],
1446
- cost: {
1447
- input: 0.3,
1448
- output: 1.2,
1449
- cacheRead: 0.03,
1450
- cacheWrite: 0,
1451
- },
1452
- contextWindow: 204800,
1453
- maxTokens: 131072,
1454
- },
1455
- "minimax/minimax-m2.5": {
1456
- id: "minimax/minimax-m2.5",
1457
- name: "MiniMax: MiniMax M2.5",
1458
- api: "openai-completions",
1459
- provider: "openrouter",
1460
- baseUrl: "https://openrouter.ai/api/v1",
1461
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1462
- reasoning: true,
1463
- input: ["text"],
1464
- cost: {
1465
- input: 0.15,
1466
- output: 0.9,
1467
- cacheRead: 0.05,
1468
- cacheWrite: 0,
1469
- },
1470
- contextWindow: 196608,
1471
- maxTokens: 196608,
1472
- },
1473
- "minimax/minimax-m2.7": {
1474
- id: "minimax/minimax-m2.7",
1475
- name: "MiniMax: MiniMax M2.7",
1476
- api: "openai-completions",
1477
- provider: "openrouter",
1478
- baseUrl: "https://openrouter.ai/api/v1",
1479
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1480
- reasoning: true,
1481
- input: ["text"],
1482
- cost: {
1483
- input: 0.3,
1484
- output: 1.2,
1485
- cacheRead: 0.06,
1486
- cacheWrite: 0,
1487
- },
1488
- contextWindow: 204800,
1489
- maxTokens: 131072,
1490
- },
1491
- "minimax/minimax-m3": {
1492
- id: "minimax/minimax-m3",
1493
- name: "MiniMax: MiniMax M3",
1494
- api: "openai-completions",
1495
- provider: "openrouter",
1496
- baseUrl: "https://openrouter.ai/api/v1",
1497
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1498
- reasoning: true,
1499
- input: ["text", "image"],
1500
- cost: {
1501
- input: 0.3,
1502
- output: 1.2,
1503
- cacheRead: 0.06,
1504
- cacheWrite: 0,
1505
- },
1506
- contextWindow: 524288,
1507
- maxTokens: 512000,
1508
- },
1509
- "mistralai/codestral-2508": {
1510
- id: "mistralai/codestral-2508",
1511
- name: "Mistral: Codestral 2508",
1512
- api: "openai-completions",
1513
- provider: "openrouter",
1514
- baseUrl: "https://openrouter.ai/api/v1",
1515
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1516
- reasoning: false,
1517
- input: ["text"],
1518
- cost: {
1519
- input: 0.3,
1520
- output: 0.9,
1521
- cacheRead: 0.03,
1522
- cacheWrite: 0,
1523
- },
1524
- contextWindow: 256000,
1525
- maxTokens: 4096,
1526
- },
1527
- "mistralai/devstral-2512": {
1528
- id: "mistralai/devstral-2512",
1529
- name: "Mistral: Devstral 2 2512",
1530
- api: "openai-completions",
1531
- provider: "openrouter",
1532
- baseUrl: "https://openrouter.ai/api/v1",
1533
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1534
- reasoning: false,
1535
- input: ["text"],
1536
- cost: {
1537
- input: 0.4,
1538
- output: 2,
1539
- cacheRead: 0.04,
1540
- cacheWrite: 0,
1541
- },
1542
- contextWindow: 262144,
1543
- maxTokens: 4096,
1544
- },
1545
- "mistralai/ministral-14b-2512": {
1546
- id: "mistralai/ministral-14b-2512",
1547
- name: "Mistral: Ministral 3 14B 2512",
1548
- api: "openai-completions",
1549
- provider: "openrouter",
1550
- baseUrl: "https://openrouter.ai/api/v1",
1551
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1552
- reasoning: false,
1553
- input: ["text", "image"],
1554
- cost: {
1555
- input: 0.2,
1556
- output: 0.2,
1557
- cacheRead: 0.02,
1558
- cacheWrite: 0,
1559
- },
1560
- contextWindow: 262144,
1561
- maxTokens: 4096,
1562
- },
1563
- "mistralai/ministral-3b-2512": {
1564
- id: "mistralai/ministral-3b-2512",
1565
- name: "Mistral: Ministral 3 3B 2512",
1566
- api: "openai-completions",
1567
- provider: "openrouter",
1568
- baseUrl: "https://openrouter.ai/api/v1",
1569
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1570
- reasoning: false,
1571
- input: ["text", "image"],
1572
- cost: {
1573
- input: 0.1,
1574
- output: 0.1,
1575
- cacheRead: 0.01,
1576
- cacheWrite: 0,
1577
- },
1578
- contextWindow: 131072,
1579
- maxTokens: 4096,
1580
- },
1581
- "mistralai/ministral-8b-2512": {
1582
- id: "mistralai/ministral-8b-2512",
1583
- name: "Mistral: Ministral 3 8B 2512",
1584
- api: "openai-completions",
1585
- provider: "openrouter",
1586
- baseUrl: "https://openrouter.ai/api/v1",
1587
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1588
- reasoning: false,
1589
- input: ["text", "image"],
1590
- cost: {
1591
- input: 0.15,
1592
- output: 0.15,
1593
- cacheRead: 0.015,
1594
- cacheWrite: 0,
1595
- },
1596
- contextWindow: 262144,
1597
- maxTokens: 4096,
1598
- },
1599
- "mistralai/mistral-large": {
1600
- id: "mistralai/mistral-large",
1601
- name: "Mistral Large",
1602
- api: "openai-completions",
1603
- provider: "openrouter",
1604
- baseUrl: "https://openrouter.ai/api/v1",
1605
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1606
- reasoning: false,
1607
- input: ["text"],
1608
- cost: {
1609
- input: 2,
1610
- output: 6,
1611
- cacheRead: 0.2,
1612
- cacheWrite: 0,
1613
- },
1614
- contextWindow: 128000,
1615
- maxTokens: 4096,
1616
- },
1617
- "mistralai/mistral-large-2407": {
1618
- id: "mistralai/mistral-large-2407",
1619
- name: "Mistral Large 2407",
1620
- api: "openai-completions",
1621
- provider: "openrouter",
1622
- baseUrl: "https://openrouter.ai/api/v1",
1623
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1624
- reasoning: false,
1625
- input: ["text"],
1626
- cost: {
1627
- input: 2,
1628
- output: 6,
1629
- cacheRead: 0.2,
1630
- cacheWrite: 0,
1631
- },
1632
- contextWindow: 131072,
1633
- maxTokens: 4096,
1634
- },
1635
- "mistralai/mistral-large-2512": {
1636
- id: "mistralai/mistral-large-2512",
1637
- name: "Mistral: Mistral Large 3 2512",
1638
- api: "openai-completions",
1639
- provider: "openrouter",
1640
- baseUrl: "https://openrouter.ai/api/v1",
1641
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1642
- reasoning: false,
1643
- input: ["text", "image"],
1644
- cost: {
1645
- input: 0.5,
1646
- output: 1.5,
1647
- cacheRead: 0.05,
1648
- cacheWrite: 0,
1649
- },
1650
- contextWindow: 262144,
1651
- maxTokens: 4096,
1652
- },
1653
- "mistralai/mistral-medium-3": {
1654
- id: "mistralai/mistral-medium-3",
1655
- name: "Mistral: Mistral Medium 3",
1656
- api: "openai-completions",
1657
- provider: "openrouter",
1658
- baseUrl: "https://openrouter.ai/api/v1",
1659
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1660
- reasoning: false,
1661
- input: ["text", "image"],
1662
- cost: {
1663
- input: 0.4,
1664
- output: 2,
1665
- cacheRead: 0.04,
1666
- cacheWrite: 0,
1667
- },
1668
- contextWindow: 131072,
1669
- maxTokens: 4096,
1670
- },
1671
- "mistralai/mistral-medium-3-5": {
1672
- id: "mistralai/mistral-medium-3-5",
1673
- name: "Mistral: Mistral Medium 3.5",
1674
- api: "openai-completions",
1675
- provider: "openrouter",
1676
- baseUrl: "https://openrouter.ai/api/v1",
1677
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1678
- reasoning: true,
1679
- input: ["text", "image"],
1680
- cost: {
1681
- input: 1.5,
1682
- output: 7.5,
1683
- cacheRead: 0,
1684
- cacheWrite: 0,
1685
- },
1686
- contextWindow: 262144,
1687
- maxTokens: 4096,
1688
- },
1689
- "mistralai/mistral-medium-3.1": {
1690
- id: "mistralai/mistral-medium-3.1",
1691
- name: "Mistral: Mistral Medium 3.1",
1692
- api: "openai-completions",
1693
- provider: "openrouter",
1694
- baseUrl: "https://openrouter.ai/api/v1",
1695
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1696
- reasoning: false,
1697
- input: ["text", "image"],
1698
- cost: {
1699
- input: 0.4,
1700
- output: 2,
1701
- cacheRead: 0.04,
1702
- cacheWrite: 0,
1703
- },
1704
- contextWindow: 131072,
1705
- maxTokens: 4096,
1706
- },
1707
- "mistralai/mistral-nemo": {
1708
- id: "mistralai/mistral-nemo",
1709
- name: "Mistral: Mistral Nemo",
1710
- api: "openai-completions",
1711
- provider: "openrouter",
1712
- baseUrl: "https://openrouter.ai/api/v1",
1713
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1714
- reasoning: false,
1715
- input: ["text"],
1716
- cost: {
1717
- input: 0.02,
1718
- output: 0.04,
1719
- cacheRead: 0,
1720
- cacheWrite: 0,
1721
- },
1722
- contextWindow: 131072,
1723
- maxTokens: 16384,
1724
- },
1725
- "mistralai/mistral-saba": {
1726
- id: "mistralai/mistral-saba",
1727
- name: "Mistral: Saba",
1728
- api: "openai-completions",
1729
- provider: "openrouter",
1730
- baseUrl: "https://openrouter.ai/api/v1",
1731
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1732
- reasoning: false,
1733
- input: ["text"],
1734
- cost: {
1735
- input: 0.2,
1736
- output: 0.6,
1737
- cacheRead: 0.02,
1738
- cacheWrite: 0,
1739
- },
1740
- contextWindow: 32768,
1741
- maxTokens: 4096,
1742
- },
1743
- "mistralai/mistral-small-2603": {
1744
- id: "mistralai/mistral-small-2603",
1745
- name: "Mistral: Mistral Small 4",
1746
- api: "openai-completions",
1747
- provider: "openrouter",
1748
- baseUrl: "https://openrouter.ai/api/v1",
1749
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1750
- reasoning: true,
1751
- input: ["text", "image"],
1752
- cost: {
1753
- input: 0.15,
1754
- output: 0.6,
1755
- cacheRead: 0.015,
1756
- cacheWrite: 0,
1757
- },
1758
- contextWindow: 262144,
1759
- maxTokens: 4096,
1760
- },
1761
- "mistralai/mistral-small-3.2-24b-instruct": {
1762
- id: "mistralai/mistral-small-3.2-24b-instruct",
1763
- name: "Mistral: Mistral Small 3.2 24B",
1764
- api: "openai-completions",
1765
- provider: "openrouter",
1766
- baseUrl: "https://openrouter.ai/api/v1",
1767
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1768
- reasoning: false,
1769
- input: ["text", "image"],
1770
- cost: {
1771
- input: 0.1,
1772
- output: 0.3,
1773
- cacheRead: 0.01,
1774
- cacheWrite: 0,
1775
- },
1776
- contextWindow: 131072,
1777
- maxTokens: 4096,
1778
- },
1779
- "mistralai/mixtral-8x22b-instruct": {
1780
- id: "mistralai/mixtral-8x22b-instruct",
1781
- name: "Mistral: Mixtral 8x22B Instruct",
1782
- api: "openai-completions",
1783
- provider: "openrouter",
1784
- baseUrl: "https://openrouter.ai/api/v1",
1785
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1786
- reasoning: false,
1787
- input: ["text"],
1788
- cost: {
1789
- input: 2,
1790
- output: 6,
1791
- cacheRead: 0.2,
1792
- cacheWrite: 0,
1793
- },
1794
- contextWindow: 65536,
1795
- maxTokens: 4096,
1796
- },
1797
- "mistralai/voxtral-small-24b-2507": {
1798
- id: "mistralai/voxtral-small-24b-2507",
1799
- name: "Mistral: Voxtral Small 24B 2507",
1800
- api: "openai-completions",
1801
- provider: "openrouter",
1802
- baseUrl: "https://openrouter.ai/api/v1",
1803
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1804
- reasoning: false,
1805
- input: ["text"],
1806
- cost: {
1807
- input: 0.1,
1808
- output: 0.3,
1809
- cacheRead: 0.01,
1810
- cacheWrite: 0,
1811
- },
1812
- contextWindow: 32000,
1813
- maxTokens: 4096,
1814
- },
1815
- "moonshotai/kimi-k2": {
1816
- id: "moonshotai/kimi-k2",
1817
- name: "MoonshotAI: Kimi K2 0711",
1818
- api: "openai-completions",
1819
- provider: "openrouter",
1820
- baseUrl: "https://openrouter.ai/api/v1",
1821
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1822
- reasoning: false,
1823
- input: ["text"],
1824
- cost: {
1825
- input: 0.57,
1826
- output: 2.3,
1827
- cacheRead: 0,
1828
- cacheWrite: 0,
1829
- },
1830
- contextWindow: 131072,
1831
- maxTokens: 100352,
1832
- },
1833
- "moonshotai/kimi-k2-0905": {
1834
- id: "moonshotai/kimi-k2-0905",
1835
- name: "MoonshotAI: Kimi K2 0905",
1836
- api: "openai-completions",
1837
- provider: "openrouter",
1838
- baseUrl: "https://openrouter.ai/api/v1",
1839
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1840
- reasoning: false,
1841
- input: ["text"],
1842
- cost: {
1843
- input: 0.6,
1844
- output: 2.5,
1845
- cacheRead: 0,
1846
- cacheWrite: 0,
1847
- },
1848
- contextWindow: 262144,
1849
- maxTokens: 100352,
1850
- },
1851
- "moonshotai/kimi-k2-thinking": {
1852
- id: "moonshotai/kimi-k2-thinking",
1853
- name: "MoonshotAI: Kimi K2 Thinking",
1854
- api: "openai-completions",
1855
- provider: "openrouter",
1856
- baseUrl: "https://openrouter.ai/api/v1",
1857
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1858
- reasoning: true,
1859
- input: ["text"],
1860
- cost: {
1861
- input: 0.6,
1862
- output: 2.5,
1863
- cacheRead: 0,
1864
- cacheWrite: 0,
1865
- },
1866
- contextWindow: 262144,
1867
- maxTokens: 262144,
1868
- },
1869
- "moonshotai/kimi-k2.5": {
1870
- id: "moonshotai/kimi-k2.5",
1871
- name: "MoonshotAI: Kimi K2.5",
1872
- api: "openai-completions",
1873
- provider: "openrouter",
1874
- baseUrl: "https://openrouter.ai/api/v1",
1875
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1876
- reasoning: true,
1877
- input: ["text", "image"],
1878
- cost: {
1879
- input: 0.41,
1880
- output: 2.06,
1881
- cacheRead: 0.07,
1882
- cacheWrite: 0,
1883
- },
1884
- contextWindow: 262144,
1885
- maxTokens: 4096,
1886
- },
1887
- "moonshotai/kimi-k2.6": {
1888
- id: "moonshotai/kimi-k2.6",
1889
- name: "MoonshotAI: Kimi K2.6",
1890
- api: "openai-completions",
1891
- provider: "openrouter",
1892
- baseUrl: "https://openrouter.ai/api/v1",
1893
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter", "requiresReasoningContentOnAssistantMessages": true },
1894
- reasoning: true,
1895
- input: ["text", "image"],
1896
- cost: {
1897
- input: 0.95,
1898
- output: 4,
1899
- cacheRead: 0.16,
1900
- cacheWrite: 0,
1901
- },
1902
- contextWindow: 262144,
1903
- maxTokens: 4096,
1904
- },
1905
- "moonshotai/kimi-k2.7-code": {
1906
- id: "moonshotai/kimi-k2.7-code",
1907
- name: "MoonshotAI: Kimi K2.7 Code",
1908
- api: "openai-completions",
1909
- provider: "openrouter",
1910
- baseUrl: "https://openrouter.ai/api/v1",
1911
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1912
- reasoning: true,
1913
- input: ["text", "image"],
1914
- cost: {
1915
- input: 0.75,
1916
- output: 3.5,
1917
- cacheRead: 0.16,
1918
- cacheWrite: 0,
1919
- },
1920
- contextWindow: 262144,
1921
- maxTokens: 262144,
1922
- },
1923
- "moonshotai/kimi-k3": {
1924
- id: "moonshotai/kimi-k3",
1925
- name: "MoonshotAI: Kimi K3",
1926
- api: "openai-completions",
1927
- provider: "openrouter",
1928
- baseUrl: "https://openrouter.ai/api/v1",
1929
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1930
- reasoning: true,
1931
- input: ["text", "image"],
1932
- cost: {
1933
- input: 3,
1934
- output: 15,
1935
- cacheRead: 0.3,
1936
- cacheWrite: 0,
1937
- },
1938
- contextWindow: 1048576,
1939
- maxTokens: 131072,
1940
- },
1941
- "nex-agi/nex-n2-mini": {
1942
- id: "nex-agi/nex-n2-mini",
1943
- name: "Nex AGI: Nex-N2-Mini",
1944
- api: "openai-completions",
1945
- provider: "openrouter",
1946
- baseUrl: "https://openrouter.ai/api/v1",
1947
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1948
- reasoning: true,
1949
- input: ["text", "image"],
1950
- cost: {
1951
- input: 0.025,
1952
- output: 0.1,
1953
- cacheRead: 0.0025,
1954
- cacheWrite: 0,
1955
- },
1956
- contextWindow: 262144,
1957
- maxTokens: 262144,
1958
- },
1959
- "nex-agi/nex-n2-pro": {
1960
- id: "nex-agi/nex-n2-pro",
1961
- name: "Nex AGI: Nex-N2-Pro",
1962
- api: "openai-completions",
1963
- provider: "openrouter",
1964
- baseUrl: "https://openrouter.ai/api/v1",
1965
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1966
- reasoning: true,
1967
- input: ["text", "image"],
1968
- cost: {
1969
- input: 0.25,
1970
- output: 1,
1971
- cacheRead: 0.025,
1972
- cacheWrite: 0,
1973
- },
1974
- contextWindow: 262144,
1975
- maxTokens: 262144,
1976
- },
1977
- "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
1978
- id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
1979
- name: "NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",
1980
- api: "openai-completions",
1981
- provider: "openrouter",
1982
- baseUrl: "https://openrouter.ai/api/v1",
1983
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1984
- reasoning: true,
1985
- input: ["text"],
1986
- cost: {
1987
- input: 0.4,
1988
- output: 0.4,
1989
- cacheRead: 0,
1990
- cacheWrite: 0,
1991
- },
1992
- contextWindow: 131072,
1993
- maxTokens: 16384,
1994
- },
1995
- "nvidia/nemotron-3-nano-30b-a3b": {
1996
- id: "nvidia/nemotron-3-nano-30b-a3b",
1997
- name: "NVIDIA: Nemotron 3 Nano 30B A3B",
1998
- api: "openai-completions",
1999
- provider: "openrouter",
2000
- baseUrl: "https://openrouter.ai/api/v1",
2001
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2002
- reasoning: true,
2003
- input: ["text"],
2004
- cost: {
2005
- input: 0.05,
2006
- output: 0.2,
2007
- cacheRead: 0,
2008
- cacheWrite: 0,
2009
- },
2010
- contextWindow: 262144,
2011
- maxTokens: 228000,
2012
- },
2013
- "nvidia/nemotron-3-nano-30b-a3b:free": {
2014
- id: "nvidia/nemotron-3-nano-30b-a3b:free",
2015
- name: "NVIDIA: Nemotron 3 Nano 30B A3B (free)",
2016
- api: "openai-completions",
2017
- provider: "openrouter",
2018
- baseUrl: "https://openrouter.ai/api/v1",
2019
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2020
- reasoning: true,
2021
- input: ["text"],
2022
- cost: {
2023
- input: 0,
2024
- output: 0,
2025
- cacheRead: 0,
2026
- cacheWrite: 0,
2027
- },
2028
- contextWindow: 256000,
2029
- maxTokens: 4096,
2030
- },
2031
- "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free": {
2032
- id: "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",
2033
- name: "NVIDIA: Nemotron 3 Nano Omni (free)",
2034
- api: "openai-completions",
2035
- provider: "openrouter",
2036
- baseUrl: "https://openrouter.ai/api/v1",
2037
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2038
- reasoning: true,
2039
- input: ["text", "image"],
2040
- cost: {
2041
- input: 0,
2042
- output: 0,
2043
- cacheRead: 0,
2044
- cacheWrite: 0,
2045
- },
2046
- contextWindow: 256000,
2047
- maxTokens: 65536,
2048
- },
2049
- "nvidia/nemotron-3-super-120b-a12b": {
2050
- id: "nvidia/nemotron-3-super-120b-a12b",
2051
- name: "NVIDIA: Nemotron 3 Super",
2052
- api: "openai-completions",
2053
- provider: "openrouter",
2054
- baseUrl: "https://openrouter.ai/api/v1",
2055
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2056
- reasoning: true,
2057
- input: ["text"],
2058
- cost: {
2059
- input: 0.21,
2060
- output: 0.455,
2061
- cacheRead: 0.06,
2062
- cacheWrite: 0,
2063
- },
2064
- contextWindow: 1000000,
2065
- maxTokens: 4096,
2066
- },
2067
- "nvidia/nemotron-3-super-120b-a12b:free": {
2068
- id: "nvidia/nemotron-3-super-120b-a12b:free",
2069
- name: "NVIDIA: Nemotron 3 Super (free)",
2070
- api: "openai-completions",
2071
- provider: "openrouter",
2072
- baseUrl: "https://openrouter.ai/api/v1",
2073
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2074
- reasoning: true,
2075
- input: ["text"],
2076
- cost: {
2077
- input: 0,
2078
- output: 0,
2079
- cacheRead: 0,
2080
- cacheWrite: 0,
2081
- },
2082
- contextWindow: 262144,
2083
- maxTokens: 262144,
2084
- },
2085
- "nvidia/nemotron-3-ultra-550b-a55b": {
2086
- id: "nvidia/nemotron-3-ultra-550b-a55b",
2087
- name: "NVIDIA: Nemotron 3 Ultra",
2088
- api: "openai-completions",
2089
- provider: "openrouter",
2090
- baseUrl: "https://openrouter.ai/api/v1",
2091
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2092
- reasoning: true,
2093
- input: ["text"],
2094
- cost: {
2095
- input: 0.6,
2096
- output: 3.6,
2097
- cacheRead: 0.2,
2098
- cacheWrite: 0,
2099
- },
2100
- contextWindow: 512288,
2101
- maxTokens: 4096,
2102
- },
2103
- "nvidia/nemotron-3-ultra-550b-a55b:free": {
2104
- id: "nvidia/nemotron-3-ultra-550b-a55b:free",
2105
- name: "NVIDIA: Nemotron 3 Ultra (free)",
2106
- api: "openai-completions",
2107
- provider: "openrouter",
2108
- baseUrl: "https://openrouter.ai/api/v1",
2109
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2110
- reasoning: true,
2111
- input: ["text"],
2112
- cost: {
2113
- input: 0,
2114
- output: 0,
2115
- cacheRead: 0,
2116
- cacheWrite: 0,
2117
- },
2118
- contextWindow: 1000000,
2119
- maxTokens: 65536,
2120
- },
2121
- "nvidia/nemotron-nano-12b-v2-vl:free": {
2122
- id: "nvidia/nemotron-nano-12b-v2-vl:free",
2123
- name: "NVIDIA: Nemotron Nano 12B 2 VL (free)",
2124
- api: "openai-completions",
2125
- provider: "openrouter",
2126
- baseUrl: "https://openrouter.ai/api/v1",
2127
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2128
- reasoning: true,
2129
- input: ["text", "image"],
2130
- cost: {
2131
- input: 0,
2132
- output: 0,
2133
- cacheRead: 0,
2134
- cacheWrite: 0,
2135
- },
2136
- contextWindow: 128000,
2137
- maxTokens: 128000,
2138
- },
2139
- "nvidia/nemotron-nano-9b-v2:free": {
2140
- id: "nvidia/nemotron-nano-9b-v2:free",
2141
- name: "NVIDIA: Nemotron Nano 9B V2 (free)",
2142
- api: "openai-completions",
2143
- provider: "openrouter",
2144
- baseUrl: "https://openrouter.ai/api/v1",
2145
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
2146
- reasoning: true,
2147
- input: ["text"],
2148
- cost: {
2149
- input: 0,
2150
- output: 0,
2151
- cacheRead: 0,
2152
- cacheWrite: 0,
2153
- },
2154
- contextWindow: 128000,
2155
- maxTokens: 4096,
2156
- },
2157
- "openai/gpt-3.5-turbo": {
2158
- id: "openai/gpt-3.5-turbo",
2159
- name: "OpenAI: GPT-3.5 Turbo",
2160
- api: "openai-completions",
2161
- provider: "openrouter",
2162
- baseUrl: "https://openrouter.ai/api/v1",
2163
- compat: { "thinkingFormat": "openrouter" },
2164
- reasoning: false,
2165
- input: ["text"],
2166
- cost: {
2167
- input: 0.5,
2168
- output: 1.5,
2169
- cacheRead: 0,
2170
- cacheWrite: 0,
2171
- },
2172
- contextWindow: 16385,
2173
- maxTokens: 4096,
2174
- },
2175
- "openai/gpt-3.5-turbo-0613": {
2176
- id: "openai/gpt-3.5-turbo-0613",
2177
- name: "OpenAI: GPT-3.5 Turbo (older v0613)",
2178
- api: "openai-completions",
2179
- provider: "openrouter",
2180
- baseUrl: "https://openrouter.ai/api/v1",
2181
- compat: { "thinkingFormat": "openrouter" },
2182
- reasoning: false,
2183
- input: ["text"],
2184
- cost: {
2185
- input: 1,
2186
- output: 2,
2187
- cacheRead: 0,
2188
- cacheWrite: 0,
2189
- },
2190
- contextWindow: 4095,
2191
- maxTokens: 4096,
2192
- },
2193
- "openai/gpt-3.5-turbo-16k": {
2194
- id: "openai/gpt-3.5-turbo-16k",
2195
- name: "OpenAI: GPT-3.5 Turbo 16k",
2196
- api: "openai-completions",
2197
- provider: "openrouter",
2198
- baseUrl: "https://openrouter.ai/api/v1",
2199
- compat: { "thinkingFormat": "openrouter" },
2200
- reasoning: false,
2201
- input: ["text"],
2202
- cost: {
2203
- input: 3,
2204
- output: 4,
2205
- cacheRead: 0,
2206
- cacheWrite: 0,
2207
- },
2208
- contextWindow: 16385,
2209
- maxTokens: 4096,
2210
- },
2211
- "openai/gpt-4": {
2212
- id: "openai/gpt-4",
2213
- name: "OpenAI: GPT-4",
2214
- api: "openai-completions",
2215
- provider: "openrouter",
2216
- baseUrl: "https://openrouter.ai/api/v1",
2217
- compat: { "thinkingFormat": "openrouter" },
2218
- reasoning: false,
2219
- input: ["text"],
2220
- cost: {
2221
- input: 30,
2222
- output: 60,
2223
- cacheRead: 0,
2224
- cacheWrite: 0,
2225
- },
2226
- contextWindow: 8191,
2227
- maxTokens: 4096,
2228
- },
2229
- "openai/gpt-4-turbo": {
2230
- id: "openai/gpt-4-turbo",
2231
- name: "OpenAI: GPT-4 Turbo",
2232
- api: "openai-completions",
2233
- provider: "openrouter",
2234
- baseUrl: "https://openrouter.ai/api/v1",
2235
- compat: { "thinkingFormat": "openrouter" },
2236
- reasoning: false,
2237
- input: ["text", "image"],
2238
- cost: {
2239
- input: 10,
2240
- output: 30,
2241
- cacheRead: 0,
2242
- cacheWrite: 0,
2243
- },
2244
- contextWindow: 128000,
2245
- maxTokens: 4096,
2246
- },
2247
- "openai/gpt-4-turbo-preview": {
2248
- id: "openai/gpt-4-turbo-preview",
2249
- name: "OpenAI: GPT-4 Turbo Preview",
2250
- api: "openai-completions",
2251
- provider: "openrouter",
2252
- baseUrl: "https://openrouter.ai/api/v1",
2253
- compat: { "thinkingFormat": "openrouter" },
2254
- reasoning: false,
2255
- input: ["text"],
2256
- cost: {
2257
- input: 10,
2258
- output: 30,
2259
- cacheRead: 0,
2260
- cacheWrite: 0,
2261
- },
2262
- contextWindow: 128000,
2263
- maxTokens: 4096,
2264
- },
2265
- "openai/gpt-4.1": {
2266
- id: "openai/gpt-4.1",
2267
- name: "OpenAI: GPT-4.1",
2268
- api: "openai-completions",
2269
- provider: "openrouter",
2270
- baseUrl: "https://openrouter.ai/api/v1",
2271
- compat: { "thinkingFormat": "openrouter" },
2272
- reasoning: false,
2273
- input: ["text", "image"],
2274
- cost: {
2275
- input: 2,
2276
- output: 8,
2277
- cacheRead: 0.5,
2278
- cacheWrite: 0,
2279
- },
2280
- contextWindow: 1047576,
2281
- maxTokens: 32768,
2282
- },
2283
- "openai/gpt-4.1-mini": {
2284
- id: "openai/gpt-4.1-mini",
2285
- name: "OpenAI: GPT-4.1 Mini",
2286
- api: "openai-completions",
2287
- provider: "openrouter",
2288
- baseUrl: "https://openrouter.ai/api/v1",
2289
- compat: { "thinkingFormat": "openrouter" },
2290
- reasoning: false,
2291
- input: ["text", "image"],
2292
- cost: {
2293
- input: 0.4,
2294
- output: 1.6,
2295
- cacheRead: 0.1,
2296
- cacheWrite: 0,
2297
- },
2298
- contextWindow: 1047576,
2299
- maxTokens: 32768,
2300
- },
2301
- "openai/gpt-4.1-nano": {
2302
- id: "openai/gpt-4.1-nano",
2303
- name: "OpenAI: GPT-4.1 Nano",
2304
- api: "openai-completions",
2305
- provider: "openrouter",
2306
- baseUrl: "https://openrouter.ai/api/v1",
2307
- compat: { "thinkingFormat": "openrouter" },
2308
- reasoning: false,
2309
- input: ["text", "image"],
2310
- cost: {
2311
- input: 0.1,
2312
- output: 0.4,
2313
- cacheRead: 0.025,
2314
- cacheWrite: 0,
2315
- },
2316
- contextWindow: 1047576,
2317
- maxTokens: 32768,
2318
- },
2319
- "openai/gpt-4o": {
2320
- id: "openai/gpt-4o",
2321
- name: "OpenAI: GPT-4o",
2322
- api: "openai-completions",
2323
- provider: "openrouter",
2324
- baseUrl: "https://openrouter.ai/api/v1",
2325
- compat: { "thinkingFormat": "openrouter" },
2326
- reasoning: false,
2327
- input: ["text", "image"],
2328
- cost: {
2329
- input: 2.5,
2330
- output: 10,
2331
- cacheRead: 1.25,
2332
- cacheWrite: 0,
2333
- },
2334
- contextWindow: 128000,
2335
- maxTokens: 16384,
2336
- },
2337
- "openai/gpt-4o-2024-05-13": {
2338
- id: "openai/gpt-4o-2024-05-13",
2339
- name: "OpenAI: GPT-4o (2024-05-13)",
2340
- api: "openai-completions",
2341
- provider: "openrouter",
2342
- baseUrl: "https://openrouter.ai/api/v1",
2343
- compat: { "thinkingFormat": "openrouter" },
2344
- reasoning: false,
2345
- input: ["text", "image"],
2346
- cost: {
2347
- input: 5,
2348
- output: 15,
2349
- cacheRead: 0,
2350
- cacheWrite: 0,
2351
- },
2352
- contextWindow: 128000,
2353
- maxTokens: 4096,
2354
- },
2355
- "openai/gpt-4o-2024-08-06": {
2356
- id: "openai/gpt-4o-2024-08-06",
2357
- name: "OpenAI: GPT-4o (2024-08-06)",
2358
- api: "openai-completions",
2359
- provider: "openrouter",
2360
- baseUrl: "https://openrouter.ai/api/v1",
2361
- compat: { "thinkingFormat": "openrouter" },
2362
- reasoning: false,
2363
- input: ["text", "image"],
2364
- cost: {
2365
- input: 2.5,
2366
- output: 10,
2367
- cacheRead: 1.25,
2368
- cacheWrite: 0,
2369
- },
2370
- contextWindow: 128000,
2371
- maxTokens: 16384,
2372
- },
2373
- "openai/gpt-4o-2024-11-20": {
2374
- id: "openai/gpt-4o-2024-11-20",
2375
- name: "OpenAI: GPT-4o (2024-11-20)",
2376
- api: "openai-completions",
2377
- provider: "openrouter",
2378
- baseUrl: "https://openrouter.ai/api/v1",
2379
- compat: { "thinkingFormat": "openrouter" },
2380
- reasoning: false,
2381
- input: ["text", "image"],
2382
- cost: {
2383
- input: 2.5,
2384
- output: 10,
2385
- cacheRead: 1.25,
2386
- cacheWrite: 0,
2387
- },
2388
- contextWindow: 128000,
2389
- maxTokens: 16384,
2390
- },
2391
- "openai/gpt-4o-mini": {
2392
- id: "openai/gpt-4o-mini",
2393
- name: "OpenAI: GPT-4o-mini",
2394
- api: "openai-completions",
2395
- provider: "openrouter",
2396
- baseUrl: "https://openrouter.ai/api/v1",
2397
- compat: { "thinkingFormat": "openrouter" },
2398
- reasoning: false,
2399
- input: ["text", "image"],
2400
- cost: {
2401
- input: 0.15,
2402
- output: 0.6,
2403
- cacheRead: 0.075,
2404
- cacheWrite: 0,
2405
- },
2406
- contextWindow: 128000,
2407
- maxTokens: 16384,
2408
- },
2409
- "openai/gpt-4o-mini-2024-07-18": {
2410
- id: "openai/gpt-4o-mini-2024-07-18",
2411
- name: "OpenAI: GPT-4o-mini (2024-07-18)",
2412
- api: "openai-completions",
2413
- provider: "openrouter",
2414
- baseUrl: "https://openrouter.ai/api/v1",
2415
- compat: { "thinkingFormat": "openrouter" },
2416
- reasoning: false,
2417
- input: ["text", "image"],
2418
- cost: {
2419
- input: 0.15,
2420
- output: 0.6,
2421
- cacheRead: 0.075,
2422
- cacheWrite: 0,
2423
- },
2424
- contextWindow: 128000,
2425
- maxTokens: 16384,
2426
- },
2427
- "openai/gpt-5": {
2428
- id: "openai/gpt-5",
2429
- name: "OpenAI: GPT-5",
2430
- api: "openai-completions",
2431
- provider: "openrouter",
2432
- baseUrl: "https://openrouter.ai/api/v1",
2433
- compat: { "thinkingFormat": "openrouter" },
2434
- reasoning: true,
2435
- input: ["text", "image"],
2436
- cost: {
2437
- input: 1.25,
2438
- output: 10,
2439
- cacheRead: 0.125,
2440
- cacheWrite: 0,
2441
- },
2442
- contextWindow: 400000,
2443
- maxTokens: 128000,
2444
- },
2445
- "openai/gpt-5-codex": {
2446
- id: "openai/gpt-5-codex",
2447
- name: "OpenAI: GPT-5 Codex",
2448
- api: "openai-completions",
2449
- provider: "openrouter",
2450
- baseUrl: "https://openrouter.ai/api/v1",
2451
- compat: { "thinkingFormat": "openrouter" },
2452
- reasoning: true,
2453
- input: ["text", "image"],
2454
- cost: {
2455
- input: 1.25,
2456
- output: 10,
2457
- cacheRead: 0.125,
2458
- cacheWrite: 0,
2459
- },
2460
- contextWindow: 400000,
2461
- maxTokens: 128000,
2462
- },
2463
- "openai/gpt-5-mini": {
2464
- id: "openai/gpt-5-mini",
2465
- name: "OpenAI: GPT-5 Mini",
2466
- api: "openai-completions",
2467
- provider: "openrouter",
2468
- baseUrl: "https://openrouter.ai/api/v1",
2469
- compat: { "thinkingFormat": "openrouter" },
2470
- reasoning: true,
2471
- input: ["text", "image"],
2472
- cost: {
2473
- input: 0.25,
2474
- output: 2,
2475
- cacheRead: 0.025,
2476
- cacheWrite: 0,
2477
- },
2478
- contextWindow: 400000,
2479
- maxTokens: 128000,
2480
- },
2481
- "openai/gpt-5-nano": {
2482
- id: "openai/gpt-5-nano",
2483
- name: "OpenAI: GPT-5 Nano",
2484
- api: "openai-completions",
2485
- provider: "openrouter",
2486
- baseUrl: "https://openrouter.ai/api/v1",
2487
- compat: { "thinkingFormat": "openrouter" },
2488
- reasoning: true,
2489
- input: ["text", "image"],
2490
- cost: {
2491
- input: 0.05,
2492
- output: 0.4,
2493
- cacheRead: 0.005,
2494
- cacheWrite: 0,
2495
- },
2496
- contextWindow: 400000,
2497
- maxTokens: 128000,
2498
- },
2499
- "openai/gpt-5-pro": {
2500
- id: "openai/gpt-5-pro",
2501
- name: "OpenAI: GPT-5 Pro",
2502
- api: "openai-completions",
2503
- provider: "openrouter",
2504
- baseUrl: "https://openrouter.ai/api/v1",
2505
- compat: { "thinkingFormat": "openrouter" },
2506
- reasoning: true,
2507
- input: ["text", "image"],
2508
- cost: {
2509
- input: 15,
2510
- output: 120,
2511
- cacheRead: 0,
2512
- cacheWrite: 0,
2513
- },
2514
- contextWindow: 400000,
2515
- maxTokens: 128000,
2516
- },
2517
- "openai/gpt-5.1": {
2518
- id: "openai/gpt-5.1",
2519
- name: "OpenAI: GPT-5.1",
2520
- api: "openai-completions",
2521
- provider: "openrouter",
2522
- baseUrl: "https://openrouter.ai/api/v1",
2523
- compat: { "thinkingFormat": "openrouter" },
2524
- reasoning: true,
2525
- input: ["text", "image"],
2526
- cost: {
2527
- input: 1.25,
2528
- output: 10,
2529
- cacheRead: 0.125,
2530
- cacheWrite: 0,
2531
- },
2532
- contextWindow: 400000,
2533
- maxTokens: 128000,
2534
- },
2535
- "openai/gpt-5.1-chat": {
2536
- id: "openai/gpt-5.1-chat",
2537
- name: "OpenAI: GPT-5.1 Chat",
2538
- api: "openai-completions",
2539
- provider: "openrouter",
2540
- baseUrl: "https://openrouter.ai/api/v1",
2541
- compat: { "thinkingFormat": "openrouter" },
2542
- reasoning: false,
2543
- input: ["text", "image"],
2544
- cost: {
2545
- input: 1.25,
2546
- output: 10,
2547
- cacheRead: 0.125,
2548
- cacheWrite: 0,
2549
- },
2550
- contextWindow: 128000,
2551
- maxTokens: 16384,
2552
- },
2553
- "openai/gpt-5.1-codex": {
2554
- id: "openai/gpt-5.1-codex",
2555
- name: "OpenAI: GPT-5.1-Codex",
2556
- api: "openai-completions",
2557
- provider: "openrouter",
2558
- baseUrl: "https://openrouter.ai/api/v1",
2559
- compat: { "thinkingFormat": "openrouter" },
2560
- reasoning: true,
2561
- input: ["text", "image"],
2562
- cost: {
2563
- input: 1.25,
2564
- output: 10,
2565
- cacheRead: 0.125,
2566
- cacheWrite: 0,
2567
- },
2568
- contextWindow: 400000,
2569
- maxTokens: 128000,
2570
- },
2571
- "openai/gpt-5.1-codex-max": {
2572
- id: "openai/gpt-5.1-codex-max",
2573
- name: "OpenAI: GPT-5.1-Codex-Max",
2574
- api: "openai-completions",
2575
- provider: "openrouter",
2576
- baseUrl: "https://openrouter.ai/api/v1",
2577
- compat: { "thinkingFormat": "openrouter" },
2578
- reasoning: true,
2579
- input: ["text", "image"],
2580
- cost: {
2581
- input: 1.25,
2582
- output: 10,
2583
- cacheRead: 0.125,
2584
- cacheWrite: 0,
2585
- },
2586
- contextWindow: 400000,
2587
- maxTokens: 128000,
2588
- },
2589
- "openai/gpt-5.1-codex-mini": {
2590
- id: "openai/gpt-5.1-codex-mini",
2591
- name: "OpenAI: GPT-5.1-Codex-Mini",
2592
- api: "openai-completions",
2593
- provider: "openrouter",
2594
- baseUrl: "https://openrouter.ai/api/v1",
2595
- compat: { "thinkingFormat": "openrouter" },
2596
- reasoning: true,
2597
- input: ["text", "image"],
2598
- cost: {
2599
- input: 0.25,
2600
- output: 2,
2601
- cacheRead: 0.025,
2602
- cacheWrite: 0,
2603
- },
2604
- contextWindow: 400000,
2605
- maxTokens: 100000,
2606
- },
2607
- "openai/gpt-5.2": {
2608
- id: "openai/gpt-5.2",
2609
- name: "OpenAI: GPT-5.2",
2610
- api: "openai-completions",
2611
- provider: "openrouter",
2612
- baseUrl: "https://openrouter.ai/api/v1",
2613
- compat: { "thinkingFormat": "openrouter" },
2614
- reasoning: true,
2615
- thinkingLevelMap: { "xhigh": "xhigh" },
2616
- input: ["text", "image"],
2617
- cost: {
2618
- input: 1.75,
2619
- output: 14,
2620
- cacheRead: 0.175,
2621
- cacheWrite: 0,
2622
- },
2623
- contextWindow: 400000,
2624
- maxTokens: 128000,
2625
- },
2626
- "openai/gpt-5.2-chat": {
2627
- id: "openai/gpt-5.2-chat",
2628
- name: "OpenAI: GPT-5.2 Chat",
2629
- api: "openai-completions",
2630
- provider: "openrouter",
2631
- baseUrl: "https://openrouter.ai/api/v1",
2632
- compat: { "thinkingFormat": "openrouter" },
2633
- reasoning: false,
2634
- thinkingLevelMap: { "xhigh": "xhigh" },
2635
- input: ["text", "image"],
2636
- cost: {
2637
- input: 1.75,
2638
- output: 14,
2639
- cacheRead: 0.175,
2640
- cacheWrite: 0,
2641
- },
2642
- contextWindow: 128000,
2643
- maxTokens: 16384,
2644
- },
2645
- "openai/gpt-5.2-codex": {
2646
- id: "openai/gpt-5.2-codex",
2647
- name: "OpenAI: GPT-5.2-Codex",
2648
- api: "openai-completions",
2649
- provider: "openrouter",
2650
- baseUrl: "https://openrouter.ai/api/v1",
2651
- compat: { "thinkingFormat": "openrouter" },
2652
- reasoning: true,
2653
- thinkingLevelMap: { "xhigh": "xhigh" },
2654
- input: ["text", "image"],
2655
- cost: {
2656
- input: 1.75,
2657
- output: 14,
2658
- cacheRead: 0.175,
2659
- cacheWrite: 0,
2660
- },
2661
- contextWindow: 400000,
2662
- maxTokens: 128000,
2663
- },
2664
- "openai/gpt-5.2-pro": {
2665
- id: "openai/gpt-5.2-pro",
2666
- name: "OpenAI: GPT-5.2 Pro",
2667
- api: "openai-completions",
2668
- provider: "openrouter",
2669
- baseUrl: "https://openrouter.ai/api/v1",
2670
- compat: { "thinkingFormat": "openrouter" },
2671
- reasoning: true,
2672
- thinkingLevelMap: { "xhigh": "xhigh" },
2673
- input: ["text", "image"],
2674
- cost: {
2675
- input: 21,
2676
- output: 168,
2677
- cacheRead: 0,
2678
- cacheWrite: 0,
2679
- },
2680
- contextWindow: 400000,
2681
- maxTokens: 128000,
2682
- },
2683
- "openai/gpt-5.3-chat": {
2684
- id: "openai/gpt-5.3-chat",
2685
- name: "OpenAI: GPT-5.3 Chat",
2686
- api: "openai-completions",
2687
- provider: "openrouter",
2688
- baseUrl: "https://openrouter.ai/api/v1",
2689
- compat: { "thinkingFormat": "openrouter" },
2690
- reasoning: false,
2691
- thinkingLevelMap: { "xhigh": "xhigh" },
2692
- input: ["text", "image"],
2693
- cost: {
2694
- input: 1.75,
2695
- output: 14,
2696
- cacheRead: 0.175,
2697
- cacheWrite: 0,
2698
- },
2699
- contextWindow: 128000,
2700
- maxTokens: 16384,
2701
- },
2702
- "openai/gpt-5.3-codex": {
2703
- id: "openai/gpt-5.3-codex",
2704
- name: "OpenAI: GPT-5.3-Codex",
2705
- api: "openai-completions",
2706
- provider: "openrouter",
2707
- baseUrl: "https://openrouter.ai/api/v1",
2708
- compat: { "thinkingFormat": "openrouter" },
2709
- reasoning: true,
2710
- thinkingLevelMap: { "xhigh": "xhigh" },
2711
- input: ["text", "image"],
2712
- cost: {
2713
- input: 1.75,
2714
- output: 14,
2715
- cacheRead: 0.175,
2716
- cacheWrite: 0,
2717
- },
2718
- contextWindow: 400000,
2719
- maxTokens: 128000,
2720
- },
2721
- "openai/gpt-5.4": {
2722
- id: "openai/gpt-5.4",
2723
- name: "OpenAI: GPT-5.4",
2724
- api: "openai-completions",
2725
- provider: "openrouter",
2726
- baseUrl: "https://openrouter.ai/api/v1",
2727
- compat: { "thinkingFormat": "openrouter" },
2728
- reasoning: true,
2729
- thinkingLevelMap: { "xhigh": "xhigh" },
2730
- input: ["text", "image"],
2731
- cost: {
2732
- input: 2.5,
2733
- output: 15,
2734
- cacheRead: 0.25,
2735
- cacheWrite: 0,
2736
- },
2737
- contextWindow: 1050000,
2738
- maxTokens: 128000,
2739
- },
2740
- "openai/gpt-5.4-mini": {
2741
- id: "openai/gpt-5.4-mini",
2742
- name: "OpenAI: GPT-5.4 Mini",
2743
- api: "openai-completions",
2744
- provider: "openrouter",
2745
- baseUrl: "https://openrouter.ai/api/v1",
2746
- compat: { "thinkingFormat": "openrouter" },
2747
- reasoning: true,
2748
- thinkingLevelMap: { "xhigh": "xhigh" },
2749
- input: ["text", "image"],
2750
- cost: {
2751
- input: 0.75,
2752
- output: 4.5,
2753
- cacheRead: 0.075,
2754
- cacheWrite: 0,
2755
- },
2756
- contextWindow: 400000,
2757
- maxTokens: 128000,
2758
- },
2759
- "openai/gpt-5.4-nano": {
2760
- id: "openai/gpt-5.4-nano",
2761
- name: "OpenAI: GPT-5.4 Nano",
2762
- api: "openai-completions",
2763
- provider: "openrouter",
2764
- baseUrl: "https://openrouter.ai/api/v1",
2765
- compat: { "thinkingFormat": "openrouter" },
2766
- reasoning: true,
2767
- thinkingLevelMap: { "xhigh": "xhigh" },
2768
- input: ["text", "image"],
2769
- cost: {
2770
- input: 0.2,
2771
- output: 1.25,
2772
- cacheRead: 0.02,
2773
- cacheWrite: 0,
2774
- },
2775
- contextWindow: 400000,
2776
- maxTokens: 128000,
2777
- },
2778
- "openai/gpt-5.4-pro": {
2779
- id: "openai/gpt-5.4-pro",
2780
- name: "OpenAI: GPT-5.4 Pro",
2781
- api: "openai-completions",
2782
- provider: "openrouter",
2783
- baseUrl: "https://openrouter.ai/api/v1",
2784
- compat: { "thinkingFormat": "openrouter" },
2785
- reasoning: true,
2786
- thinkingLevelMap: { "xhigh": "xhigh" },
2787
- input: ["text", "image"],
2788
- cost: {
2789
- input: 30,
2790
- output: 180,
2791
- cacheRead: 0,
2792
- cacheWrite: 0,
2793
- },
2794
- contextWindow: 1050000,
2795
- maxTokens: 128000,
2796
- },
2797
- "openai/gpt-5.5": {
2798
- id: "openai/gpt-5.5",
2799
- name: "OpenAI: GPT-5.5",
2800
- api: "openai-completions",
2801
- provider: "openrouter",
2802
- baseUrl: "https://openrouter.ai/api/v1",
2803
- compat: { "thinkingFormat": "openrouter" },
2804
- reasoning: true,
2805
- thinkingLevelMap: { "xhigh": "xhigh" },
2806
- input: ["text", "image"],
2807
- cost: {
2808
- input: 5,
2809
- output: 30,
2810
- cacheRead: 0.5,
2811
- cacheWrite: 0,
2812
- },
2813
- contextWindow: 1050000,
2814
- maxTokens: 128000,
2815
- },
2816
- "openai/gpt-5.5-pro": {
2817
- id: "openai/gpt-5.5-pro",
2818
- name: "OpenAI: GPT-5.5 Pro",
2819
- api: "openai-completions",
2820
- provider: "openrouter",
2821
- baseUrl: "https://openrouter.ai/api/v1",
2822
- compat: { "thinkingFormat": "openrouter" },
2823
- reasoning: true,
2824
- thinkingLevelMap: { "xhigh": "xhigh", "off": null, "minimal": null, "low": null },
2825
- input: ["text", "image"],
2826
- cost: {
2827
- input: 30,
2828
- output: 180,
2829
- cacheRead: 0,
2830
- cacheWrite: 0,
2831
- },
2832
- contextWindow: 1050000,
2833
- maxTokens: 128000,
2834
- },
2835
- "openai/gpt-5.6-luna": {
2836
- id: "openai/gpt-5.6-luna",
2837
- name: "OpenAI: GPT-5.6 Luna",
2838
- api: "openai-completions",
2839
- provider: "openrouter",
2840
- baseUrl: "https://openrouter.ai/api/v1",
2841
- compat: { "thinkingFormat": "openrouter" },
2842
- reasoning: true,
2843
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2844
- input: ["text", "image"],
2845
- cost: {
2846
- input: 1,
2847
- output: 6,
2848
- cacheRead: 0.1,
2849
- cacheWrite: 1.25,
2850
- },
2851
- contextWindow: 1050000,
2852
- maxTokens: 128000,
2853
- },
2854
- "openai/gpt-5.6-luna-pro": {
2855
- id: "openai/gpt-5.6-luna-pro",
2856
- name: "OpenAI: GPT-5.6 Luna Pro",
2857
- api: "openai-completions",
2858
- provider: "openrouter",
2859
- baseUrl: "https://openrouter.ai/api/v1",
2860
- compat: { "thinkingFormat": "openrouter" },
2861
- reasoning: true,
2862
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2863
- input: ["text", "image"],
2864
- cost: {
2865
- input: 1,
2866
- output: 6,
2867
- cacheRead: 0.1,
2868
- cacheWrite: 1.25,
2869
- },
2870
- contextWindow: 1050000,
2871
- maxTokens: 128000,
2872
- },
2873
- "openai/gpt-5.6-sol": {
2874
- id: "openai/gpt-5.6-sol",
2875
- name: "OpenAI: GPT-5.6 Sol",
2876
- api: "openai-completions",
2877
- provider: "openrouter",
2878
- baseUrl: "https://openrouter.ai/api/v1",
2879
- compat: { "thinkingFormat": "openrouter" },
2880
- reasoning: true,
2881
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2882
- input: ["text", "image"],
2883
- cost: {
2884
- input: 5,
2885
- output: 30,
2886
- cacheRead: 0.5,
2887
- cacheWrite: 6.25,
2888
- },
2889
- contextWindow: 1050000,
2890
- maxTokens: 128000,
2891
- },
2892
- "openai/gpt-5.6-sol-pro": {
2893
- id: "openai/gpt-5.6-sol-pro",
2894
- name: "OpenAI: GPT-5.6 Sol Pro",
2895
- api: "openai-completions",
2896
- provider: "openrouter",
2897
- baseUrl: "https://openrouter.ai/api/v1",
2898
- compat: { "thinkingFormat": "openrouter" },
2899
- reasoning: true,
2900
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2901
- input: ["text", "image"],
2902
- cost: {
2903
- input: 5,
2904
- output: 30,
2905
- cacheRead: 0.5,
2906
- cacheWrite: 6.25,
2907
- },
2908
- contextWindow: 1050000,
2909
- maxTokens: 128000,
2910
- },
2911
- "openai/gpt-5.6-terra": {
2912
- id: "openai/gpt-5.6-terra",
2913
- name: "OpenAI: GPT-5.6 Terra",
2914
- api: "openai-completions",
2915
- provider: "openrouter",
2916
- baseUrl: "https://openrouter.ai/api/v1",
2917
- compat: { "thinkingFormat": "openrouter" },
2918
- reasoning: true,
2919
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2920
- input: ["text", "image"],
2921
- cost: {
2922
- input: 2.5,
2923
- output: 15,
2924
- cacheRead: 0.25,
2925
- cacheWrite: 3.125,
2926
- },
2927
- contextWindow: 1050000,
2928
- maxTokens: 128000,
2929
- },
2930
- "openai/gpt-5.6-terra-pro": {
2931
- id: "openai/gpt-5.6-terra-pro",
2932
- name: "OpenAI: GPT-5.6 Terra Pro",
2933
- api: "openai-completions",
2934
- provider: "openrouter",
2935
- baseUrl: "https://openrouter.ai/api/v1",
2936
- compat: { "thinkingFormat": "openrouter" },
2937
- reasoning: true,
2938
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
2939
- input: ["text", "image"],
2940
- cost: {
2941
- input: 2.5,
2942
- output: 15,
2943
- cacheRead: 0.25,
2944
- cacheWrite: 3.125,
2945
- },
2946
- contextWindow: 1050000,
2947
- maxTokens: 128000,
2948
- },
2949
- "openai/gpt-audio": {
2950
- id: "openai/gpt-audio",
2951
- name: "OpenAI: GPT Audio",
2952
- api: "openai-completions",
2953
- provider: "openrouter",
2954
- baseUrl: "https://openrouter.ai/api/v1",
2955
- compat: { "thinkingFormat": "openrouter" },
2956
- reasoning: false,
2957
- input: ["text"],
2958
- cost: {
2959
- input: 2.5,
2960
- output: 10,
2961
- cacheRead: 0,
2962
- cacheWrite: 0,
2963
- },
2964
- contextWindow: 128000,
2965
- maxTokens: 16384,
2966
- },
2967
- "openai/gpt-audio-mini": {
2968
- id: "openai/gpt-audio-mini",
2969
- name: "OpenAI: GPT Audio Mini",
2970
- api: "openai-completions",
2971
- provider: "openrouter",
2972
- baseUrl: "https://openrouter.ai/api/v1",
2973
- compat: { "thinkingFormat": "openrouter" },
2974
- reasoning: false,
2975
- input: ["text"],
2976
- cost: {
2977
- input: 0.6,
2978
- output: 2.4,
2979
- cacheRead: 0,
2980
- cacheWrite: 0,
2981
- },
2982
- contextWindow: 128000,
2983
- maxTokens: 16384,
2984
- },
2985
- "openai/gpt-chat-latest": {
2986
- id: "openai/gpt-chat-latest",
2987
- name: "OpenAI: GPT Chat Latest",
2988
- api: "openai-completions",
2989
- provider: "openrouter",
2990
- baseUrl: "https://openrouter.ai/api/v1",
2991
- compat: { "thinkingFormat": "openrouter" },
2992
- reasoning: false,
2993
- input: ["text", "image"],
2994
- cost: {
2995
- input: 5,
2996
- output: 30,
2997
- cacheRead: 0.5,
2998
- cacheWrite: 0,
2999
- },
3000
- contextWindow: 400000,
3001
- maxTokens: 128000,
3002
- },
3003
- "openai/gpt-oss-120b": {
3004
- id: "openai/gpt-oss-120b",
3005
- name: "OpenAI: gpt-oss-120b",
3006
- api: "openai-completions",
3007
- provider: "openrouter",
3008
- baseUrl: "https://openrouter.ai/api/v1",
3009
- compat: { "thinkingFormat": "openrouter" },
3010
- reasoning: true,
3011
- input: ["text"],
3012
- cost: {
3013
- input: 0.037,
3014
- output: 0.17,
3015
- cacheRead: 0,
3016
- cacheWrite: 0,
3017
- },
3018
- contextWindow: 131072,
3019
- maxTokens: 131072,
3020
- },
3021
- "openai/gpt-oss-20b": {
3022
- id: "openai/gpt-oss-20b",
3023
- name: "OpenAI: gpt-oss-20b",
3024
- api: "openai-completions",
3025
- provider: "openrouter",
3026
- baseUrl: "https://openrouter.ai/api/v1",
3027
- compat: { "thinkingFormat": "openrouter" },
3028
- reasoning: true,
3029
- input: ["text"],
3030
- cost: {
3031
- input: 0.03,
3032
- output: 0.13,
3033
- cacheRead: 0.03,
3034
- cacheWrite: 0,
3035
- },
3036
- contextWindow: 131072,
3037
- maxTokens: 131072,
3038
- },
3039
- "openai/gpt-oss-20b:free": {
3040
- id: "openai/gpt-oss-20b:free",
3041
- name: "OpenAI: gpt-oss-20b (free)",
3042
- api: "openai-completions",
3043
- provider: "openrouter",
3044
- baseUrl: "https://openrouter.ai/api/v1",
3045
- compat: { "thinkingFormat": "openrouter" },
3046
- reasoning: true,
3047
- input: ["text"],
3048
- cost: {
3049
- input: 0,
3050
- output: 0,
3051
- cacheRead: 0,
3052
- cacheWrite: 0,
3053
- },
3054
- contextWindow: 131072,
3055
- maxTokens: 32768,
3056
- },
3057
- "openai/gpt-oss-safeguard-20b": {
3058
- id: "openai/gpt-oss-safeguard-20b",
3059
- name: "OpenAI: gpt-oss-safeguard-20b",
3060
- api: "openai-completions",
3061
- provider: "openrouter",
3062
- baseUrl: "https://openrouter.ai/api/v1",
3063
- compat: { "thinkingFormat": "openrouter" },
3064
- reasoning: true,
3065
- input: ["text"],
3066
- cost: {
3067
- input: 0.075,
3068
- output: 0.3,
3069
- cacheRead: 0.0375,
3070
- cacheWrite: 0,
3071
- },
3072
- contextWindow: 131072,
3073
- maxTokens: 65536,
3074
- },
3075
- "openai/o1": {
3076
- id: "openai/o1",
3077
- name: "OpenAI: o1",
3078
- api: "openai-completions",
3079
- provider: "openrouter",
3080
- baseUrl: "https://openrouter.ai/api/v1",
3081
- compat: { "thinkingFormat": "openrouter" },
3082
- reasoning: true,
3083
- input: ["text", "image"],
3084
- cost: {
3085
- input: 15,
3086
- output: 60,
3087
- cacheRead: 7.5,
3088
- cacheWrite: 0,
3089
- },
3090
- contextWindow: 200000,
3091
- maxTokens: 100000,
3092
- },
3093
- "openai/o3": {
3094
- id: "openai/o3",
3095
- name: "OpenAI: o3",
3096
- api: "openai-completions",
3097
- provider: "openrouter",
3098
- baseUrl: "https://openrouter.ai/api/v1",
3099
- compat: { "thinkingFormat": "openrouter" },
3100
- reasoning: true,
3101
- input: ["text", "image"],
3102
- cost: {
3103
- input: 2,
3104
- output: 8,
3105
- cacheRead: 0.5,
3106
- cacheWrite: 0,
3107
- },
3108
- contextWindow: 200000,
3109
- maxTokens: 100000,
3110
- },
3111
- "openai/o3-deep-research": {
3112
- id: "openai/o3-deep-research",
3113
- name: "OpenAI: o3 Deep Research",
3114
- api: "openai-completions",
3115
- provider: "openrouter",
3116
- baseUrl: "https://openrouter.ai/api/v1",
3117
- compat: { "thinkingFormat": "openrouter" },
3118
- reasoning: true,
3119
- input: ["text", "image"],
3120
- cost: {
3121
- input: 10,
3122
- output: 40,
3123
- cacheRead: 2.5,
3124
- cacheWrite: 0,
3125
- },
3126
- contextWindow: 200000,
3127
- maxTokens: 100000,
3128
- },
3129
- "openai/o3-mini": {
3130
- id: "openai/o3-mini",
3131
- name: "OpenAI: o3 Mini",
3132
- api: "openai-completions",
3133
- provider: "openrouter",
3134
- baseUrl: "https://openrouter.ai/api/v1",
3135
- compat: { "thinkingFormat": "openrouter" },
3136
- reasoning: true,
3137
- input: ["text"],
3138
- cost: {
3139
- input: 1.1,
3140
- output: 4.4,
3141
- cacheRead: 0.55,
3142
- cacheWrite: 0,
3143
- },
3144
- contextWindow: 200000,
3145
- maxTokens: 100000,
3146
- },
3147
- "openai/o3-mini-high": {
3148
- id: "openai/o3-mini-high",
3149
- name: "OpenAI: o3 Mini High",
3150
- api: "openai-completions",
3151
- provider: "openrouter",
3152
- baseUrl: "https://openrouter.ai/api/v1",
3153
- compat: { "thinkingFormat": "openrouter" },
3154
- reasoning: true,
3155
- input: ["text"],
3156
- cost: {
3157
- input: 1.1,
3158
- output: 4.4,
3159
- cacheRead: 0.55,
3160
- cacheWrite: 0,
3161
- },
3162
- contextWindow: 200000,
3163
- maxTokens: 100000,
3164
- },
3165
- "openai/o3-pro": {
3166
- id: "openai/o3-pro",
3167
- name: "OpenAI: o3 Pro",
3168
- api: "openai-completions",
3169
- provider: "openrouter",
3170
- baseUrl: "https://openrouter.ai/api/v1",
3171
- compat: { "thinkingFormat": "openrouter" },
3172
- reasoning: true,
3173
- input: ["text", "image"],
3174
- cost: {
3175
- input: 20,
3176
- output: 80,
3177
- cacheRead: 0,
3178
- cacheWrite: 0,
3179
- },
3180
- contextWindow: 200000,
3181
- maxTokens: 100000,
3182
- },
3183
- "openai/o4-mini": {
3184
- id: "openai/o4-mini",
3185
- name: "OpenAI: o4 Mini",
3186
- api: "openai-completions",
3187
- provider: "openrouter",
3188
- baseUrl: "https://openrouter.ai/api/v1",
3189
- compat: { "thinkingFormat": "openrouter" },
3190
- reasoning: true,
3191
- input: ["text", "image"],
3192
- cost: {
3193
- input: 1.1,
3194
- output: 4.4,
3195
- cacheRead: 0.275,
3196
- cacheWrite: 0,
3197
- },
3198
- contextWindow: 200000,
3199
- maxTokens: 100000,
3200
- },
3201
- "openai/o4-mini-deep-research": {
3202
- id: "openai/o4-mini-deep-research",
3203
- name: "OpenAI: o4 Mini Deep Research",
3204
- api: "openai-completions",
3205
- provider: "openrouter",
3206
- baseUrl: "https://openrouter.ai/api/v1",
3207
- compat: { "thinkingFormat": "openrouter" },
3208
- reasoning: true,
3209
- input: ["text", "image"],
3210
- cost: {
3211
- input: 2,
3212
- output: 8,
3213
- cacheRead: 0.5,
3214
- cacheWrite: 0,
3215
- },
3216
- contextWindow: 200000,
3217
- maxTokens: 100000,
3218
- },
3219
- "openai/o4-mini-high": {
3220
- id: "openai/o4-mini-high",
3221
- name: "OpenAI: o4 Mini High",
3222
- api: "openai-completions",
3223
- provider: "openrouter",
3224
- baseUrl: "https://openrouter.ai/api/v1",
3225
- compat: { "thinkingFormat": "openrouter" },
3226
- reasoning: true,
3227
- input: ["text", "image"],
3228
- cost: {
3229
- input: 1.1,
3230
- output: 4.4,
3231
- cacheRead: 0.275,
3232
- cacheWrite: 0,
3233
- },
3234
- contextWindow: 200000,
3235
- maxTokens: 100000,
3236
- },
3237
- "openrouter/auto": {
3238
- id: "openrouter/auto",
3239
- name: "Auto Router",
3240
- api: "openai-completions",
3241
- provider: "openrouter",
3242
- baseUrl: "https://openrouter.ai/api/v1",
3243
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3244
- reasoning: true,
3245
- input: ["text", "image"],
3246
- cost: {
3247
- input: -1000000,
3248
- output: -1000000,
3249
- cacheRead: 0,
3250
- cacheWrite: 0,
3251
- },
3252
- contextWindow: 2000000,
3253
- maxTokens: 4096,
3254
- },
3255
- "openrouter/free": {
3256
- id: "openrouter/free",
3257
- name: "Free Models Router",
3258
- api: "openai-completions",
3259
- provider: "openrouter",
3260
- baseUrl: "https://openrouter.ai/api/v1",
3261
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3262
- reasoning: true,
3263
- input: ["text", "image"],
3264
- cost: {
3265
- input: 0,
3266
- output: 0,
3267
- cacheRead: 0,
3268
- cacheWrite: 0,
3269
- },
3270
- contextWindow: 200000,
3271
- maxTokens: 4096,
3272
- },
3273
- "openrouter/fusion": {
3274
- id: "openrouter/fusion",
3275
- name: "OpenRouter: Fusion",
3276
- api: "openai-completions",
3277
- provider: "openrouter",
3278
- baseUrl: "https://openrouter.ai/api/v1",
3279
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3280
- reasoning: true,
3281
- input: ["text"],
3282
- cost: {
3283
- input: 0,
3284
- output: 0,
3285
- cacheRead: 0,
3286
- cacheWrite: 0,
3287
- },
3288
- contextWindow: 1000000,
3289
- maxTokens: 30000,
3290
- },
3291
- "poolside/laguna-m.1": {
3292
- id: "poolside/laguna-m.1",
3293
- name: "Poolside: Laguna M.1",
3294
- api: "openai-completions",
3295
- provider: "openrouter",
3296
- baseUrl: "https://openrouter.ai/api/v1",
3297
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3298
- reasoning: true,
3299
- input: ["text"],
3300
- cost: {
3301
- input: 0.2,
3302
- output: 0.4,
3303
- cacheRead: 0.1,
3304
- cacheWrite: 0,
3305
- },
3306
- contextWindow: 262144,
3307
- maxTokens: 32768,
3308
- },
3309
- "poolside/laguna-m.1:free": {
3310
- id: "poolside/laguna-m.1:free",
3311
- name: "Poolside: Laguna M.1 (free)",
3312
- api: "openai-completions",
3313
- provider: "openrouter",
3314
- baseUrl: "https://openrouter.ai/api/v1",
3315
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3316
- reasoning: true,
3317
- input: ["text"],
3318
- cost: {
3319
- input: 0,
3320
- output: 0,
3321
- cacheRead: 0,
3322
- cacheWrite: 0,
3323
- },
3324
- contextWindow: 262144,
3325
- maxTokens: 32768,
3326
- },
3327
- "poolside/laguna-xs-2.1": {
3328
- id: "poolside/laguna-xs-2.1",
3329
- name: "Poolside: Laguna XS 2.1",
3330
- api: "openai-completions",
3331
- provider: "openrouter",
3332
- baseUrl: "https://openrouter.ai/api/v1",
3333
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3334
- reasoning: true,
3335
- input: ["text"],
3336
- cost: {
3337
- input: 0.06,
3338
- output: 0.12,
3339
- cacheRead: 0.03,
3340
- cacheWrite: 0,
3341
- },
3342
- contextWindow: 262144,
3343
- maxTokens: 32768,
3344
- },
3345
- "poolside/laguna-xs-2.1:free": {
3346
- id: "poolside/laguna-xs-2.1:free",
3347
- name: "Poolside: Laguna XS 2.1 (free)",
3348
- api: "openai-completions",
3349
- provider: "openrouter",
3350
- baseUrl: "https://openrouter.ai/api/v1",
3351
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3352
- reasoning: true,
3353
- input: ["text"],
3354
- cost: {
3355
- input: 0,
3356
- output: 0,
3357
- cacheRead: 0,
3358
- cacheWrite: 0,
3359
- },
3360
- contextWindow: 262144,
3361
- maxTokens: 32768,
3362
- },
3363
- "qwen/qwen-2.5-72b-instruct": {
3364
- id: "qwen/qwen-2.5-72b-instruct",
3365
- name: "Qwen2.5 72B Instruct",
3366
- api: "openai-completions",
3367
- provider: "openrouter",
3368
- baseUrl: "https://openrouter.ai/api/v1",
3369
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3370
- reasoning: false,
3371
- input: ["text"],
3372
- cost: {
3373
- input: 0.36,
3374
- output: 0.4,
3375
- cacheRead: 0,
3376
- cacheWrite: 0,
3377
- },
3378
- contextWindow: 32768,
3379
- maxTokens: 16384,
3380
- },
3381
- "qwen/qwen-2.5-7b-instruct": {
3382
- id: "qwen/qwen-2.5-7b-instruct",
3383
- name: "Qwen: Qwen2.5 7B Instruct",
3384
- api: "openai-completions",
3385
- provider: "openrouter",
3386
- baseUrl: "https://openrouter.ai/api/v1",
3387
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3388
- reasoning: false,
3389
- input: ["text"],
3390
- cost: {
3391
- input: 0.04,
3392
- output: 0.1,
3393
- cacheRead: 0,
3394
- cacheWrite: 0,
3395
- },
3396
- contextWindow: 32768,
3397
- maxTokens: 32768,
3398
- },
3399
- "qwen/qwen-plus": {
3400
- id: "qwen/qwen-plus",
3401
- name: "Qwen: Qwen-Plus",
3402
- api: "openai-completions",
3403
- provider: "openrouter",
3404
- baseUrl: "https://openrouter.ai/api/v1",
3405
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3406
- reasoning: false,
3407
- input: ["text"],
3408
- cost: {
3409
- input: 0.26,
3410
- output: 0.78,
3411
- cacheRead: 0.052,
3412
- cacheWrite: 0.325,
3413
- },
3414
- contextWindow: 1000000,
3415
- maxTokens: 32768,
3416
- },
3417
- "qwen/qwen-plus-2025-07-28": {
3418
- id: "qwen/qwen-plus-2025-07-28",
3419
- name: "Qwen: Qwen Plus 0728",
3420
- api: "openai-completions",
3421
- provider: "openrouter",
3422
- baseUrl: "https://openrouter.ai/api/v1",
3423
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3424
- reasoning: false,
3425
- input: ["text"],
3426
- cost: {
3427
- input: 0.26,
3428
- output: 0.78,
3429
- cacheRead: 0,
3430
- cacheWrite: 0,
3431
- },
3432
- contextWindow: 1000000,
3433
- maxTokens: 32768,
3434
- },
3435
- "qwen/qwen-plus-2025-07-28:thinking": {
3436
- id: "qwen/qwen-plus-2025-07-28:thinking",
3437
- name: "Qwen: Qwen Plus 0728 (thinking)",
3438
- api: "openai-completions",
3439
- provider: "openrouter",
3440
- baseUrl: "https://openrouter.ai/api/v1",
3441
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3442
- reasoning: true,
3443
- input: ["text"],
3444
- cost: {
3445
- input: 0.26,
3446
- output: 0.78,
3447
- cacheRead: 0,
3448
- cacheWrite: 0.325,
3449
- },
3450
- contextWindow: 1000000,
3451
- maxTokens: 32768,
3452
- },
3453
- "qwen/qwen3-14b": {
3454
- id: "qwen/qwen3-14b",
3455
- name: "Qwen: Qwen3 14B",
3456
- api: "openai-completions",
3457
- provider: "openrouter",
3458
- baseUrl: "https://openrouter.ai/api/v1",
3459
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3460
- reasoning: true,
3461
- input: ["text"],
3462
- cost: {
3463
- input: 0.12,
3464
- output: 0.24,
3465
- cacheRead: 0,
3466
- cacheWrite: 0,
3467
- },
3468
- contextWindow: 40960,
3469
- maxTokens: 16384,
3470
- },
3471
- "qwen/qwen3-235b-a22b": {
3472
- id: "qwen/qwen3-235b-a22b",
3473
- name: "Qwen: Qwen3 235B A22B",
3474
- api: "openai-completions",
3475
- provider: "openrouter",
3476
- baseUrl: "https://openrouter.ai/api/v1",
3477
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3478
- reasoning: true,
3479
- input: ["text"],
3480
- cost: {
3481
- input: 0.455,
3482
- output: 1.82,
3483
- cacheRead: 0,
3484
- cacheWrite: 0,
3485
- },
3486
- contextWindow: 131072,
3487
- maxTokens: 8192,
3488
- },
3489
- "qwen/qwen3-235b-a22b-2507": {
3490
- id: "qwen/qwen3-235b-a22b-2507",
3491
- name: "Qwen: Qwen3 235B A22B Instruct 2507",
3492
- api: "openai-completions",
3493
- provider: "openrouter",
3494
- baseUrl: "https://openrouter.ai/api/v1",
3495
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3496
- reasoning: false,
3497
- input: ["text"],
3498
- cost: {
3499
- input: 0.09,
3500
- output: 0.55,
3501
- cacheRead: 0,
3502
- cacheWrite: 0,
3503
- },
3504
- contextWindow: 262144,
3505
- maxTokens: 16384,
3506
- },
3507
- "qwen/qwen3-235b-a22b-thinking-2507": {
3508
- id: "qwen/qwen3-235b-a22b-thinking-2507",
3509
- name: "Qwen: Qwen3 235B A22B Thinking 2507",
3510
- api: "openai-completions",
3511
- provider: "openrouter",
3512
- baseUrl: "https://openrouter.ai/api/v1",
3513
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3514
- reasoning: true,
3515
- input: ["text"],
3516
- cost: {
3517
- input: 0.1495,
3518
- output: 1.495,
3519
- cacheRead: 0,
3520
- cacheWrite: 0,
3521
- },
3522
- contextWindow: 131072,
3523
- maxTokens: 4096,
3524
- },
3525
- "qwen/qwen3-30b-a3b": {
3526
- id: "qwen/qwen3-30b-a3b",
3527
- name: "Qwen: Qwen3 30B A3B",
3528
- api: "openai-completions",
3529
- provider: "openrouter",
3530
- baseUrl: "https://openrouter.ai/api/v1",
3531
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3532
- reasoning: true,
3533
- input: ["text"],
3534
- cost: {
3535
- input: 0.12,
3536
- output: 0.5,
3537
- cacheRead: 0,
3538
- cacheWrite: 0,
3539
- },
3540
- contextWindow: 40960,
3541
- maxTokens: 16384,
3542
- },
3543
- "qwen/qwen3-30b-a3b-instruct-2507": {
3544
- id: "qwen/qwen3-30b-a3b-instruct-2507",
3545
- name: "Qwen: Qwen3 30B A3B Instruct 2507",
3546
- api: "openai-completions",
3547
- provider: "openrouter",
3548
- baseUrl: "https://openrouter.ai/api/v1",
3549
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3550
- reasoning: false,
3551
- input: ["text"],
3552
- cost: {
3553
- input: 0.1,
3554
- output: 0.3,
3555
- cacheRead: 0,
3556
- cacheWrite: 0,
3557
- },
3558
- contextWindow: 262144,
3559
- maxTokens: 4096,
3560
- },
3561
- "qwen/qwen3-30b-a3b-thinking-2507": {
3562
- id: "qwen/qwen3-30b-a3b-thinking-2507",
3563
- name: "Qwen: Qwen3 30B A3B Thinking 2507",
3564
- api: "openai-completions",
3565
- provider: "openrouter",
3566
- baseUrl: "https://openrouter.ai/api/v1",
3567
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3568
- reasoning: true,
3569
- input: ["text"],
3570
- cost: {
3571
- input: 0.13,
3572
- output: 1.56,
3573
- cacheRead: 0,
3574
- cacheWrite: 0,
3575
- },
3576
- contextWindow: 81920,
3577
- maxTokens: 32768,
3578
- },
3579
- "qwen/qwen3-32b": {
3580
- id: "qwen/qwen3-32b",
3581
- name: "Qwen: Qwen3 32B",
3582
- api: "openai-completions",
3583
- provider: "openrouter",
3584
- baseUrl: "https://openrouter.ai/api/v1",
3585
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3586
- reasoning: true,
3587
- input: ["text"],
3588
- cost: {
3589
- input: 0.08,
3590
- output: 0.28,
3591
- cacheRead: 0,
3592
- cacheWrite: 0,
3593
- },
3594
- contextWindow: 40960,
3595
- maxTokens: 16384,
3596
- },
3597
- "qwen/qwen3-8b": {
3598
- id: "qwen/qwen3-8b",
3599
- name: "Qwen: Qwen3 8B",
3600
- api: "openai-completions",
3601
- provider: "openrouter",
3602
- baseUrl: "https://openrouter.ai/api/v1",
3603
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3604
- reasoning: true,
3605
- input: ["text"],
3606
- cost: {
3607
- input: 0.117,
3608
- output: 0.455,
3609
- cacheRead: 0,
3610
- cacheWrite: 0,
3611
- },
3612
- contextWindow: 131072,
3613
- maxTokens: 8192,
3614
- },
3615
- "qwen/qwen3-coder": {
3616
- id: "qwen/qwen3-coder",
3617
- name: "Qwen: Qwen3 Coder 480B A35B",
3618
- api: "openai-completions",
3619
- provider: "openrouter",
3620
- baseUrl: "https://openrouter.ai/api/v1",
3621
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3622
- reasoning: false,
3623
- input: ["text"],
3624
- cost: {
3625
- input: 0.3,
3626
- output: 1,
3627
- cacheRead: 0.1,
3628
- cacheWrite: 0,
3629
- },
3630
- contextWindow: 262144,
3631
- maxTokens: 65536,
3632
- },
3633
- "qwen/qwen3-coder-30b-a3b-instruct": {
3634
- id: "qwen/qwen3-coder-30b-a3b-instruct",
3635
- name: "Qwen: Qwen3 Coder 30B A3B Instruct",
3636
- api: "openai-completions",
3637
- provider: "openrouter",
3638
- baseUrl: "https://openrouter.ai/api/v1",
3639
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3640
- reasoning: false,
3641
- input: ["text"],
3642
- cost: {
3643
- input: 0.07,
3644
- output: 0.27,
3645
- cacheRead: 0,
3646
- cacheWrite: 0,
3647
- },
3648
- contextWindow: 160000,
3649
- maxTokens: 32768,
3650
- },
3651
- "qwen/qwen3-coder-flash": {
3652
- id: "qwen/qwen3-coder-flash",
3653
- name: "Qwen: Qwen3 Coder Flash",
3654
- api: "openai-completions",
3655
- provider: "openrouter",
3656
- baseUrl: "https://openrouter.ai/api/v1",
3657
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3658
- reasoning: false,
3659
- input: ["text"],
3660
- cost: {
3661
- input: 0.195,
3662
- output: 0.975,
3663
- cacheRead: 0.039,
3664
- cacheWrite: 0.24375,
3665
- },
3666
- contextWindow: 1000000,
3667
- maxTokens: 65536,
3668
- },
3669
- "qwen/qwen3-coder-next": {
3670
- id: "qwen/qwen3-coder-next",
3671
- name: "Qwen: Qwen3 Coder Next",
3672
- api: "openai-completions",
3673
- provider: "openrouter",
3674
- baseUrl: "https://openrouter.ai/api/v1",
3675
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3676
- reasoning: false,
3677
- input: ["text"],
3678
- cost: {
3679
- input: 0.11,
3680
- output: 0.8,
3681
- cacheRead: 0.07,
3682
- cacheWrite: 0,
3683
- },
3684
- contextWindow: 262144,
3685
- maxTokens: 262144,
3686
- },
3687
- "qwen/qwen3-coder-plus": {
3688
- id: "qwen/qwen3-coder-plus",
3689
- name: "Qwen: Qwen3 Coder Plus",
3690
- api: "openai-completions",
3691
- provider: "openrouter",
3692
- baseUrl: "https://openrouter.ai/api/v1",
3693
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3694
- reasoning: false,
3695
- input: ["text"],
3696
- cost: {
3697
- input: 0.65,
3698
- output: 3.25,
3699
- cacheRead: 0.13,
3700
- cacheWrite: 0.8125,
3701
- },
3702
- contextWindow: 1000000,
3703
- maxTokens: 65536,
3704
- },
3705
- "qwen/qwen3-coder:free": {
3706
- id: "qwen/qwen3-coder:free",
3707
- name: "Qwen: Qwen3 Coder 480B A35B (free)",
3708
- api: "openai-completions",
3709
- provider: "openrouter",
3710
- baseUrl: "https://openrouter.ai/api/v1",
3711
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3712
- reasoning: false,
3713
- input: ["text"],
3714
- cost: {
3715
- input: 0,
3716
- output: 0,
3717
- cacheRead: 0,
3718
- cacheWrite: 0,
3719
- },
3720
- contextWindow: 262000,
3721
- maxTokens: 262000,
3722
- },
3723
- "qwen/qwen3-max": {
3724
- id: "qwen/qwen3-max",
3725
- name: "Qwen: Qwen3 Max",
3726
- api: "openai-completions",
3727
- provider: "openrouter",
3728
- baseUrl: "https://openrouter.ai/api/v1",
3729
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3730
- reasoning: false,
3731
- input: ["text"],
3732
- cost: {
3733
- input: 0.78,
3734
- output: 3.9,
3735
- cacheRead: 0.156,
3736
- cacheWrite: 0.975,
3737
- },
3738
- contextWindow: 262144,
3739
- maxTokens: 32768,
3740
- },
3741
- "qwen/qwen3-max-thinking": {
3742
- id: "qwen/qwen3-max-thinking",
3743
- name: "Qwen: Qwen3 Max Thinking",
3744
- api: "openai-completions",
3745
- provider: "openrouter",
3746
- baseUrl: "https://openrouter.ai/api/v1",
3747
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3748
- reasoning: true,
3749
- input: ["text"],
3750
- cost: {
3751
- input: 0.78,
3752
- output: 3.9,
3753
- cacheRead: 0,
3754
- cacheWrite: 0,
3755
- },
3756
- contextWindow: 262144,
3757
- maxTokens: 32768,
3758
- },
3759
- "qwen/qwen3-next-80b-a3b-instruct": {
3760
- id: "qwen/qwen3-next-80b-a3b-instruct",
3761
- name: "Qwen: Qwen3 Next 80B A3B Instruct",
3762
- api: "openai-completions",
3763
- provider: "openrouter",
3764
- baseUrl: "https://openrouter.ai/api/v1",
3765
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3766
- reasoning: false,
3767
- input: ["text"],
3768
- cost: {
3769
- input: 0.1,
3770
- output: 1.1,
3771
- cacheRead: 0.07,
3772
- cacheWrite: 0,
3773
- },
3774
- contextWindow: 262144,
3775
- maxTokens: 262144,
3776
- },
3777
- "qwen/qwen3-next-80b-a3b-instruct:free": {
3778
- id: "qwen/qwen3-next-80b-a3b-instruct:free",
3779
- name: "Qwen: Qwen3 Next 80B A3B Instruct (free)",
3780
- api: "openai-completions",
3781
- provider: "openrouter",
3782
- baseUrl: "https://openrouter.ai/api/v1",
3783
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3784
- reasoning: false,
3785
- input: ["text"],
3786
- cost: {
3787
- input: 0,
3788
- output: 0,
3789
- cacheRead: 0,
3790
- cacheWrite: 0,
3791
- },
3792
- contextWindow: 262144,
3793
- maxTokens: 4096,
3794
- },
3795
- "qwen/qwen3-next-80b-a3b-thinking": {
3796
- id: "qwen/qwen3-next-80b-a3b-thinking",
3797
- name: "Qwen: Qwen3 Next 80B A3B Thinking",
3798
- api: "openai-completions",
3799
- provider: "openrouter",
3800
- baseUrl: "https://openrouter.ai/api/v1",
3801
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3802
- reasoning: true,
3803
- input: ["text"],
3804
- cost: {
3805
- input: 0.0975,
3806
- output: 0.78,
3807
- cacheRead: 0,
3808
- cacheWrite: 0,
3809
- },
3810
- contextWindow: 131072,
3811
- maxTokens: 32768,
3812
- },
3813
- "qwen/qwen3-vl-235b-a22b-instruct": {
3814
- id: "qwen/qwen3-vl-235b-a22b-instruct",
3815
- name: "Qwen: Qwen3 VL 235B A22B Instruct",
3816
- api: "openai-completions",
3817
- provider: "openrouter",
3818
- baseUrl: "https://openrouter.ai/api/v1",
3819
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3820
- reasoning: false,
3821
- input: ["text", "image"],
3822
- cost: {
3823
- input: 0.21,
3824
- output: 1.9,
3825
- cacheRead: 0.1,
3826
- cacheWrite: 0,
3827
- },
3828
- contextWindow: 131072,
3829
- maxTokens: 32768,
3830
- },
3831
- "qwen/qwen3-vl-235b-a22b-thinking": {
3832
- id: "qwen/qwen3-vl-235b-a22b-thinking",
3833
- name: "Qwen: Qwen3 VL 235B A22B Thinking",
3834
- api: "openai-completions",
3835
- provider: "openrouter",
3836
- baseUrl: "https://openrouter.ai/api/v1",
3837
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3838
- reasoning: true,
3839
- input: ["text", "image"],
3840
- cost: {
3841
- input: 0.26,
3842
- output: 2.6,
3843
- cacheRead: 0,
3844
- cacheWrite: 0,
3845
- },
3846
- contextWindow: 131072,
3847
- maxTokens: 32768,
3848
- },
3849
- "qwen/qwen3-vl-30b-a3b-instruct": {
3850
- id: "qwen/qwen3-vl-30b-a3b-instruct",
3851
- name: "Qwen: Qwen3 VL 30B A3B Instruct",
3852
- api: "openai-completions",
3853
- provider: "openrouter",
3854
- baseUrl: "https://openrouter.ai/api/v1",
3855
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3856
- reasoning: false,
3857
- input: ["text", "image"],
3858
- cost: {
3859
- input: 0.13,
3860
- output: 0.52,
3861
- cacheRead: 0,
3862
- cacheWrite: 0,
3863
- },
3864
- contextWindow: 131072,
3865
- maxTokens: 32768,
3866
- },
3867
- "qwen/qwen3-vl-30b-a3b-thinking": {
3868
- id: "qwen/qwen3-vl-30b-a3b-thinking",
3869
- name: "Qwen: Qwen3 VL 30B A3B Thinking",
3870
- api: "openai-completions",
3871
- provider: "openrouter",
3872
- baseUrl: "https://openrouter.ai/api/v1",
3873
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3874
- reasoning: true,
3875
- input: ["text", "image"],
3876
- cost: {
3877
- input: 0.13,
3878
- output: 1.56,
3879
- cacheRead: 0,
3880
- cacheWrite: 0,
3881
- },
3882
- contextWindow: 131072,
3883
- maxTokens: 32768,
3884
- },
3885
- "qwen/qwen3-vl-32b-instruct": {
3886
- id: "qwen/qwen3-vl-32b-instruct",
3887
- name: "Qwen: Qwen3 VL 32B Instruct",
3888
- api: "openai-completions",
3889
- provider: "openrouter",
3890
- baseUrl: "https://openrouter.ai/api/v1",
3891
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3892
- reasoning: false,
3893
- input: ["text", "image"],
3894
- cost: {
3895
- input: 0.104,
3896
- output: 0.416,
3897
- cacheRead: 0,
3898
- cacheWrite: 0,
3899
- },
3900
- contextWindow: 131072,
3901
- maxTokens: 32768,
3902
- },
3903
- "qwen/qwen3-vl-8b-instruct": {
3904
- id: "qwen/qwen3-vl-8b-instruct",
3905
- name: "Qwen: Qwen3 VL 8B Instruct",
3906
- api: "openai-completions",
3907
- provider: "openrouter",
3908
- baseUrl: "https://openrouter.ai/api/v1",
3909
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3910
- reasoning: false,
3911
- input: ["text", "image"],
3912
- cost: {
3913
- input: 0.117,
3914
- output: 0.455,
3915
- cacheRead: 0,
3916
- cacheWrite: 0,
3917
- },
3918
- contextWindow: 131072,
3919
- maxTokens: 32768,
3920
- },
3921
- "qwen/qwen3-vl-8b-thinking": {
3922
- id: "qwen/qwen3-vl-8b-thinking",
3923
- name: "Qwen: Qwen3 VL 8B Thinking",
3924
- api: "openai-completions",
3925
- provider: "openrouter",
3926
- baseUrl: "https://openrouter.ai/api/v1",
3927
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3928
- reasoning: true,
3929
- input: ["text", "image"],
3930
- cost: {
3931
- input: 0.117,
3932
- output: 1.365,
3933
- cacheRead: 0,
3934
- cacheWrite: 0,
3935
- },
3936
- contextWindow: 131072,
3937
- maxTokens: 32768,
3938
- },
3939
- "qwen/qwen3.5-122b-a10b": {
3940
- id: "qwen/qwen3.5-122b-a10b",
3941
- name: "Qwen: Qwen3.5-122B-A10B",
3942
- api: "openai-completions",
3943
- provider: "openrouter",
3944
- baseUrl: "https://openrouter.ai/api/v1",
3945
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3946
- reasoning: true,
3947
- input: ["text", "image"],
3948
- cost: {
3949
- input: 0.26,
3950
- output: 2.08,
3951
- cacheRead: 0,
3952
- cacheWrite: 0,
3953
- },
3954
- contextWindow: 262144,
3955
- maxTokens: 65536,
3956
- },
3957
- "qwen/qwen3.5-27b": {
3958
- id: "qwen/qwen3.5-27b",
3959
- name: "Qwen: Qwen3.5-27B",
3960
- api: "openai-completions",
3961
- provider: "openrouter",
3962
- baseUrl: "https://openrouter.ai/api/v1",
3963
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3964
- reasoning: true,
3965
- input: ["text", "image"],
3966
- cost: {
3967
- input: 0.195,
3968
- output: 1.56,
3969
- cacheRead: 0,
3970
- cacheWrite: 0,
3971
- },
3972
- contextWindow: 262144,
3973
- maxTokens: 65536,
3974
- },
3975
- "qwen/qwen3.5-35b-a3b": {
3976
- id: "qwen/qwen3.5-35b-a3b",
3977
- name: "Qwen: Qwen3.5-35B-A3B",
3978
- api: "openai-completions",
3979
- provider: "openrouter",
3980
- baseUrl: "https://openrouter.ai/api/v1",
3981
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3982
- reasoning: true,
3983
- input: ["text", "image"],
3984
- cost: {
3985
- input: 0.14,
3986
- output: 1,
3987
- cacheRead: 0,
3988
- cacheWrite: 0,
3989
- },
3990
- contextWindow: 262144,
3991
- maxTokens: 262144,
3992
- },
3993
- "qwen/qwen3.5-397b-a17b": {
3994
- id: "qwen/qwen3.5-397b-a17b",
3995
- name: "Qwen: Qwen3.5 397B A17B",
3996
- api: "openai-completions",
3997
- provider: "openrouter",
3998
- baseUrl: "https://openrouter.ai/api/v1",
3999
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4000
- reasoning: true,
4001
- input: ["text", "image"],
4002
- cost: {
4003
- input: 0.45,
4004
- output: 3,
4005
- cacheRead: 0.225,
4006
- cacheWrite: 0,
4007
- },
4008
- contextWindow: 262144,
4009
- maxTokens: 65536,
4010
- },
4011
- "qwen/qwen3.5-9b": {
4012
- id: "qwen/qwen3.5-9b",
4013
- name: "Qwen: Qwen3.5-9B",
4014
- api: "openai-completions",
4015
- provider: "openrouter",
4016
- baseUrl: "https://openrouter.ai/api/v1",
4017
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4018
- reasoning: true,
4019
- input: ["text", "image"],
4020
- cost: {
4021
- input: 0.1,
4022
- output: 0.15,
4023
- cacheRead: 0,
4024
- cacheWrite: 0,
4025
- },
4026
- contextWindow: 262144,
4027
- maxTokens: 262144,
4028
- },
4029
- "qwen/qwen3.5-flash-02-23": {
4030
- id: "qwen/qwen3.5-flash-02-23",
4031
- name: "Qwen: Qwen3.5-Flash",
4032
- api: "openai-completions",
4033
- provider: "openrouter",
4034
- baseUrl: "https://openrouter.ai/api/v1",
4035
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4036
- reasoning: true,
4037
- input: ["text", "image"],
4038
- cost: {
4039
- input: 0.065,
4040
- output: 0.26,
4041
- cacheRead: 0,
4042
- cacheWrite: 0,
4043
- },
4044
- contextWindow: 1000000,
4045
- maxTokens: 65536,
4046
- },
4047
- "qwen/qwen3.5-plus-02-15": {
4048
- id: "qwen/qwen3.5-plus-02-15",
4049
- name: "Qwen: Qwen3.5 Plus 2026-02-15",
4050
- api: "openai-completions",
4051
- provider: "openrouter",
4052
- baseUrl: "https://openrouter.ai/api/v1",
4053
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4054
- reasoning: true,
4055
- input: ["text", "image"],
4056
- cost: {
4057
- input: 0.26,
4058
- output: 1.56,
4059
- cacheRead: 0,
4060
- cacheWrite: 0,
4061
- },
4062
- contextWindow: 1000000,
4063
- maxTokens: 65536,
4064
- },
4065
- "qwen/qwen3.5-plus-20260420": {
4066
- id: "qwen/qwen3.5-plus-20260420",
4067
- name: "Qwen: Qwen3.5 Plus 2026-04-20",
4068
- api: "openai-completions",
4069
- provider: "openrouter",
4070
- baseUrl: "https://openrouter.ai/api/v1",
4071
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4072
- reasoning: true,
4073
- input: ["text", "image"],
4074
- cost: {
4075
- input: 0.3,
4076
- output: 1.8,
4077
- cacheRead: 0,
4078
- cacheWrite: 0.375,
4079
- },
4080
- contextWindow: 1000000,
4081
- maxTokens: 65536,
4082
- },
4083
- "qwen/qwen3.6-27b": {
4084
- id: "qwen/qwen3.6-27b",
4085
- name: "Qwen: Qwen3.6 27B",
4086
- api: "openai-completions",
4087
- provider: "openrouter",
4088
- baseUrl: "https://openrouter.ai/api/v1",
4089
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4090
- reasoning: true,
4091
- input: ["text", "image"],
4092
- cost: {
4093
- input: 0.45,
4094
- output: 2.7,
4095
- cacheRead: 0,
4096
- cacheWrite: 0,
4097
- },
4098
- contextWindow: 262144,
4099
- maxTokens: 65536,
4100
- },
4101
- "qwen/qwen3.6-35b-a3b": {
4102
- id: "qwen/qwen3.6-35b-a3b",
4103
- name: "Qwen: Qwen3.6 35B A3B",
4104
- api: "openai-completions",
4105
- provider: "openrouter",
4106
- baseUrl: "https://openrouter.ai/api/v1",
4107
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4108
- reasoning: true,
4109
- input: ["text", "image"],
4110
- cost: {
4111
- input: 0.14,
4112
- output: 1,
4113
- cacheRead: 0,
4114
- cacheWrite: 0,
4115
- },
4116
- contextWindow: 262144,
4117
- maxTokens: 262144,
4118
- },
4119
- "qwen/qwen3.6-flash": {
4120
- id: "qwen/qwen3.6-flash",
4121
- name: "Qwen: Qwen3.6 Flash",
4122
- api: "openai-completions",
4123
- provider: "openrouter",
4124
- baseUrl: "https://openrouter.ai/api/v1",
4125
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4126
- reasoning: true,
4127
- input: ["text", "image"],
4128
- cost: {
4129
- input: 0.1875,
4130
- output: 1.125,
4131
- cacheRead: 0,
4132
- cacheWrite: 0.234375,
4133
- },
4134
- contextWindow: 1000000,
4135
- maxTokens: 65536,
4136
- },
4137
- "qwen/qwen3.6-max-preview": {
4138
- id: "qwen/qwen3.6-max-preview",
4139
- name: "Qwen: Qwen3.6 Max Preview",
4140
- api: "openai-completions",
4141
- provider: "openrouter",
4142
- baseUrl: "https://openrouter.ai/api/v1",
4143
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4144
- reasoning: true,
4145
- input: ["text"],
4146
- cost: {
4147
- input: 1.04,
4148
- output: 6.24,
4149
- cacheRead: 0,
4150
- cacheWrite: 1.3,
4151
- },
4152
- contextWindow: 262144,
4153
- maxTokens: 65536,
4154
- },
4155
- "qwen/qwen3.6-plus": {
4156
- id: "qwen/qwen3.6-plus",
4157
- name: "Qwen: Qwen3.6 Plus",
4158
- api: "openai-completions",
4159
- provider: "openrouter",
4160
- baseUrl: "https://openrouter.ai/api/v1",
4161
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4162
- reasoning: true,
4163
- input: ["text", "image"],
4164
- cost: {
4165
- input: 0.325,
4166
- output: 1.95,
4167
- cacheRead: 0,
4168
- cacheWrite: 0.40625,
4169
- },
4170
- contextWindow: 1000000,
4171
- maxTokens: 65536,
4172
- },
4173
- "qwen/qwen3.7-max": {
4174
- id: "qwen/qwen3.7-max",
4175
- name: "Qwen: Qwen3.7 Max",
4176
- api: "openai-completions",
4177
- provider: "openrouter",
4178
- baseUrl: "https://openrouter.ai/api/v1",
4179
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4180
- reasoning: true,
4181
- input: ["text"],
4182
- cost: {
4183
- input: 1.475,
4184
- output: 4.425,
4185
- cacheRead: 0.295,
4186
- cacheWrite: 1.84375,
4187
- },
4188
- contextWindow: 1000000,
4189
- maxTokens: 65536,
4190
- },
4191
- "qwen/qwen3.7-plus": {
4192
- id: "qwen/qwen3.7-plus",
4193
- name: "Qwen: Qwen3.7 Plus",
4194
- api: "openai-completions",
4195
- provider: "openrouter",
4196
- baseUrl: "https://openrouter.ai/api/v1",
4197
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4198
- reasoning: true,
4199
- input: ["text", "image"],
4200
- cost: {
4201
- input: 0.32,
4202
- output: 1.28,
4203
- cacheRead: 0.064,
4204
- cacheWrite: 0.4,
4205
- },
4206
- contextWindow: 1000000,
4207
- maxTokens: 65536,
4208
- },
4209
- "rekaai/reka-edge": {
4210
- id: "rekaai/reka-edge",
4211
- name: "Reka Edge",
4212
- api: "openai-completions",
4213
- provider: "openrouter",
4214
- baseUrl: "https://openrouter.ai/api/v1",
4215
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4216
- reasoning: false,
4217
- input: ["text", "image"],
4218
- cost: {
4219
- input: 0.1,
4220
- output: 0.1,
4221
- cacheRead: 0,
4222
- cacheWrite: 0,
4223
- },
4224
- contextWindow: 16384,
4225
- maxTokens: 16384,
4226
- },
4227
- "relace/relace-search": {
4228
- id: "relace/relace-search",
4229
- name: "Relace: Relace Search",
4230
- api: "openai-completions",
4231
- provider: "openrouter",
4232
- baseUrl: "https://openrouter.ai/api/v1",
4233
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4234
- reasoning: false,
4235
- input: ["text"],
4236
- cost: {
4237
- input: 1,
4238
- output: 3,
4239
- cacheRead: 0,
4240
- cacheWrite: 0,
4241
- },
4242
- contextWindow: 256000,
4243
- maxTokens: 128000,
4244
- },
4245
- "sakana/fugu-ultra": {
4246
- id: "sakana/fugu-ultra",
4247
- name: "Sakana: Fugu Ultra",
4248
- api: "openai-completions",
4249
- provider: "openrouter",
4250
- baseUrl: "https://openrouter.ai/api/v1",
4251
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4252
- reasoning: true,
4253
- input: ["text", "image"],
4254
- cost: {
4255
- input: 5,
4256
- output: 30,
4257
- cacheRead: 0.5,
4258
- cacheWrite: 0,
4259
- },
4260
- contextWindow: 1000000,
4261
- maxTokens: 128000,
4262
- },
4263
- "sao10k/l3.1-euryale-70b": {
4264
- id: "sao10k/l3.1-euryale-70b",
4265
- name: "Sao10K: Llama 3.1 Euryale 70B v2.2",
4266
- api: "openai-completions",
4267
- provider: "openrouter",
4268
- baseUrl: "https://openrouter.ai/api/v1",
4269
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4270
- reasoning: false,
4271
- input: ["text"],
4272
- cost: {
4273
- input: 0.85,
4274
- output: 0.85,
4275
- cacheRead: 0,
4276
- cacheWrite: 0,
4277
- },
4278
- contextWindow: 131072,
4279
- maxTokens: 16384,
4280
- },
4281
- "stepfun/step-3.5-flash": {
4282
- id: "stepfun/step-3.5-flash",
4283
- name: "StepFun: Step 3.5 Flash",
4284
- api: "openai-completions",
4285
- provider: "openrouter",
4286
- baseUrl: "https://openrouter.ai/api/v1",
4287
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4288
- reasoning: true,
4289
- input: ["text"],
4290
- cost: {
4291
- input: 0.1,
4292
- output: 0.3,
4293
- cacheRead: 0,
4294
- cacheWrite: 0,
4295
- },
4296
- contextWindow: 262144,
4297
- maxTokens: 65536,
4298
- },
4299
- "stepfun/step-3.7-flash": {
4300
- id: "stepfun/step-3.7-flash",
4301
- name: "StepFun: Step 3.7 Flash",
4302
- api: "openai-completions",
4303
- provider: "openrouter",
4304
- baseUrl: "https://openrouter.ai/api/v1",
4305
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4306
- reasoning: true,
4307
- input: ["text", "image"],
4308
- cost: {
4309
- input: 0.2,
4310
- output: 1.15,
4311
- cacheRead: 0.04,
4312
- cacheWrite: 0,
4313
- },
4314
- contextWindow: 256000,
4315
- maxTokens: 256000,
4316
- },
4317
- "tencent/hy3": {
4318
- id: "tencent/hy3",
4319
- name: "Tencent: Hy3",
4320
- api: "openai-completions",
4321
- provider: "openrouter",
4322
- baseUrl: "https://openrouter.ai/api/v1",
4323
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4324
- reasoning: true,
4325
- input: ["text"],
4326
- cost: {
4327
- input: 0.2,
4328
- output: 0.8,
4329
- cacheRead: 0.05,
4330
- cacheWrite: 0,
4331
- },
4332
- contextWindow: 262144,
4333
- maxTokens: 131072,
4334
- },
4335
- "tencent/hy3-preview": {
4336
- id: "tencent/hy3-preview",
4337
- name: "Tencent: Hy3 preview",
4338
- api: "openai-completions",
4339
- provider: "openrouter",
4340
- baseUrl: "https://openrouter.ai/api/v1",
4341
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4342
- reasoning: true,
4343
- input: ["text"],
4344
- cost: {
4345
- input: 0.063,
4346
- output: 0.21,
4347
- cacheRead: 0.021,
4348
- cacheWrite: 0,
4349
- },
4350
- contextWindow: 262144,
4351
- maxTokens: 4096,
4352
- },
4353
- "tencent/hy3:free": {
4354
- id: "tencent/hy3:free",
4355
- name: "Tencent: Hy3 (free)",
4356
- api: "openai-completions",
4357
- provider: "openrouter",
4358
- baseUrl: "https://openrouter.ai/api/v1",
4359
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4360
- reasoning: true,
4361
- input: ["text"],
4362
- cost: {
4363
- input: 0,
4364
- output: 0,
4365
- cacheRead: 0,
4366
- cacheWrite: 0,
4367
- },
4368
- contextWindow: 262144,
4369
- maxTokens: 262144,
4370
- },
4371
- "thedrummer/unslopnemo-12b": {
4372
- id: "thedrummer/unslopnemo-12b",
4373
- name: "TheDrummer: UnslopNemo 12B",
4374
- api: "openai-completions",
4375
- provider: "openrouter",
4376
- baseUrl: "https://openrouter.ai/api/v1",
4377
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4378
- reasoning: false,
4379
- input: ["text"],
4380
- cost: {
4381
- input: 0.4,
4382
- output: 0.4,
4383
- cacheRead: 0,
4384
- cacheWrite: 0,
4385
- },
4386
- contextWindow: 32768,
4387
- maxTokens: 32768,
4388
- },
4389
- "upstage/solar-pro-3": {
4390
- id: "upstage/solar-pro-3",
4391
- name: "Upstage: Solar Pro 3",
4392
- api: "openai-completions",
4393
- provider: "openrouter",
4394
- baseUrl: "https://openrouter.ai/api/v1",
4395
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4396
- reasoning: true,
4397
- input: ["text"],
4398
- cost: {
4399
- input: 0.15,
4400
- output: 0.6,
4401
- cacheRead: 0.015,
4402
- cacheWrite: 0,
4403
- },
4404
- contextWindow: 128000,
4405
- maxTokens: 4096,
4406
- },
4407
- "x-ai/grok-4.20": {
4408
- id: "x-ai/grok-4.20",
4409
- name: "xAI: Grok 4.20",
4410
- api: "openai-completions",
4411
- provider: "openrouter",
4412
- baseUrl: "https://openrouter.ai/api/v1",
4413
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4414
- reasoning: true,
4415
- input: ["text", "image"],
4416
- cost: {
4417
- input: 1.25,
4418
- output: 2.5,
4419
- cacheRead: 0.2,
4420
- cacheWrite: 0,
4421
- },
4422
- contextWindow: 2000000,
4423
- maxTokens: 4096,
4424
- },
4425
- "x-ai/grok-4.3": {
4426
- id: "x-ai/grok-4.3",
4427
- name: "xAI: Grok 4.3",
4428
- api: "openai-completions",
4429
- provider: "openrouter",
4430
- baseUrl: "https://openrouter.ai/api/v1",
4431
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4432
- reasoning: true,
4433
- input: ["text", "image"],
4434
- cost: {
4435
- input: 1.25,
4436
- output: 2.5,
4437
- cacheRead: 0.2,
4438
- cacheWrite: 0,
4439
- },
4440
- contextWindow: 1000000,
4441
- maxTokens: 4096,
4442
- },
4443
- "x-ai/grok-4.5": {
4444
- id: "x-ai/grok-4.5",
4445
- name: "xAI: Grok 4.5",
4446
- api: "openai-completions",
4447
- provider: "openrouter",
4448
- baseUrl: "https://openrouter.ai/api/v1",
4449
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4450
- reasoning: true,
4451
- input: ["text", "image"],
4452
- cost: {
4453
- input: 2,
4454
- output: 6,
4455
- cacheRead: 0.5,
4456
- cacheWrite: 0,
4457
- },
4458
- contextWindow: 500000,
4459
- maxTokens: 4096,
4460
- },
4461
- "x-ai/grok-build-0.1": {
4462
- id: "x-ai/grok-build-0.1",
4463
- name: "xAI: Grok Build 0.1",
4464
- api: "openai-completions",
4465
- provider: "openrouter",
4466
- baseUrl: "https://openrouter.ai/api/v1",
4467
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4468
- reasoning: true,
4469
- input: ["text", "image"],
4470
- cost: {
4471
- input: 1,
4472
- output: 2,
4473
- cacheRead: 0.2,
4474
- cacheWrite: 0,
4475
- },
4476
- contextWindow: 256000,
4477
- maxTokens: 4096,
4478
- },
4479
- "xiaomi/mimo-v2.5": {
4480
- id: "xiaomi/mimo-v2.5",
4481
- name: "Xiaomi: MiMo-V2.5",
4482
- api: "openai-completions",
4483
- provider: "openrouter",
4484
- baseUrl: "https://openrouter.ai/api/v1",
4485
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4486
- reasoning: true,
4487
- input: ["text", "image"],
4488
- cost: {
4489
- input: 0.14,
4490
- output: 0.28,
4491
- cacheRead: 0.0028,
4492
- cacheWrite: 0,
4493
- },
4494
- contextWindow: 1048576,
4495
- maxTokens: 131072,
4496
- },
4497
- "xiaomi/mimo-v2.5-pro": {
4498
- id: "xiaomi/mimo-v2.5-pro",
4499
- name: "Xiaomi: MiMo-V2.5-Pro",
4500
- api: "openai-completions",
4501
- provider: "openrouter",
4502
- baseUrl: "https://openrouter.ai/api/v1",
4503
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4504
- reasoning: true,
4505
- input: ["text"],
4506
- cost: {
4507
- input: 0.435,
4508
- output: 0.87,
4509
- cacheRead: 0.0036,
4510
- cacheWrite: 0,
4511
- },
4512
- contextWindow: 1048576,
4513
- maxTokens: 131072,
4514
- },
4515
- "z-ai/glm-4.5": {
4516
- id: "z-ai/glm-4.5",
4517
- name: "Z.ai: GLM 4.5",
4518
- api: "openai-completions",
4519
- provider: "openrouter",
4520
- baseUrl: "https://openrouter.ai/api/v1",
4521
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4522
- reasoning: true,
4523
- input: ["text"],
4524
- cost: {
4525
- input: 0.6,
4526
- output: 2.2,
4527
- cacheRead: 0.11,
4528
- cacheWrite: 0,
4529
- },
4530
- contextWindow: 131072,
4531
- maxTokens: 98304,
4532
- },
4533
- "z-ai/glm-4.5-air": {
4534
- id: "z-ai/glm-4.5-air",
4535
- name: "Z.ai: GLM 4.5 Air",
4536
- api: "openai-completions",
4537
- provider: "openrouter",
4538
- baseUrl: "https://openrouter.ai/api/v1",
4539
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4540
- reasoning: true,
4541
- input: ["text"],
4542
- cost: {
4543
- input: 0.13,
4544
- output: 0.85,
4545
- cacheRead: 0.025,
4546
- cacheWrite: 0,
4547
- },
4548
- contextWindow: 131072,
4549
- maxTokens: 98304,
4550
- },
4551
- "z-ai/glm-4.5v": {
4552
- id: "z-ai/glm-4.5v",
4553
- name: "Z.ai: GLM 4.5V",
4554
- api: "openai-completions",
4555
- provider: "openrouter",
4556
- baseUrl: "https://openrouter.ai/api/v1",
4557
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4558
- reasoning: true,
4559
- input: ["text", "image"],
4560
- cost: {
4561
- input: 0.6,
4562
- output: 1.8,
4563
- cacheRead: 0.11,
4564
- cacheWrite: 0,
4565
- },
4566
- contextWindow: 65536,
4567
- maxTokens: 16384,
4568
- },
4569
- "z-ai/glm-4.6": {
4570
- id: "z-ai/glm-4.6",
4571
- name: "Z.ai: GLM 4.6",
4572
- api: "openai-completions",
4573
- provider: "openrouter",
4574
- baseUrl: "https://openrouter.ai/api/v1",
4575
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4576
- reasoning: true,
4577
- input: ["text"],
4578
- cost: {
4579
- input: 0.5,
4580
- output: 2,
4581
- cacheRead: 0.1,
4582
- cacheWrite: 0,
4583
- },
4584
- contextWindow: 202752,
4585
- maxTokens: 131072,
4586
- },
4587
- "z-ai/glm-4.6v": {
4588
- id: "z-ai/glm-4.6v",
4589
- name: "Z.ai: GLM 4.6V",
4590
- api: "openai-completions",
4591
- provider: "openrouter",
4592
- baseUrl: "https://openrouter.ai/api/v1",
4593
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4594
- reasoning: true,
4595
- input: ["text", "image"],
4596
- cost: {
4597
- input: 0.3,
4598
- output: 0.9,
4599
- cacheRead: 0.055,
4600
- cacheWrite: 0,
4601
- },
4602
- contextWindow: 131072,
4603
- maxTokens: 32768,
4604
- },
4605
- "z-ai/glm-4.7": {
4606
- id: "z-ai/glm-4.7",
4607
- name: "Z.ai: GLM 4.7",
4608
- api: "openai-completions",
4609
- provider: "openrouter",
4610
- baseUrl: "https://openrouter.ai/api/v1",
4611
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4612
- reasoning: true,
4613
- input: ["text"],
4614
- cost: {
4615
- input: 0.4,
4616
- output: 1.75,
4617
- cacheRead: 0.08,
4618
- cacheWrite: 0,
4619
- },
4620
- contextWindow: 202752,
4621
- maxTokens: 131072,
4622
- },
4623
- "z-ai/glm-4.7-flash": {
4624
- id: "z-ai/glm-4.7-flash",
4625
- name: "Z.ai: GLM 4.7 Flash",
4626
- api: "openai-completions",
4627
- provider: "openrouter",
4628
- baseUrl: "https://openrouter.ai/api/v1",
4629
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4630
- reasoning: true,
4631
- input: ["text"],
4632
- cost: {
4633
- input: 0.0605,
4634
- output: 0.4,
4635
- cacheRead: 0,
4636
- cacheWrite: 0,
4637
- },
4638
- contextWindow: 131072,
4639
- maxTokens: 131072,
4640
- },
4641
- "z-ai/glm-5": {
4642
- id: "z-ai/glm-5",
4643
- name: "Z.ai: GLM 5",
4644
- api: "openai-completions",
4645
- provider: "openrouter",
4646
- baseUrl: "https://openrouter.ai/api/v1",
4647
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4648
- reasoning: true,
4649
- input: ["text"],
4650
- cost: {
4651
- input: 0.6,
4652
- output: 1.9,
4653
- cacheRead: 0.119,
4654
- cacheWrite: 0,
4655
- },
4656
- contextWindow: 202752,
4657
- maxTokens: 202752,
4658
- },
4659
- "z-ai/glm-5-turbo": {
4660
- id: "z-ai/glm-5-turbo",
4661
- name: "Z.ai: GLM 5 Turbo",
4662
- api: "openai-completions",
4663
- provider: "openrouter",
4664
- baseUrl: "https://openrouter.ai/api/v1",
4665
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4666
- reasoning: true,
4667
- input: ["text"],
4668
- cost: {
4669
- input: 1.2,
4670
- output: 4,
4671
- cacheRead: 0.24,
4672
- cacheWrite: 0,
4673
- },
4674
- contextWindow: 202752,
4675
- maxTokens: 131072,
4676
- },
4677
- "z-ai/glm-5.1": {
4678
- id: "z-ai/glm-5.1",
4679
- name: "Z.ai: GLM 5.1",
4680
- api: "openai-completions",
4681
- provider: "openrouter",
4682
- baseUrl: "https://openrouter.ai/api/v1",
4683
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4684
- reasoning: true,
4685
- input: ["text"],
4686
- cost: {
4687
- input: 0.966,
4688
- output: 3.036,
4689
- cacheRead: 0.1794,
4690
- cacheWrite: 0,
4691
- },
4692
- contextWindow: 200000,
4693
- maxTokens: 128000,
4694
- },
4695
- "z-ai/glm-5.2": {
4696
- id: "z-ai/glm-5.2",
4697
- name: "Z.ai: GLM 5.2",
4698
- api: "openai-completions",
4699
- provider: "openrouter",
4700
- baseUrl: "https://openrouter.ai/api/v1",
4701
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4702
- reasoning: true,
4703
- thinkingLevelMap: { "xhigh": "xhigh" },
4704
- input: ["text"],
4705
- cost: {
4706
- input: 0.9212,
4707
- output: 2.8952,
4708
- cacheRead: 0.17108,
4709
- cacheWrite: 0,
4710
- },
4711
- contextWindow: 1048576,
4712
- maxTokens: 131072,
4713
- },
4714
- "z-ai/glm-5v-turbo": {
4715
- id: "z-ai/glm-5v-turbo",
4716
- name: "Z.ai: GLM 5V Turbo",
4717
- api: "openai-completions",
4718
- provider: "openrouter",
4719
- baseUrl: "https://openrouter.ai/api/v1",
4720
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4721
- reasoning: true,
4722
- input: ["text", "image"],
4723
- cost: {
4724
- input: 1.2,
4725
- output: 4,
4726
- cacheRead: 0.24,
4727
- cacheWrite: 0,
4728
- },
4729
- contextWindow: 202752,
4730
- maxTokens: 131072,
4731
- },
4732
- "~anthropic/claude-fable-latest": {
4733
- id: "~anthropic/claude-fable-latest",
4734
- name: "Anthropic: Claude Fable Latest",
4735
- api: "openai-completions",
4736
- provider: "openrouter",
4737
- baseUrl: "https://openrouter.ai/api/v1",
4738
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4739
- reasoning: true,
4740
- input: ["text", "image"],
4741
- cost: {
4742
- input: 10,
4743
- output: 50,
4744
- cacheRead: 1,
4745
- cacheWrite: 12.5,
4746
- },
4747
- contextWindow: 1000000,
4748
- maxTokens: 128000,
4749
- },
4750
- "~anthropic/claude-haiku-latest": {
4751
- id: "~anthropic/claude-haiku-latest",
4752
- name: "Anthropic Claude Haiku Latest",
4753
- api: "openai-completions",
4754
- provider: "openrouter",
4755
- baseUrl: "https://openrouter.ai/api/v1",
4756
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4757
- reasoning: true,
4758
- input: ["text", "image"],
4759
- cost: {
4760
- input: 1,
4761
- output: 5,
4762
- cacheRead: 0.1,
4763
- cacheWrite: 1.25,
4764
- },
4765
- contextWindow: 200000,
4766
- maxTokens: 64000,
4767
- },
4768
- "~anthropic/claude-opus-latest": {
4769
- id: "~anthropic/claude-opus-latest",
4770
- name: "Anthropic: Claude Opus Latest",
4771
- api: "openai-completions",
4772
- provider: "openrouter",
4773
- baseUrl: "https://openrouter.ai/api/v1",
4774
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4775
- reasoning: true,
4776
- input: ["text", "image"],
4777
- cost: {
4778
- input: 5,
4779
- output: 25,
4780
- cacheRead: 0.5,
4781
- cacheWrite: 6.25,
4782
- },
4783
- contextWindow: 1000000,
4784
- maxTokens: 128000,
4785
- },
4786
- "~anthropic/claude-sonnet-latest": {
4787
- id: "~anthropic/claude-sonnet-latest",
4788
- name: "Anthropic Claude Sonnet Latest",
4789
- api: "openai-completions",
4790
- provider: "openrouter",
4791
- baseUrl: "https://openrouter.ai/api/v1",
4792
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4793
- reasoning: true,
4794
- input: ["text", "image"],
4795
- cost: {
4796
- input: 2,
4797
- output: 10,
4798
- cacheRead: 0.2,
4799
- cacheWrite: 2.5,
4800
- },
4801
- contextWindow: 1000000,
4802
- maxTokens: 128000,
4803
- },
4804
- "~google/gemini-flash-latest": {
4805
- id: "~google/gemini-flash-latest",
4806
- name: "Google Gemini Flash Latest",
4807
- api: "openai-completions",
4808
- provider: "openrouter",
4809
- baseUrl: "https://openrouter.ai/api/v1",
4810
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4811
- reasoning: true,
4812
- input: ["text", "image"],
4813
- cost: {
4814
- input: 1.5,
4815
- output: 9,
4816
- cacheRead: 0.15,
4817
- cacheWrite: 0.083333,
4818
- },
4819
- contextWindow: 1048576,
4820
- maxTokens: 65536,
4821
- },
4822
- "~google/gemini-pro-latest": {
4823
- id: "~google/gemini-pro-latest",
4824
- name: "Google Gemini Pro Latest",
4825
- api: "openai-completions",
4826
- provider: "openrouter",
4827
- baseUrl: "https://openrouter.ai/api/v1",
4828
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4829
- reasoning: true,
4830
- input: ["text", "image"],
4831
- cost: {
4832
- input: 2,
4833
- output: 12,
4834
- cacheRead: 0.2,
4835
- cacheWrite: 0.375,
4836
- },
4837
- contextWindow: 1048576,
4838
- maxTokens: 65536,
4839
- },
4840
- "~moonshotai/kimi-latest": {
4841
- id: "~moonshotai/kimi-latest",
4842
- name: "MoonshotAI Kimi Latest",
4843
- api: "openai-completions",
4844
- provider: "openrouter",
4845
- baseUrl: "https://openrouter.ai/api/v1",
4846
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4847
- reasoning: true,
4848
- input: ["text", "image"],
4849
- cost: {
4850
- input: 3,
4851
- output: 15,
4852
- cacheRead: 0.3,
4853
- cacheWrite: 0,
4854
- },
4855
- contextWindow: 1048576,
4856
- maxTokens: 131072,
4857
- },
4858
- "~openai/gpt-latest": {
4859
- id: "~openai/gpt-latest",
4860
- name: "OpenAI GPT Latest",
4861
- api: "openai-completions",
4862
- provider: "openrouter",
4863
- baseUrl: "https://openrouter.ai/api/v1",
4864
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4865
- reasoning: true,
4866
- input: ["text", "image"],
4867
- cost: {
4868
- input: 5,
4869
- output: 30,
4870
- cacheRead: 0.5,
4871
- cacheWrite: 6.25,
4872
- },
4873
- contextWindow: 1050000,
4874
- maxTokens: 128000,
4875
- },
4876
- "~openai/gpt-mini-latest": {
4877
- id: "~openai/gpt-mini-latest",
4878
- name: "OpenAI GPT Mini Latest",
4879
- api: "openai-completions",
4880
- provider: "openrouter",
4881
- baseUrl: "https://openrouter.ai/api/v1",
4882
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4883
- reasoning: true,
4884
- input: ["text", "image"],
4885
- cost: {
4886
- input: 0.75,
4887
- output: 4.5,
4888
- cacheRead: 0.075,
4889
- cacheWrite: 0,
4890
- },
4891
- contextWindow: 400000,
4892
- maxTokens: 128000,
4893
- },
4894
- "~x-ai/grok-latest": {
4895
- id: "~x-ai/grok-latest",
4896
- name: "xAI: Grok Latest",
4897
- api: "openai-completions",
4898
- provider: "openrouter",
4899
- baseUrl: "https://openrouter.ai/api/v1",
4900
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4901
- reasoning: true,
4902
- input: ["text", "image"],
4903
- cost: {
4904
- input: 2,
4905
- output: 6,
4906
- cacheRead: 0.5,
4907
- cacheWrite: 0,
4908
- },
4909
- contextWindow: 500000,
4910
- maxTokens: 4096,
4911
- },
4912
- };
3
+ import values from "./data/openrouter.json" with { type: "json" };
4
+ export const OPENROUTER_MODELS = values;
4913
5
  //# sourceMappingURL=openrouter.models.js.map