@scoutqa/mastra-core 0.24.6-fork.1

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 (1064) hide show
  1. package/CHANGELOG.md +5844 -0
  2. package/LICENSE.md +15 -0
  3. package/README.md +59 -0
  4. package/a2a.d.ts +1 -0
  5. package/action.d.ts +1 -0
  6. package/agent/input-processor/processors.d.ts +1 -0
  7. package/agent.d.ts +1 -0
  8. package/ai-tracing.d.ts +1 -0
  9. package/base.d.ts +1 -0
  10. package/bundler.d.ts +1 -0
  11. package/cache.d.ts +1 -0
  12. package/deployer.d.ts +1 -0
  13. package/di.d.ts +1 -0
  14. package/dist/a2a/error.d.ts +24 -0
  15. package/dist/a2a/error.d.ts.map +1 -0
  16. package/dist/a2a/index.cjs +80 -0
  17. package/dist/a2a/index.cjs.map +1 -0
  18. package/dist/a2a/index.d.ts +4 -0
  19. package/dist/a2a/index.d.ts.map +1 -0
  20. package/dist/a2a/index.js +72 -0
  21. package/dist/a2a/index.js.map +1 -0
  22. package/dist/a2a/types.d.ts +93 -0
  23. package/dist/a2a/types.d.ts.map +1 -0
  24. package/dist/action/index.d.ts +36 -0
  25. package/dist/action/index.d.ts.map +1 -0
  26. package/dist/agent/__tests__/mock-model.d.ts +6 -0
  27. package/dist/agent/__tests__/mock-model.d.ts.map +1 -0
  28. package/dist/agent/agent.d.ts +728 -0
  29. package/dist/agent/agent.d.ts.map +1 -0
  30. package/dist/agent/agent.types.d.ts +130 -0
  31. package/dist/agent/agent.types.d.ts.map +1 -0
  32. package/dist/agent/index.cjs +53 -0
  33. package/dist/agent/index.cjs.map +1 -0
  34. package/dist/agent/index.d.ts +10 -0
  35. package/dist/agent/index.d.ts.map +1 -0
  36. package/dist/agent/index.js +4 -0
  37. package/dist/agent/index.js.map +1 -0
  38. package/dist/agent/index.warning.d.ts +13 -0
  39. package/dist/agent/index.warning.d.ts.map +1 -0
  40. package/dist/agent/input-processor/index.cjs +28 -0
  41. package/dist/agent/input-processor/index.cjs.map +1 -0
  42. package/dist/agent/input-processor/index.d.ts +10 -0
  43. package/dist/agent/input-processor/index.d.ts.map +1 -0
  44. package/dist/agent/input-processor/index.js +3 -0
  45. package/dist/agent/input-processor/index.js.map +1 -0
  46. package/dist/agent/input-processor/processors/index.d.ts +6 -0
  47. package/dist/agent/input-processor/processors/index.d.ts.map +1 -0
  48. package/dist/agent/input-processor/processors/language-detector.d.ts +18 -0
  49. package/dist/agent/input-processor/processors/language-detector.d.ts.map +1 -0
  50. package/dist/agent/input-processor/processors/moderation.d.ts +18 -0
  51. package/dist/agent/input-processor/processors/moderation.d.ts.map +1 -0
  52. package/dist/agent/input-processor/processors/pii-detector.d.ts +18 -0
  53. package/dist/agent/input-processor/processors/pii-detector.d.ts.map +1 -0
  54. package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts +18 -0
  55. package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts.map +1 -0
  56. package/dist/agent/input-processor/processors/unicode-normalizer.d.ts +18 -0
  57. package/dist/agent/input-processor/processors/unicode-normalizer.d.ts.map +1 -0
  58. package/dist/agent/message-list/index.d.ts +305 -0
  59. package/dist/agent/message-list/index.d.ts.map +1 -0
  60. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts +11 -0
  61. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -0
  62. package/dist/agent/message-list/prompt/convert-file.d.ts +7 -0
  63. package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -0
  64. package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts +4 -0
  65. package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts.map +1 -0
  66. package/dist/agent/message-list/prompt/data-content.d.ts +17 -0
  67. package/dist/agent/message-list/prompt/data-content.d.ts.map +1 -0
  68. package/dist/agent/message-list/prompt/download-assets.d.ts +15 -0
  69. package/dist/agent/message-list/prompt/download-assets.d.ts.map +1 -0
  70. package/dist/agent/message-list/prompt/image-utils.d.ts +86 -0
  71. package/dist/agent/message-list/prompt/image-utils.d.ts.map +1 -0
  72. package/dist/agent/message-list/prompt/invalid-content-error.d.ts +14 -0
  73. package/dist/agent/message-list/prompt/invalid-content-error.d.ts.map +1 -0
  74. package/dist/agent/message-list/types.d.ts +3 -0
  75. package/dist/agent/message-list/types.d.ts.map +1 -0
  76. package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts +3 -0
  77. package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts.map +1 -0
  78. package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts +3 -0
  79. package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts.map +1 -0
  80. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts +22 -0
  81. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts.map +1 -0
  82. package/dist/agent/message-list/utils/ai-v5/tool.d.ts +16 -0
  83. package/dist/agent/message-list/utils/ai-v5/tool.d.ts.map +1 -0
  84. package/dist/agent/message-list/utils/convert-messages.d.ts +91 -0
  85. package/dist/agent/message-list/utils/convert-messages.d.ts.map +1 -0
  86. package/dist/agent/save-queue/index.d.ts +68 -0
  87. package/dist/agent/save-queue/index.d.ts.map +1 -0
  88. package/dist/agent/test-utils.d.ts +82 -0
  89. package/dist/agent/test-utils.d.ts.map +1 -0
  90. package/dist/agent/trip-wire.d.ts +18 -0
  91. package/dist/agent/trip-wire.d.ts.map +1 -0
  92. package/dist/agent/types.d.ts +358 -0
  93. package/dist/agent/types.d.ts.map +1 -0
  94. package/dist/agent/utils.d.ts +104 -0
  95. package/dist/agent/utils.d.ts.map +1 -0
  96. package/dist/agent/workflows/prepare-stream/index.d.ts +158 -0
  97. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -0
  98. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +35 -0
  99. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -0
  100. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +90 -0
  101. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -0
  102. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +75 -0
  103. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -0
  104. package/dist/agent/workflows/prepare-stream/schema.d.ts +179 -0
  105. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -0
  106. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +36 -0
  107. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -0
  108. package/dist/ai-tracing/context.d.ts +21 -0
  109. package/dist/ai-tracing/context.d.ts.map +1 -0
  110. package/dist/ai-tracing/exporters/base.d.ts +111 -0
  111. package/dist/ai-tracing/exporters/base.d.ts.map +1 -0
  112. package/dist/ai-tracing/exporters/cloud.d.ts +30 -0
  113. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -0
  114. package/dist/ai-tracing/exporters/console.d.ts +10 -0
  115. package/dist/ai-tracing/exporters/console.d.ts.map +1 -0
  116. package/dist/ai-tracing/exporters/default.d.ts +98 -0
  117. package/dist/ai-tracing/exporters/default.d.ts.map +1 -0
  118. package/dist/ai-tracing/exporters/index.d.ts +9 -0
  119. package/dist/ai-tracing/exporters/index.d.ts.map +1 -0
  120. package/dist/ai-tracing/index.cjs +148 -0
  121. package/dist/ai-tracing/index.cjs.map +1 -0
  122. package/dist/ai-tracing/index.d.ts +13 -0
  123. package/dist/ai-tracing/index.d.ts.map +1 -0
  124. package/dist/ai-tracing/index.js +3 -0
  125. package/dist/ai-tracing/index.js.map +1 -0
  126. package/dist/ai-tracing/model-tracing.d.ts +63 -0
  127. package/dist/ai-tracing/model-tracing.d.ts.map +1 -0
  128. package/dist/ai-tracing/registry.d.ts +51 -0
  129. package/dist/ai-tracing/registry.d.ts.map +1 -0
  130. package/dist/ai-tracing/span_processors/index.d.ts +5 -0
  131. package/dist/ai-tracing/span_processors/index.d.ts.map +1 -0
  132. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts +85 -0
  133. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts.map +1 -0
  134. package/dist/ai-tracing/spans/base.d.ts +65 -0
  135. package/dist/ai-tracing/spans/base.d.ts.map +1 -0
  136. package/dist/ai-tracing/spans/default.d.ts +13 -0
  137. package/dist/ai-tracing/spans/default.d.ts.map +1 -0
  138. package/dist/ai-tracing/spans/index.d.ts +7 -0
  139. package/dist/ai-tracing/spans/index.d.ts.map +1 -0
  140. package/dist/ai-tracing/spans/no-op.d.ts +15 -0
  141. package/dist/ai-tracing/spans/no-op.d.ts.map +1 -0
  142. package/dist/ai-tracing/tracers/base.d.ts +105 -0
  143. package/dist/ai-tracing/tracers/base.d.ts.map +1 -0
  144. package/dist/ai-tracing/tracers/default.d.ts +7 -0
  145. package/dist/ai-tracing/tracers/default.d.ts.map +1 -0
  146. package/dist/ai-tracing/tracers/index.d.ts +6 -0
  147. package/dist/ai-tracing/tracers/index.d.ts.map +1 -0
  148. package/dist/ai-tracing/types.d.ts +696 -0
  149. package/dist/ai-tracing/types.d.ts.map +1 -0
  150. package/dist/ai-tracing/utils.d.ts +68 -0
  151. package/dist/ai-tracing/utils.d.ts.map +1 -0
  152. package/dist/base.cjs +12 -0
  153. package/dist/base.cjs.map +1 -0
  154. package/dist/base.d.ts +34 -0
  155. package/dist/base.d.ts.map +1 -0
  156. package/dist/base.js +3 -0
  157. package/dist/base.js.map +1 -0
  158. package/dist/base.warning.d.ts +9 -0
  159. package/dist/base.warning.d.ts.map +1 -0
  160. package/dist/bundler/index.cjs +12 -0
  161. package/dist/bundler/index.cjs.map +1 -0
  162. package/dist/bundler/index.d.ts +31 -0
  163. package/dist/bundler/index.d.ts.map +1 -0
  164. package/dist/bundler/index.js +3 -0
  165. package/dist/bundler/index.js.map +1 -0
  166. package/dist/bundler/index.warning.d.ts +9 -0
  167. package/dist/bundler/index.warning.d.ts.map +1 -0
  168. package/dist/bundler/types.d.ts +6 -0
  169. package/dist/bundler/types.d.ts.map +1 -0
  170. package/dist/cache/base.d.ts +14 -0
  171. package/dist/cache/base.d.ts.map +1 -0
  172. package/dist/cache/index.cjs +16 -0
  173. package/dist/cache/index.cjs.map +1 -0
  174. package/dist/cache/index.d.ts +3 -0
  175. package/dist/cache/index.d.ts.map +1 -0
  176. package/dist/cache/index.js +3 -0
  177. package/dist/cache/index.js.map +1 -0
  178. package/dist/cache/inmemory.d.ts +13 -0
  179. package/dist/cache/inmemory.d.ts.map +1 -0
  180. package/dist/chunk-3HXBPDKN.js +105 -0
  181. package/dist/chunk-3HXBPDKN.js.map +1 -0
  182. package/dist/chunk-3NTOFNIU.js +60 -0
  183. package/dist/chunk-3NTOFNIU.js.map +1 -0
  184. package/dist/chunk-3PSWNGBF.js +3 -0
  185. package/dist/chunk-3PSWNGBF.js.map +1 -0
  186. package/dist/chunk-42RUESSD.cjs +3203 -0
  187. package/dist/chunk-42RUESSD.cjs.map +1 -0
  188. package/dist/chunk-436FFEF6.js +34 -0
  189. package/dist/chunk-436FFEF6.js.map +1 -0
  190. package/dist/chunk-46XGIEXM.cjs +47 -0
  191. package/dist/chunk-46XGIEXM.cjs.map +1 -0
  192. package/dist/chunk-4D4KB75Y.cjs +9 -0
  193. package/dist/chunk-4D4KB75Y.cjs.map +1 -0
  194. package/dist/chunk-4L63C6E5.cjs +2554 -0
  195. package/dist/chunk-4L63C6E5.cjs.map +1 -0
  196. package/dist/chunk-4LSFAAZW.js +3 -0
  197. package/dist/chunk-4LSFAAZW.js.map +1 -0
  198. package/dist/chunk-4R2TBRS7.cjs +191 -0
  199. package/dist/chunk-4R2TBRS7.cjs.map +1 -0
  200. package/dist/chunk-4WQYXT2I.cjs +12 -0
  201. package/dist/chunk-4WQYXT2I.cjs.map +1 -0
  202. package/dist/chunk-5NTO7S5I.cjs +173 -0
  203. package/dist/chunk-5NTO7S5I.cjs.map +1 -0
  204. package/dist/chunk-5O52O25J.js +65 -0
  205. package/dist/chunk-5O52O25J.js.map +1 -0
  206. package/dist/chunk-5X4TQR6K.js +12 -0
  207. package/dist/chunk-5X4TQR6K.js.map +1 -0
  208. package/dist/chunk-6D2K2CAA.js +776 -0
  209. package/dist/chunk-6D2K2CAA.js.map +1 -0
  210. package/dist/chunk-6KOL2B3A.cjs +75 -0
  211. package/dist/chunk-6KOL2B3A.cjs.map +1 -0
  212. package/dist/chunk-6TEQIYXV.cjs +96 -0
  213. package/dist/chunk-6TEQIYXV.cjs.map +1 -0
  214. package/dist/chunk-6VOPKVYH.cjs +57 -0
  215. package/dist/chunk-6VOPKVYH.cjs.map +1 -0
  216. package/dist/chunk-6XCINXZ7.cjs +194 -0
  217. package/dist/chunk-6XCINXZ7.cjs.map +1 -0
  218. package/dist/chunk-7J5DS33F.js +3 -0
  219. package/dist/chunk-7J5DS33F.js.map +1 -0
  220. package/dist/chunk-A5KDVZDL.cjs +124 -0
  221. package/dist/chunk-A5KDVZDL.cjs.map +1 -0
  222. package/dist/chunk-AAYCOJUL.cjs +14 -0
  223. package/dist/chunk-AAYCOJUL.cjs.map +1 -0
  224. package/dist/chunk-ABJOUEVA.cjs +10 -0
  225. package/dist/chunk-ABJOUEVA.cjs.map +1 -0
  226. package/dist/chunk-AQGLVU53.cjs +603 -0
  227. package/dist/chunk-AQGLVU53.cjs.map +1 -0
  228. package/dist/chunk-B7V6NYWH.cjs +67 -0
  229. package/dist/chunk-B7V6NYWH.cjs.map +1 -0
  230. package/dist/chunk-BJ6XIEC6.js +13 -0
  231. package/dist/chunk-BJ6XIEC6.js.map +1 -0
  232. package/dist/chunk-BLUDYAPI.js +596 -0
  233. package/dist/chunk-BLUDYAPI.js.map +1 -0
  234. package/dist/chunk-BVUMKER5.js +7 -0
  235. package/dist/chunk-BVUMKER5.js.map +1 -0
  236. package/dist/chunk-BWYU7D33.js +192 -0
  237. package/dist/chunk-BWYU7D33.js.map +1 -0
  238. package/dist/chunk-CNMPROPI.js +24 -0
  239. package/dist/chunk-CNMPROPI.js.map +1 -0
  240. package/dist/chunk-CT2DMHGC.cjs +271 -0
  241. package/dist/chunk-CT2DMHGC.cjs.map +1 -0
  242. package/dist/chunk-CYEQK4PM.cjs +778 -0
  243. package/dist/chunk-CYEQK4PM.cjs.map +1 -0
  244. package/dist/chunk-DMBN72QF.cjs +39 -0
  245. package/dist/chunk-DMBN72QF.cjs.map +1 -0
  246. package/dist/chunk-EBVYYC2Q.cjs +111 -0
  247. package/dist/chunk-EBVYYC2Q.cjs.map +1 -0
  248. package/dist/chunk-F7GI2OYP.js +3 -0
  249. package/dist/chunk-F7GI2OYP.js.map +1 -0
  250. package/dist/chunk-FUVNHPNL.cjs +4 -0
  251. package/dist/chunk-FUVNHPNL.cjs.map +1 -0
  252. package/dist/chunk-FVIT6JZ5.cjs +4 -0
  253. package/dist/chunk-FVIT6JZ5.cjs.map +1 -0
  254. package/dist/chunk-G3KSVDML.cjs +1310 -0
  255. package/dist/chunk-G3KSVDML.cjs.map +1 -0
  256. package/dist/chunk-GPWMM745.cjs +80 -0
  257. package/dist/chunk-GPWMM745.cjs.map +1 -0
  258. package/dist/chunk-GXSERFAG.js +3 -0
  259. package/dist/chunk-GXSERFAG.js.map +1 -0
  260. package/dist/chunk-HCCXJ5YJ.js +466 -0
  261. package/dist/chunk-HCCXJ5YJ.js.map +1 -0
  262. package/dist/chunk-HLRWYUFN.js +78 -0
  263. package/dist/chunk-HLRWYUFN.js.map +1 -0
  264. package/dist/chunk-HQDX7PWJ.cjs +26 -0
  265. package/dist/chunk-HQDX7PWJ.cjs.map +1 -0
  266. package/dist/chunk-HSX2K7HB.js +164 -0
  267. package/dist/chunk-HSX2K7HB.js.map +1 -0
  268. package/dist/chunk-IAJHRFO4.cjs +2936 -0
  269. package/dist/chunk-IAJHRFO4.cjs.map +1 -0
  270. package/dist/chunk-INOOZ2A2.js +3144 -0
  271. package/dist/chunk-INOOZ2A2.js.map +1 -0
  272. package/dist/chunk-IWU4YSYT.cjs +166 -0
  273. package/dist/chunk-IWU4YSYT.cjs.map +1 -0
  274. package/dist/chunk-JQE3BLYA.js +3 -0
  275. package/dist/chunk-JQE3BLYA.js.map +1 -0
  276. package/dist/chunk-JVV5LREI.js +431 -0
  277. package/dist/chunk-JVV5LREI.js.map +1 -0
  278. package/dist/chunk-LZPOIBOR.js +87 -0
  279. package/dist/chunk-LZPOIBOR.js.map +1 -0
  280. package/dist/chunk-MKCC5K77.js +90 -0
  281. package/dist/chunk-MKCC5K77.js.map +1 -0
  282. package/dist/chunk-N2ILP2YD.js +2539 -0
  283. package/dist/chunk-N2ILP2YD.js.map +1 -0
  284. package/dist/chunk-NLNKQD2T.js +7 -0
  285. package/dist/chunk-NLNKQD2T.js.map +1 -0
  286. package/dist/chunk-NPNGPMT2.js +39 -0
  287. package/dist/chunk-NPNGPMT2.js.map +1 -0
  288. package/dist/chunk-NSIYMRY7.cjs +91 -0
  289. package/dist/chunk-NSIYMRY7.cjs.map +1 -0
  290. package/dist/chunk-OIT3PCWA.js +72 -0
  291. package/dist/chunk-OIT3PCWA.js.map +1 -0
  292. package/dist/chunk-PAOBGBU7.cjs +471 -0
  293. package/dist/chunk-PAOBGBU7.cjs.map +1 -0
  294. package/dist/chunk-PE3V7GUL.cjs +4 -0
  295. package/dist/chunk-PE3V7GUL.cjs.map +1 -0
  296. package/dist/chunk-PFXXH2RP.js +91 -0
  297. package/dist/chunk-PFXXH2RP.js.map +1 -0
  298. package/dist/chunk-PJKCPRYF.js +3 -0
  299. package/dist/chunk-PJKCPRYF.js.map +1 -0
  300. package/dist/chunk-PZUZNPFM.js +166 -0
  301. package/dist/chunk-PZUZNPFM.js.map +1 -0
  302. package/dist/chunk-Q6LWNLAJ.js +3177 -0
  303. package/dist/chunk-Q6LWNLAJ.js.map +1 -0
  304. package/dist/chunk-QLMWFSDC.js +653 -0
  305. package/dist/chunk-QLMWFSDC.js.map +1 -0
  306. package/dist/chunk-R6XC4DV5.js +170 -0
  307. package/dist/chunk-R6XC4DV5.js.map +1 -0
  308. package/dist/chunk-RJOVFHWN.cjs +3160 -0
  309. package/dist/chunk-RJOVFHWN.cjs.map +1 -0
  310. package/dist/chunk-SJMKDSRF.js +179 -0
  311. package/dist/chunk-SJMKDSRF.js.map +1 -0
  312. package/dist/chunk-TCHOIK53.cjs +4 -0
  313. package/dist/chunk-TCHOIK53.cjs.map +1 -0
  314. package/dist/chunk-TEORHM5O.js +1222 -0
  315. package/dist/chunk-TEORHM5O.js.map +1 -0
  316. package/dist/chunk-TSNDVBUU.cjs +90 -0
  317. package/dist/chunk-TSNDVBUU.cjs.map +1 -0
  318. package/dist/chunk-TTELJD4F.js +86 -0
  319. package/dist/chunk-TTELJD4F.js.map +1 -0
  320. package/dist/chunk-TX4TTPYJ.cjs +436 -0
  321. package/dist/chunk-TX4TTPYJ.cjs.map +1 -0
  322. package/dist/chunk-UCPGYU55.cjs +15 -0
  323. package/dist/chunk-UCPGYU55.cjs.map +1 -0
  324. package/dist/chunk-UWTYVVVZ.js +42 -0
  325. package/dist/chunk-UWTYVVVZ.js.map +1 -0
  326. package/dist/chunk-UXG7PYML.js +118 -0
  327. package/dist/chunk-UXG7PYML.js.map +1 -0
  328. package/dist/chunk-V3VLOOSW.cjs +36 -0
  329. package/dist/chunk-V3VLOOSW.cjs.map +1 -0
  330. package/dist/chunk-VED2OIYL.cjs +4 -0
  331. package/dist/chunk-VED2OIYL.cjs.map +1 -0
  332. package/dist/chunk-VF676YCO.cjs +150 -0
  333. package/dist/chunk-VF676YCO.cjs.map +1 -0
  334. package/dist/chunk-VHEA3YXS.js +72 -0
  335. package/dist/chunk-VHEA3YXS.js.map +1 -0
  336. package/dist/chunk-VQASQG5D.js +55 -0
  337. package/dist/chunk-VQASQG5D.js.map +1 -0
  338. package/dist/chunk-VXHOOZSK.js +446 -0
  339. package/dist/chunk-VXHOOZSK.js.map +1 -0
  340. package/dist/chunk-W4UVO3HL.cjs +82 -0
  341. package/dist/chunk-W4UVO3HL.cjs.map +1 -0
  342. package/dist/chunk-WIMFJ2BA.js +2880 -0
  343. package/dist/chunk-WIMFJ2BA.js.map +1 -0
  344. package/dist/chunk-WM4RO23J.js +145 -0
  345. package/dist/chunk-WM4RO23J.js.map +1 -0
  346. package/dist/chunk-WMTXUQC4.cjs +657 -0
  347. package/dist/chunk-WMTXUQC4.cjs.map +1 -0
  348. package/dist/chunk-WNV57BEW.cjs +1705 -0
  349. package/dist/chunk-WNV57BEW.cjs.map +1 -0
  350. package/dist/chunk-X4RMXTXF.cjs +4 -0
  351. package/dist/chunk-X4RMXTXF.cjs.map +1 -0
  352. package/dist/chunk-X7F4CSGR.cjs +67 -0
  353. package/dist/chunk-X7F4CSGR.cjs.map +1 -0
  354. package/dist/chunk-XWGHD4C7.cjs +450 -0
  355. package/dist/chunk-XWGHD4C7.cjs.map +1 -0
  356. package/dist/chunk-YFKTLS32.js +1700 -0
  357. package/dist/chunk-YFKTLS32.js.map +1 -0
  358. package/dist/chunk-ZABG3SZ2.cjs +93 -0
  359. package/dist/chunk-ZABG3SZ2.cjs.map +1 -0
  360. package/dist/chunk-ZIWN73GQ.js +267 -0
  361. package/dist/chunk-ZIWN73GQ.js.map +1 -0
  362. package/dist/chunk-ZOYE65RA.cjs +173 -0
  363. package/dist/chunk-ZOYE65RA.cjs.map +1 -0
  364. package/dist/deployer/index.cjs +12 -0
  365. package/dist/deployer/index.cjs.map +1 -0
  366. package/dist/deployer/index.d.ts +12 -0
  367. package/dist/deployer/index.d.ts.map +1 -0
  368. package/dist/deployer/index.js +3 -0
  369. package/dist/deployer/index.js.map +1 -0
  370. package/dist/deployer/index.warning.d.ts +9 -0
  371. package/dist/deployer/index.warning.d.ts.map +1 -0
  372. package/dist/di/index.cjs +12 -0
  373. package/dist/di/index.cjs.map +1 -0
  374. package/dist/di/index.d.ts +2 -0
  375. package/dist/di/index.d.ts.map +1 -0
  376. package/dist/di/index.js +3 -0
  377. package/dist/di/index.js.map +1 -0
  378. package/dist/error/index.cjs +28 -0
  379. package/dist/error/index.cjs.map +1 -0
  380. package/dist/error/index.d.ts +89 -0
  381. package/dist/error/index.d.ts.map +1 -0
  382. package/dist/error/index.js +3 -0
  383. package/dist/error/index.js.map +1 -0
  384. package/dist/error/utils.d.ts +36 -0
  385. package/dist/error/utils.d.ts.map +1 -0
  386. package/dist/eval/evaluation.d.ts +14 -0
  387. package/dist/eval/evaluation.d.ts.map +1 -0
  388. package/dist/eval/index.cjs +16 -0
  389. package/dist/eval/index.cjs.map +1 -0
  390. package/dist/eval/index.d.ts +4 -0
  391. package/dist/eval/index.d.ts.map +1 -0
  392. package/dist/eval/index.js +3 -0
  393. package/dist/eval/index.js.map +1 -0
  394. package/dist/eval/metric.d.ts +8 -0
  395. package/dist/eval/metric.d.ts.map +1 -0
  396. package/dist/eval/types.d.ts +9 -0
  397. package/dist/eval/types.d.ts.map +1 -0
  398. package/dist/events/event-emitter.d.ts +11 -0
  399. package/dist/events/event-emitter.d.ts.map +1 -0
  400. package/dist/events/index.cjs +12 -0
  401. package/dist/events/index.cjs.map +1 -0
  402. package/dist/events/index.d.ts +3 -0
  403. package/dist/events/index.d.ts.map +1 -0
  404. package/dist/events/index.js +3 -0
  405. package/dist/events/index.js.map +1 -0
  406. package/dist/events/processor.d.ts +11 -0
  407. package/dist/events/processor.d.ts.map +1 -0
  408. package/dist/events/pubsub.d.ts +8 -0
  409. package/dist/events/pubsub.d.ts.map +1 -0
  410. package/dist/events/types.d.ts +8 -0
  411. package/dist/events/types.d.ts.map +1 -0
  412. package/dist/hooks/index.cjs +20 -0
  413. package/dist/hooks/index.cjs.map +1 -0
  414. package/dist/hooks/index.d.ts +36 -0
  415. package/dist/hooks/index.d.ts.map +1 -0
  416. package/dist/hooks/index.js +3 -0
  417. package/dist/hooks/index.js.map +1 -0
  418. package/dist/hooks/mitt.d.ts +22 -0
  419. package/dist/hooks/mitt.d.ts.map +1 -0
  420. package/dist/index.cjs +371 -0
  421. package/dist/index.cjs.map +1 -0
  422. package/dist/index.d.ts +19 -0
  423. package/dist/index.d.ts.map +1 -0
  424. package/dist/index.js +120 -0
  425. package/dist/index.js.map +1 -0
  426. package/dist/integration/index.cjs +16 -0
  427. package/dist/integration/index.cjs.map +1 -0
  428. package/dist/integration/index.d.ts +3 -0
  429. package/dist/integration/index.d.ts.map +1 -0
  430. package/dist/integration/index.js +3 -0
  431. package/dist/integration/index.js.map +1 -0
  432. package/dist/integration/index.warning.d.ts +3 -0
  433. package/dist/integration/index.warning.d.ts.map +1 -0
  434. package/dist/integration/integration.d.ts +21 -0
  435. package/dist/integration/integration.d.ts.map +1 -0
  436. package/dist/integration/integration.warning.d.ts +5 -0
  437. package/dist/integration/integration.warning.d.ts.map +1 -0
  438. package/dist/integration/openapi-toolset.d.ts +16 -0
  439. package/dist/integration/openapi-toolset.d.ts.map +1 -0
  440. package/dist/integration/openapi-toolset.warning.d.ts +5 -0
  441. package/dist/integration/openapi-toolset.warning.d.ts.map +1 -0
  442. package/dist/llm/index.cjs +48 -0
  443. package/dist/llm/index.cjs.map +1 -0
  444. package/dist/llm/index.d.ts +83 -0
  445. package/dist/llm/index.d.ts.map +1 -0
  446. package/dist/llm/index.js +7 -0
  447. package/dist/llm/index.js.map +1 -0
  448. package/dist/llm/model/aisdk/v5/model.d.ts +47 -0
  449. package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -0
  450. package/dist/llm/model/base.types.d.ts +100 -0
  451. package/dist/llm/model/base.types.d.ts.map +1 -0
  452. package/dist/llm/model/embedding-router.d.ts +50 -0
  453. package/dist/llm/model/embedding-router.d.ts.map +1 -0
  454. package/dist/llm/model/gateway-resolver.d.ts +11 -0
  455. package/dist/llm/model/gateway-resolver.d.ts.map +1 -0
  456. package/dist/llm/model/gateways/base.d.ts +50 -0
  457. package/dist/llm/model/gateways/base.d.ts.map +1 -0
  458. package/dist/llm/model/gateways/constants.d.ts +3 -0
  459. package/dist/llm/model/gateways/constants.d.ts.map +1 -0
  460. package/dist/llm/model/gateways/index.d.ts +11 -0
  461. package/dist/llm/model/gateways/index.d.ts.map +1 -0
  462. package/dist/llm/model/gateways/models-dev.d.ts +19 -0
  463. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -0
  464. package/dist/llm/model/gateways/netlify.d.ts +25 -0
  465. package/dist/llm/model/gateways/netlify.d.ts.map +1 -0
  466. package/dist/llm/model/index.d.ts +6 -0
  467. package/dist/llm/model/index.d.ts.map +1 -0
  468. package/dist/llm/model/is-v2-model.d.ts +3 -0
  469. package/dist/llm/model/is-v2-model.d.ts.map +1 -0
  470. package/dist/llm/model/model-method-from-agent.d.ts +4 -0
  471. package/dist/llm/model/model-method-from-agent.d.ts.map +1 -0
  472. package/dist/llm/model/model.d.ts +36 -0
  473. package/dist/llm/model/model.d.ts.map +1 -0
  474. package/dist/llm/model/model.loop.d.ts +26 -0
  475. package/dist/llm/model/model.loop.d.ts.map +1 -0
  476. package/dist/llm/model/model.loop.types.d.ts +31 -0
  477. package/dist/llm/model/model.loop.types.d.ts.map +1 -0
  478. package/dist/llm/model/provider-options.d.ts +42 -0
  479. package/dist/llm/model/provider-options.d.ts.map +1 -0
  480. package/dist/llm/model/provider-registry.d.ts +108 -0
  481. package/dist/llm/model/provider-registry.d.ts.map +1 -0
  482. package/dist/llm/model/provider-types.generated.d.ts +1205 -0
  483. package/dist/llm/model/registry-generator.d.ts +41 -0
  484. package/dist/llm/model/registry-generator.d.ts.map +1 -0
  485. package/dist/llm/model/resolve-model.d.ts +46 -0
  486. package/dist/llm/model/resolve-model.d.ts.map +1 -0
  487. package/dist/llm/model/router.d.ts +30 -0
  488. package/dist/llm/model/router.d.ts.map +1 -0
  489. package/dist/llm/model/shared.types.d.ts +40 -0
  490. package/dist/llm/model/shared.types.d.ts.map +1 -0
  491. package/dist/logger/constants.d.ts +28 -0
  492. package/dist/logger/constants.d.ts.map +1 -0
  493. package/dist/logger/default-logger.d.ts +49 -0
  494. package/dist/logger/default-logger.d.ts.map +1 -0
  495. package/dist/logger/index.cjs +45 -0
  496. package/dist/logger/index.cjs.map +1 -0
  497. package/dist/logger/index.d.ts +7 -0
  498. package/dist/logger/index.d.ts.map +1 -0
  499. package/dist/logger/index.js +4 -0
  500. package/dist/logger/index.js.map +1 -0
  501. package/dist/logger/logger.d.ts +88 -0
  502. package/dist/logger/logger.d.ts.map +1 -0
  503. package/dist/logger/multi-logger.d.ts +46 -0
  504. package/dist/logger/multi-logger.d.ts.map +1 -0
  505. package/dist/logger/noop-logger.d.ts +3 -0
  506. package/dist/logger/noop-logger.d.ts.map +1 -0
  507. package/dist/logger/transport.d.ts +46 -0
  508. package/dist/logger/transport.d.ts.map +1 -0
  509. package/dist/loop/index.cjs +12 -0
  510. package/dist/loop/index.cjs.map +1 -0
  511. package/dist/loop/index.d.ts +2 -0
  512. package/dist/loop/index.d.ts.map +1 -0
  513. package/dist/loop/index.js +3 -0
  514. package/dist/loop/index.js.map +1 -0
  515. package/dist/loop/loop.d.ts +6 -0
  516. package/dist/loop/loop.d.ts.map +1 -0
  517. package/dist/loop/network/index.d.ts +145 -0
  518. package/dist/loop/network/index.d.ts.map +1 -0
  519. package/dist/loop/telemetry/index.d.ts +36 -0
  520. package/dist/loop/telemetry/index.d.ts.map +1 -0
  521. package/dist/loop/telemetry/noop.d.ts +3 -0
  522. package/dist/loop/telemetry/noop.d.ts.map +1 -0
  523. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts +37 -0
  524. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts.map +1 -0
  525. package/dist/loop/test-utils/fullStream.d.ts +6 -0
  526. package/dist/loop/test-utils/fullStream.d.ts.map +1 -0
  527. package/dist/loop/test-utils/generateText.d.ts +6 -0
  528. package/dist/loop/test-utils/generateText.d.ts.map +1 -0
  529. package/dist/loop/test-utils/mock-server-response.d.ts +28 -0
  530. package/dist/loop/test-utils/mock-server-response.d.ts.map +1 -0
  531. package/dist/loop/test-utils/mockTracer.d.ts +47 -0
  532. package/dist/loop/test-utils/mockTracer.d.ts.map +1 -0
  533. package/dist/loop/test-utils/options.d.ts +6 -0
  534. package/dist/loop/test-utils/options.d.ts.map +1 -0
  535. package/dist/loop/test-utils/resultObject.d.ts +6 -0
  536. package/dist/loop/test-utils/resultObject.d.ts.map +1 -0
  537. package/dist/loop/test-utils/streamObject.d.ts +15 -0
  538. package/dist/loop/test-utils/streamObject.d.ts.map +1 -0
  539. package/dist/loop/test-utils/telemetry.d.ts +6 -0
  540. package/dist/loop/test-utils/telemetry.d.ts.map +1 -0
  541. package/dist/loop/test-utils/textStream.d.ts +6 -0
  542. package/dist/loop/test-utils/textStream.d.ts.map +1 -0
  543. package/dist/loop/test-utils/toUIMessageStream.d.ts +6 -0
  544. package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -0
  545. package/dist/loop/test-utils/tools.d.ts +6 -0
  546. package/dist/loop/test-utils/tools.d.ts.map +1 -0
  547. package/dist/loop/test-utils/utils.d.ts +45 -0
  548. package/dist/loop/test-utils/utils.d.ts.map +1 -0
  549. package/dist/loop/types.d.ts +111 -0
  550. package/dist/loop/types.d.ts.map +1 -0
  551. package/dist/loop/workflows/agentic-execution/index.d.ts +939 -0
  552. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -0
  553. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +629 -0
  554. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -0
  555. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +348 -0
  556. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -0
  557. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +58 -0
  558. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -0
  559. package/dist/loop/workflows/agentic-loop/index.d.ts +945 -0
  560. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -0
  561. package/dist/loop/workflows/run-state.d.ts +29 -0
  562. package/dist/loop/workflows/run-state.d.ts.map +1 -0
  563. package/dist/loop/workflows/schema.d.ts +479 -0
  564. package/dist/loop/workflows/schema.d.ts.map +1 -0
  565. package/dist/loop/workflows/stream.d.ts +20 -0
  566. package/dist/loop/workflows/stream.d.ts.map +1 -0
  567. package/dist/mastra/hooks.d.ts +6 -0
  568. package/dist/mastra/hooks.d.ts.map +1 -0
  569. package/dist/mastra/index.cjs +12 -0
  570. package/dist/mastra/index.cjs.map +1 -0
  571. package/dist/mastra/index.d.ts +892 -0
  572. package/dist/mastra/index.d.ts.map +1 -0
  573. package/dist/mastra/index.js +3 -0
  574. package/dist/mastra/index.js.map +1 -0
  575. package/dist/mcp/index.cjs +112 -0
  576. package/dist/mcp/index.cjs.map +1 -0
  577. package/dist/mcp/index.d.ts +158 -0
  578. package/dist/mcp/index.d.ts.map +1 -0
  579. package/dist/mcp/index.js +106 -0
  580. package/dist/mcp/index.js.map +1 -0
  581. package/dist/mcp/types.d.ts +255 -0
  582. package/dist/mcp/types.d.ts.map +1 -0
  583. package/dist/memory/index.cjs +20 -0
  584. package/dist/memory/index.cjs.map +1 -0
  585. package/dist/memory/index.d.ts +3 -0
  586. package/dist/memory/index.d.ts.map +1 -0
  587. package/dist/memory/index.js +3 -0
  588. package/dist/memory/index.js.map +1 -0
  589. package/dist/memory/index.warning.d.ts +6 -0
  590. package/dist/memory/index.warning.d.ts.map +1 -0
  591. package/dist/memory/memory.d.ts +272 -0
  592. package/dist/memory/memory.d.ts.map +1 -0
  593. package/dist/memory/types.d.ts +393 -0
  594. package/dist/memory/types.d.ts.map +1 -0
  595. package/dist/models-dev-LJ4O6FNF.js +3 -0
  596. package/dist/models-dev-LJ4O6FNF.js.map +1 -0
  597. package/dist/models-dev-T2CXOEDH.cjs +12 -0
  598. package/dist/models-dev-T2CXOEDH.cjs.map +1 -0
  599. package/dist/netlify-BAEMIQNH.cjs +12 -0
  600. package/dist/netlify-BAEMIQNH.cjs.map +1 -0
  601. package/dist/netlify-L7AZ74PV.js +3 -0
  602. package/dist/netlify-L7AZ74PV.js.map +1 -0
  603. package/dist/processors/index.cjs +48 -0
  604. package/dist/processors/index.cjs.map +1 -0
  605. package/dist/processors/index.d.ts +43 -0
  606. package/dist/processors/index.d.ts.map +1 -0
  607. package/dist/processors/index.js +3 -0
  608. package/dist/processors/index.js.map +1 -0
  609. package/dist/processors/processors/batch-parts.d.ts +47 -0
  610. package/dist/processors/processors/batch-parts.d.ts.map +1 -0
  611. package/dist/processors/processors/index.d.ts +10 -0
  612. package/dist/processors/processors/index.d.ts.map +1 -0
  613. package/dist/processors/processors/language-detector.d.ts +153 -0
  614. package/dist/processors/processors/language-detector.d.ts.map +1 -0
  615. package/dist/processors/processors/moderation.d.ts +138 -0
  616. package/dist/processors/processors/moderation.d.ts.map +1 -0
  617. package/dist/processors/processors/pii-detector.d.ts +203 -0
  618. package/dist/processors/processors/pii-detector.d.ts.map +1 -0
  619. package/dist/processors/processors/prompt-injection-detector.d.ts +116 -0
  620. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -0
  621. package/dist/processors/processors/structured-output.d.ts +53 -0
  622. package/dist/processors/processors/structured-output.d.ts.map +1 -0
  623. package/dist/processors/processors/system-prompt-scrubber.d.ts +105 -0
  624. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -0
  625. package/dist/processors/processors/token-limiter.d.ts +66 -0
  626. package/dist/processors/processors/token-limiter.d.ts.map +1 -0
  627. package/dist/processors/processors/unicode-normalizer.d.ts +34 -0
  628. package/dist/processors/processors/unicode-normalizer.d.ts.map +1 -0
  629. package/dist/processors/runner.d.ts +46 -0
  630. package/dist/processors/runner.d.ts.map +1 -0
  631. package/dist/provider-registry-RUDYHG7J.cjs +40 -0
  632. package/dist/provider-registry-RUDYHG7J.cjs.map +1 -0
  633. package/dist/provider-registry-THITZUJ7.js +3 -0
  634. package/dist/provider-registry-THITZUJ7.js.map +1 -0
  635. package/dist/provider-registry.json +2748 -0
  636. package/dist/registry-generator-DL42NMBM.cjs +134 -0
  637. package/dist/registry-generator-DL42NMBM.cjs.map +1 -0
  638. package/dist/registry-generator-I6S4ARS6.js +124 -0
  639. package/dist/registry-generator-I6S4ARS6.js.map +1 -0
  640. package/dist/relevance/cohere/index.d.ts +9 -0
  641. package/dist/relevance/cohere/index.d.ts.map +1 -0
  642. package/dist/relevance/index.cjs +20 -0
  643. package/dist/relevance/index.cjs.map +1 -0
  644. package/dist/relevance/index.d.ts +4 -0
  645. package/dist/relevance/index.d.ts.map +1 -0
  646. package/dist/relevance/index.js +3 -0
  647. package/dist/relevance/index.js.map +1 -0
  648. package/dist/relevance/mastra-agent/index.d.ts +8 -0
  649. package/dist/relevance/mastra-agent/index.d.ts.map +1 -0
  650. package/dist/relevance/relevance-score-provider.d.ts +5 -0
  651. package/dist/relevance/relevance-score-provider.d.ts.map +1 -0
  652. package/dist/run/types.d.ts +6 -0
  653. package/dist/run/types.d.ts.map +1 -0
  654. package/dist/runtime-context/index.cjs +12 -0
  655. package/dist/runtime-context/index.cjs.map +1 -0
  656. package/dist/runtime-context/index.d.ts +57 -0
  657. package/dist/runtime-context/index.d.ts.map +1 -0
  658. package/dist/runtime-context/index.js +3 -0
  659. package/dist/runtime-context/index.js.map +1 -0
  660. package/dist/scores/base.d.ts +141 -0
  661. package/dist/scores/base.d.ts.map +1 -0
  662. package/dist/scores/base.test-utils.d.ts +124 -0
  663. package/dist/scores/base.test-utils.d.ts.map +1 -0
  664. package/dist/scores/hooks.d.ts +19 -0
  665. package/dist/scores/hooks.d.ts.map +1 -0
  666. package/dist/scores/index.cjs +37 -0
  667. package/dist/scores/index.cjs.map +1 -0
  668. package/dist/scores/index.d.ts +4 -0
  669. package/dist/scores/index.d.ts.map +1 -0
  670. package/dist/scores/index.js +4 -0
  671. package/dist/scores/index.js.map +1 -0
  672. package/dist/scores/run-experiment/index.d.ts +61 -0
  673. package/dist/scores/run-experiment/index.d.ts.map +1 -0
  674. package/dist/scores/run-experiment/scorerAccumulator.d.ts +12 -0
  675. package/dist/scores/run-experiment/scorerAccumulator.d.ts.map +1 -0
  676. package/dist/scores/scoreTraces/index.cjs +431 -0
  677. package/dist/scores/scoreTraces/index.cjs.map +1 -0
  678. package/dist/scores/scoreTraces/index.d.ts +3 -0
  679. package/dist/scores/scoreTraces/index.d.ts.map +1 -0
  680. package/dist/scores/scoreTraces/index.js +423 -0
  681. package/dist/scores/scoreTraces/index.js.map +1 -0
  682. package/dist/scores/scoreTraces/scoreTraces.d.ts +10 -0
  683. package/dist/scores/scoreTraces/scoreTraces.d.ts.map +1 -0
  684. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts +95 -0
  685. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -0
  686. package/dist/scores/scoreTraces/utils.d.ts +21 -0
  687. package/dist/scores/scoreTraces/utils.d.ts.map +1 -0
  688. package/dist/scores/types.d.ts +191 -0
  689. package/dist/scores/types.d.ts.map +1 -0
  690. package/dist/server/auth.d.ts +36 -0
  691. package/dist/server/auth.d.ts.map +1 -0
  692. package/dist/server/composite-auth.d.ts +9 -0
  693. package/dist/server/composite-auth.d.ts.map +1 -0
  694. package/dist/server/index.cjs +185 -0
  695. package/dist/server/index.cjs.map +1 -0
  696. package/dist/server/index.d.ts +37 -0
  697. package/dist/server/index.d.ts.map +1 -0
  698. package/dist/server/index.js +180 -0
  699. package/dist/server/index.js.map +1 -0
  700. package/dist/server/simple-auth.d.ts +32 -0
  701. package/dist/server/simple-auth.d.ts.map +1 -0
  702. package/dist/server/types.d.ts +140 -0
  703. package/dist/server/types.d.ts.map +1 -0
  704. package/dist/storage/base.d.ts +360 -0
  705. package/dist/storage/base.d.ts.map +1 -0
  706. package/dist/storage/base.warning.d.ts +8 -0
  707. package/dist/storage/base.warning.d.ts.map +1 -0
  708. package/dist/storage/constants.d.ts +14 -0
  709. package/dist/storage/constants.d.ts.map +1 -0
  710. package/dist/storage/domains/index.d.ts +8 -0
  711. package/dist/storage/domains/index.d.ts.map +1 -0
  712. package/dist/storage/domains/legacy-evals/base.d.ts +13 -0
  713. package/dist/storage/domains/legacy-evals/base.d.ts.map +1 -0
  714. package/dist/storage/domains/legacy-evals/index.d.ts +2 -0
  715. package/dist/storage/domains/legacy-evals/index.d.ts.map +1 -0
  716. package/dist/storage/domains/legacy-evals/inmemory.d.ts +17 -0
  717. package/dist/storage/domains/legacy-evals/inmemory.d.ts.map +1 -0
  718. package/dist/storage/domains/memory/base.d.ts +96 -0
  719. package/dist/storage/domains/memory/base.d.ts.map +1 -0
  720. package/dist/storage/domains/memory/index.d.ts +3 -0
  721. package/dist/storage/domains/memory/index.d.ts.map +1 -0
  722. package/dist/storage/domains/memory/inmemory.d.ts +85 -0
  723. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -0
  724. package/dist/storage/domains/observability/base.d.ts +60 -0
  725. package/dist/storage/domains/observability/base.d.ts.map +1 -0
  726. package/dist/storage/domains/observability/index.d.ts +3 -0
  727. package/dist/storage/domains/observability/index.d.ts.map +1 -0
  728. package/dist/storage/domains/observability/inmemory.d.ts +48 -0
  729. package/dist/storage/domains/observability/inmemory.d.ts.map +1 -0
  730. package/dist/storage/domains/operations/base.d.ts +68 -0
  731. package/dist/storage/domains/operations/base.d.ts.map +1 -0
  732. package/dist/storage/domains/operations/index.d.ts +3 -0
  733. package/dist/storage/domains/operations/index.d.ts.map +1 -0
  734. package/dist/storage/domains/operations/inmemory.d.ts +37 -0
  735. package/dist/storage/domains/operations/inmemory.d.ts.map +1 -0
  736. package/dist/storage/domains/scores/base.d.ts +46 -0
  737. package/dist/storage/domains/scores/base.d.ts.map +1 -0
  738. package/dist/storage/domains/scores/index.d.ts +3 -0
  739. package/dist/storage/domains/scores/index.d.ts.map +1 -0
  740. package/dist/storage/domains/scores/inmemory.d.ts +50 -0
  741. package/dist/storage/domains/scores/inmemory.d.ts.map +1 -0
  742. package/dist/storage/domains/traces/base.d.ts +14 -0
  743. package/dist/storage/domains/traces/base.d.ts.map +1 -0
  744. package/dist/storage/domains/traces/index.d.ts +3 -0
  745. package/dist/storage/domains/traces/index.d.ts.map +1 -0
  746. package/dist/storage/domains/traces/inmemory.d.ts +22 -0
  747. package/dist/storage/domains/traces/inmemory.d.ts.map +1 -0
  748. package/dist/storage/domains/workflows/base.d.ts +47 -0
  749. package/dist/storage/domains/workflows/base.d.ts.map +1 -0
  750. package/dist/storage/domains/workflows/index.d.ts +3 -0
  751. package/dist/storage/domains/workflows/index.d.ts.map +1 -0
  752. package/dist/storage/domains/workflows/inmemory.d.ts +54 -0
  753. package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -0
  754. package/dist/storage/index.cjs +1821 -0
  755. package/dist/storage/index.cjs.map +1 -0
  756. package/dist/storage/index.d.ts +7 -0
  757. package/dist/storage/index.d.ts.map +1 -0
  758. package/dist/storage/index.js +1746 -0
  759. package/dist/storage/index.js.map +1 -0
  760. package/dist/storage/index.warning.d.ts +3 -0
  761. package/dist/storage/index.warning.d.ts.map +1 -0
  762. package/dist/storage/mock.d.ts +242 -0
  763. package/dist/storage/mock.d.ts.map +1 -0
  764. package/dist/storage/storageWithInit.d.ts +3 -0
  765. package/dist/storage/storageWithInit.d.ts.map +1 -0
  766. package/dist/storage/types.d.ts +206 -0
  767. package/dist/storage/types.d.ts.map +1 -0
  768. package/dist/storage/utils.d.ts +2 -0
  769. package/dist/storage/utils.d.ts.map +1 -0
  770. package/dist/stream/MastraAgentNetworkStream.d.ts +22 -0
  771. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -0
  772. package/dist/stream/MastraWorkflowStream.d.ts +19 -0
  773. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -0
  774. package/dist/stream/RunOutput.d.ts +72 -0
  775. package/dist/stream/RunOutput.d.ts.map +1 -0
  776. package/dist/stream/aisdk/v4/input.d.ts +16 -0
  777. package/dist/stream/aisdk/v4/input.d.ts.map +1 -0
  778. package/dist/stream/aisdk/v4/transform.d.ts +5 -0
  779. package/dist/stream/aisdk/v4/transform.d.ts.map +1 -0
  780. package/dist/stream/aisdk/v5/compat/consume-stream.d.ts +8 -0
  781. package/dist/stream/aisdk/v5/compat/consume-stream.d.ts.map +1 -0
  782. package/dist/stream/aisdk/v5/compat/content.d.ts +7 -0
  783. package/dist/stream/aisdk/v5/compat/content.d.ts.map +1 -0
  784. package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts +23 -0
  785. package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts.map +1 -0
  786. package/dist/stream/aisdk/v5/compat/index.d.ts +8 -0
  787. package/dist/stream/aisdk/v5/compat/index.d.ts.map +1 -0
  788. package/dist/stream/aisdk/v5/compat/media.d.ts +91 -0
  789. package/dist/stream/aisdk/v5/compat/media.d.ts.map +1 -0
  790. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts +11 -0
  791. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -0
  792. package/dist/stream/aisdk/v5/compat/ui-message.d.ts +20 -0
  793. package/dist/stream/aisdk/v5/compat/ui-message.d.ts.map +1 -0
  794. package/dist/stream/aisdk/v5/compat/validation.d.ts +17 -0
  795. package/dist/stream/aisdk/v5/compat/validation.d.ts.map +1 -0
  796. package/dist/stream/aisdk/v5/execute.d.ts +41 -0
  797. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -0
  798. package/dist/stream/aisdk/v5/file.d.ts +38 -0
  799. package/dist/stream/aisdk/v5/file.d.ts.map +1 -0
  800. package/dist/stream/aisdk/v5/input.d.ts +16 -0
  801. package/dist/stream/aisdk/v5/input.d.ts.map +1 -0
  802. package/dist/stream/aisdk/v5/output-helpers.d.ts +66 -0
  803. package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -0
  804. package/dist/stream/aisdk/v5/output.d.ts +173 -0
  805. package/dist/stream/aisdk/v5/output.d.ts.map +1 -0
  806. package/dist/stream/aisdk/v5/test-utils.d.ts +19 -0
  807. package/dist/stream/aisdk/v5/test-utils.d.ts.map +1 -0
  808. package/dist/stream/aisdk/v5/transform.d.ts +27 -0
  809. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -0
  810. package/dist/stream/base/base.d.ts +7 -0
  811. package/dist/stream/base/base.d.ts.map +1 -0
  812. package/dist/stream/base/consume-stream.d.ts +5 -0
  813. package/dist/stream/base/consume-stream.d.ts.map +1 -0
  814. package/dist/stream/base/index.d.ts +2 -0
  815. package/dist/stream/base/index.d.ts.map +1 -0
  816. package/dist/stream/base/input.d.ts +16 -0
  817. package/dist/stream/base/input.d.ts.map +1 -0
  818. package/dist/stream/base/output-format-handlers.d.ts +29 -0
  819. package/dist/stream/base/output-format-handlers.d.ts.map +1 -0
  820. package/dist/stream/base/output.d.ts +313 -0
  821. package/dist/stream/base/output.d.ts.map +1 -0
  822. package/dist/stream/base/schema.d.ts +31 -0
  823. package/dist/stream/base/schema.d.ts.map +1 -0
  824. package/dist/stream/index.cjs +45 -0
  825. package/dist/stream/index.cjs.map +1 -0
  826. package/dist/stream/index.d.ts +11 -0
  827. package/dist/stream/index.d.ts.map +1 -0
  828. package/dist/stream/index.js +4 -0
  829. package/dist/stream/index.js.map +1 -0
  830. package/dist/stream/types.d.ts +734 -0
  831. package/dist/stream/types.d.ts.map +1 -0
  832. package/dist/telemetry/composite-exporter.d.ts +10 -0
  833. package/dist/telemetry/composite-exporter.d.ts.map +1 -0
  834. package/dist/telemetry/index.cjs +32 -0
  835. package/dist/telemetry/index.cjs.map +1 -0
  836. package/dist/telemetry/index.d.ts +6 -0
  837. package/dist/telemetry/index.d.ts.map +1 -0
  838. package/dist/telemetry/index.js +3 -0
  839. package/dist/telemetry/index.js.map +1 -0
  840. package/dist/telemetry/otel-vendor.cjs +105 -0
  841. package/dist/telemetry/otel-vendor.cjs.map +1 -0
  842. package/dist/telemetry/otel-vendor.d.ts +11 -0
  843. package/dist/telemetry/otel-vendor.d.ts.map +1 -0
  844. package/dist/telemetry/otel-vendor.js +59 -0
  845. package/dist/telemetry/otel-vendor.js.map +1 -0
  846. package/dist/telemetry/storage-exporter.d.ts +21 -0
  847. package/dist/telemetry/storage-exporter.d.ts.map +1 -0
  848. package/dist/telemetry/telemetry.d.ts +59 -0
  849. package/dist/telemetry/telemetry.d.ts.map +1 -0
  850. package/dist/telemetry/telemetry.decorators.d.ts +15 -0
  851. package/dist/telemetry/telemetry.decorators.d.ts.map +1 -0
  852. package/dist/telemetry/types.d.ts +74 -0
  853. package/dist/telemetry/types.d.ts.map +1 -0
  854. package/dist/telemetry/utility.d.ts +15 -0
  855. package/dist/telemetry/utility.d.ts.map +1 -0
  856. package/dist/test-utils/llm-mock.cjs +181 -0
  857. package/dist/test-utils/llm-mock.cjs.map +1 -0
  858. package/dist/test-utils/llm-mock.d.ts +21 -0
  859. package/dist/test-utils/llm-mock.d.ts.map +1 -0
  860. package/dist/test-utils/llm-mock.js +178 -0
  861. package/dist/test-utils/llm-mock.js.map +1 -0
  862. package/dist/tools/index.cjs +25 -0
  863. package/dist/tools/index.cjs.map +1 -0
  864. package/dist/tools/index.d.ts +6 -0
  865. package/dist/tools/index.d.ts.map +1 -0
  866. package/dist/tools/index.js +4 -0
  867. package/dist/tools/index.js.map +1 -0
  868. package/dist/tools/index.warning.d.ts +8 -0
  869. package/dist/tools/index.warning.d.ts.map +1 -0
  870. package/dist/tools/is-vercel-tool.cjs +12 -0
  871. package/dist/tools/is-vercel-tool.cjs.map +1 -0
  872. package/dist/tools/is-vercel-tool.d.ts +2 -0
  873. package/dist/tools/is-vercel-tool.d.ts.map +1 -0
  874. package/dist/tools/is-vercel-tool.js +3 -0
  875. package/dist/tools/is-vercel-tool.js.map +1 -0
  876. package/dist/tools/stream.d.ts +19 -0
  877. package/dist/tools/stream.d.ts.map +1 -0
  878. package/dist/tools/tool-builder/builder.d.ts +28 -0
  879. package/dist/tools/tool-builder/builder.d.ts.map +1 -0
  880. package/dist/tools/tool.d.ts +186 -0
  881. package/dist/tools/tool.d.ts.map +1 -0
  882. package/dist/tools/toolchecks.d.ts +9 -0
  883. package/dist/tools/toolchecks.d.ts.map +1 -0
  884. package/dist/tools/types.d.ts +70 -0
  885. package/dist/tools/types.d.ts.map +1 -0
  886. package/dist/tools/ui-types.d.ts +39 -0
  887. package/dist/tools/ui-types.d.ts.map +1 -0
  888. package/dist/tools/validation.d.ts +19 -0
  889. package/dist/tools/validation.d.ts.map +1 -0
  890. package/dist/tts/index.cjs +12 -0
  891. package/dist/tts/index.cjs.map +1 -0
  892. package/dist/tts/index.d.ts +22 -0
  893. package/dist/tts/index.d.ts.map +1 -0
  894. package/dist/tts/index.js +3 -0
  895. package/dist/tts/index.js.map +1 -0
  896. package/dist/tts/index.warning.d.ts +7 -0
  897. package/dist/tts/index.warning.d.ts.map +1 -0
  898. package/dist/types/dynamic-argument.d.ts +9 -0
  899. package/dist/types/dynamic-argument.d.ts.map +1 -0
  900. package/dist/types/index.cjs +4 -0
  901. package/dist/types/index.cjs.map +1 -0
  902. package/dist/types/index.d.ts +2 -0
  903. package/dist/types/index.d.ts.map +1 -0
  904. package/dist/types/index.js +3 -0
  905. package/dist/types/index.js.map +1 -0
  906. package/dist/types/zod-compat.d.ts +23 -0
  907. package/dist/types/zod-compat.d.ts.map +1 -0
  908. package/dist/utils.cjs +72 -0
  909. package/dist/utils.cjs.map +1 -0
  910. package/dist/utils.d.ts +148 -0
  911. package/dist/utils.d.ts.map +1 -0
  912. package/dist/utils.js +3 -0
  913. package/dist/utils.js.map +1 -0
  914. package/dist/vector/embed.d.ts +3 -0
  915. package/dist/vector/embed.d.ts.map +1 -0
  916. package/dist/vector/filter/base.d.ts +128 -0
  917. package/dist/vector/filter/base.d.ts.map +1 -0
  918. package/dist/vector/filter/index.cjs +12 -0
  919. package/dist/vector/filter/index.cjs.map +1 -0
  920. package/dist/vector/filter/index.d.ts +2 -0
  921. package/dist/vector/filter/index.d.ts.map +1 -0
  922. package/dist/vector/filter/index.js +3 -0
  923. package/dist/vector/filter/index.js.map +1 -0
  924. package/dist/vector/index.cjs +25 -0
  925. package/dist/vector/index.cjs.map +1 -0
  926. package/dist/vector/index.d.ts +5 -0
  927. package/dist/vector/index.d.ts.map +1 -0
  928. package/dist/vector/index.js +4 -0
  929. package/dist/vector/index.js.map +1 -0
  930. package/dist/vector/index.warning.d.ts +6 -0
  931. package/dist/vector/index.warning.d.ts.map +1 -0
  932. package/dist/vector/types.d.ts +152 -0
  933. package/dist/vector/types.d.ts.map +1 -0
  934. package/dist/vector/vector.d.ts +57 -0
  935. package/dist/vector/vector.d.ts.map +1 -0
  936. package/dist/voice/aisdk/index.d.ts +3 -0
  937. package/dist/voice/aisdk/index.d.ts.map +1 -0
  938. package/dist/voice/aisdk/speech.d.ts +23 -0
  939. package/dist/voice/aisdk/speech.d.ts.map +1 -0
  940. package/dist/voice/aisdk/transcription.d.ts +22 -0
  941. package/dist/voice/aisdk/transcription.d.ts.map +1 -0
  942. package/dist/voice/composite-voice.d.ts +78 -0
  943. package/dist/voice/composite-voice.d.ts.map +1 -0
  944. package/dist/voice/default-voice.d.ts +13 -0
  945. package/dist/voice/default-voice.d.ts.map +1 -0
  946. package/dist/voice/index.cjs +28 -0
  947. package/dist/voice/index.cjs.map +1 -0
  948. package/dist/voice/index.d.ts +5 -0
  949. package/dist/voice/index.d.ts.map +1 -0
  950. package/dist/voice/index.js +3 -0
  951. package/dist/voice/index.js.map +1 -0
  952. package/dist/voice/voice.d.ts +132 -0
  953. package/dist/voice/voice.d.ts.map +1 -0
  954. package/dist/workflows/constants.cjs +16 -0
  955. package/dist/workflows/constants.cjs.map +1 -0
  956. package/dist/workflows/constants.d.ts +3 -0
  957. package/dist/workflows/constants.d.ts.map +1 -0
  958. package/dist/workflows/constants.js +3 -0
  959. package/dist/workflows/constants.js.map +1 -0
  960. package/dist/workflows/default.d.ts +345 -0
  961. package/dist/workflows/default.d.ts.map +1 -0
  962. package/dist/workflows/evented/execution-engine.d.ts +41 -0
  963. package/dist/workflows/evented/execution-engine.d.ts.map +1 -0
  964. package/dist/workflows/evented/index.cjs +44 -0
  965. package/dist/workflows/evented/index.cjs.map +1 -0
  966. package/dist/workflows/evented/index.d.ts +5 -0
  967. package/dist/workflows/evented/index.d.ts.map +1 -0
  968. package/dist/workflows/evented/index.js +3 -0
  969. package/dist/workflows/evented/index.js.map +1 -0
  970. package/dist/workflows/evented/step-executor.d.ts +90 -0
  971. package/dist/workflows/evented/step-executor.d.ts.map +1 -0
  972. package/dist/workflows/evented/workflow-event-processor/index.d.ts +54 -0
  973. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -0
  974. package/dist/workflows/evented/workflow-event-processor/loop.d.ts +21 -0
  975. package/dist/workflows/evented/workflow-event-processor/loop.d.ts.map +1 -0
  976. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts +18 -0
  977. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts.map +1 -0
  978. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts +24 -0
  979. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts.map +1 -0
  980. package/dist/workflows/evented/workflow-event-processor/utils.d.ts +30 -0
  981. package/dist/workflows/evented/workflow-event-processor/utils.d.ts.map +1 -0
  982. package/dist/workflows/evented/workflow.d.ts +81 -0
  983. package/dist/workflows/evented/workflow.d.ts.map +1 -0
  984. package/dist/workflows/execution-engine.d.ts +75 -0
  985. package/dist/workflows/execution-engine.d.ts.map +1 -0
  986. package/dist/workflows/index.cjs +60 -0
  987. package/dist/workflows/index.cjs.map +1 -0
  988. package/dist/workflows/index.d.ts +7 -0
  989. package/dist/workflows/index.d.ts.map +1 -0
  990. package/dist/workflows/index.js +3 -0
  991. package/dist/workflows/index.js.map +1 -0
  992. package/dist/workflows/index.warning.d.ts +6 -0
  993. package/dist/workflows/index.warning.d.ts.map +1 -0
  994. package/dist/workflows/legacy/index.cjs +92 -0
  995. package/dist/workflows/legacy/index.cjs.map +1 -0
  996. package/dist/workflows/legacy/index.d.ts +5 -0
  997. package/dist/workflows/legacy/index.d.ts.map +1 -0
  998. package/dist/workflows/legacy/index.js +3 -0
  999. package/dist/workflows/legacy/index.js.map +1 -0
  1000. package/dist/workflows/legacy/machine.d.ts +386 -0
  1001. package/dist/workflows/legacy/machine.d.ts.map +1 -0
  1002. package/dist/workflows/legacy/step.d.ts +15 -0
  1003. package/dist/workflows/legacy/step.d.ts.map +1 -0
  1004. package/dist/workflows/legacy/types.d.ts +397 -0
  1005. package/dist/workflows/legacy/types.d.ts.map +1 -0
  1006. package/dist/workflows/legacy/utils.d.ts +68 -0
  1007. package/dist/workflows/legacy/utils.d.ts.map +1 -0
  1008. package/dist/workflows/legacy/workflow-instance.d.ts +97 -0
  1009. package/dist/workflows/legacy/workflow-instance.d.ts.map +1 -0
  1010. package/dist/workflows/legacy/workflow.d.ts +109 -0
  1011. package/dist/workflows/legacy/workflow.d.ts.map +1 -0
  1012. package/dist/workflows/step.d.ts +64 -0
  1013. package/dist/workflows/step.d.ts.map +1 -0
  1014. package/dist/workflows/types.d.ts +351 -0
  1015. package/dist/workflows/types.d.ts.map +1 -0
  1016. package/dist/workflows/utils.d.ts +19 -0
  1017. package/dist/workflows/utils.d.ts.map +1 -0
  1018. package/dist/workflows/workflow.d.ts +493 -0
  1019. package/dist/workflows/workflow.d.ts.map +1 -0
  1020. package/dist/workflows/workflow.warning.d.ts +9 -0
  1021. package/dist/workflows/workflow.warning.d.ts.map +1 -0
  1022. package/dist/zod-to-json.cjs +12 -0
  1023. package/dist/zod-to-json.cjs.map +1 -0
  1024. package/dist/zod-to-json.d.ts +2 -0
  1025. package/dist/zod-to-json.d.ts.map +1 -0
  1026. package/dist/zod-to-json.js +3 -0
  1027. package/dist/zod-to-json.js.map +1 -0
  1028. package/error.d.ts +1 -0
  1029. package/eval.d.ts +1 -0
  1030. package/events.d.ts +1 -0
  1031. package/hooks.d.ts +1 -0
  1032. package/integration.d.ts +1 -0
  1033. package/llm.d.ts +1 -0
  1034. package/logger.d.ts +1 -0
  1035. package/loop.d.ts +1 -0
  1036. package/mastra.d.ts +1 -0
  1037. package/mcp.d.ts +1 -0
  1038. package/memory.d.ts +1 -0
  1039. package/package.json +305 -0
  1040. package/processors.d.ts +1 -0
  1041. package/relevance.d.ts +1 -0
  1042. package/runtime-context.d.ts +1 -0
  1043. package/scores/scoreTraces.d.ts +1 -0
  1044. package/scores.d.ts +1 -0
  1045. package/server.d.ts +1 -0
  1046. package/src/llm/model/provider-types.generated.d.ts +1205 -0
  1047. package/storage.d.ts +1 -0
  1048. package/stream.d.ts +1 -0
  1049. package/telemetry/otel-vendor.d.ts +1 -0
  1050. package/telemetry.d.ts +1 -0
  1051. package/test-utils/llm-mock.d.ts +1 -0
  1052. package/tools/is-vercel-tool.d.ts +1 -0
  1053. package/tools.d.ts +1 -0
  1054. package/tts.d.ts +1 -0
  1055. package/types.d.ts +1 -0
  1056. package/utils/zod-to-json.d.ts +1 -0
  1057. package/utils.d.ts +1 -0
  1058. package/vector/filter.d.ts +1 -0
  1059. package/vector.d.ts +1 -0
  1060. package/voice.d.ts +1 -0
  1061. package/workflows/_constants.d.ts +1 -0
  1062. package/workflows/evented.d.ts +1 -0
  1063. package/workflows/legacy.d.ts +1 -0
  1064. package/workflows.d.ts +1 -0
@@ -0,0 +1,3160 @@
1
+ 'use strict';
2
+
3
+ var fs = require('fs');
4
+ var module$1 = require('module');
5
+ var os = require('os');
6
+ var path = require('path');
7
+
8
+ var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
9
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
+
11
+ var fs__default = /*#__PURE__*/_interopDefault(fs);
12
+ var os__default = /*#__PURE__*/_interopDefault(os);
13
+ var path__default = /*#__PURE__*/_interopDefault(path);
14
+
15
+ // src/llm/model/provider-registry.ts
16
+
17
+ // src/llm/model/provider-registry.json
18
+ var provider_registry_default = {
19
+ providers: {
20
+ "moonshotai-cn": {
21
+ url: "https://api.moonshot.cn/v1",
22
+ apiKeyEnvVar: "MOONSHOT_API_KEY",
23
+ apiKeyHeader: "Authorization",
24
+ name: "Moonshot AI (China)",
25
+ models: [
26
+ "kimi-k2-0711-preview",
27
+ "kimi-k2-0905-preview",
28
+ "kimi-k2-thinking",
29
+ "kimi-k2-thinking-turbo",
30
+ "kimi-k2-turbo-preview"
31
+ ],
32
+ docUrl: "https://platform.moonshot.cn/docs/api/chat",
33
+ gateway: "models.dev"
34
+ },
35
+ lucidquery: {
36
+ url: "https://lucidquery.com/api/v1",
37
+ apiKeyEnvVar: "LUCIDQUERY_API_KEY",
38
+ apiKeyHeader: "Authorization",
39
+ name: "LucidQuery AI",
40
+ models: ["lucidnova-rf1-100b", "lucidquery-nexus-coder"],
41
+ docUrl: "https://lucidquery.com/api/docs",
42
+ gateway: "models.dev"
43
+ },
44
+ moonshotai: {
45
+ url: "https://api.moonshot.ai/v1",
46
+ apiKeyEnvVar: "MOONSHOT_API_KEY",
47
+ apiKeyHeader: "Authorization",
48
+ name: "Moonshot AI",
49
+ models: [
50
+ "kimi-k2-0711-preview",
51
+ "kimi-k2-0905-preview",
52
+ "kimi-k2-thinking",
53
+ "kimi-k2-thinking-turbo",
54
+ "kimi-k2-turbo-preview"
55
+ ],
56
+ docUrl: "https://platform.moonshot.ai/docs/api/chat",
57
+ gateway: "models.dev"
58
+ },
59
+ "zai-coding-plan": {
60
+ url: "https://api.z.ai/api/coding/paas/v4",
61
+ apiKeyEnvVar: "ZHIPU_API_KEY",
62
+ apiKeyHeader: "Authorization",
63
+ name: "Z.AI Coding Plan",
64
+ models: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
65
+ docUrl: "https://docs.z.ai/devpack/overview",
66
+ gateway: "models.dev"
67
+ },
68
+ alibaba: {
69
+ url: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
70
+ apiKeyEnvVar: "DASHSCOPE_API_KEY",
71
+ apiKeyHeader: "Authorization",
72
+ name: "Alibaba",
73
+ models: [
74
+ "qvq-max",
75
+ "qwen-flash",
76
+ "qwen-max",
77
+ "qwen-mt-plus",
78
+ "qwen-mt-turbo",
79
+ "qwen-omni-turbo",
80
+ "qwen-omni-turbo-realtime",
81
+ "qwen-plus",
82
+ "qwen-plus-character-ja",
83
+ "qwen-turbo",
84
+ "qwen-vl-max",
85
+ "qwen-vl-ocr",
86
+ "qwen-vl-plus",
87
+ "qwen2-5-14b-instruct",
88
+ "qwen2-5-32b-instruct",
89
+ "qwen2-5-72b-instruct",
90
+ "qwen2-5-7b-instruct",
91
+ "qwen2-5-omni-7b",
92
+ "qwen2-5-vl-72b-instruct",
93
+ "qwen2-5-vl-7b-instruct",
94
+ "qwen3-14b",
95
+ "qwen3-235b-a22b",
96
+ "qwen3-32b",
97
+ "qwen3-8b",
98
+ "qwen3-asr-flash",
99
+ "qwen3-coder-30b-a3b-instruct",
100
+ "qwen3-coder-480b-a35b-instruct",
101
+ "qwen3-coder-flash",
102
+ "qwen3-coder-plus",
103
+ "qwen3-livetranslate-flash-realtime",
104
+ "qwen3-max",
105
+ "qwen3-next-80b-a3b-instruct",
106
+ "qwen3-next-80b-a3b-thinking",
107
+ "qwen3-omni-flash",
108
+ "qwen3-omni-flash-realtime",
109
+ "qwen3-vl-235b-a22b",
110
+ "qwen3-vl-30b-a3b",
111
+ "qwen3-vl-plus",
112
+ "qwq-plus"
113
+ ],
114
+ docUrl: "https://www.alibabacloud.com/help/en/model-studio/models",
115
+ gateway: "models.dev"
116
+ },
117
+ xai: {
118
+ apiKeyEnvVar: "XAI_API_KEY",
119
+ name: "xAI",
120
+ models: [
121
+ "grok-2",
122
+ "grok-2-1212",
123
+ "grok-2-latest",
124
+ "grok-2-vision",
125
+ "grok-2-vision-1212",
126
+ "grok-2-vision-latest",
127
+ "grok-3",
128
+ "grok-3-fast",
129
+ "grok-3-fast-latest",
130
+ "grok-3-latest",
131
+ "grok-3-mini",
132
+ "grok-3-mini-fast",
133
+ "grok-3-mini-fast-latest",
134
+ "grok-3-mini-latest",
135
+ "grok-4",
136
+ "grok-4-1-fast",
137
+ "grok-4-1-fast-non-reasoning",
138
+ "grok-4-fast",
139
+ "grok-4-fast-non-reasoning",
140
+ "grok-beta",
141
+ "grok-code-fast-1",
142
+ "grok-vision-beta"
143
+ ],
144
+ docUrl: "https://docs.x.ai/docs/models",
145
+ gateway: "models.dev"
146
+ },
147
+ vultr: {
148
+ url: "https://api.vultrinference.com/v1",
149
+ apiKeyEnvVar: "VULTR_API_KEY",
150
+ apiKeyHeader: "Authorization",
151
+ name: "Vultr",
152
+ models: [
153
+ "deepseek-r1-distill-llama-70b",
154
+ "deepseek-r1-distill-qwen-32b",
155
+ "gpt-oss-120b",
156
+ "kimi-k2-instruct",
157
+ "qwen2.5-coder-32b-instruct"
158
+ ],
159
+ docUrl: "https://api.vultrinference.com/",
160
+ gateway: "models.dev"
161
+ },
162
+ nvidia: {
163
+ url: "https://integrate.api.nvidia.com/v1",
164
+ apiKeyEnvVar: "NVIDIA_API_KEY",
165
+ apiKeyHeader: "Authorization",
166
+ name: "Nvidia",
167
+ models: [
168
+ "black-forest-labs/flux.1-dev",
169
+ "deepseek-ai/deepseek-v3.1",
170
+ "deepseek-ai/deepseek-v3.1-terminus",
171
+ "google/gemma-3-27b-it",
172
+ "microsoft/phi-4-mini-instruct",
173
+ "minimaxai/minimax-m2",
174
+ "moonshotai/kimi-k2-instruct",
175
+ "moonshotai/kimi-k2-instruct-0905",
176
+ "nvidia/cosmos-nemotron-34b",
177
+ "nvidia/llama-3.1-nemotron-ultra-253b-v1",
178
+ "nvidia/llama-embed-nemotron-8b",
179
+ "nvidia/nemoretriever-ocr-v1",
180
+ "nvidia/nvidia-nemotron-nano-9b-v2",
181
+ "nvidia/parakeet-tdt-0.6b-v2",
182
+ "openai/gpt-oss-120b",
183
+ "openai/whisper-large-v3",
184
+ "qwen/qwen3-235b-a22b",
185
+ "qwen/qwen3-coder-480b-a35b-instruct",
186
+ "qwen/qwen3-next-80b-a3b-instruct",
187
+ "qwen/qwen3-next-80b-a3b-thinking"
188
+ ],
189
+ docUrl: "https://docs.api.nvidia.com/nim/",
190
+ gateway: "models.dev"
191
+ },
192
+ upstage: {
193
+ url: "https://api.upstage.ai",
194
+ apiKeyEnvVar: "UPSTAGE_API_KEY",
195
+ apiKeyHeader: "Authorization",
196
+ name: "Upstage",
197
+ models: ["solar-mini", "solar-pro2"],
198
+ docUrl: "https://developers.upstage.ai/docs/apis/chat",
199
+ gateway: "models.dev"
200
+ },
201
+ groq: {
202
+ url: "https://api.groq.com/openai/v1",
203
+ apiKeyEnvVar: "GROQ_API_KEY",
204
+ apiKeyHeader: "Authorization",
205
+ name: "Groq",
206
+ models: [
207
+ "deepseek-r1-distill-llama-70b",
208
+ "gemma2-9b-it",
209
+ "llama-3.1-8b-instant",
210
+ "llama-3.3-70b-versatile",
211
+ "llama-guard-3-8b",
212
+ "llama3-70b-8192",
213
+ "llama3-8b-8192",
214
+ "meta-llama/llama-4-maverick-17b-128e-instruct",
215
+ "meta-llama/llama-4-scout-17b-16e-instruct",
216
+ "meta-llama/llama-guard-4-12b",
217
+ "mistral-saba-24b",
218
+ "moonshotai/kimi-k2-instruct",
219
+ "moonshotai/kimi-k2-instruct-0905",
220
+ "openai/gpt-oss-120b",
221
+ "openai/gpt-oss-20b",
222
+ "qwen-qwq-32b",
223
+ "qwen/qwen3-32b"
224
+ ],
225
+ docUrl: "https://console.groq.com/docs/models",
226
+ gateway: "models.dev"
227
+ },
228
+ mistral: {
229
+ url: "https://api.mistral.ai/v1",
230
+ apiKeyEnvVar: "MISTRAL_API_KEY",
231
+ name: "Mistral",
232
+ models: [
233
+ "codestral-latest",
234
+ "devstral-medium-2507",
235
+ "devstral-small-2505",
236
+ "devstral-small-2507",
237
+ "magistral-medium-latest",
238
+ "magistral-small",
239
+ "ministral-3b-latest",
240
+ "ministral-8b-latest",
241
+ "mistral-large-latest",
242
+ "mistral-medium-2505",
243
+ "mistral-medium-2508",
244
+ "mistral-medium-latest",
245
+ "mistral-nemo",
246
+ "mistral-small-latest",
247
+ "open-mistral-7b",
248
+ "open-mixtral-8x22b",
249
+ "open-mixtral-8x7b",
250
+ "pixtral-12b",
251
+ "pixtral-large-latest"
252
+ ],
253
+ docUrl: "https://docs.mistral.ai/getting-started/models/",
254
+ gateway: "models.dev"
255
+ },
256
+ vercel: {
257
+ url: "https://ai-gateway.vercel.sh/v1",
258
+ apiKeyEnvVar: "AI_GATEWAY_API_KEY",
259
+ apiKeyHeader: "Authorization",
260
+ name: "Vercel AI Gateway",
261
+ models: [
262
+ "alibaba/qwen3-coder-plus",
263
+ "alibaba/qwen3-max",
264
+ "alibaba/qwen3-next-80b-a3b-instruct",
265
+ "alibaba/qwen3-next-80b-a3b-thinking",
266
+ "alibaba/qwen3-vl-instruct",
267
+ "alibaba/qwen3-vl-thinking",
268
+ "amazon/nova-lite",
269
+ "amazon/nova-micro",
270
+ "amazon/nova-pro",
271
+ "anthropic/claude-3-haiku",
272
+ "anthropic/claude-3-opus",
273
+ "anthropic/claude-3.5-haiku",
274
+ "anthropic/claude-3.5-sonnet",
275
+ "anthropic/claude-3.7-sonnet",
276
+ "anthropic/claude-4-1-opus",
277
+ "anthropic/claude-4-opus",
278
+ "anthropic/claude-4-sonnet",
279
+ "anthropic/claude-4.5-sonnet",
280
+ "anthropic/claude-haiku-4.5",
281
+ "anthropic/claude-opus-4.5",
282
+ "deepseek/deepseek-r1",
283
+ "deepseek/deepseek-r1-distill-llama-70b",
284
+ "deepseek/deepseek-v3.1-terminus",
285
+ "deepseek/deepseek-v3.2-exp",
286
+ "deepseek/deepseek-v3.2-exp-thinking",
287
+ "google/gemini-2.0-flash",
288
+ "google/gemini-2.0-flash-lite",
289
+ "google/gemini-2.5-flash",
290
+ "google/gemini-2.5-flash-lite",
291
+ "google/gemini-2.5-flash-lite-preview-09-2025",
292
+ "google/gemini-2.5-flash-preview-09-2025",
293
+ "google/gemini-2.5-pro",
294
+ "google/gemini-3-pro-preview",
295
+ "meta/llama-3.3-70b",
296
+ "meta/llama-4-maverick",
297
+ "meta/llama-4-scout",
298
+ "minimax/minimax-m2",
299
+ "mistral/codestral",
300
+ "mistral/magistral-medium",
301
+ "mistral/magistral-small",
302
+ "mistral/ministral-3b",
303
+ "mistral/ministral-8b",
304
+ "mistral/mistral-large",
305
+ "mistral/mistral-small",
306
+ "mistral/mixtral-8x22b-instruct",
307
+ "mistral/pixtral-12b",
308
+ "mistral/pixtral-large",
309
+ "moonshotai/kimi-k2",
310
+ "morph/morph-v3-fast",
311
+ "morph/morph-v3-large",
312
+ "openai/gpt-4-turbo",
313
+ "openai/gpt-4.1",
314
+ "openai/gpt-4.1-mini",
315
+ "openai/gpt-4.1-nano",
316
+ "openai/gpt-4o",
317
+ "openai/gpt-4o-mini",
318
+ "openai/gpt-5",
319
+ "openai/gpt-5-codex",
320
+ "openai/gpt-5-mini",
321
+ "openai/gpt-5-nano",
322
+ "openai/gpt-oss-120b",
323
+ "openai/gpt-oss-20b",
324
+ "openai/o1",
325
+ "openai/o3",
326
+ "openai/o3-mini",
327
+ "openai/o4-mini",
328
+ "perplexity/sonar",
329
+ "perplexity/sonar-pro",
330
+ "perplexity/sonar-reasoning",
331
+ "perplexity/sonar-reasoning-pro",
332
+ "vercel/v0-1.0-md",
333
+ "vercel/v0-1.5-md",
334
+ "xai/grok-2",
335
+ "xai/grok-2-vision",
336
+ "xai/grok-3",
337
+ "xai/grok-3-fast",
338
+ "xai/grok-3-mini",
339
+ "xai/grok-3-mini-fast",
340
+ "xai/grok-4",
341
+ "xai/grok-4-fast",
342
+ "xai/grok-4-fast-non-reasoning",
343
+ "xai/grok-code-fast-1",
344
+ "zai/glm-4.5",
345
+ "zai/glm-4.5-air",
346
+ "zai/glm-4.5v",
347
+ "zai/glm-4.6"
348
+ ],
349
+ docUrl: "https://github.com/vercel/ai/tree/5eb85cc45a259553501f535b8ac79a77d0e79223/packages/gateway",
350
+ gateway: "models.dev"
351
+ },
352
+ nebius: {
353
+ url: "https://api.tokenfactory.nebius.com/v1",
354
+ apiKeyEnvVar: "NEBIUS_API_KEY",
355
+ apiKeyHeader: "Authorization",
356
+ name: "Nebius Token Factory",
357
+ models: [
358
+ "NousResearch/hermes-4-405b",
359
+ "NousResearch/hermes-4-70b",
360
+ "deepseek-ai/deepseek-v3",
361
+ "meta-llama/llama-3.3-70b-instruct-base",
362
+ "meta-llama/llama-3.3-70b-instruct-fast",
363
+ "meta-llama/llama-3_1-405b-instruct",
364
+ "moonshotai/kimi-k2-instruct",
365
+ "nvidia/llama-3_1-nemotron-ultra-253b-v1",
366
+ "openai/gpt-oss-120b",
367
+ "openai/gpt-oss-20b",
368
+ "qwen/qwen3-235b-a22b-instruct-2507",
369
+ "qwen/qwen3-235b-a22b-thinking-2507",
370
+ "qwen/qwen3-coder-480b-a35b-instruct",
371
+ "zai-org/glm-4.5",
372
+ "zai-org/glm-4.5-air"
373
+ ],
374
+ docUrl: "https://docs.tokenfactory.nebius.com/",
375
+ gateway: "models.dev"
376
+ },
377
+ deepseek: {
378
+ url: "https://api.deepseek.com",
379
+ apiKeyEnvVar: "DEEPSEEK_API_KEY",
380
+ apiKeyHeader: "Authorization",
381
+ name: "DeepSeek",
382
+ models: ["deepseek-chat", "deepseek-reasoner"],
383
+ docUrl: "https://platform.deepseek.com/api-docs/pricing",
384
+ gateway: "models.dev"
385
+ },
386
+ "alibaba-cn": {
387
+ url: "https://dashscope.aliyuncs.com/compatible-mode/v1",
388
+ apiKeyEnvVar: "DASHSCOPE_API_KEY",
389
+ apiKeyHeader: "Authorization",
390
+ name: "Alibaba (China)",
391
+ models: [
392
+ "deepseek-r1",
393
+ "deepseek-r1-0528",
394
+ "deepseek-r1-distill-llama-70b",
395
+ "deepseek-r1-distill-llama-8b",
396
+ "deepseek-r1-distill-qwen-1-5b",
397
+ "deepseek-r1-distill-qwen-14b",
398
+ "deepseek-r1-distill-qwen-32b",
399
+ "deepseek-r1-distill-qwen-7b",
400
+ "deepseek-v3",
401
+ "deepseek-v3-1",
402
+ "deepseek-v3-2-exp",
403
+ "moonshot-kimi-k2-instruct",
404
+ "qvq-max",
405
+ "qwen-deep-research",
406
+ "qwen-doc-turbo",
407
+ "qwen-flash",
408
+ "qwen-long",
409
+ "qwen-math-plus",
410
+ "qwen-math-turbo",
411
+ "qwen-max",
412
+ "qwen-mt-plus",
413
+ "qwen-mt-turbo",
414
+ "qwen-omni-turbo",
415
+ "qwen-omni-turbo-realtime",
416
+ "qwen-plus",
417
+ "qwen-plus-character",
418
+ "qwen-turbo",
419
+ "qwen-vl-max",
420
+ "qwen-vl-ocr",
421
+ "qwen-vl-plus",
422
+ "qwen2-5-14b-instruct",
423
+ "qwen2-5-32b-instruct",
424
+ "qwen2-5-72b-instruct",
425
+ "qwen2-5-7b-instruct",
426
+ "qwen2-5-coder-32b-instruct",
427
+ "qwen2-5-coder-7b-instruct",
428
+ "qwen2-5-math-72b-instruct",
429
+ "qwen2-5-math-7b-instruct",
430
+ "qwen2-5-omni-7b",
431
+ "qwen2-5-vl-72b-instruct",
432
+ "qwen2-5-vl-7b-instruct",
433
+ "qwen3-14b",
434
+ "qwen3-235b-a22b",
435
+ "qwen3-32b",
436
+ "qwen3-8b",
437
+ "qwen3-asr-flash",
438
+ "qwen3-coder-30b-a3b-instruct",
439
+ "qwen3-coder-480b-a35b-instruct",
440
+ "qwen3-coder-flash",
441
+ "qwen3-coder-plus",
442
+ "qwen3-max",
443
+ "qwen3-next-80b-a3b-instruct",
444
+ "qwen3-next-80b-a3b-thinking",
445
+ "qwen3-omni-flash",
446
+ "qwen3-omni-flash-realtime",
447
+ "qwen3-vl-235b-a22b",
448
+ "qwen3-vl-30b-a3b",
449
+ "qwen3-vl-plus",
450
+ "qwq-32b",
451
+ "qwq-plus",
452
+ "tongyi-intent-detect-v3"
453
+ ],
454
+ docUrl: "https://www.alibabacloud.com/help/en/model-studio/models",
455
+ gateway: "models.dev"
456
+ },
457
+ venice: {
458
+ url: "https://api.venice.ai/api/v1",
459
+ apiKeyEnvVar: "VENICE_API_KEY",
460
+ apiKeyHeader: "Authorization",
461
+ name: "Venice AI",
462
+ models: [
463
+ "deepseek-coder-v2-lite",
464
+ "deepseek-r1-671b",
465
+ "dolphin-2.9.2-qwen2-72b",
466
+ "llama-3.1-405b",
467
+ "llama-3.2-3b",
468
+ "llama-3.3-70b",
469
+ "mistral-31-24b",
470
+ "qwen-2.5-coder-32b",
471
+ "qwen-2.5-qwq-32b",
472
+ "qwen-2.5-vl",
473
+ "qwen3-235b",
474
+ "qwen3-4b",
475
+ "venice-uncensored",
476
+ "zai-org-glm-4.6"
477
+ ],
478
+ docUrl: "https://docs.venice.ai",
479
+ gateway: "models.dev"
480
+ },
481
+ chutes: {
482
+ url: "https://llm.chutes.ai/v1",
483
+ apiKeyEnvVar: "CHUTES_API_KEY",
484
+ apiKeyHeader: "Authorization",
485
+ name: "Chutes",
486
+ models: [
487
+ "Alibaba-NLP/Tongyi-DeepResearch-30B-A3B",
488
+ "ArliAI/QwQ-32B-ArliAI-RpR-v1",
489
+ "MiniMaxAI/MiniMax-M2",
490
+ "NousResearch/DeepHermes-3-Mistral-24B-Preview",
491
+ "NousResearch/Hermes-4-14B",
492
+ "NousResearch/Hermes-4-405B-FP8",
493
+ "NousResearch/Hermes-4-70B",
494
+ "OpenGVLab/InternVL3-78B",
495
+ "Qwen/Qwen2.5-72B-Instruct",
496
+ "Qwen/Qwen2.5-Coder-32B-Instruct",
497
+ "Qwen/Qwen2.5-VL-32B-Instruct",
498
+ "Qwen/Qwen2.5-VL-72B-Instruct",
499
+ "Qwen/Qwen3-14B",
500
+ "Qwen/Qwen3-235B-A22B",
501
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
502
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
503
+ "Qwen/Qwen3-30B-A3B",
504
+ "Qwen/Qwen3-30B-A3B-Instruct-2507",
505
+ "Qwen/Qwen3-32B",
506
+ "Qwen/Qwen3-Coder-30B-A3B-Instruct",
507
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
508
+ "Qwen/Qwen3-Next-80B-A3B-Instruct",
509
+ "Qwen/Qwen3-VL-235B-A22B-Instruct",
510
+ "Qwen/Qwen3-VL-235B-A22B-Thinking",
511
+ "chutesai/Mistral-Small-3.1-24B-Instruct-2503",
512
+ "chutesai/Mistral-Small-3.2-24B-Instruct-2506",
513
+ "deepseek-ai/DeepSeek-R1",
514
+ "deepseek-ai/DeepSeek-R1-0528",
515
+ "deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",
516
+ "deepseek-ai/DeepSeek-R1-Distill-Llama-70B",
517
+ "deepseek-ai/DeepSeek-V3",
518
+ "deepseek-ai/DeepSeek-V3-0324",
519
+ "deepseek-ai/DeepSeek-V3.1",
520
+ "deepseek-ai/DeepSeek-V3.1-Terminus",
521
+ "deepseek-ai/DeepSeek-V3.2-Exp",
522
+ "meituan-longcat/LongCat-Flash-Chat-FP8",
523
+ "microsoft/MAI-DS-R1-FP8",
524
+ "moonshotai/Kimi-K2-Instruct-0905",
525
+ "moonshotai/Kimi-K2-Thinking",
526
+ "openai/gpt-oss-120b",
527
+ "openai/gpt-oss-20b",
528
+ "rednote-hilab/dots.ocr",
529
+ "tngtech/DeepSeek-R1T-Chimera",
530
+ "tngtech/DeepSeek-TNG-R1T2-Chimera",
531
+ "unsloth/Mistral-Nemo-Instruct-2407",
532
+ "unsloth/Mistral-Small-24B-Instruct-2501",
533
+ "unsloth/gemma-3-12b-it",
534
+ "unsloth/gemma-3-27b-it",
535
+ "unsloth/gemma-3-4b-it",
536
+ "zai-org/GLM-4.5",
537
+ "zai-org/GLM-4.5-Air",
538
+ "zai-org/GLM-4.6"
539
+ ],
540
+ docUrl: "https://llm.chutes.ai/v1/models",
541
+ gateway: "models.dev"
542
+ },
543
+ cortecs: {
544
+ url: "https://api.cortecs.ai/v1",
545
+ apiKeyEnvVar: "CORTECS_API_KEY",
546
+ apiKeyHeader: "Authorization",
547
+ name: "Cortecs",
548
+ models: [
549
+ "claude-4-5-sonnet",
550
+ "claude-sonnet-4",
551
+ "deepseek-v3-0324",
552
+ "gemini-2.5-pro",
553
+ "gpt-4.1",
554
+ "gpt-oss-120b",
555
+ "kimi-k2-instruct",
556
+ "llama-3.1-405b-instruct",
557
+ "nova-pro-v1",
558
+ "qwen3-32b",
559
+ "qwen3-coder-480b-a35b-instruct"
560
+ ],
561
+ docUrl: "https://api.cortecs.ai/v1/models",
562
+ gateway: "models.dev"
563
+ },
564
+ "github-models": {
565
+ url: "https://models.github.ai/inference",
566
+ apiKeyEnvVar: "GITHUB_TOKEN",
567
+ apiKeyHeader: "Authorization",
568
+ name: "GitHub Models",
569
+ models: [
570
+ "ai21-labs/ai21-jamba-1.5-large",
571
+ "ai21-labs/ai21-jamba-1.5-mini",
572
+ "cohere/cohere-command-a",
573
+ "cohere/cohere-command-r",
574
+ "cohere/cohere-command-r-08-2024",
575
+ "cohere/cohere-command-r-plus",
576
+ "cohere/cohere-command-r-plus-08-2024",
577
+ "core42/jais-30b-chat",
578
+ "deepseek/deepseek-r1",
579
+ "deepseek/deepseek-r1-0528",
580
+ "deepseek/deepseek-v3-0324",
581
+ "meta/llama-3.2-11b-vision-instruct",
582
+ "meta/llama-3.2-90b-vision-instruct",
583
+ "meta/llama-3.3-70b-instruct",
584
+ "meta/llama-4-maverick-17b-128e-instruct-fp8",
585
+ "meta/llama-4-scout-17b-16e-instruct",
586
+ "meta/meta-llama-3-70b-instruct",
587
+ "meta/meta-llama-3-8b-instruct",
588
+ "meta/meta-llama-3.1-405b-instruct",
589
+ "meta/meta-llama-3.1-70b-instruct",
590
+ "meta/meta-llama-3.1-8b-instruct",
591
+ "microsoft/mai-ds-r1",
592
+ "microsoft/phi-3-medium-128k-instruct",
593
+ "microsoft/phi-3-medium-4k-instruct",
594
+ "microsoft/phi-3-mini-128k-instruct",
595
+ "microsoft/phi-3-mini-4k-instruct",
596
+ "microsoft/phi-3-small-128k-instruct",
597
+ "microsoft/phi-3-small-8k-instruct",
598
+ "microsoft/phi-3.5-mini-instruct",
599
+ "microsoft/phi-3.5-moe-instruct",
600
+ "microsoft/phi-3.5-vision-instruct",
601
+ "microsoft/phi-4",
602
+ "microsoft/phi-4-mini-instruct",
603
+ "microsoft/phi-4-mini-reasoning",
604
+ "microsoft/phi-4-multimodal-instruct",
605
+ "microsoft/phi-4-reasoning",
606
+ "mistral-ai/codestral-2501",
607
+ "mistral-ai/ministral-3b",
608
+ "mistral-ai/mistral-large-2411",
609
+ "mistral-ai/mistral-medium-2505",
610
+ "mistral-ai/mistral-nemo",
611
+ "mistral-ai/mistral-small-2503",
612
+ "openai/gpt-4.1",
613
+ "openai/gpt-4.1-mini",
614
+ "openai/gpt-4.1-nano",
615
+ "openai/gpt-4o",
616
+ "openai/gpt-4o-mini",
617
+ "openai/o1",
618
+ "openai/o1-mini",
619
+ "openai/o1-preview",
620
+ "openai/o3",
621
+ "openai/o3-mini",
622
+ "openai/o4-mini",
623
+ "xai/grok-3",
624
+ "xai/grok-3-mini"
625
+ ],
626
+ docUrl: "https://docs.github.com/en/github-models",
627
+ gateway: "models.dev"
628
+ },
629
+ togetherai: {
630
+ url: "https://api.together.xyz/v1",
631
+ apiKeyEnvVar: "TOGETHER_API_KEY",
632
+ apiKeyHeader: "Authorization",
633
+ name: "Together AI",
634
+ models: [
635
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
636
+ "deepseek-ai/DeepSeek-R1",
637
+ "deepseek-ai/DeepSeek-V3",
638
+ "meta-llama/Llama-3.3-70B-Instruct-Turbo",
639
+ "moonshotai/Kimi-K2-Instruct",
640
+ "openai/gpt-oss-120b"
641
+ ],
642
+ docUrl: "https://docs.together.ai/docs/serverless-models",
643
+ gateway: "models.dev"
644
+ },
645
+ baseten: {
646
+ url: "https://inference.baseten.co/v1",
647
+ apiKeyEnvVar: "BASETEN_API_KEY",
648
+ apiKeyHeader: "Authorization",
649
+ name: "Baseten",
650
+ models: [
651
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
652
+ "moonshotai/Kimi-K2-Instruct-0905",
653
+ "moonshotai/Kimi-K2-Thinking",
654
+ "zai-org/GLM-4.6"
655
+ ],
656
+ docUrl: "https://docs.baseten.co/development/model-apis/overview",
657
+ gateway: "models.dev"
658
+ },
659
+ siliconflow: {
660
+ url: "https://api.siliconflow.com/v1",
661
+ apiKeyEnvVar: "SILICONFLOW_API_KEY",
662
+ apiKeyHeader: "Authorization",
663
+ name: "SiliconFlow",
664
+ models: [
665
+ "baidu-ernie-4.5-300b-a47b",
666
+ "bytedance-seed-seed-oss-36b-instruct",
667
+ "deepseek-ai-deepseek-r1",
668
+ "deepseek-ai-deepseek-r1-distill-qwen-14b",
669
+ "deepseek-ai-deepseek-r1-distill-qwen-32b",
670
+ "deepseek-ai-deepseek-r1-distill-qwen-7b",
671
+ "deepseek-ai-deepseek-v3",
672
+ "deepseek-ai-deepseek-v3.1",
673
+ "deepseek-ai-deepseek-v3.1-terminus",
674
+ "deepseek-ai-deepseek-v3.2-exp",
675
+ "deepseek-ai-deepseek-vl2",
676
+ "inclusionai-ling-flash-2.0",
677
+ "inclusionai-ling-mini-2.0",
678
+ "inclusionai-ring-flash-2.0",
679
+ "meta-llama-meta-llama-3.1-8b-instruct",
680
+ "minimaxai-minimax-m1-80k",
681
+ "minimaxai-minimax-m2",
682
+ "moonshotai-kimi-dev-72b",
683
+ "moonshotai-kimi-k2-instruct",
684
+ "moonshotai-kimi-k2-instruct-0905",
685
+ "moonshotai-kimi-k2-thinking",
686
+ "nex-agi-deepseek-v3.1-nex-n1",
687
+ "openai-gpt-oss-120b",
688
+ "openai-gpt-oss-20b",
689
+ "qwen-qwen2.5-14b-instruct",
690
+ "qwen-qwen2.5-32b-instruct",
691
+ "qwen-qwen2.5-72b-instruct",
692
+ "qwen-qwen2.5-72b-instruct-128k",
693
+ "qwen-qwen2.5-7b-instruct",
694
+ "qwen-qwen2.5-coder-32b-instruct",
695
+ "qwen-qwen2.5-vl-32b-instruct",
696
+ "qwen-qwen2.5-vl-72b-instruct",
697
+ "qwen-qwen2.5-vl-7b-instruct",
698
+ "qwen-qwen3-14b",
699
+ "qwen-qwen3-235b-a22b",
700
+ "qwen-qwen3-235b-a22b-instruct-2507",
701
+ "qwen-qwen3-235b-a22b-thinking-2507",
702
+ "qwen-qwen3-30b-a3b",
703
+ "qwen-qwen3-30b-a3b-instruct-2507",
704
+ "qwen-qwen3-30b-a3b-thinking-2507",
705
+ "qwen-qwen3-32b",
706
+ "qwen-qwen3-8b",
707
+ "qwen-qwen3-coder-30b-a3b-instruct",
708
+ "qwen-qwen3-coder-480b-a35b-instruct",
709
+ "qwen-qwen3-next-80b-a3b-instruct",
710
+ "qwen-qwen3-next-80b-a3b-thinking",
711
+ "qwen-qwen3-omni-30b-a3b-captioner",
712
+ "qwen-qwen3-omni-30b-a3b-instruct",
713
+ "qwen-qwen3-omni-30b-a3b-thinking",
714
+ "qwen-qwen3-vl-235b-a22b-instruct",
715
+ "qwen-qwen3-vl-235b-a22b-thinking",
716
+ "qwen-qwen3-vl-30b-a3b-instruct",
717
+ "qwen-qwen3-vl-30b-a3b-thinking",
718
+ "qwen-qwen3-vl-32b-instruct",
719
+ "qwen-qwen3-vl-32b-thinking",
720
+ "qwen-qwen3-vl-8b-instruct",
721
+ "qwen-qwen3-vl-8b-thinking",
722
+ "qwen-qwq-32b",
723
+ "stepfun-ai-step3",
724
+ "tencent-hunyuan-a13b-instruct",
725
+ "tencent-hunyuan-mt-7b",
726
+ "thudm-glm-4-32b-0414",
727
+ "thudm-glm-4-9b-0414",
728
+ "thudm-glm-4.1v-9b-thinking",
729
+ "thudm-glm-z1-32b-0414",
730
+ "thudm-glm-z1-9b-0414",
731
+ "z-ai-glm-4.5",
732
+ "z-ai-glm-4.5-air",
733
+ "zai-org-glm-4.5",
734
+ "zai-org-glm-4.5-air",
735
+ "zai-org-glm-4.5v",
736
+ "zai-org-glm-4.6"
737
+ ],
738
+ docUrl: "https://cloud.siliconflow.com/models",
739
+ gateway: "models.dev"
740
+ },
741
+ huggingface: {
742
+ url: "https://router.huggingface.co/v1",
743
+ apiKeyEnvVar: "HF_TOKEN",
744
+ apiKeyHeader: "Authorization",
745
+ name: "Hugging Face",
746
+ models: [
747
+ "MiniMaxAI/MiniMax-M2",
748
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
749
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
750
+ "Qwen/Qwen3-Embedding-4B",
751
+ "Qwen/Qwen3-Embedding-8B",
752
+ "Qwen/Qwen3-Next-80B-A3B-Instruct",
753
+ "Qwen/Qwen3-Next-80B-A3B-Thinking",
754
+ "deepseek-ai/DeepSeek-R1-0528",
755
+ "deepseek-ai/Deepseek-V3-0324",
756
+ "moonshotai/Kimi-K2-Instruct",
757
+ "moonshotai/Kimi-K2-Instruct-0905",
758
+ "zai-org/GLM-4.5",
759
+ "zai-org/GLM-4.5-Air",
760
+ "zai-org/GLM-4.6"
761
+ ],
762
+ docUrl: "https://huggingface.co/docs/inference-providers",
763
+ gateway: "models.dev"
764
+ },
765
+ opencode: {
766
+ url: "https://opencode.ai/zen/v1",
767
+ apiKeyEnvVar: "OPENCODE_API_KEY",
768
+ apiKeyHeader: "Authorization",
769
+ name: "OpenCode Zen",
770
+ models: [
771
+ "alpha-doubao-seed-code",
772
+ "alpha-gd4",
773
+ "alpha-minimax-m2",
774
+ "big-pickle",
775
+ "claude-3-5-haiku",
776
+ "claude-haiku-4-5",
777
+ "claude-opus-4-1",
778
+ "claude-opus-4-5",
779
+ "claude-sonnet-4",
780
+ "claude-sonnet-4-5",
781
+ "gemini-3-pro",
782
+ "glm-4.6",
783
+ "gpt-5",
784
+ "gpt-5-codex",
785
+ "gpt-5-nano",
786
+ "gpt-5.1",
787
+ "gpt-5.1-codex",
788
+ "grok-code",
789
+ "kimi-k2",
790
+ "kimi-k2-thinking",
791
+ "qwen3-coder"
792
+ ],
793
+ docUrl: "https://opencode.ai/docs/zen",
794
+ gateway: "models.dev"
795
+ },
796
+ fastrouter: {
797
+ url: "https://go.fastrouter.ai/api/v1",
798
+ apiKeyEnvVar: "FASTROUTER_API_KEY",
799
+ apiKeyHeader: "Authorization",
800
+ name: "FastRouter",
801
+ models: [
802
+ "anthropic/claude-opus-4.1",
803
+ "anthropic/claude-sonnet-4",
804
+ "deepseek-ai/deepseek-r1-distill-llama-70b",
805
+ "google/gemini-2.5-flash",
806
+ "google/gemini-2.5-pro",
807
+ "moonshotai/kimi-k2",
808
+ "openai/gpt-4.1",
809
+ "openai/gpt-5",
810
+ "openai/gpt-5-mini",
811
+ "openai/gpt-5-nano",
812
+ "openai/gpt-oss-120b",
813
+ "openai/gpt-oss-20b",
814
+ "qwen/qwen3-coder",
815
+ "x-ai/grok-4"
816
+ ],
817
+ docUrl: "https://fastrouter.ai/models",
818
+ gateway: "models.dev"
819
+ },
820
+ minimax: {
821
+ url: "https://api.minimax.io/anthropic/v1",
822
+ apiKeyEnvVar: "MINIMAX_API_KEY",
823
+ apiKeyHeader: "Authorization",
824
+ name: "Minimax",
825
+ models: ["MiniMax-M2"],
826
+ docUrl: "https://platform.minimax.io/docs/guides/quickstart",
827
+ gateway: "models.dev"
828
+ },
829
+ google: {
830
+ apiKeyEnvVar: "GOOGLE_GENERATIVE_AI_API_KEY",
831
+ name: "Google",
832
+ models: [
833
+ "gemini-1.5-flash",
834
+ "gemini-1.5-flash-8b",
835
+ "gemini-1.5-pro",
836
+ "gemini-2.0-flash",
837
+ "gemini-2.0-flash-lite",
838
+ "gemini-2.5-flash",
839
+ "gemini-2.5-flash-image",
840
+ "gemini-2.5-flash-image-preview",
841
+ "gemini-2.5-flash-lite",
842
+ "gemini-2.5-flash-lite-preview-06-17",
843
+ "gemini-2.5-flash-lite-preview-09-2025",
844
+ "gemini-2.5-flash-preview-04-17",
845
+ "gemini-2.5-flash-preview-05-20",
846
+ "gemini-2.5-flash-preview-09-2025",
847
+ "gemini-2.5-flash-preview-tts",
848
+ "gemini-2.5-pro",
849
+ "gemini-2.5-pro-preview-05-06",
850
+ "gemini-2.5-pro-preview-06-05",
851
+ "gemini-2.5-pro-preview-tts",
852
+ "gemini-3-pro-preview",
853
+ "gemini-embedding-001",
854
+ "gemini-flash-latest",
855
+ "gemini-flash-lite-latest",
856
+ "gemini-live-2.5-flash",
857
+ "gemini-live-2.5-flash-preview-native-audio"
858
+ ],
859
+ docUrl: "https://ai.google.dev/gemini-api/docs/pricing",
860
+ gateway: "models.dev"
861
+ },
862
+ inception: {
863
+ url: "https://api.inceptionlabs.ai/v1/",
864
+ apiKeyEnvVar: "INCEPTION_API_KEY",
865
+ apiKeyHeader: "Authorization",
866
+ name: "Inception",
867
+ models: ["mercury", "mercury-coder"],
868
+ docUrl: "https://platform.inceptionlabs.ai/docs",
869
+ gateway: "models.dev"
870
+ },
871
+ wandb: {
872
+ url: "https://api.inference.wandb.ai/v1",
873
+ apiKeyEnvVar: "WANDB_API_KEY",
874
+ apiKeyHeader: "Authorization",
875
+ name: "Weights & Biases",
876
+ models: [
877
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
878
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
879
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
880
+ "deepseek-ai/DeepSeek-R1-0528",
881
+ "deepseek-ai/DeepSeek-V3-0324",
882
+ "meta-llama/Llama-3.1-8B-Instruct",
883
+ "meta-llama/Llama-3.3-70B-Instruct",
884
+ "meta-llama/Llama-4-Scout-17B-16E-Instruct",
885
+ "microsoft/Phi-4-mini-instruct",
886
+ "moonshotai/Kimi-K2-Instruct"
887
+ ],
888
+ docUrl: "https://weave-docs.wandb.ai/guides/integrations/inference/",
889
+ gateway: "models.dev"
890
+ },
891
+ openai: {
892
+ apiKeyEnvVar: "OPENAI_API_KEY",
893
+ name: "OpenAI",
894
+ models: [
895
+ "codex-mini-latest",
896
+ "gpt-3.5-turbo",
897
+ "gpt-4",
898
+ "gpt-4-turbo",
899
+ "gpt-4.1",
900
+ "gpt-4.1-mini",
901
+ "gpt-4.1-nano",
902
+ "gpt-4o",
903
+ "gpt-4o-2024-05-13",
904
+ "gpt-4o-2024-08-06",
905
+ "gpt-4o-2024-11-20",
906
+ "gpt-4o-mini",
907
+ "gpt-5",
908
+ "gpt-5-chat-latest",
909
+ "gpt-5-codex",
910
+ "gpt-5-mini",
911
+ "gpt-5-nano",
912
+ "gpt-5-pro",
913
+ "gpt-5.1",
914
+ "gpt-5.1-chat-latest",
915
+ "gpt-5.1-codex",
916
+ "gpt-5.1-codex-mini",
917
+ "o1",
918
+ "o1-mini",
919
+ "o1-preview",
920
+ "o1-pro",
921
+ "o3",
922
+ "o3-deep-research",
923
+ "o3-mini",
924
+ "o3-pro",
925
+ "o4-mini",
926
+ "o4-mini-deep-research",
927
+ "text-embedding-3-large",
928
+ "text-embedding-3-small",
929
+ "text-embedding-ada-002"
930
+ ],
931
+ docUrl: "https://platform.openai.com/docs/models",
932
+ gateway: "models.dev"
933
+ },
934
+ "zhipuai-coding-plan": {
935
+ url: "https://open.bigmodel.cn/api/coding/paas/v4",
936
+ apiKeyEnvVar: "ZHIPU_API_KEY",
937
+ apiKeyHeader: "Authorization",
938
+ name: "Zhipu AI Coding Plan",
939
+ models: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
940
+ docUrl: "https://docs.bigmodel.cn/cn/coding-plan/overview",
941
+ gateway: "models.dev"
942
+ },
943
+ perplexity: {
944
+ url: "https://api.perplexity.ai",
945
+ apiKeyEnvVar: "PERPLEXITY_API_KEY",
946
+ apiKeyHeader: "Authorization",
947
+ name: "Perplexity",
948
+ models: ["sonar", "sonar-pro", "sonar-reasoning", "sonar-reasoning-pro"],
949
+ docUrl: "https://docs.perplexity.ai",
950
+ gateway: "models.dev"
951
+ },
952
+ openrouter: {
953
+ url: "https://openrouter.ai/api/v1",
954
+ apiKeyEnvVar: "OPENROUTER_API_KEY",
955
+ name: "OpenRouter",
956
+ models: [
957
+ "anthropic/claude-3.5-haiku",
958
+ "anthropic/claude-3.7-sonnet",
959
+ "anthropic/claude-haiku-4.5",
960
+ "anthropic/claude-opus-4",
961
+ "anthropic/claude-opus-4.1",
962
+ "anthropic/claude-opus-4.5",
963
+ "anthropic/claude-sonnet-4",
964
+ "anthropic/claude-sonnet-4.5",
965
+ "cognitivecomputations/dolphin3.0-mistral-24b",
966
+ "cognitivecomputations/dolphin3.0-r1-mistral-24b",
967
+ "deepseek/deepseek-chat-v3-0324",
968
+ "deepseek/deepseek-chat-v3.1",
969
+ "deepseek/deepseek-r1-0528-qwen3-8b:free",
970
+ "deepseek/deepseek-r1-0528:free",
971
+ "deepseek/deepseek-r1-distill-llama-70b",
972
+ "deepseek/deepseek-r1-distill-qwen-14b",
973
+ "deepseek/deepseek-r1:free",
974
+ "deepseek/deepseek-v3-base:free",
975
+ "deepseek/deepseek-v3.1-terminus",
976
+ "deepseek/deepseek-v3.1-terminus:exacto",
977
+ "featherless/qwerky-72b",
978
+ "google/gemini-2.0-flash-001",
979
+ "google/gemini-2.0-flash-exp:free",
980
+ "google/gemini-2.5-flash",
981
+ "google/gemini-2.5-flash-lite",
982
+ "google/gemini-2.5-flash-lite-preview-09-2025",
983
+ "google/gemini-2.5-flash-preview-09-2025",
984
+ "google/gemini-2.5-pro",
985
+ "google/gemini-2.5-pro-preview-05-06",
986
+ "google/gemini-2.5-pro-preview-06-05",
987
+ "google/gemini-3-pro-preview",
988
+ "google/gemma-2-9b-it:free",
989
+ "google/gemma-3-12b-it",
990
+ "google/gemma-3-27b-it",
991
+ "google/gemma-3n-e4b-it",
992
+ "google/gemma-3n-e4b-it:free",
993
+ "kwaipilot/kat-coder-pro:free",
994
+ "meta-llama/llama-3.2-11b-vision-instruct",
995
+ "meta-llama/llama-3.3-70b-instruct:free",
996
+ "meta-llama/llama-4-scout:free",
997
+ "microsoft/mai-ds-r1:free",
998
+ "minimax/minimax-01",
999
+ "minimax/minimax-m1",
1000
+ "minimax/minimax-m2",
1001
+ "mistralai/codestral-2508",
1002
+ "mistralai/devstral-medium-2507",
1003
+ "mistralai/devstral-small-2505",
1004
+ "mistralai/devstral-small-2505:free",
1005
+ "mistralai/devstral-small-2507",
1006
+ "mistralai/mistral-7b-instruct:free",
1007
+ "mistralai/mistral-medium-3",
1008
+ "mistralai/mistral-medium-3.1",
1009
+ "mistralai/mistral-nemo:free",
1010
+ "mistralai/mistral-small-3.1-24b-instruct",
1011
+ "mistralai/mistral-small-3.2-24b-instruct",
1012
+ "mistralai/mistral-small-3.2-24b-instruct:free",
1013
+ "moonshotai/kimi-dev-72b:free",
1014
+ "moonshotai/kimi-k2",
1015
+ "moonshotai/kimi-k2-0905",
1016
+ "moonshotai/kimi-k2-0905:exacto",
1017
+ "moonshotai/kimi-k2-thinking",
1018
+ "moonshotai/kimi-k2:free",
1019
+ "nousresearch/deephermes-3-llama-3-8b-preview",
1020
+ "nousresearch/hermes-4-405b",
1021
+ "nousresearch/hermes-4-70b",
1022
+ "nvidia/nemotron-nano-9b-v2",
1023
+ "openai/gpt-4.1",
1024
+ "openai/gpt-4.1-mini",
1025
+ "openai/gpt-4o-mini",
1026
+ "openai/gpt-5",
1027
+ "openai/gpt-5-chat",
1028
+ "openai/gpt-5-codex",
1029
+ "openai/gpt-5-image",
1030
+ "openai/gpt-5-mini",
1031
+ "openai/gpt-5-nano",
1032
+ "openai/gpt-5-pro",
1033
+ "openai/gpt-5.1",
1034
+ "openai/gpt-5.1-chat",
1035
+ "openai/gpt-5.1-codex",
1036
+ "openai/gpt-5.1-codex-mini",
1037
+ "openai/gpt-oss-120b",
1038
+ "openai/gpt-oss-120b:exacto",
1039
+ "openai/gpt-oss-20b",
1040
+ "openai/gpt-oss-safeguard-20b",
1041
+ "openai/o4-mini",
1042
+ "qwen/qwen-2.5-coder-32b-instruct",
1043
+ "qwen/qwen2.5-vl-32b-instruct:free",
1044
+ "qwen/qwen2.5-vl-72b-instruct",
1045
+ "qwen/qwen2.5-vl-72b-instruct:free",
1046
+ "qwen/qwen3-14b:free",
1047
+ "qwen/qwen3-235b-a22b-07-25",
1048
+ "qwen/qwen3-235b-a22b-07-25:free",
1049
+ "qwen/qwen3-235b-a22b-thinking-2507",
1050
+ "qwen/qwen3-235b-a22b:free",
1051
+ "qwen/qwen3-30b-a3b-instruct-2507",
1052
+ "qwen/qwen3-30b-a3b-thinking-2507",
1053
+ "qwen/qwen3-30b-a3b:free",
1054
+ "qwen/qwen3-32b:free",
1055
+ "qwen/qwen3-8b:free",
1056
+ "qwen/qwen3-coder",
1057
+ "qwen/qwen3-coder-flash",
1058
+ "qwen/qwen3-coder:exacto",
1059
+ "qwen/qwen3-coder:free",
1060
+ "qwen/qwen3-max",
1061
+ "qwen/qwen3-next-80b-a3b-instruct",
1062
+ "qwen/qwen3-next-80b-a3b-thinking",
1063
+ "qwen/qwq-32b:free",
1064
+ "rekaai/reka-flash-3",
1065
+ "sarvamai/sarvam-m:free",
1066
+ "thudm/glm-z1-32b:free",
1067
+ "tngtech/deepseek-r1t2-chimera:free",
1068
+ "x-ai/grok-3",
1069
+ "x-ai/grok-3-beta",
1070
+ "x-ai/grok-3-mini",
1071
+ "x-ai/grok-3-mini-beta",
1072
+ "x-ai/grok-4",
1073
+ "x-ai/grok-4-fast",
1074
+ "x-ai/grok-4.1-fast",
1075
+ "x-ai/grok-code-fast-1",
1076
+ "z-ai/glm-4.5",
1077
+ "z-ai/glm-4.5-air",
1078
+ "z-ai/glm-4.5-air:free",
1079
+ "z-ai/glm-4.5v",
1080
+ "z-ai/glm-4.6",
1081
+ "z-ai/glm-4.6:exacto"
1082
+ ],
1083
+ docUrl: "https://openrouter.ai/models",
1084
+ gateway: "models.dev"
1085
+ },
1086
+ zenmux: {
1087
+ url: "https://zenmux.ai/api/v1",
1088
+ apiKeyEnvVar: "ZENMUX_API_KEY",
1089
+ apiKeyHeader: "Authorization",
1090
+ name: "ZenMux",
1091
+ models: [
1092
+ "anthropic/claude-haiku-4.5",
1093
+ "anthropic/claude-opus-4.1",
1094
+ "anthropic/claude-sonnet-4.5",
1095
+ "deepseek/deepseek-chat",
1096
+ "google/gemini-2.5-pro",
1097
+ "inclusionai/lint-1t",
1098
+ "inclusionai/ring-1t",
1099
+ "kuaishou/kat-coder-pro-v1",
1100
+ "minimax/minimax-m2",
1101
+ "moonshotai/kimi-k2-0905",
1102
+ "moonshotai/kimi-k2-thinking",
1103
+ "moonshotai/kimi-k2-thinking-turbo",
1104
+ "openai/gpt-5",
1105
+ "openai/gpt-5-codex",
1106
+ "qwen/qwen3-coder-plus",
1107
+ "x-ai/grok-4",
1108
+ "x-ai/grok-4-fast",
1109
+ "x-ai/grok-4-fast-non-reasoning",
1110
+ "x-ai/grok-code-fast-1",
1111
+ "z-ai/glm-4.5-air",
1112
+ "z-ai/glm-4.6"
1113
+ ],
1114
+ docUrl: "https://docs.zenmux.ai",
1115
+ gateway: "models.dev"
1116
+ },
1117
+ ovhcloud: {
1118
+ url: "https://oai.endpoints.kepler.ai.cloud.ovh.net/v1",
1119
+ apiKeyEnvVar: "OVHCLOUD_API_KEY",
1120
+ apiKeyHeader: "Authorization",
1121
+ name: "OVHcloud AI Endpoints",
1122
+ models: [
1123
+ "deepseek-r1-distill-llama-70b",
1124
+ "gpt-oss-120b",
1125
+ "gpt-oss-20b",
1126
+ "llama-3.1-8b-instruct",
1127
+ "llava-next-mistral-7b",
1128
+ "meta-llama-3_1-70b-instruct",
1129
+ "meta-llama-3_3-70b-instruct",
1130
+ "mistral-7b-instruct-v0.3",
1131
+ "mistral-nemo-instruct-2407",
1132
+ "mistral-small-3.2-24b-instruct-2506",
1133
+ "mixtral-8x7b-instruct-v0.1",
1134
+ "qwen2.5-coder-32b-instruct",
1135
+ "qwen2.5-vl-72b-instruct",
1136
+ "qwen3-32b",
1137
+ "qwen3-coder-30b-a3b-instruct"
1138
+ ],
1139
+ docUrl: "https://www.ovhcloud.com/en/public-cloud/ai-endpoints/catalog//",
1140
+ gateway: "models.dev"
1141
+ },
1142
+ iflowcn: {
1143
+ url: "https://apis.iflow.cn/v1",
1144
+ apiKeyEnvVar: "IFLOW_API_KEY",
1145
+ apiKeyHeader: "Authorization",
1146
+ name: "iFlow",
1147
+ models: [
1148
+ "deepseek-r1",
1149
+ "deepseek-v3",
1150
+ "deepseek-v3.1",
1151
+ "deepseek-v3.2",
1152
+ "glm-4.6",
1153
+ "kimi-k2",
1154
+ "kimi-k2-0905",
1155
+ "minimax-m2",
1156
+ "qwen3-235b",
1157
+ "qwen3-235b-a22b-instruct",
1158
+ "qwen3-235b-a22b-thinking-2507",
1159
+ "qwen3-32b",
1160
+ "qwen3-coder",
1161
+ "qwen3-coder-plus",
1162
+ "qwen3-max",
1163
+ "qwen3-max-preview",
1164
+ "qwen3-vl-plus",
1165
+ "tstars2.0"
1166
+ ],
1167
+ docUrl: "https://platform.iflow.cn/en/docs",
1168
+ gateway: "models.dev"
1169
+ },
1170
+ synthetic: {
1171
+ url: "https://api.synthetic.new/v1",
1172
+ apiKeyEnvVar: "SYNTHETIC_API_KEY",
1173
+ apiKeyHeader: "Authorization",
1174
+ name: "Synthetic",
1175
+ models: [
1176
+ "hf:MiniMaxAI/MiniMax-M2",
1177
+ "hf:Qwen/Qwen2.5-Coder-32B-Instruct",
1178
+ "hf:Qwen/Qwen3-235B-A22B-Instruct-2507",
1179
+ "hf:Qwen/Qwen3-235B-A22B-Thinking-2507",
1180
+ "hf:Qwen/Qwen3-Coder-480B-A35B-Instruct",
1181
+ "hf:deepseek-ai/DeepSeek-R1",
1182
+ "hf:deepseek-ai/DeepSeek-R1-0528",
1183
+ "hf:deepseek-ai/DeepSeek-V3",
1184
+ "hf:deepseek-ai/DeepSeek-V3-0324",
1185
+ "hf:deepseek-ai/DeepSeek-V3.1",
1186
+ "hf:deepseek-ai/DeepSeek-V3.1-Terminus",
1187
+ "hf:meta-llama/Llama-3.1-405B-Instruct",
1188
+ "hf:meta-llama/Llama-3.1-70B-Instruct",
1189
+ "hf:meta-llama/Llama-3.1-8B-Instruct",
1190
+ "hf:meta-llama/Llama-3.3-70B-Instruct",
1191
+ "hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
1192
+ "hf:meta-llama/Llama-4-Scout-17B-16E-Instruct",
1193
+ "hf:moonshotai/Kimi-K2-Instruct",
1194
+ "hf:moonshotai/Kimi-K2-Instruct-0905",
1195
+ "hf:moonshotai/Kimi-K2-Thinking",
1196
+ "hf:openai/gpt-oss-120b",
1197
+ "hf:zai-org/GLM-4.5",
1198
+ "hf:zai-org/GLM-4.6"
1199
+ ],
1200
+ docUrl: "https://synthetic.new/pricing",
1201
+ gateway: "models.dev"
1202
+ },
1203
+ deepinfra: {
1204
+ url: "https://api.deepinfra.com/v1/openai",
1205
+ apiKeyEnvVar: "DEEPINFRA_API_KEY",
1206
+ apiKeyHeader: "Authorization",
1207
+ name: "Deep Infra",
1208
+ models: [
1209
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
1210
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo",
1211
+ "moonshotai/Kimi-K2-Instruct",
1212
+ "openai/gpt-oss-120b",
1213
+ "openai/gpt-oss-20b",
1214
+ "zai-org/GLM-4.5"
1215
+ ],
1216
+ docUrl: "https://deepinfra.com/models",
1217
+ gateway: "models.dev"
1218
+ },
1219
+ zhipuai: {
1220
+ url: "https://open.bigmodel.cn/api/paas/v4",
1221
+ apiKeyEnvVar: "ZHIPU_API_KEY",
1222
+ apiKeyHeader: "Authorization",
1223
+ name: "Zhipu AI",
1224
+ models: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
1225
+ docUrl: "https://docs.z.ai/guides/overview/pricing",
1226
+ gateway: "models.dev"
1227
+ },
1228
+ submodel: {
1229
+ url: "https://llm.submodel.ai/v1",
1230
+ apiKeyEnvVar: "SUBMODEL_INSTAGEN_ACCESS_KEY",
1231
+ apiKeyHeader: "Authorization",
1232
+ name: "submodel",
1233
+ models: [
1234
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
1235
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
1236
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
1237
+ "deepseek-ai/DeepSeek-R1-0528",
1238
+ "deepseek-ai/DeepSeek-V3-0324",
1239
+ "deepseek-ai/DeepSeek-V3.1",
1240
+ "openai/gpt-oss-120b",
1241
+ "zai-org/GLM-4.5-Air",
1242
+ "zai-org/GLM-4.5-FP8"
1243
+ ],
1244
+ docUrl: "https://submodel.gitbook.io",
1245
+ gateway: "models.dev"
1246
+ },
1247
+ zai: {
1248
+ url: "https://api.z.ai/api/paas/v4",
1249
+ apiKeyEnvVar: "ZHIPU_API_KEY",
1250
+ apiKeyHeader: "Authorization",
1251
+ name: "Z.AI",
1252
+ models: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
1253
+ docUrl: "https://docs.z.ai/guides/overview/pricing",
1254
+ gateway: "models.dev"
1255
+ },
1256
+ inference: {
1257
+ url: "https://inference.net/v1",
1258
+ apiKeyEnvVar: "INFERENCE_API_KEY",
1259
+ apiKeyHeader: "Authorization",
1260
+ name: "Inference",
1261
+ models: [
1262
+ "google/gemma-3",
1263
+ "meta/llama-3.1-8b-instruct",
1264
+ "meta/llama-3.2-11b-vision-instruct",
1265
+ "meta/llama-3.2-1b-instruct",
1266
+ "meta/llama-3.2-3b-instruct",
1267
+ "mistral/mistral-nemo-12b-instruct",
1268
+ "osmosis/osmosis-structure-0.6b",
1269
+ "qwen/qwen-2.5-7b-vision-instruct",
1270
+ "qwen/qwen3-embedding-4b"
1271
+ ],
1272
+ docUrl: "https://inference.net/models",
1273
+ gateway: "models.dev"
1274
+ },
1275
+ requesty: {
1276
+ url: "https://router.requesty.ai/v1",
1277
+ apiKeyEnvVar: "REQUESTY_API_KEY",
1278
+ apiKeyHeader: "Authorization",
1279
+ name: "Requesty",
1280
+ models: [
1281
+ "anthropic/claude-3-7-sonnet",
1282
+ "anthropic/claude-haiku-4-5",
1283
+ "anthropic/claude-opus-4",
1284
+ "anthropic/claude-opus-4-1",
1285
+ "anthropic/claude-sonnet-4",
1286
+ "anthropic/claude-sonnet-4-5",
1287
+ "google/gemini-2.5-flash",
1288
+ "google/gemini-2.5-pro",
1289
+ "openai/gpt-4.1",
1290
+ "openai/gpt-4.1-mini",
1291
+ "openai/gpt-4o-mini",
1292
+ "openai/gpt-5",
1293
+ "openai/gpt-5-mini",
1294
+ "openai/gpt-5-nano",
1295
+ "openai/o4-mini",
1296
+ "xai/grok-4",
1297
+ "xai/grok-4-fast"
1298
+ ],
1299
+ docUrl: "https://requesty.ai/solution/llm-routing/models",
1300
+ gateway: "models.dev"
1301
+ },
1302
+ morph: {
1303
+ url: "https://api.morphllm.com/v1",
1304
+ apiKeyEnvVar: "MORPH_API_KEY",
1305
+ apiKeyHeader: "Authorization",
1306
+ name: "Morph",
1307
+ models: ["auto", "morph-v3-fast", "morph-v3-large"],
1308
+ docUrl: "https://docs.morphllm.com/api-reference/introduction",
1309
+ gateway: "models.dev"
1310
+ },
1311
+ lmstudio: {
1312
+ url: "http://127.0.0.1:1234/v1",
1313
+ apiKeyEnvVar: "LMSTUDIO_API_KEY",
1314
+ apiKeyHeader: "Authorization",
1315
+ name: "LMStudio",
1316
+ models: ["openai/gpt-oss-20b", "qwen/qwen3-30b-a3b-2507", "qwen/qwen3-coder-30b"],
1317
+ docUrl: "https://lmstudio.ai/models",
1318
+ gateway: "models.dev"
1319
+ },
1320
+ anthropic: {
1321
+ apiKeyEnvVar: "ANTHROPIC_API_KEY",
1322
+ name: "Anthropic",
1323
+ models: [
1324
+ "claude-3-5-haiku-20241022",
1325
+ "claude-3-5-haiku-latest",
1326
+ "claude-3-5-sonnet-20240620",
1327
+ "claude-3-5-sonnet-20241022",
1328
+ "claude-3-7-sonnet-20250219",
1329
+ "claude-3-7-sonnet-latest",
1330
+ "claude-3-haiku-20240307",
1331
+ "claude-3-opus-20240229",
1332
+ "claude-3-sonnet-20240229",
1333
+ "claude-haiku-4-5",
1334
+ "claude-haiku-4-5-20251001",
1335
+ "claude-opus-4-0",
1336
+ "claude-opus-4-1",
1337
+ "claude-opus-4-1-20250805",
1338
+ "claude-opus-4-20250514",
1339
+ "claude-opus-4-5",
1340
+ "claude-sonnet-4-0",
1341
+ "claude-sonnet-4-20250514",
1342
+ "claude-sonnet-4-5",
1343
+ "claude-sonnet-4-5-20250929"
1344
+ ],
1345
+ docUrl: "https://docs.anthropic.com/en/docs/about-claude/models",
1346
+ gateway: "models.dev"
1347
+ },
1348
+ "fireworks-ai": {
1349
+ url: "https://api.fireworks.ai/inference/v1/",
1350
+ apiKeyEnvVar: "FIREWORKS_API_KEY",
1351
+ apiKeyHeader: "Authorization",
1352
+ name: "Fireworks AI",
1353
+ models: [
1354
+ "accounts/fireworks/models/deepseek-r1-0528",
1355
+ "accounts/fireworks/models/deepseek-v3-0324",
1356
+ "accounts/fireworks/models/deepseek-v3p1",
1357
+ "accounts/fireworks/models/glm-4p5",
1358
+ "accounts/fireworks/models/glm-4p5-air",
1359
+ "accounts/fireworks/models/gpt-oss-120b",
1360
+ "accounts/fireworks/models/gpt-oss-20b",
1361
+ "accounts/fireworks/models/kimi-k2-instruct",
1362
+ "accounts/fireworks/models/kimi-k2-thinking",
1363
+ "accounts/fireworks/models/minimax-m2",
1364
+ "accounts/fireworks/models/qwen3-235b-a22b",
1365
+ "accounts/fireworks/models/qwen3-coder-480b-a35b-instruct"
1366
+ ],
1367
+ docUrl: "https://fireworks.ai/docs/",
1368
+ gateway: "models.dev"
1369
+ },
1370
+ modelscope: {
1371
+ url: "https://api-inference.modelscope.cn/v1",
1372
+ apiKeyEnvVar: "MODELSCOPE_API_KEY",
1373
+ apiKeyHeader: "Authorization",
1374
+ name: "ModelScope",
1375
+ models: [
1376
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
1377
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
1378
+ "Qwen/Qwen3-30B-A3B-Instruct-2507",
1379
+ "Qwen/Qwen3-30B-A3B-Thinking-2507",
1380
+ "Qwen/Qwen3-Coder-30B-A3B-Instruct",
1381
+ "ZhipuAI/GLM-4.5",
1382
+ "ZhipuAI/GLM-4.6"
1383
+ ],
1384
+ docUrl: "https://modelscope.cn/docs/model-service/API-Inference/intro",
1385
+ gateway: "models.dev"
1386
+ },
1387
+ llama: {
1388
+ url: "https://api.llama.com/compat/v1/",
1389
+ apiKeyEnvVar: "LLAMA_API_KEY",
1390
+ apiKeyHeader: "Authorization",
1391
+ name: "Llama",
1392
+ models: [
1393
+ "cerebras-llama-4-maverick-17b-128e-instruct",
1394
+ "cerebras-llama-4-scout-17b-16e-instruct",
1395
+ "groq-llama-4-maverick-17b-128e-instruct",
1396
+ "llama-3.3-70b-instruct",
1397
+ "llama-3.3-8b-instruct",
1398
+ "llama-4-maverick-17b-128e-instruct-fp8",
1399
+ "llama-4-scout-17b-16e-instruct-fp8"
1400
+ ],
1401
+ docUrl: "https://llama.developer.meta.com/docs/models",
1402
+ gateway: "models.dev"
1403
+ },
1404
+ scaleway: {
1405
+ url: "https://api.scaleway.ai/v1",
1406
+ apiKeyEnvVar: "SCALEWAY_API_KEY",
1407
+ apiKeyHeader: "Authorization",
1408
+ name: "Scaleway",
1409
+ models: [
1410
+ "bge-multilingual-gemma2",
1411
+ "deepseek-r1-distill-llama-70b",
1412
+ "gemma-3-27b-it",
1413
+ "gpt-oss-120b",
1414
+ "llama-3.1-8b-instruct",
1415
+ "llama-3.3-70b-instruct",
1416
+ "mistral-nemo-instruct-2407",
1417
+ "mistral-small-3.2-24b-instruct-2506",
1418
+ "pixtral-12b-2409",
1419
+ "qwen3-235b-a22b-instruct-2507",
1420
+ "qwen3-coder-30b-a3b-instruct",
1421
+ "voxtral-small-24b-2507",
1422
+ "whisper-large-v3"
1423
+ ],
1424
+ docUrl: "https://www.scaleway.com/en/docs/generative-apis/",
1425
+ gateway: "models.dev"
1426
+ },
1427
+ poe: {
1428
+ url: "https://api.poe.com/v1",
1429
+ apiKeyEnvVar: "POE_API_KEY",
1430
+ apiKeyHeader: "Authorization",
1431
+ name: "Poe",
1432
+ models: [
1433
+ "anthropic/claude-haiku-3",
1434
+ "anthropic/claude-haiku-3.5",
1435
+ "anthropic/claude-haiku-3.5-search",
1436
+ "anthropic/claude-haiku-4.5",
1437
+ "anthropic/claude-opus-3",
1438
+ "anthropic/claude-opus-4",
1439
+ "anthropic/claude-opus-4-reasoning",
1440
+ "anthropic/claude-opus-4-search",
1441
+ "anthropic/claude-opus-4.1",
1442
+ "anthropic/claude-sonnet-3.5",
1443
+ "anthropic/claude-sonnet-3.5-june",
1444
+ "anthropic/claude-sonnet-3.7",
1445
+ "anthropic/claude-sonnet-3.7-reasoning",
1446
+ "anthropic/claude-sonnet-3.7-search",
1447
+ "anthropic/claude-sonnet-4",
1448
+ "anthropic/claude-sonnet-4-reasoning",
1449
+ "anthropic/claude-sonnet-4-search",
1450
+ "anthropic/claude-sonnet-4.5",
1451
+ "elevenlabs/elevenlabs-music",
1452
+ "elevenlabs/elevenlabs-v2.5-turbo",
1453
+ "elevenlabs/elevenlabs-v3",
1454
+ "facebook/llama-3.1-405b",
1455
+ "facebook/llama-3.1-70b",
1456
+ "facebook/llama-3.1-8b",
1457
+ "google/gemini-2.0-flash",
1458
+ "google/gemini-2.0-flash-lite",
1459
+ "google/gemini-2.5-flash",
1460
+ "google/gemini-2.5-flash-lite",
1461
+ "google/gemini-2.5-pro",
1462
+ "google/gemini-3.0-pro",
1463
+ "google/imagen-3",
1464
+ "google/imagen-3-fast",
1465
+ "google/imagen-4",
1466
+ "google/imagen-4-fast",
1467
+ "google/imagen-4-ultra",
1468
+ "google/lyria",
1469
+ "google/nano-banana",
1470
+ "google/veo-2",
1471
+ "google/veo-3",
1472
+ "google/veo-3-fast",
1473
+ "google/veo-3.1",
1474
+ "google/veo-3.1-fast",
1475
+ "ideogramai/ideogram",
1476
+ "ideogramai/ideogram-v2",
1477
+ "ideogramai/ideogram-v2a",
1478
+ "ideogramai/ideogram-v2a-turbo",
1479
+ "lumalabs/dream-machine",
1480
+ "lumalabs/ray2",
1481
+ "novita/glm-4.6",
1482
+ "openAi/chatgpt-4o-latest",
1483
+ "openAi/dall-e-3",
1484
+ "openAi/gpt-3.5-turbo",
1485
+ "openAi/gpt-3.5-turbo-instruct",
1486
+ "openAi/gpt-3.5-turbo-raw",
1487
+ "openAi/gpt-4-classic",
1488
+ "openAi/gpt-4-classic-0314",
1489
+ "openAi/gpt-4-turbo",
1490
+ "openAi/gpt-4.1",
1491
+ "openAi/gpt-4.1-mini",
1492
+ "openAi/gpt-4.1-nano",
1493
+ "openAi/gpt-4o",
1494
+ "openAi/gpt-4o-aug",
1495
+ "openAi/gpt-4o-mini",
1496
+ "openAi/gpt-4o-mini-search",
1497
+ "openAi/gpt-4o-search",
1498
+ "openAi/gpt-5",
1499
+ "openAi/gpt-5-chat",
1500
+ "openAi/gpt-5-codex",
1501
+ "openAi/gpt-5-mini",
1502
+ "openAi/gpt-5-nano",
1503
+ "openAi/gpt-5-pro",
1504
+ "openAi/gpt-image-1",
1505
+ "openAi/gpt-image-1-mini",
1506
+ "openAi/o1",
1507
+ "openAi/o1-pro",
1508
+ "openAi/o3",
1509
+ "openAi/o3-deep-research",
1510
+ "openAi/o3-mini",
1511
+ "openAi/o3-mini-high",
1512
+ "openAi/o3-pro",
1513
+ "openAi/o4-mini",
1514
+ "openAi/o4-mini-deep-research",
1515
+ "openAi/sora-2",
1516
+ "openAi/sora-2-pro",
1517
+ "openai/gpt-5.1",
1518
+ "openai/gpt-5.1-codex",
1519
+ "openai/gpt-5.1-codex-mini",
1520
+ "openai/gpt-5.1-instant",
1521
+ "runwayml/runway",
1522
+ "runwayml/runway-gen-4-turbo",
1523
+ "stabilityai/stablediffusionxl",
1524
+ "topazlabs-co/topazlabs",
1525
+ "trytako/tako",
1526
+ "xai/grok-2",
1527
+ "xai/grok-3",
1528
+ "xai/grok-3-mini",
1529
+ "xai/grok-4",
1530
+ "xai/grok-4-fast-non-reasoning",
1531
+ "xai/grok-4-fast-reasoning",
1532
+ "xai/grok-code-fast-1"
1533
+ ],
1534
+ docUrl: "https://creator.poe.com/docs/external-applications/openai-compatible-api",
1535
+ gateway: "models.dev"
1536
+ },
1537
+ cerebras: {
1538
+ url: "https://api.cerebras.ai/v1",
1539
+ apiKeyEnvVar: "CEREBRAS_API_KEY",
1540
+ apiKeyHeader: "Authorization",
1541
+ name: "Cerebras",
1542
+ models: ["gpt-oss-120b", "qwen-3-235b-a22b-instruct-2507", "zai-glm-4.6"],
1543
+ docUrl: "https://inference-docs.cerebras.ai/models/overview",
1544
+ gateway: "models.dev"
1545
+ },
1546
+ netlify: {
1547
+ apiKeyEnvVar: ["NETLIFY_TOKEN", "NETLIFY_SITE_ID"],
1548
+ apiKeyHeader: "Authorization",
1549
+ name: "Netlify",
1550
+ gateway: "netlify",
1551
+ models: [
1552
+ "anthropic/claude-3-5-haiku-20241022",
1553
+ "anthropic/claude-3-7-sonnet-20250219",
1554
+ "anthropic/claude-3-haiku-20240307",
1555
+ "anthropic/claude-haiku-4-5-20251001",
1556
+ "anthropic/claude-opus-4-1-20250805",
1557
+ "anthropic/claude-opus-4-20250514",
1558
+ "anthropic/claude-opus-4-5-20251101",
1559
+ "anthropic/claude-sonnet-4-20250514",
1560
+ "anthropic/claude-sonnet-4-5-20250929",
1561
+ "gemini/gemini-2.0-flash",
1562
+ "gemini/gemini-2.0-flash-lite",
1563
+ "gemini/gemini-2.5-flash",
1564
+ "gemini/gemini-2.5-flash-image",
1565
+ "gemini/gemini-2.5-flash-image-preview",
1566
+ "gemini/gemini-2.5-flash-lite",
1567
+ "gemini/gemini-2.5-flash-lite-preview-09-2025",
1568
+ "gemini/gemini-2.5-flash-preview-09-2025",
1569
+ "gemini/gemini-2.5-pro",
1570
+ "gemini/gemini-3-pro-image-preview",
1571
+ "gemini/gemini-3-pro-preview",
1572
+ "gemini/gemini-flash-latest",
1573
+ "gemini/gemini-flash-lite-latest",
1574
+ "openai/codex-mini-latest",
1575
+ "openai/gpt-4.1",
1576
+ "openai/gpt-4.1-mini",
1577
+ "openai/gpt-4.1-nano",
1578
+ "openai/gpt-4o",
1579
+ "openai/gpt-4o-mini",
1580
+ "openai/gpt-5",
1581
+ "openai/gpt-5-2025-08-07",
1582
+ "openai/gpt-5-codex",
1583
+ "openai/gpt-5-mini",
1584
+ "openai/gpt-5-mini-2025-08-07",
1585
+ "openai/gpt-5-nano",
1586
+ "openai/gpt-5-pro",
1587
+ "openai/gpt-5.1",
1588
+ "openai/gpt-5.1-2025-11-13",
1589
+ "openai/gpt-5.1-codex",
1590
+ "openai/gpt-5.1-codex-mini",
1591
+ "openai/o3",
1592
+ "openai/o3-mini",
1593
+ "openai/o4-mini"
1594
+ ],
1595
+ docUrl: "https://docs.netlify.com/build/ai-gateway/overview/"
1596
+ }
1597
+ },
1598
+ models: {
1599
+ "moonshotai-cn": [
1600
+ "kimi-k2-0711-preview",
1601
+ "kimi-k2-0905-preview",
1602
+ "kimi-k2-thinking",
1603
+ "kimi-k2-thinking-turbo",
1604
+ "kimi-k2-turbo-preview"
1605
+ ],
1606
+ lucidquery: ["lucidnova-rf1-100b", "lucidquery-nexus-coder"],
1607
+ moonshotai: [
1608
+ "kimi-k2-0711-preview",
1609
+ "kimi-k2-0905-preview",
1610
+ "kimi-k2-thinking",
1611
+ "kimi-k2-thinking-turbo",
1612
+ "kimi-k2-turbo-preview"
1613
+ ],
1614
+ "zai-coding-plan": ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
1615
+ alibaba: [
1616
+ "qvq-max",
1617
+ "qwen-flash",
1618
+ "qwen-max",
1619
+ "qwen-mt-plus",
1620
+ "qwen-mt-turbo",
1621
+ "qwen-omni-turbo",
1622
+ "qwen-omni-turbo-realtime",
1623
+ "qwen-plus",
1624
+ "qwen-plus-character-ja",
1625
+ "qwen-turbo",
1626
+ "qwen-vl-max",
1627
+ "qwen-vl-ocr",
1628
+ "qwen-vl-plus",
1629
+ "qwen2-5-14b-instruct",
1630
+ "qwen2-5-32b-instruct",
1631
+ "qwen2-5-72b-instruct",
1632
+ "qwen2-5-7b-instruct",
1633
+ "qwen2-5-omni-7b",
1634
+ "qwen2-5-vl-72b-instruct",
1635
+ "qwen2-5-vl-7b-instruct",
1636
+ "qwen3-14b",
1637
+ "qwen3-235b-a22b",
1638
+ "qwen3-32b",
1639
+ "qwen3-8b",
1640
+ "qwen3-asr-flash",
1641
+ "qwen3-coder-30b-a3b-instruct",
1642
+ "qwen3-coder-480b-a35b-instruct",
1643
+ "qwen3-coder-flash",
1644
+ "qwen3-coder-plus",
1645
+ "qwen3-livetranslate-flash-realtime",
1646
+ "qwen3-max",
1647
+ "qwen3-next-80b-a3b-instruct",
1648
+ "qwen3-next-80b-a3b-thinking",
1649
+ "qwen3-omni-flash",
1650
+ "qwen3-omni-flash-realtime",
1651
+ "qwen3-vl-235b-a22b",
1652
+ "qwen3-vl-30b-a3b",
1653
+ "qwen3-vl-plus",
1654
+ "qwq-plus"
1655
+ ],
1656
+ xai: [
1657
+ "grok-2",
1658
+ "grok-2-1212",
1659
+ "grok-2-latest",
1660
+ "grok-2-vision",
1661
+ "grok-2-vision-1212",
1662
+ "grok-2-vision-latest",
1663
+ "grok-3",
1664
+ "grok-3-fast",
1665
+ "grok-3-fast-latest",
1666
+ "grok-3-latest",
1667
+ "grok-3-mini",
1668
+ "grok-3-mini-fast",
1669
+ "grok-3-mini-fast-latest",
1670
+ "grok-3-mini-latest",
1671
+ "grok-4",
1672
+ "grok-4-1-fast",
1673
+ "grok-4-1-fast-non-reasoning",
1674
+ "grok-4-fast",
1675
+ "grok-4-fast-non-reasoning",
1676
+ "grok-beta",
1677
+ "grok-code-fast-1",
1678
+ "grok-vision-beta"
1679
+ ],
1680
+ vultr: [
1681
+ "deepseek-r1-distill-llama-70b",
1682
+ "deepseek-r1-distill-qwen-32b",
1683
+ "gpt-oss-120b",
1684
+ "kimi-k2-instruct",
1685
+ "qwen2.5-coder-32b-instruct"
1686
+ ],
1687
+ nvidia: [
1688
+ "black-forest-labs/flux.1-dev",
1689
+ "deepseek-ai/deepseek-v3.1",
1690
+ "deepseek-ai/deepseek-v3.1-terminus",
1691
+ "google/gemma-3-27b-it",
1692
+ "microsoft/phi-4-mini-instruct",
1693
+ "minimaxai/minimax-m2",
1694
+ "moonshotai/kimi-k2-instruct",
1695
+ "moonshotai/kimi-k2-instruct-0905",
1696
+ "nvidia/cosmos-nemotron-34b",
1697
+ "nvidia/llama-3.1-nemotron-ultra-253b-v1",
1698
+ "nvidia/llama-embed-nemotron-8b",
1699
+ "nvidia/nemoretriever-ocr-v1",
1700
+ "nvidia/nvidia-nemotron-nano-9b-v2",
1701
+ "nvidia/parakeet-tdt-0.6b-v2",
1702
+ "openai/gpt-oss-120b",
1703
+ "openai/whisper-large-v3",
1704
+ "qwen/qwen3-235b-a22b",
1705
+ "qwen/qwen3-coder-480b-a35b-instruct",
1706
+ "qwen/qwen3-next-80b-a3b-instruct",
1707
+ "qwen/qwen3-next-80b-a3b-thinking"
1708
+ ],
1709
+ upstage: ["solar-mini", "solar-pro2"],
1710
+ groq: [
1711
+ "deepseek-r1-distill-llama-70b",
1712
+ "gemma2-9b-it",
1713
+ "llama-3.1-8b-instant",
1714
+ "llama-3.3-70b-versatile",
1715
+ "llama-guard-3-8b",
1716
+ "llama3-70b-8192",
1717
+ "llama3-8b-8192",
1718
+ "meta-llama/llama-4-maverick-17b-128e-instruct",
1719
+ "meta-llama/llama-4-scout-17b-16e-instruct",
1720
+ "meta-llama/llama-guard-4-12b",
1721
+ "mistral-saba-24b",
1722
+ "moonshotai/kimi-k2-instruct",
1723
+ "moonshotai/kimi-k2-instruct-0905",
1724
+ "openai/gpt-oss-120b",
1725
+ "openai/gpt-oss-20b",
1726
+ "qwen-qwq-32b",
1727
+ "qwen/qwen3-32b"
1728
+ ],
1729
+ mistral: [
1730
+ "codestral-latest",
1731
+ "devstral-medium-2507",
1732
+ "devstral-small-2505",
1733
+ "devstral-small-2507",
1734
+ "magistral-medium-latest",
1735
+ "magistral-small",
1736
+ "ministral-3b-latest",
1737
+ "ministral-8b-latest",
1738
+ "mistral-large-latest",
1739
+ "mistral-medium-2505",
1740
+ "mistral-medium-2508",
1741
+ "mistral-medium-latest",
1742
+ "mistral-nemo",
1743
+ "mistral-small-latest",
1744
+ "open-mistral-7b",
1745
+ "open-mixtral-8x22b",
1746
+ "open-mixtral-8x7b",
1747
+ "pixtral-12b",
1748
+ "pixtral-large-latest"
1749
+ ],
1750
+ vercel: [
1751
+ "alibaba/qwen3-coder-plus",
1752
+ "alibaba/qwen3-max",
1753
+ "alibaba/qwen3-next-80b-a3b-instruct",
1754
+ "alibaba/qwen3-next-80b-a3b-thinking",
1755
+ "alibaba/qwen3-vl-instruct",
1756
+ "alibaba/qwen3-vl-thinking",
1757
+ "amazon/nova-lite",
1758
+ "amazon/nova-micro",
1759
+ "amazon/nova-pro",
1760
+ "anthropic/claude-3-haiku",
1761
+ "anthropic/claude-3-opus",
1762
+ "anthropic/claude-3.5-haiku",
1763
+ "anthropic/claude-3.5-sonnet",
1764
+ "anthropic/claude-3.7-sonnet",
1765
+ "anthropic/claude-4-1-opus",
1766
+ "anthropic/claude-4-opus",
1767
+ "anthropic/claude-4-sonnet",
1768
+ "anthropic/claude-4.5-sonnet",
1769
+ "anthropic/claude-haiku-4.5",
1770
+ "anthropic/claude-opus-4.5",
1771
+ "deepseek/deepseek-r1",
1772
+ "deepseek/deepseek-r1-distill-llama-70b",
1773
+ "deepseek/deepseek-v3.1-terminus",
1774
+ "deepseek/deepseek-v3.2-exp",
1775
+ "deepseek/deepseek-v3.2-exp-thinking",
1776
+ "google/gemini-2.0-flash",
1777
+ "google/gemini-2.0-flash-lite",
1778
+ "google/gemini-2.5-flash",
1779
+ "google/gemini-2.5-flash-lite",
1780
+ "google/gemini-2.5-flash-lite-preview-09-2025",
1781
+ "google/gemini-2.5-flash-preview-09-2025",
1782
+ "google/gemini-2.5-pro",
1783
+ "google/gemini-3-pro-preview",
1784
+ "meta/llama-3.3-70b",
1785
+ "meta/llama-4-maverick",
1786
+ "meta/llama-4-scout",
1787
+ "minimax/minimax-m2",
1788
+ "mistral/codestral",
1789
+ "mistral/magistral-medium",
1790
+ "mistral/magistral-small",
1791
+ "mistral/ministral-3b",
1792
+ "mistral/ministral-8b",
1793
+ "mistral/mistral-large",
1794
+ "mistral/mistral-small",
1795
+ "mistral/mixtral-8x22b-instruct",
1796
+ "mistral/pixtral-12b",
1797
+ "mistral/pixtral-large",
1798
+ "moonshotai/kimi-k2",
1799
+ "morph/morph-v3-fast",
1800
+ "morph/morph-v3-large",
1801
+ "openai/gpt-4-turbo",
1802
+ "openai/gpt-4.1",
1803
+ "openai/gpt-4.1-mini",
1804
+ "openai/gpt-4.1-nano",
1805
+ "openai/gpt-4o",
1806
+ "openai/gpt-4o-mini",
1807
+ "openai/gpt-5",
1808
+ "openai/gpt-5-codex",
1809
+ "openai/gpt-5-mini",
1810
+ "openai/gpt-5-nano",
1811
+ "openai/gpt-oss-120b",
1812
+ "openai/gpt-oss-20b",
1813
+ "openai/o1",
1814
+ "openai/o3",
1815
+ "openai/o3-mini",
1816
+ "openai/o4-mini",
1817
+ "perplexity/sonar",
1818
+ "perplexity/sonar-pro",
1819
+ "perplexity/sonar-reasoning",
1820
+ "perplexity/sonar-reasoning-pro",
1821
+ "vercel/v0-1.0-md",
1822
+ "vercel/v0-1.5-md",
1823
+ "xai/grok-2",
1824
+ "xai/grok-2-vision",
1825
+ "xai/grok-3",
1826
+ "xai/grok-3-fast",
1827
+ "xai/grok-3-mini",
1828
+ "xai/grok-3-mini-fast",
1829
+ "xai/grok-4",
1830
+ "xai/grok-4-fast",
1831
+ "xai/grok-4-fast-non-reasoning",
1832
+ "xai/grok-code-fast-1",
1833
+ "zai/glm-4.5",
1834
+ "zai/glm-4.5-air",
1835
+ "zai/glm-4.5v",
1836
+ "zai/glm-4.6"
1837
+ ],
1838
+ nebius: [
1839
+ "NousResearch/hermes-4-405b",
1840
+ "NousResearch/hermes-4-70b",
1841
+ "deepseek-ai/deepseek-v3",
1842
+ "meta-llama/llama-3.3-70b-instruct-base",
1843
+ "meta-llama/llama-3.3-70b-instruct-fast",
1844
+ "meta-llama/llama-3_1-405b-instruct",
1845
+ "moonshotai/kimi-k2-instruct",
1846
+ "nvidia/llama-3_1-nemotron-ultra-253b-v1",
1847
+ "openai/gpt-oss-120b",
1848
+ "openai/gpt-oss-20b",
1849
+ "qwen/qwen3-235b-a22b-instruct-2507",
1850
+ "qwen/qwen3-235b-a22b-thinking-2507",
1851
+ "qwen/qwen3-coder-480b-a35b-instruct",
1852
+ "zai-org/glm-4.5",
1853
+ "zai-org/glm-4.5-air"
1854
+ ],
1855
+ deepseek: ["deepseek-chat", "deepseek-reasoner"],
1856
+ "alibaba-cn": [
1857
+ "deepseek-r1",
1858
+ "deepseek-r1-0528",
1859
+ "deepseek-r1-distill-llama-70b",
1860
+ "deepseek-r1-distill-llama-8b",
1861
+ "deepseek-r1-distill-qwen-1-5b",
1862
+ "deepseek-r1-distill-qwen-14b",
1863
+ "deepseek-r1-distill-qwen-32b",
1864
+ "deepseek-r1-distill-qwen-7b",
1865
+ "deepseek-v3",
1866
+ "deepseek-v3-1",
1867
+ "deepseek-v3-2-exp",
1868
+ "moonshot-kimi-k2-instruct",
1869
+ "qvq-max",
1870
+ "qwen-deep-research",
1871
+ "qwen-doc-turbo",
1872
+ "qwen-flash",
1873
+ "qwen-long",
1874
+ "qwen-math-plus",
1875
+ "qwen-math-turbo",
1876
+ "qwen-max",
1877
+ "qwen-mt-plus",
1878
+ "qwen-mt-turbo",
1879
+ "qwen-omni-turbo",
1880
+ "qwen-omni-turbo-realtime",
1881
+ "qwen-plus",
1882
+ "qwen-plus-character",
1883
+ "qwen-turbo",
1884
+ "qwen-vl-max",
1885
+ "qwen-vl-ocr",
1886
+ "qwen-vl-plus",
1887
+ "qwen2-5-14b-instruct",
1888
+ "qwen2-5-32b-instruct",
1889
+ "qwen2-5-72b-instruct",
1890
+ "qwen2-5-7b-instruct",
1891
+ "qwen2-5-coder-32b-instruct",
1892
+ "qwen2-5-coder-7b-instruct",
1893
+ "qwen2-5-math-72b-instruct",
1894
+ "qwen2-5-math-7b-instruct",
1895
+ "qwen2-5-omni-7b",
1896
+ "qwen2-5-vl-72b-instruct",
1897
+ "qwen2-5-vl-7b-instruct",
1898
+ "qwen3-14b",
1899
+ "qwen3-235b-a22b",
1900
+ "qwen3-32b",
1901
+ "qwen3-8b",
1902
+ "qwen3-asr-flash",
1903
+ "qwen3-coder-30b-a3b-instruct",
1904
+ "qwen3-coder-480b-a35b-instruct",
1905
+ "qwen3-coder-flash",
1906
+ "qwen3-coder-plus",
1907
+ "qwen3-max",
1908
+ "qwen3-next-80b-a3b-instruct",
1909
+ "qwen3-next-80b-a3b-thinking",
1910
+ "qwen3-omni-flash",
1911
+ "qwen3-omni-flash-realtime",
1912
+ "qwen3-vl-235b-a22b",
1913
+ "qwen3-vl-30b-a3b",
1914
+ "qwen3-vl-plus",
1915
+ "qwq-32b",
1916
+ "qwq-plus",
1917
+ "tongyi-intent-detect-v3"
1918
+ ],
1919
+ venice: [
1920
+ "deepseek-coder-v2-lite",
1921
+ "deepseek-r1-671b",
1922
+ "dolphin-2.9.2-qwen2-72b",
1923
+ "llama-3.1-405b",
1924
+ "llama-3.2-3b",
1925
+ "llama-3.3-70b",
1926
+ "mistral-31-24b",
1927
+ "qwen-2.5-coder-32b",
1928
+ "qwen-2.5-qwq-32b",
1929
+ "qwen-2.5-vl",
1930
+ "qwen3-235b",
1931
+ "qwen3-4b",
1932
+ "venice-uncensored",
1933
+ "zai-org-glm-4.6"
1934
+ ],
1935
+ chutes: [
1936
+ "Alibaba-NLP/Tongyi-DeepResearch-30B-A3B",
1937
+ "ArliAI/QwQ-32B-ArliAI-RpR-v1",
1938
+ "MiniMaxAI/MiniMax-M2",
1939
+ "NousResearch/DeepHermes-3-Mistral-24B-Preview",
1940
+ "NousResearch/Hermes-4-14B",
1941
+ "NousResearch/Hermes-4-405B-FP8",
1942
+ "NousResearch/Hermes-4-70B",
1943
+ "OpenGVLab/InternVL3-78B",
1944
+ "Qwen/Qwen2.5-72B-Instruct",
1945
+ "Qwen/Qwen2.5-Coder-32B-Instruct",
1946
+ "Qwen/Qwen2.5-VL-32B-Instruct",
1947
+ "Qwen/Qwen2.5-VL-72B-Instruct",
1948
+ "Qwen/Qwen3-14B",
1949
+ "Qwen/Qwen3-235B-A22B",
1950
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
1951
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
1952
+ "Qwen/Qwen3-30B-A3B",
1953
+ "Qwen/Qwen3-30B-A3B-Instruct-2507",
1954
+ "Qwen/Qwen3-32B",
1955
+ "Qwen/Qwen3-Coder-30B-A3B-Instruct",
1956
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
1957
+ "Qwen/Qwen3-Next-80B-A3B-Instruct",
1958
+ "Qwen/Qwen3-VL-235B-A22B-Instruct",
1959
+ "Qwen/Qwen3-VL-235B-A22B-Thinking",
1960
+ "chutesai/Mistral-Small-3.1-24B-Instruct-2503",
1961
+ "chutesai/Mistral-Small-3.2-24B-Instruct-2506",
1962
+ "deepseek-ai/DeepSeek-R1",
1963
+ "deepseek-ai/DeepSeek-R1-0528",
1964
+ "deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",
1965
+ "deepseek-ai/DeepSeek-R1-Distill-Llama-70B",
1966
+ "deepseek-ai/DeepSeek-V3",
1967
+ "deepseek-ai/DeepSeek-V3-0324",
1968
+ "deepseek-ai/DeepSeek-V3.1",
1969
+ "deepseek-ai/DeepSeek-V3.1-Terminus",
1970
+ "deepseek-ai/DeepSeek-V3.2-Exp",
1971
+ "meituan-longcat/LongCat-Flash-Chat-FP8",
1972
+ "microsoft/MAI-DS-R1-FP8",
1973
+ "moonshotai/Kimi-K2-Instruct-0905",
1974
+ "moonshotai/Kimi-K2-Thinking",
1975
+ "openai/gpt-oss-120b",
1976
+ "openai/gpt-oss-20b",
1977
+ "rednote-hilab/dots.ocr",
1978
+ "tngtech/DeepSeek-R1T-Chimera",
1979
+ "tngtech/DeepSeek-TNG-R1T2-Chimera",
1980
+ "unsloth/Mistral-Nemo-Instruct-2407",
1981
+ "unsloth/Mistral-Small-24B-Instruct-2501",
1982
+ "unsloth/gemma-3-12b-it",
1983
+ "unsloth/gemma-3-27b-it",
1984
+ "unsloth/gemma-3-4b-it",
1985
+ "zai-org/GLM-4.5",
1986
+ "zai-org/GLM-4.5-Air",
1987
+ "zai-org/GLM-4.6"
1988
+ ],
1989
+ cortecs: [
1990
+ "claude-4-5-sonnet",
1991
+ "claude-sonnet-4",
1992
+ "deepseek-v3-0324",
1993
+ "gemini-2.5-pro",
1994
+ "gpt-4.1",
1995
+ "gpt-oss-120b",
1996
+ "kimi-k2-instruct",
1997
+ "llama-3.1-405b-instruct",
1998
+ "nova-pro-v1",
1999
+ "qwen3-32b",
2000
+ "qwen3-coder-480b-a35b-instruct"
2001
+ ],
2002
+ "github-models": [
2003
+ "ai21-labs/ai21-jamba-1.5-large",
2004
+ "ai21-labs/ai21-jamba-1.5-mini",
2005
+ "cohere/cohere-command-a",
2006
+ "cohere/cohere-command-r",
2007
+ "cohere/cohere-command-r-08-2024",
2008
+ "cohere/cohere-command-r-plus",
2009
+ "cohere/cohere-command-r-plus-08-2024",
2010
+ "core42/jais-30b-chat",
2011
+ "deepseek/deepseek-r1",
2012
+ "deepseek/deepseek-r1-0528",
2013
+ "deepseek/deepseek-v3-0324",
2014
+ "meta/llama-3.2-11b-vision-instruct",
2015
+ "meta/llama-3.2-90b-vision-instruct",
2016
+ "meta/llama-3.3-70b-instruct",
2017
+ "meta/llama-4-maverick-17b-128e-instruct-fp8",
2018
+ "meta/llama-4-scout-17b-16e-instruct",
2019
+ "meta/meta-llama-3-70b-instruct",
2020
+ "meta/meta-llama-3-8b-instruct",
2021
+ "meta/meta-llama-3.1-405b-instruct",
2022
+ "meta/meta-llama-3.1-70b-instruct",
2023
+ "meta/meta-llama-3.1-8b-instruct",
2024
+ "microsoft/mai-ds-r1",
2025
+ "microsoft/phi-3-medium-128k-instruct",
2026
+ "microsoft/phi-3-medium-4k-instruct",
2027
+ "microsoft/phi-3-mini-128k-instruct",
2028
+ "microsoft/phi-3-mini-4k-instruct",
2029
+ "microsoft/phi-3-small-128k-instruct",
2030
+ "microsoft/phi-3-small-8k-instruct",
2031
+ "microsoft/phi-3.5-mini-instruct",
2032
+ "microsoft/phi-3.5-moe-instruct",
2033
+ "microsoft/phi-3.5-vision-instruct",
2034
+ "microsoft/phi-4",
2035
+ "microsoft/phi-4-mini-instruct",
2036
+ "microsoft/phi-4-mini-reasoning",
2037
+ "microsoft/phi-4-multimodal-instruct",
2038
+ "microsoft/phi-4-reasoning",
2039
+ "mistral-ai/codestral-2501",
2040
+ "mistral-ai/ministral-3b",
2041
+ "mistral-ai/mistral-large-2411",
2042
+ "mistral-ai/mistral-medium-2505",
2043
+ "mistral-ai/mistral-nemo",
2044
+ "mistral-ai/mistral-small-2503",
2045
+ "openai/gpt-4.1",
2046
+ "openai/gpt-4.1-mini",
2047
+ "openai/gpt-4.1-nano",
2048
+ "openai/gpt-4o",
2049
+ "openai/gpt-4o-mini",
2050
+ "openai/o1",
2051
+ "openai/o1-mini",
2052
+ "openai/o1-preview",
2053
+ "openai/o3",
2054
+ "openai/o3-mini",
2055
+ "openai/o4-mini",
2056
+ "xai/grok-3",
2057
+ "xai/grok-3-mini"
2058
+ ],
2059
+ togetherai: [
2060
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
2061
+ "deepseek-ai/DeepSeek-R1",
2062
+ "deepseek-ai/DeepSeek-V3",
2063
+ "meta-llama/Llama-3.3-70B-Instruct-Turbo",
2064
+ "moonshotai/Kimi-K2-Instruct",
2065
+ "openai/gpt-oss-120b"
2066
+ ],
2067
+ baseten: [
2068
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
2069
+ "moonshotai/Kimi-K2-Instruct-0905",
2070
+ "moonshotai/Kimi-K2-Thinking",
2071
+ "zai-org/GLM-4.6"
2072
+ ],
2073
+ siliconflow: [
2074
+ "baidu-ernie-4.5-300b-a47b",
2075
+ "bytedance-seed-seed-oss-36b-instruct",
2076
+ "deepseek-ai-deepseek-r1",
2077
+ "deepseek-ai-deepseek-r1-distill-qwen-14b",
2078
+ "deepseek-ai-deepseek-r1-distill-qwen-32b",
2079
+ "deepseek-ai-deepseek-r1-distill-qwen-7b",
2080
+ "deepseek-ai-deepseek-v3",
2081
+ "deepseek-ai-deepseek-v3.1",
2082
+ "deepseek-ai-deepseek-v3.1-terminus",
2083
+ "deepseek-ai-deepseek-v3.2-exp",
2084
+ "deepseek-ai-deepseek-vl2",
2085
+ "inclusionai-ling-flash-2.0",
2086
+ "inclusionai-ling-mini-2.0",
2087
+ "inclusionai-ring-flash-2.0",
2088
+ "meta-llama-meta-llama-3.1-8b-instruct",
2089
+ "minimaxai-minimax-m1-80k",
2090
+ "minimaxai-minimax-m2",
2091
+ "moonshotai-kimi-dev-72b",
2092
+ "moonshotai-kimi-k2-instruct",
2093
+ "moonshotai-kimi-k2-instruct-0905",
2094
+ "moonshotai-kimi-k2-thinking",
2095
+ "nex-agi-deepseek-v3.1-nex-n1",
2096
+ "openai-gpt-oss-120b",
2097
+ "openai-gpt-oss-20b",
2098
+ "qwen-qwen2.5-14b-instruct",
2099
+ "qwen-qwen2.5-32b-instruct",
2100
+ "qwen-qwen2.5-72b-instruct",
2101
+ "qwen-qwen2.5-72b-instruct-128k",
2102
+ "qwen-qwen2.5-7b-instruct",
2103
+ "qwen-qwen2.5-coder-32b-instruct",
2104
+ "qwen-qwen2.5-vl-32b-instruct",
2105
+ "qwen-qwen2.5-vl-72b-instruct",
2106
+ "qwen-qwen2.5-vl-7b-instruct",
2107
+ "qwen-qwen3-14b",
2108
+ "qwen-qwen3-235b-a22b",
2109
+ "qwen-qwen3-235b-a22b-instruct-2507",
2110
+ "qwen-qwen3-235b-a22b-thinking-2507",
2111
+ "qwen-qwen3-30b-a3b",
2112
+ "qwen-qwen3-30b-a3b-instruct-2507",
2113
+ "qwen-qwen3-30b-a3b-thinking-2507",
2114
+ "qwen-qwen3-32b",
2115
+ "qwen-qwen3-8b",
2116
+ "qwen-qwen3-coder-30b-a3b-instruct",
2117
+ "qwen-qwen3-coder-480b-a35b-instruct",
2118
+ "qwen-qwen3-next-80b-a3b-instruct",
2119
+ "qwen-qwen3-next-80b-a3b-thinking",
2120
+ "qwen-qwen3-omni-30b-a3b-captioner",
2121
+ "qwen-qwen3-omni-30b-a3b-instruct",
2122
+ "qwen-qwen3-omni-30b-a3b-thinking",
2123
+ "qwen-qwen3-vl-235b-a22b-instruct",
2124
+ "qwen-qwen3-vl-235b-a22b-thinking",
2125
+ "qwen-qwen3-vl-30b-a3b-instruct",
2126
+ "qwen-qwen3-vl-30b-a3b-thinking",
2127
+ "qwen-qwen3-vl-32b-instruct",
2128
+ "qwen-qwen3-vl-32b-thinking",
2129
+ "qwen-qwen3-vl-8b-instruct",
2130
+ "qwen-qwen3-vl-8b-thinking",
2131
+ "qwen-qwq-32b",
2132
+ "stepfun-ai-step3",
2133
+ "tencent-hunyuan-a13b-instruct",
2134
+ "tencent-hunyuan-mt-7b",
2135
+ "thudm-glm-4-32b-0414",
2136
+ "thudm-glm-4-9b-0414",
2137
+ "thudm-glm-4.1v-9b-thinking",
2138
+ "thudm-glm-z1-32b-0414",
2139
+ "thudm-glm-z1-9b-0414",
2140
+ "z-ai-glm-4.5",
2141
+ "z-ai-glm-4.5-air",
2142
+ "zai-org-glm-4.5",
2143
+ "zai-org-glm-4.5-air",
2144
+ "zai-org-glm-4.5v",
2145
+ "zai-org-glm-4.6"
2146
+ ],
2147
+ huggingface: [
2148
+ "MiniMaxAI/MiniMax-M2",
2149
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
2150
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
2151
+ "Qwen/Qwen3-Embedding-4B",
2152
+ "Qwen/Qwen3-Embedding-8B",
2153
+ "Qwen/Qwen3-Next-80B-A3B-Instruct",
2154
+ "Qwen/Qwen3-Next-80B-A3B-Thinking",
2155
+ "deepseek-ai/DeepSeek-R1-0528",
2156
+ "deepseek-ai/Deepseek-V3-0324",
2157
+ "moonshotai/Kimi-K2-Instruct",
2158
+ "moonshotai/Kimi-K2-Instruct-0905",
2159
+ "zai-org/GLM-4.5",
2160
+ "zai-org/GLM-4.5-Air",
2161
+ "zai-org/GLM-4.6"
2162
+ ],
2163
+ opencode: [
2164
+ "alpha-doubao-seed-code",
2165
+ "alpha-gd4",
2166
+ "alpha-minimax-m2",
2167
+ "big-pickle",
2168
+ "claude-3-5-haiku",
2169
+ "claude-haiku-4-5",
2170
+ "claude-opus-4-1",
2171
+ "claude-opus-4-5",
2172
+ "claude-sonnet-4",
2173
+ "claude-sonnet-4-5",
2174
+ "gemini-3-pro",
2175
+ "glm-4.6",
2176
+ "gpt-5",
2177
+ "gpt-5-codex",
2178
+ "gpt-5-nano",
2179
+ "gpt-5.1",
2180
+ "gpt-5.1-codex",
2181
+ "grok-code",
2182
+ "kimi-k2",
2183
+ "kimi-k2-thinking",
2184
+ "qwen3-coder"
2185
+ ],
2186
+ fastrouter: [
2187
+ "anthropic/claude-opus-4.1",
2188
+ "anthropic/claude-sonnet-4",
2189
+ "deepseek-ai/deepseek-r1-distill-llama-70b",
2190
+ "google/gemini-2.5-flash",
2191
+ "google/gemini-2.5-pro",
2192
+ "moonshotai/kimi-k2",
2193
+ "openai/gpt-4.1",
2194
+ "openai/gpt-5",
2195
+ "openai/gpt-5-mini",
2196
+ "openai/gpt-5-nano",
2197
+ "openai/gpt-oss-120b",
2198
+ "openai/gpt-oss-20b",
2199
+ "qwen/qwen3-coder",
2200
+ "x-ai/grok-4"
2201
+ ],
2202
+ minimax: ["MiniMax-M2"],
2203
+ google: [
2204
+ "gemini-1.5-flash",
2205
+ "gemini-1.5-flash-8b",
2206
+ "gemini-1.5-pro",
2207
+ "gemini-2.0-flash",
2208
+ "gemini-2.0-flash-lite",
2209
+ "gemini-2.5-flash",
2210
+ "gemini-2.5-flash-image",
2211
+ "gemini-2.5-flash-image-preview",
2212
+ "gemini-2.5-flash-lite",
2213
+ "gemini-2.5-flash-lite-preview-06-17",
2214
+ "gemini-2.5-flash-lite-preview-09-2025",
2215
+ "gemini-2.5-flash-preview-04-17",
2216
+ "gemini-2.5-flash-preview-05-20",
2217
+ "gemini-2.5-flash-preview-09-2025",
2218
+ "gemini-2.5-flash-preview-tts",
2219
+ "gemini-2.5-pro",
2220
+ "gemini-2.5-pro-preview-05-06",
2221
+ "gemini-2.5-pro-preview-06-05",
2222
+ "gemini-2.5-pro-preview-tts",
2223
+ "gemini-3-pro-preview",
2224
+ "gemini-embedding-001",
2225
+ "gemini-flash-latest",
2226
+ "gemini-flash-lite-latest",
2227
+ "gemini-live-2.5-flash",
2228
+ "gemini-live-2.5-flash-preview-native-audio"
2229
+ ],
2230
+ inception: ["mercury", "mercury-coder"],
2231
+ wandb: [
2232
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
2233
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
2234
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
2235
+ "deepseek-ai/DeepSeek-R1-0528",
2236
+ "deepseek-ai/DeepSeek-V3-0324",
2237
+ "meta-llama/Llama-3.1-8B-Instruct",
2238
+ "meta-llama/Llama-3.3-70B-Instruct",
2239
+ "meta-llama/Llama-4-Scout-17B-16E-Instruct",
2240
+ "microsoft/Phi-4-mini-instruct",
2241
+ "moonshotai/Kimi-K2-Instruct"
2242
+ ],
2243
+ openai: [
2244
+ "codex-mini-latest",
2245
+ "gpt-3.5-turbo",
2246
+ "gpt-4",
2247
+ "gpt-4-turbo",
2248
+ "gpt-4.1",
2249
+ "gpt-4.1-mini",
2250
+ "gpt-4.1-nano",
2251
+ "gpt-4o",
2252
+ "gpt-4o-2024-05-13",
2253
+ "gpt-4o-2024-08-06",
2254
+ "gpt-4o-2024-11-20",
2255
+ "gpt-4o-mini",
2256
+ "gpt-5",
2257
+ "gpt-5-chat-latest",
2258
+ "gpt-5-codex",
2259
+ "gpt-5-mini",
2260
+ "gpt-5-nano",
2261
+ "gpt-5-pro",
2262
+ "gpt-5.1",
2263
+ "gpt-5.1-chat-latest",
2264
+ "gpt-5.1-codex",
2265
+ "gpt-5.1-codex-mini",
2266
+ "o1",
2267
+ "o1-mini",
2268
+ "o1-preview",
2269
+ "o1-pro",
2270
+ "o3",
2271
+ "o3-deep-research",
2272
+ "o3-mini",
2273
+ "o3-pro",
2274
+ "o4-mini",
2275
+ "o4-mini-deep-research",
2276
+ "text-embedding-3-large",
2277
+ "text-embedding-3-small",
2278
+ "text-embedding-ada-002"
2279
+ ],
2280
+ "zhipuai-coding-plan": ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
2281
+ perplexity: ["sonar", "sonar-pro", "sonar-reasoning", "sonar-reasoning-pro"],
2282
+ openrouter: [
2283
+ "anthropic/claude-3.5-haiku",
2284
+ "anthropic/claude-3.7-sonnet",
2285
+ "anthropic/claude-haiku-4.5",
2286
+ "anthropic/claude-opus-4",
2287
+ "anthropic/claude-opus-4.1",
2288
+ "anthropic/claude-opus-4.5",
2289
+ "anthropic/claude-sonnet-4",
2290
+ "anthropic/claude-sonnet-4.5",
2291
+ "cognitivecomputations/dolphin3.0-mistral-24b",
2292
+ "cognitivecomputations/dolphin3.0-r1-mistral-24b",
2293
+ "deepseek/deepseek-chat-v3-0324",
2294
+ "deepseek/deepseek-chat-v3.1",
2295
+ "deepseek/deepseek-r1-0528-qwen3-8b:free",
2296
+ "deepseek/deepseek-r1-0528:free",
2297
+ "deepseek/deepseek-r1-distill-llama-70b",
2298
+ "deepseek/deepseek-r1-distill-qwen-14b",
2299
+ "deepseek/deepseek-r1:free",
2300
+ "deepseek/deepseek-v3-base:free",
2301
+ "deepseek/deepseek-v3.1-terminus",
2302
+ "deepseek/deepseek-v3.1-terminus:exacto",
2303
+ "featherless/qwerky-72b",
2304
+ "google/gemini-2.0-flash-001",
2305
+ "google/gemini-2.0-flash-exp:free",
2306
+ "google/gemini-2.5-flash",
2307
+ "google/gemini-2.5-flash-lite",
2308
+ "google/gemini-2.5-flash-lite-preview-09-2025",
2309
+ "google/gemini-2.5-flash-preview-09-2025",
2310
+ "google/gemini-2.5-pro",
2311
+ "google/gemini-2.5-pro-preview-05-06",
2312
+ "google/gemini-2.5-pro-preview-06-05",
2313
+ "google/gemini-3-pro-preview",
2314
+ "google/gemma-2-9b-it:free",
2315
+ "google/gemma-3-12b-it",
2316
+ "google/gemma-3-27b-it",
2317
+ "google/gemma-3n-e4b-it",
2318
+ "google/gemma-3n-e4b-it:free",
2319
+ "kwaipilot/kat-coder-pro:free",
2320
+ "meta-llama/llama-3.2-11b-vision-instruct",
2321
+ "meta-llama/llama-3.3-70b-instruct:free",
2322
+ "meta-llama/llama-4-scout:free",
2323
+ "microsoft/mai-ds-r1:free",
2324
+ "minimax/minimax-01",
2325
+ "minimax/minimax-m1",
2326
+ "minimax/minimax-m2",
2327
+ "mistralai/codestral-2508",
2328
+ "mistralai/devstral-medium-2507",
2329
+ "mistralai/devstral-small-2505",
2330
+ "mistralai/devstral-small-2505:free",
2331
+ "mistralai/devstral-small-2507",
2332
+ "mistralai/mistral-7b-instruct:free",
2333
+ "mistralai/mistral-medium-3",
2334
+ "mistralai/mistral-medium-3.1",
2335
+ "mistralai/mistral-nemo:free",
2336
+ "mistralai/mistral-small-3.1-24b-instruct",
2337
+ "mistralai/mistral-small-3.2-24b-instruct",
2338
+ "mistralai/mistral-small-3.2-24b-instruct:free",
2339
+ "moonshotai/kimi-dev-72b:free",
2340
+ "moonshotai/kimi-k2",
2341
+ "moonshotai/kimi-k2-0905",
2342
+ "moonshotai/kimi-k2-0905:exacto",
2343
+ "moonshotai/kimi-k2-thinking",
2344
+ "moonshotai/kimi-k2:free",
2345
+ "nousresearch/deephermes-3-llama-3-8b-preview",
2346
+ "nousresearch/hermes-4-405b",
2347
+ "nousresearch/hermes-4-70b",
2348
+ "nvidia/nemotron-nano-9b-v2",
2349
+ "openai/gpt-4.1",
2350
+ "openai/gpt-4.1-mini",
2351
+ "openai/gpt-4o-mini",
2352
+ "openai/gpt-5",
2353
+ "openai/gpt-5-chat",
2354
+ "openai/gpt-5-codex",
2355
+ "openai/gpt-5-image",
2356
+ "openai/gpt-5-mini",
2357
+ "openai/gpt-5-nano",
2358
+ "openai/gpt-5-pro",
2359
+ "openai/gpt-5.1",
2360
+ "openai/gpt-5.1-chat",
2361
+ "openai/gpt-5.1-codex",
2362
+ "openai/gpt-5.1-codex-mini",
2363
+ "openai/gpt-oss-120b",
2364
+ "openai/gpt-oss-120b:exacto",
2365
+ "openai/gpt-oss-20b",
2366
+ "openai/gpt-oss-safeguard-20b",
2367
+ "openai/o4-mini",
2368
+ "qwen/qwen-2.5-coder-32b-instruct",
2369
+ "qwen/qwen2.5-vl-32b-instruct:free",
2370
+ "qwen/qwen2.5-vl-72b-instruct",
2371
+ "qwen/qwen2.5-vl-72b-instruct:free",
2372
+ "qwen/qwen3-14b:free",
2373
+ "qwen/qwen3-235b-a22b-07-25",
2374
+ "qwen/qwen3-235b-a22b-07-25:free",
2375
+ "qwen/qwen3-235b-a22b-thinking-2507",
2376
+ "qwen/qwen3-235b-a22b:free",
2377
+ "qwen/qwen3-30b-a3b-instruct-2507",
2378
+ "qwen/qwen3-30b-a3b-thinking-2507",
2379
+ "qwen/qwen3-30b-a3b:free",
2380
+ "qwen/qwen3-32b:free",
2381
+ "qwen/qwen3-8b:free",
2382
+ "qwen/qwen3-coder",
2383
+ "qwen/qwen3-coder-flash",
2384
+ "qwen/qwen3-coder:exacto",
2385
+ "qwen/qwen3-coder:free",
2386
+ "qwen/qwen3-max",
2387
+ "qwen/qwen3-next-80b-a3b-instruct",
2388
+ "qwen/qwen3-next-80b-a3b-thinking",
2389
+ "qwen/qwq-32b:free",
2390
+ "rekaai/reka-flash-3",
2391
+ "sarvamai/sarvam-m:free",
2392
+ "thudm/glm-z1-32b:free",
2393
+ "tngtech/deepseek-r1t2-chimera:free",
2394
+ "x-ai/grok-3",
2395
+ "x-ai/grok-3-beta",
2396
+ "x-ai/grok-3-mini",
2397
+ "x-ai/grok-3-mini-beta",
2398
+ "x-ai/grok-4",
2399
+ "x-ai/grok-4-fast",
2400
+ "x-ai/grok-4.1-fast",
2401
+ "x-ai/grok-code-fast-1",
2402
+ "z-ai/glm-4.5",
2403
+ "z-ai/glm-4.5-air",
2404
+ "z-ai/glm-4.5-air:free",
2405
+ "z-ai/glm-4.5v",
2406
+ "z-ai/glm-4.6",
2407
+ "z-ai/glm-4.6:exacto"
2408
+ ],
2409
+ zenmux: [
2410
+ "anthropic/claude-haiku-4.5",
2411
+ "anthropic/claude-opus-4.1",
2412
+ "anthropic/claude-sonnet-4.5",
2413
+ "deepseek/deepseek-chat",
2414
+ "google/gemini-2.5-pro",
2415
+ "inclusionai/lint-1t",
2416
+ "inclusionai/ring-1t",
2417
+ "kuaishou/kat-coder-pro-v1",
2418
+ "minimax/minimax-m2",
2419
+ "moonshotai/kimi-k2-0905",
2420
+ "moonshotai/kimi-k2-thinking",
2421
+ "moonshotai/kimi-k2-thinking-turbo",
2422
+ "openai/gpt-5",
2423
+ "openai/gpt-5-codex",
2424
+ "qwen/qwen3-coder-plus",
2425
+ "x-ai/grok-4",
2426
+ "x-ai/grok-4-fast",
2427
+ "x-ai/grok-4-fast-non-reasoning",
2428
+ "x-ai/grok-code-fast-1",
2429
+ "z-ai/glm-4.5-air",
2430
+ "z-ai/glm-4.6"
2431
+ ],
2432
+ ovhcloud: [
2433
+ "deepseek-r1-distill-llama-70b",
2434
+ "gpt-oss-120b",
2435
+ "gpt-oss-20b",
2436
+ "llama-3.1-8b-instruct",
2437
+ "llava-next-mistral-7b",
2438
+ "meta-llama-3_1-70b-instruct",
2439
+ "meta-llama-3_3-70b-instruct",
2440
+ "mistral-7b-instruct-v0.3",
2441
+ "mistral-nemo-instruct-2407",
2442
+ "mistral-small-3.2-24b-instruct-2506",
2443
+ "mixtral-8x7b-instruct-v0.1",
2444
+ "qwen2.5-coder-32b-instruct",
2445
+ "qwen2.5-vl-72b-instruct",
2446
+ "qwen3-32b",
2447
+ "qwen3-coder-30b-a3b-instruct"
2448
+ ],
2449
+ iflowcn: [
2450
+ "deepseek-r1",
2451
+ "deepseek-v3",
2452
+ "deepseek-v3.1",
2453
+ "deepseek-v3.2",
2454
+ "glm-4.6",
2455
+ "kimi-k2",
2456
+ "kimi-k2-0905",
2457
+ "minimax-m2",
2458
+ "qwen3-235b",
2459
+ "qwen3-235b-a22b-instruct",
2460
+ "qwen3-235b-a22b-thinking-2507",
2461
+ "qwen3-32b",
2462
+ "qwen3-coder",
2463
+ "qwen3-coder-plus",
2464
+ "qwen3-max",
2465
+ "qwen3-max-preview",
2466
+ "qwen3-vl-plus",
2467
+ "tstars2.0"
2468
+ ],
2469
+ synthetic: [
2470
+ "hf:MiniMaxAI/MiniMax-M2",
2471
+ "hf:Qwen/Qwen2.5-Coder-32B-Instruct",
2472
+ "hf:Qwen/Qwen3-235B-A22B-Instruct-2507",
2473
+ "hf:Qwen/Qwen3-235B-A22B-Thinking-2507",
2474
+ "hf:Qwen/Qwen3-Coder-480B-A35B-Instruct",
2475
+ "hf:deepseek-ai/DeepSeek-R1",
2476
+ "hf:deepseek-ai/DeepSeek-R1-0528",
2477
+ "hf:deepseek-ai/DeepSeek-V3",
2478
+ "hf:deepseek-ai/DeepSeek-V3-0324",
2479
+ "hf:deepseek-ai/DeepSeek-V3.1",
2480
+ "hf:deepseek-ai/DeepSeek-V3.1-Terminus",
2481
+ "hf:meta-llama/Llama-3.1-405B-Instruct",
2482
+ "hf:meta-llama/Llama-3.1-70B-Instruct",
2483
+ "hf:meta-llama/Llama-3.1-8B-Instruct",
2484
+ "hf:meta-llama/Llama-3.3-70B-Instruct",
2485
+ "hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
2486
+ "hf:meta-llama/Llama-4-Scout-17B-16E-Instruct",
2487
+ "hf:moonshotai/Kimi-K2-Instruct",
2488
+ "hf:moonshotai/Kimi-K2-Instruct-0905",
2489
+ "hf:moonshotai/Kimi-K2-Thinking",
2490
+ "hf:openai/gpt-oss-120b",
2491
+ "hf:zai-org/GLM-4.5",
2492
+ "hf:zai-org/GLM-4.6"
2493
+ ],
2494
+ deepinfra: [
2495
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct",
2496
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo",
2497
+ "moonshotai/Kimi-K2-Instruct",
2498
+ "openai/gpt-oss-120b",
2499
+ "openai/gpt-oss-20b",
2500
+ "zai-org/GLM-4.5"
2501
+ ],
2502
+ zhipuai: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
2503
+ submodel: [
2504
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
2505
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
2506
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
2507
+ "deepseek-ai/DeepSeek-R1-0528",
2508
+ "deepseek-ai/DeepSeek-V3-0324",
2509
+ "deepseek-ai/DeepSeek-V3.1",
2510
+ "openai/gpt-oss-120b",
2511
+ "zai-org/GLM-4.5-Air",
2512
+ "zai-org/GLM-4.5-FP8"
2513
+ ],
2514
+ zai: ["glm-4.5", "glm-4.5-air", "glm-4.5-flash", "glm-4.5v", "glm-4.6"],
2515
+ inference: [
2516
+ "google/gemma-3",
2517
+ "meta/llama-3.1-8b-instruct",
2518
+ "meta/llama-3.2-11b-vision-instruct",
2519
+ "meta/llama-3.2-1b-instruct",
2520
+ "meta/llama-3.2-3b-instruct",
2521
+ "mistral/mistral-nemo-12b-instruct",
2522
+ "osmosis/osmosis-structure-0.6b",
2523
+ "qwen/qwen-2.5-7b-vision-instruct",
2524
+ "qwen/qwen3-embedding-4b"
2525
+ ],
2526
+ requesty: [
2527
+ "anthropic/claude-3-7-sonnet",
2528
+ "anthropic/claude-haiku-4-5",
2529
+ "anthropic/claude-opus-4",
2530
+ "anthropic/claude-opus-4-1",
2531
+ "anthropic/claude-sonnet-4",
2532
+ "anthropic/claude-sonnet-4-5",
2533
+ "google/gemini-2.5-flash",
2534
+ "google/gemini-2.5-pro",
2535
+ "openai/gpt-4.1",
2536
+ "openai/gpt-4.1-mini",
2537
+ "openai/gpt-4o-mini",
2538
+ "openai/gpt-5",
2539
+ "openai/gpt-5-mini",
2540
+ "openai/gpt-5-nano",
2541
+ "openai/o4-mini",
2542
+ "xai/grok-4",
2543
+ "xai/grok-4-fast"
2544
+ ],
2545
+ morph: ["auto", "morph-v3-fast", "morph-v3-large"],
2546
+ lmstudio: ["openai/gpt-oss-20b", "qwen/qwen3-30b-a3b-2507", "qwen/qwen3-coder-30b"],
2547
+ anthropic: [
2548
+ "claude-3-5-haiku-20241022",
2549
+ "claude-3-5-haiku-latest",
2550
+ "claude-3-5-sonnet-20240620",
2551
+ "claude-3-5-sonnet-20241022",
2552
+ "claude-3-7-sonnet-20250219",
2553
+ "claude-3-7-sonnet-latest",
2554
+ "claude-3-haiku-20240307",
2555
+ "claude-3-opus-20240229",
2556
+ "claude-3-sonnet-20240229",
2557
+ "claude-haiku-4-5",
2558
+ "claude-haiku-4-5-20251001",
2559
+ "claude-opus-4-0",
2560
+ "claude-opus-4-1",
2561
+ "claude-opus-4-1-20250805",
2562
+ "claude-opus-4-20250514",
2563
+ "claude-opus-4-5",
2564
+ "claude-sonnet-4-0",
2565
+ "claude-sonnet-4-20250514",
2566
+ "claude-sonnet-4-5",
2567
+ "claude-sonnet-4-5-20250929"
2568
+ ],
2569
+ "fireworks-ai": [
2570
+ "accounts/fireworks/models/deepseek-r1-0528",
2571
+ "accounts/fireworks/models/deepseek-v3-0324",
2572
+ "accounts/fireworks/models/deepseek-v3p1",
2573
+ "accounts/fireworks/models/glm-4p5",
2574
+ "accounts/fireworks/models/glm-4p5-air",
2575
+ "accounts/fireworks/models/gpt-oss-120b",
2576
+ "accounts/fireworks/models/gpt-oss-20b",
2577
+ "accounts/fireworks/models/kimi-k2-instruct",
2578
+ "accounts/fireworks/models/kimi-k2-thinking",
2579
+ "accounts/fireworks/models/minimax-m2",
2580
+ "accounts/fireworks/models/qwen3-235b-a22b",
2581
+ "accounts/fireworks/models/qwen3-coder-480b-a35b-instruct"
2582
+ ],
2583
+ modelscope: [
2584
+ "Qwen/Qwen3-235B-A22B-Instruct-2507",
2585
+ "Qwen/Qwen3-235B-A22B-Thinking-2507",
2586
+ "Qwen/Qwen3-30B-A3B-Instruct-2507",
2587
+ "Qwen/Qwen3-30B-A3B-Thinking-2507",
2588
+ "Qwen/Qwen3-Coder-30B-A3B-Instruct",
2589
+ "ZhipuAI/GLM-4.5",
2590
+ "ZhipuAI/GLM-4.6"
2591
+ ],
2592
+ llama: [
2593
+ "cerebras-llama-4-maverick-17b-128e-instruct",
2594
+ "cerebras-llama-4-scout-17b-16e-instruct",
2595
+ "groq-llama-4-maverick-17b-128e-instruct",
2596
+ "llama-3.3-70b-instruct",
2597
+ "llama-3.3-8b-instruct",
2598
+ "llama-4-maverick-17b-128e-instruct-fp8",
2599
+ "llama-4-scout-17b-16e-instruct-fp8"
2600
+ ],
2601
+ scaleway: [
2602
+ "bge-multilingual-gemma2",
2603
+ "deepseek-r1-distill-llama-70b",
2604
+ "gemma-3-27b-it",
2605
+ "gpt-oss-120b",
2606
+ "llama-3.1-8b-instruct",
2607
+ "llama-3.3-70b-instruct",
2608
+ "mistral-nemo-instruct-2407",
2609
+ "mistral-small-3.2-24b-instruct-2506",
2610
+ "pixtral-12b-2409",
2611
+ "qwen3-235b-a22b-instruct-2507",
2612
+ "qwen3-coder-30b-a3b-instruct",
2613
+ "voxtral-small-24b-2507",
2614
+ "whisper-large-v3"
2615
+ ],
2616
+ poe: [
2617
+ "anthropic/claude-haiku-3",
2618
+ "anthropic/claude-haiku-3.5",
2619
+ "anthropic/claude-haiku-3.5-search",
2620
+ "anthropic/claude-haiku-4.5",
2621
+ "anthropic/claude-opus-3",
2622
+ "anthropic/claude-opus-4",
2623
+ "anthropic/claude-opus-4-reasoning",
2624
+ "anthropic/claude-opus-4-search",
2625
+ "anthropic/claude-opus-4.1",
2626
+ "anthropic/claude-sonnet-3.5",
2627
+ "anthropic/claude-sonnet-3.5-june",
2628
+ "anthropic/claude-sonnet-3.7",
2629
+ "anthropic/claude-sonnet-3.7-reasoning",
2630
+ "anthropic/claude-sonnet-3.7-search",
2631
+ "anthropic/claude-sonnet-4",
2632
+ "anthropic/claude-sonnet-4-reasoning",
2633
+ "anthropic/claude-sonnet-4-search",
2634
+ "anthropic/claude-sonnet-4.5",
2635
+ "elevenlabs/elevenlabs-music",
2636
+ "elevenlabs/elevenlabs-v2.5-turbo",
2637
+ "elevenlabs/elevenlabs-v3",
2638
+ "facebook/llama-3.1-405b",
2639
+ "facebook/llama-3.1-70b",
2640
+ "facebook/llama-3.1-8b",
2641
+ "google/gemini-2.0-flash",
2642
+ "google/gemini-2.0-flash-lite",
2643
+ "google/gemini-2.5-flash",
2644
+ "google/gemini-2.5-flash-lite",
2645
+ "google/gemini-2.5-pro",
2646
+ "google/gemini-3.0-pro",
2647
+ "google/imagen-3",
2648
+ "google/imagen-3-fast",
2649
+ "google/imagen-4",
2650
+ "google/imagen-4-fast",
2651
+ "google/imagen-4-ultra",
2652
+ "google/lyria",
2653
+ "google/nano-banana",
2654
+ "google/veo-2",
2655
+ "google/veo-3",
2656
+ "google/veo-3-fast",
2657
+ "google/veo-3.1",
2658
+ "google/veo-3.1-fast",
2659
+ "ideogramai/ideogram",
2660
+ "ideogramai/ideogram-v2",
2661
+ "ideogramai/ideogram-v2a",
2662
+ "ideogramai/ideogram-v2a-turbo",
2663
+ "lumalabs/dream-machine",
2664
+ "lumalabs/ray2",
2665
+ "novita/glm-4.6",
2666
+ "openAi/chatgpt-4o-latest",
2667
+ "openAi/dall-e-3",
2668
+ "openAi/gpt-3.5-turbo",
2669
+ "openAi/gpt-3.5-turbo-instruct",
2670
+ "openAi/gpt-3.5-turbo-raw",
2671
+ "openAi/gpt-4-classic",
2672
+ "openAi/gpt-4-classic-0314",
2673
+ "openAi/gpt-4-turbo",
2674
+ "openAi/gpt-4.1",
2675
+ "openAi/gpt-4.1-mini",
2676
+ "openAi/gpt-4.1-nano",
2677
+ "openAi/gpt-4o",
2678
+ "openAi/gpt-4o-aug",
2679
+ "openAi/gpt-4o-mini",
2680
+ "openAi/gpt-4o-mini-search",
2681
+ "openAi/gpt-4o-search",
2682
+ "openAi/gpt-5",
2683
+ "openAi/gpt-5-chat",
2684
+ "openAi/gpt-5-codex",
2685
+ "openAi/gpt-5-mini",
2686
+ "openAi/gpt-5-nano",
2687
+ "openAi/gpt-5-pro",
2688
+ "openAi/gpt-image-1",
2689
+ "openAi/gpt-image-1-mini",
2690
+ "openAi/o1",
2691
+ "openAi/o1-pro",
2692
+ "openAi/o3",
2693
+ "openAi/o3-deep-research",
2694
+ "openAi/o3-mini",
2695
+ "openAi/o3-mini-high",
2696
+ "openAi/o3-pro",
2697
+ "openAi/o4-mini",
2698
+ "openAi/o4-mini-deep-research",
2699
+ "openAi/sora-2",
2700
+ "openAi/sora-2-pro",
2701
+ "openai/gpt-5.1",
2702
+ "openai/gpt-5.1-codex",
2703
+ "openai/gpt-5.1-codex-mini",
2704
+ "openai/gpt-5.1-instant",
2705
+ "runwayml/runway",
2706
+ "runwayml/runway-gen-4-turbo",
2707
+ "stabilityai/stablediffusionxl",
2708
+ "topazlabs-co/topazlabs",
2709
+ "trytako/tako",
2710
+ "xai/grok-2",
2711
+ "xai/grok-3",
2712
+ "xai/grok-3-mini",
2713
+ "xai/grok-4",
2714
+ "xai/grok-4-fast-non-reasoning",
2715
+ "xai/grok-4-fast-reasoning",
2716
+ "xai/grok-code-fast-1"
2717
+ ],
2718
+ cerebras: ["gpt-oss-120b", "qwen-3-235b-a22b-instruct-2507", "zai-glm-4.6"],
2719
+ netlify: [
2720
+ "anthropic/claude-3-5-haiku-20241022",
2721
+ "anthropic/claude-3-7-sonnet-20250219",
2722
+ "anthropic/claude-3-haiku-20240307",
2723
+ "anthropic/claude-haiku-4-5-20251001",
2724
+ "anthropic/claude-opus-4-1-20250805",
2725
+ "anthropic/claude-opus-4-20250514",
2726
+ "anthropic/claude-opus-4-5-20251101",
2727
+ "anthropic/claude-sonnet-4-20250514",
2728
+ "anthropic/claude-sonnet-4-5-20250929",
2729
+ "gemini/gemini-2.0-flash",
2730
+ "gemini/gemini-2.0-flash-lite",
2731
+ "gemini/gemini-2.5-flash",
2732
+ "gemini/gemini-2.5-flash-image",
2733
+ "gemini/gemini-2.5-flash-image-preview",
2734
+ "gemini/gemini-2.5-flash-lite",
2735
+ "gemini/gemini-2.5-flash-lite-preview-09-2025",
2736
+ "gemini/gemini-2.5-flash-preview-09-2025",
2737
+ "gemini/gemini-2.5-pro",
2738
+ "gemini/gemini-3-pro-image-preview",
2739
+ "gemini/gemini-3-pro-preview",
2740
+ "gemini/gemini-flash-latest",
2741
+ "gemini/gemini-flash-lite-latest",
2742
+ "openai/codex-mini-latest",
2743
+ "openai/gpt-4.1",
2744
+ "openai/gpt-4.1-mini",
2745
+ "openai/gpt-4.1-nano",
2746
+ "openai/gpt-4o",
2747
+ "openai/gpt-4o-mini",
2748
+ "openai/gpt-5",
2749
+ "openai/gpt-5-2025-08-07",
2750
+ "openai/gpt-5-codex",
2751
+ "openai/gpt-5-mini",
2752
+ "openai/gpt-5-mini-2025-08-07",
2753
+ "openai/gpt-5-nano",
2754
+ "openai/gpt-5-pro",
2755
+ "openai/gpt-5.1",
2756
+ "openai/gpt-5.1-2025-11-13",
2757
+ "openai/gpt-5.1-codex",
2758
+ "openai/gpt-5.1-codex-mini",
2759
+ "openai/o3",
2760
+ "openai/o3-mini",
2761
+ "openai/o4-mini"
2762
+ ]
2763
+ },
2764
+ version: "1.0.0"
2765
+ };
2766
+
2767
+ // src/llm/model/provider-registry.ts
2768
+ var registryData = null;
2769
+ var CACHE_DIR = () => path__default.default.join(os__default.default.homedir(), ".cache", "mastra");
2770
+ var CACHE_FILE = () => path__default.default.join(CACHE_DIR(), "gateway-refresh-time");
2771
+ var GLOBAL_PROVIDER_REGISTRY_JSON = () => path__default.default.join(CACHE_DIR(), "provider-registry.json");
2772
+ var GLOBAL_PROVIDER_TYPES_DTS = () => path__default.default.join(CACHE_DIR(), "provider-types.generated.d.ts");
2773
+ var modelRouterCacheFailed = false;
2774
+ function atomicWriteFileSync(filePath, content, encoding = "utf-8") {
2775
+ const randomSuffix = Math.random().toString(36).substring(2, 15);
2776
+ const tempPath = `${filePath}.${process.pid}.${Date.now()}.${randomSuffix}.tmp`;
2777
+ try {
2778
+ fs__default.default.writeFileSync(tempPath, content, encoding);
2779
+ fs__default.default.renameSync(tempPath, filePath);
2780
+ } catch (error) {
2781
+ try {
2782
+ fs__default.default.unlinkSync(tempPath);
2783
+ } catch {
2784
+ }
2785
+ throw error;
2786
+ }
2787
+ }
2788
+ function syncGlobalCacheToLocal() {
2789
+ try {
2790
+ const globalJsonExists = fs__default.default.existsSync(GLOBAL_PROVIDER_REGISTRY_JSON());
2791
+ const globalDtsExists = fs__default.default.existsSync(GLOBAL_PROVIDER_TYPES_DTS());
2792
+ if (!globalJsonExists && !globalDtsExists) {
2793
+ return;
2794
+ }
2795
+ const packageRoot = getPackageRoot();
2796
+ const localJsonPath = path__default.default.join(packageRoot, "dist", "provider-registry.json");
2797
+ const localDtsPath = path__default.default.join(packageRoot, "dist", "llm", "model", "provider-types.generated.d.ts");
2798
+ fs__default.default.mkdirSync(path__default.default.dirname(localJsonPath), { recursive: true });
2799
+ fs__default.default.mkdirSync(path__default.default.dirname(localDtsPath), { recursive: true });
2800
+ if (globalJsonExists) {
2801
+ const globalJsonContent = fs__default.default.readFileSync(GLOBAL_PROVIDER_REGISTRY_JSON(), "utf-8");
2802
+ let shouldCopyJson = true;
2803
+ if (fs__default.default.existsSync(localJsonPath)) {
2804
+ const localJsonContent = fs__default.default.readFileSync(localJsonPath, "utf-8");
2805
+ shouldCopyJson = globalJsonContent !== localJsonContent;
2806
+ }
2807
+ if (shouldCopyJson) {
2808
+ atomicWriteFileSync(localJsonPath, globalJsonContent, "utf-8");
2809
+ }
2810
+ }
2811
+ if (globalDtsExists) {
2812
+ const globalDtsContent = fs__default.default.readFileSync(GLOBAL_PROVIDER_TYPES_DTS(), "utf-8");
2813
+ let shouldCopyDts = true;
2814
+ if (fs__default.default.existsSync(localDtsPath)) {
2815
+ const localDtsContent = fs__default.default.readFileSync(localDtsPath, "utf-8");
2816
+ shouldCopyDts = globalDtsContent !== localDtsContent;
2817
+ }
2818
+ if (shouldCopyDts) {
2819
+ atomicWriteFileSync(localDtsPath, globalDtsContent, "utf-8");
2820
+ }
2821
+ }
2822
+ } catch (error) {
2823
+ console.warn("Failed to sync global cache to local:", error);
2824
+ }
2825
+ }
2826
+ function getLastRefreshTimeFromDisk() {
2827
+ try {
2828
+ if (!fs__default.default.existsSync(CACHE_FILE())) {
2829
+ return null;
2830
+ }
2831
+ const timestamp = fs__default.default.readFileSync(CACHE_FILE(), "utf-8").trim();
2832
+ return new Date(parseInt(timestamp, 10));
2833
+ } catch (err) {
2834
+ console.warn("[GatewayRegistry] Failed to read cache file:", err);
2835
+ modelRouterCacheFailed = true;
2836
+ return null;
2837
+ }
2838
+ }
2839
+ function saveLastRefreshTimeToDisk(date) {
2840
+ try {
2841
+ if (!fs__default.default.existsSync(CACHE_DIR())) {
2842
+ fs__default.default.mkdirSync(CACHE_DIR(), { recursive: true });
2843
+ }
2844
+ fs__default.default.writeFileSync(CACHE_FILE(), date.getTime().toString(), "utf-8");
2845
+ } catch (err) {
2846
+ modelRouterCacheFailed = true;
2847
+ console.warn("[GatewayRegistry] Failed to write cache file:", err);
2848
+ }
2849
+ }
2850
+ function getPackageRoot() {
2851
+ try {
2852
+ const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-RJOVFHWN.cjs', document.baseURI).href)) || "file://");
2853
+ const packageJsonPath = require2.resolve("@mastra/core/package.json");
2854
+ return path__default.default.dirname(packageJsonPath);
2855
+ } catch {
2856
+ return process.cwd();
2857
+ }
2858
+ }
2859
+ function loadRegistry(useDynamicLoading) {
2860
+ if (!useDynamicLoading) {
2861
+ return provider_registry_default;
2862
+ }
2863
+ syncGlobalCacheToLocal();
2864
+ if (registryData) {
2865
+ return registryData;
2866
+ }
2867
+ const packageRoot = getPackageRoot();
2868
+ const possiblePaths = [
2869
+ // Built: in dist/ relative to package root (first priority - what gets distributed)
2870
+ path__default.default.join(packageRoot, "dist", "provider-registry.json"),
2871
+ // Development: in src/ relative to package root
2872
+ path__default.default.join(packageRoot, "src", "llm", "model", "provider-registry.json"),
2873
+ // Fallback: relative to cwd (for monorepo setups)
2874
+ path__default.default.join(process.cwd(), "packages/core/src/llm/model/provider-registry.json"),
2875
+ path__default.default.join(process.cwd(), "src/llm/model/provider-registry.json")
2876
+ ];
2877
+ const errors = [];
2878
+ for (const jsonPath of possiblePaths) {
2879
+ try {
2880
+ const content = fs__default.default.readFileSync(jsonPath, "utf-8");
2881
+ registryData = JSON.parse(content);
2882
+ return registryData;
2883
+ } catch (err) {
2884
+ errors.push(`${jsonPath}: ${err instanceof Error ? err.message : String(err)}`);
2885
+ continue;
2886
+ }
2887
+ }
2888
+ throw new Error(
2889
+ `Failed to load provider registry with dynamic loading. Make sure provider-registry.json is generated by running: npm run generate:providers
2890
+
2891
+ Tried paths:
2892
+ ${errors.join("\n")}`
2893
+ );
2894
+ }
2895
+ var PROVIDER_REGISTRY = new Proxy({}, {
2896
+ get(_target, prop) {
2897
+ const registry = GatewayRegistry.getInstance();
2898
+ const providers = registry.getProviders();
2899
+ return providers[prop];
2900
+ },
2901
+ ownKeys() {
2902
+ const registry = GatewayRegistry.getInstance();
2903
+ const providers = registry.getProviders();
2904
+ return Object.keys(providers);
2905
+ },
2906
+ has(_target, prop) {
2907
+ const registry = GatewayRegistry.getInstance();
2908
+ const providers = registry.getProviders();
2909
+ return prop in providers;
2910
+ },
2911
+ getOwnPropertyDescriptor(_target, prop) {
2912
+ const registry = GatewayRegistry.getInstance();
2913
+ const providers = registry.getProviders();
2914
+ if (prop in providers) {
2915
+ return {
2916
+ enumerable: true,
2917
+ configurable: true
2918
+ };
2919
+ }
2920
+ return void 0;
2921
+ }
2922
+ });
2923
+ var PROVIDER_MODELS = new Proxy({}, {
2924
+ get(_target, prop) {
2925
+ const registry = GatewayRegistry.getInstance();
2926
+ const models = registry.getModels();
2927
+ return models[prop];
2928
+ },
2929
+ ownKeys() {
2930
+ const registry = GatewayRegistry.getInstance();
2931
+ const models = registry.getModels();
2932
+ return Object.keys(models);
2933
+ },
2934
+ has(_target, prop) {
2935
+ const registry = GatewayRegistry.getInstance();
2936
+ const models = registry.getModels();
2937
+ return prop in models;
2938
+ },
2939
+ getOwnPropertyDescriptor(_target, prop) {
2940
+ const registry = GatewayRegistry.getInstance();
2941
+ const models = registry.getModels();
2942
+ if (prop in models) {
2943
+ return {
2944
+ enumerable: true,
2945
+ configurable: true
2946
+ };
2947
+ }
2948
+ return void 0;
2949
+ }
2950
+ });
2951
+ function parseModelString(modelString) {
2952
+ const firstSlashIndex = modelString.indexOf("/");
2953
+ if (firstSlashIndex !== -1) {
2954
+ const provider = modelString.substring(0, firstSlashIndex);
2955
+ const modelId = modelString.substring(firstSlashIndex + 1);
2956
+ if (provider && modelId) {
2957
+ return {
2958
+ provider,
2959
+ modelId
2960
+ };
2961
+ }
2962
+ }
2963
+ return {
2964
+ provider: null,
2965
+ modelId: modelString
2966
+ };
2967
+ }
2968
+ function getProviderConfig(providerId) {
2969
+ const registry = GatewayRegistry.getInstance();
2970
+ return registry.getProviderConfig(providerId);
2971
+ }
2972
+ function isProviderRegistered(providerId) {
2973
+ const registry = GatewayRegistry.getInstance();
2974
+ return registry.isProviderRegistered(providerId);
2975
+ }
2976
+ function getRegisteredProviders() {
2977
+ const registry = GatewayRegistry.getInstance();
2978
+ const providers = registry.getProviders();
2979
+ return Object.keys(providers);
2980
+ }
2981
+ function isValidModelId(modelId) {
2982
+ const { provider } = parseModelString(modelId);
2983
+ return provider !== null && isProviderRegistered(provider);
2984
+ }
2985
+ var GatewayRegistry = class _GatewayRegistry {
2986
+ static instance = null;
2987
+ lastRefreshTime = null;
2988
+ refreshInterval = null;
2989
+ isRefreshing = false;
2990
+ useDynamicLoading;
2991
+ customGateways = [];
2992
+ constructor(options = {}) {
2993
+ const isDev2 = process.env.MASTRA_DEV === "true" || process.env.MASTRA_DEV === "1";
2994
+ this.useDynamicLoading = options.useDynamicLoading ?? isDev2;
2995
+ }
2996
+ /**
2997
+ * Get the singleton instance
2998
+ */
2999
+ static getInstance(options) {
3000
+ if (!_GatewayRegistry.instance) {
3001
+ _GatewayRegistry.instance = new _GatewayRegistry(options);
3002
+ }
3003
+ return _GatewayRegistry.instance;
3004
+ }
3005
+ /**
3006
+ * Register custom gateways for type generation
3007
+ * @param gateways - Array of custom gateway instances
3008
+ */
3009
+ registerCustomGateways(gateways) {
3010
+ this.customGateways = gateways;
3011
+ }
3012
+ /**
3013
+ * Get all registered custom gateways
3014
+ */
3015
+ getCustomGateways() {
3016
+ return this.customGateways;
3017
+ }
3018
+ /**
3019
+ * Sync providers from all gateways
3020
+ * Requires dynamic loading to be enabled (useDynamicLoading=true).
3021
+ * @param forceRefresh - Force refresh even if recently synced
3022
+ * @param writeToSrc - Write to src/ directory in addition to dist/ (useful for manual generation in repo)
3023
+ */
3024
+ async syncGateways(forceRefresh = false, writeToSrc = false) {
3025
+ if (!this.useDynamicLoading && !writeToSrc) {
3026
+ return;
3027
+ }
3028
+ if (this.isRefreshing && !forceRefresh) {
3029
+ return;
3030
+ }
3031
+ this.isRefreshing = true;
3032
+ try {
3033
+ const { ModelsDevGateway } = await import('./models-dev-T2CXOEDH.cjs');
3034
+ const { NetlifyGateway } = await import('./netlify-BAEMIQNH.cjs');
3035
+ const { fetchProvidersFromGateways, writeRegistryFiles } = await import('./registry-generator-DL42NMBM.cjs');
3036
+ const defaultGateways = [new ModelsDevGateway({}), new NetlifyGateway()];
3037
+ const gateways = [...defaultGateways, ...this.customGateways];
3038
+ const { providers, models } = await fetchProvidersFromGateways(gateways);
3039
+ const packageRoot = getPackageRoot();
3040
+ try {
3041
+ fs__default.default.mkdirSync(CACHE_DIR(), { recursive: true });
3042
+ await writeRegistryFiles(GLOBAL_PROVIDER_REGISTRY_JSON(), GLOBAL_PROVIDER_TYPES_DTS(), providers, models);
3043
+ } catch (error) {
3044
+ console.warn("[GatewayRegistry] Failed to write to global cache:", error);
3045
+ }
3046
+ const distJsonPath = path__default.default.join(packageRoot, "dist", "provider-registry.json");
3047
+ const distTypesPath = path__default.default.join(packageRoot, "dist", "llm", "model", "provider-types.generated.d.ts");
3048
+ await writeRegistryFiles(distJsonPath, distTypesPath, providers, models);
3049
+ const shouldWriteToSrc = writeToSrc;
3050
+ if (shouldWriteToSrc) {
3051
+ const srcJsonPath = path__default.default.join(packageRoot, "src", "llm", "model", "provider-registry.json");
3052
+ const srcTypesPath = path__default.default.join(packageRoot, "src", "llm", "model", "provider-types.generated.d.ts");
3053
+ await fs__default.default.promises.copyFile(distJsonPath, srcJsonPath);
3054
+ await fs__default.default.promises.copyFile(distTypesPath, srcTypesPath);
3055
+ }
3056
+ if (this.useDynamicLoading) {
3057
+ registryData = null;
3058
+ }
3059
+ this.lastRefreshTime = /* @__PURE__ */ new Date();
3060
+ saveLastRefreshTimeToDisk(this.lastRefreshTime);
3061
+ } catch (error) {
3062
+ console.error("[GatewayRegistry] \u274C Gateway sync failed:", error);
3063
+ throw error;
3064
+ } finally {
3065
+ this.isRefreshing = false;
3066
+ }
3067
+ }
3068
+ /**
3069
+ * Get the last refresh time (from memory or disk cache)
3070
+ */
3071
+ getLastRefreshTime() {
3072
+ return this.lastRefreshTime || getLastRefreshTimeFromDisk();
3073
+ }
3074
+ /**
3075
+ * Start auto-refresh on an interval
3076
+ * Requires dynamic loading to be enabled (useDynamicLoading=true).
3077
+ * @param intervalMs - Interval in milliseconds (default: 1 hour)
3078
+ */
3079
+ startAutoRefresh(intervalMs = 60 * 60 * 1e3) {
3080
+ if (!this.useDynamicLoading) {
3081
+ return;
3082
+ }
3083
+ if (this.refreshInterval) {
3084
+ return;
3085
+ }
3086
+ const lastRefresh = getLastRefreshTimeFromDisk();
3087
+ const now = Date.now();
3088
+ const shouldRefresh = !modelRouterCacheFailed && (!lastRefresh || now - lastRefresh.getTime() > intervalMs);
3089
+ if (shouldRefresh) {
3090
+ this.syncGateways().catch((err) => {
3091
+ console.error("[GatewayRegistry] Initial auto-refresh failed:", err);
3092
+ });
3093
+ }
3094
+ this.refreshInterval = setInterval(() => {
3095
+ if (modelRouterCacheFailed && this.refreshInterval) {
3096
+ clearInterval(this.refreshInterval);
3097
+ this.refreshInterval = null;
3098
+ return;
3099
+ }
3100
+ this.syncGateways().catch((err) => {
3101
+ console.error("[GatewayRegistry] Auto-refresh failed:", err);
3102
+ });
3103
+ }, intervalMs);
3104
+ if (this.refreshInterval.unref) {
3105
+ this.refreshInterval.unref();
3106
+ }
3107
+ }
3108
+ /**
3109
+ * Stop auto-refresh
3110
+ */
3111
+ stopAutoRefresh() {
3112
+ if (this.refreshInterval) {
3113
+ clearInterval(this.refreshInterval);
3114
+ this.refreshInterval = null;
3115
+ }
3116
+ }
3117
+ /**
3118
+ * Get provider configuration by ID
3119
+ */
3120
+ getProviderConfig(providerId) {
3121
+ const data = loadRegistry(this.useDynamicLoading);
3122
+ return data.providers[providerId];
3123
+ }
3124
+ /**
3125
+ * Check if a provider is registered
3126
+ */
3127
+ isProviderRegistered(providerId) {
3128
+ const data = loadRegistry(this.useDynamicLoading);
3129
+ return providerId in data.providers;
3130
+ }
3131
+ /**
3132
+ * Get all registered providers
3133
+ */
3134
+ getProviders() {
3135
+ const data = loadRegistry(this.useDynamicLoading);
3136
+ return data.providers;
3137
+ }
3138
+ /**
3139
+ * Get all models
3140
+ */
3141
+ getModels() {
3142
+ return loadRegistry(this.useDynamicLoading).models;
3143
+ }
3144
+ };
3145
+ var isDev = process.env.MASTRA_DEV === "true" || process.env.MASTRA_DEV === "1";
3146
+ var autoRefreshEnabled = process.env.MASTRA_AUTO_REFRESH_PROVIDERS === "true" || process.env.MASTRA_AUTO_REFRESH_PROVIDERS !== "false" && isDev;
3147
+ if (autoRefreshEnabled) {
3148
+ GatewayRegistry.getInstance({ useDynamicLoading: isDev }).startAutoRefresh();
3149
+ }
3150
+
3151
+ exports.GatewayRegistry = GatewayRegistry;
3152
+ exports.PROVIDER_MODELS = PROVIDER_MODELS;
3153
+ exports.PROVIDER_REGISTRY = PROVIDER_REGISTRY;
3154
+ exports.getProviderConfig = getProviderConfig;
3155
+ exports.getRegisteredProviders = getRegisteredProviders;
3156
+ exports.isProviderRegistered = isProviderRegistered;
3157
+ exports.isValidModelId = isValidModelId;
3158
+ exports.parseModelString = parseModelString;
3159
+ //# sourceMappingURL=chunk-RJOVFHWN.cjs.map
3160
+ //# sourceMappingURL=chunk-RJOVFHWN.cjs.map