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