@xynehq/jaf 0.1.2

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 (279) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +596 -0
  3. package/dist/a2a/agent-card.d.ts +28 -0
  4. package/dist/a2a/agent-card.d.ts.map +1 -0
  5. package/dist/a2a/agent-card.js +250 -0
  6. package/dist/a2a/agent-card.js.map +1 -0
  7. package/dist/a2a/agent.d.ts +38 -0
  8. package/dist/a2a/agent.d.ts.map +1 -0
  9. package/dist/a2a/agent.js +223 -0
  10. package/dist/a2a/agent.js.map +1 -0
  11. package/dist/a2a/client.d.ts +35 -0
  12. package/dist/a2a/client.d.ts.map +1 -0
  13. package/dist/a2a/client.js +337 -0
  14. package/dist/a2a/client.js.map +1 -0
  15. package/dist/a2a/examples/client-example.d.ts +104 -0
  16. package/dist/a2a/examples/client-example.d.ts.map +1 -0
  17. package/dist/a2a/examples/client-example.js +232 -0
  18. package/dist/a2a/examples/client-example.js.map +1 -0
  19. package/dist/a2a/examples/server-example.d.ts +9 -0
  20. package/dist/a2a/examples/server-example.d.ts.map +1 -0
  21. package/dist/a2a/examples/server-example.js +209 -0
  22. package/dist/a2a/examples/server-example.js.map +1 -0
  23. package/dist/a2a/examples/weather-agent.d.ts +8 -0
  24. package/dist/a2a/examples/weather-agent.d.ts.map +1 -0
  25. package/dist/a2a/examples/weather-agent.js +232 -0
  26. package/dist/a2a/examples/weather-agent.js.map +1 -0
  27. package/dist/a2a/executor.d.ts +43 -0
  28. package/dist/a2a/executor.d.ts.map +1 -0
  29. package/dist/a2a/executor.js +507 -0
  30. package/dist/a2a/executor.js.map +1 -0
  31. package/dist/a2a/index.d.ts +378 -0
  32. package/dist/a2a/index.d.ts.map +1 -0
  33. package/dist/a2a/index.js +72 -0
  34. package/dist/a2a/index.js.map +1 -0
  35. package/dist/a2a/memory/cleanup.d.ts +58 -0
  36. package/dist/a2a/memory/cleanup.d.ts.map +1 -0
  37. package/dist/a2a/memory/cleanup.js +281 -0
  38. package/dist/a2a/memory/cleanup.js.map +1 -0
  39. package/dist/a2a/memory/factory.d.ts +38 -0
  40. package/dist/a2a/memory/factory.d.ts.map +1 -0
  41. package/dist/a2a/memory/factory.js +369 -0
  42. package/dist/a2a/memory/factory.js.map +1 -0
  43. package/dist/a2a/memory/index.d.ts +13 -0
  44. package/dist/a2a/memory/index.d.ts.map +1 -0
  45. package/dist/a2a/memory/index.js +16 -0
  46. package/dist/a2a/memory/index.js.map +1 -0
  47. package/dist/a2a/memory/providers/in-memory.d.ts +10 -0
  48. package/dist/a2a/memory/providers/in-memory.d.ts.map +1 -0
  49. package/dist/a2a/memory/providers/in-memory.js +539 -0
  50. package/dist/a2a/memory/providers/in-memory.js.map +1 -0
  51. package/dist/a2a/memory/providers/postgres.d.ts +10 -0
  52. package/dist/a2a/memory/providers/postgres.d.ts.map +1 -0
  53. package/dist/a2a/memory/providers/postgres.js +404 -0
  54. package/dist/a2a/memory/providers/postgres.js.map +1 -0
  55. package/dist/a2a/memory/providers/redis.d.ts +10 -0
  56. package/dist/a2a/memory/providers/redis.d.ts.map +1 -0
  57. package/dist/a2a/memory/providers/redis.js +435 -0
  58. package/dist/a2a/memory/providers/redis.js.map +1 -0
  59. package/dist/a2a/memory/serialization.d.ts +53 -0
  60. package/dist/a2a/memory/serialization.d.ts.map +1 -0
  61. package/dist/a2a/memory/serialization.js +233 -0
  62. package/dist/a2a/memory/serialization.js.map +1 -0
  63. package/dist/a2a/memory/types.d.ts +395 -0
  64. package/dist/a2a/memory/types.d.ts.map +1 -0
  65. package/dist/a2a/memory/types.js +85 -0
  66. package/dist/a2a/memory/types.js.map +1 -0
  67. package/dist/a2a/protocol.d.ts +38 -0
  68. package/dist/a2a/protocol.d.ts.map +1 -0
  69. package/dist/a2a/protocol.js +211 -0
  70. package/dist/a2a/protocol.js.map +1 -0
  71. package/dist/a2a/server.d.ts +343 -0
  72. package/dist/a2a/server.d.ts.map +1 -0
  73. package/dist/a2a/server.js +362 -0
  74. package/dist/a2a/server.js.map +1 -0
  75. package/dist/a2a/types.d.ts +730 -0
  76. package/dist/a2a/types.d.ts.map +1 -0
  77. package/dist/a2a/types.js +73 -0
  78. package/dist/a2a/types.js.map +1 -0
  79. package/dist/adk/agents/index.d.ts +48 -0
  80. package/dist/adk/agents/index.d.ts.map +1 -0
  81. package/dist/adk/agents/index.js +277 -0
  82. package/dist/adk/agents/index.js.map +1 -0
  83. package/dist/adk/artifacts/index.d.ts +62 -0
  84. package/dist/adk/artifacts/index.d.ts.map +1 -0
  85. package/dist/adk/artifacts/index.js +394 -0
  86. package/dist/adk/artifacts/index.js.map +1 -0
  87. package/dist/adk/config/llm-config.d.ts +75 -0
  88. package/dist/adk/config/llm-config.d.ts.map +1 -0
  89. package/dist/adk/config/llm-config.js +422 -0
  90. package/dist/adk/config/llm-config.js.map +1 -0
  91. package/dist/adk/content/index.d.ts +58 -0
  92. package/dist/adk/content/index.d.ts.map +1 -0
  93. package/dist/adk/content/index.js +220 -0
  94. package/dist/adk/content/index.js.map +1 -0
  95. package/dist/adk/examples/advanced-features.d.ts +22 -0
  96. package/dist/adk/examples/advanced-features.d.ts.map +1 -0
  97. package/dist/adk/examples/advanced-features.js +380 -0
  98. package/dist/adk/examples/advanced-features.js.map +1 -0
  99. package/dist/adk/examples/basic-agent.d.ts +28 -0
  100. package/dist/adk/examples/basic-agent.d.ts.map +1 -0
  101. package/dist/adk/examples/basic-agent.js +207 -0
  102. package/dist/adk/examples/basic-agent.js.map +1 -0
  103. package/dist/adk/examples/multi-agent.d.ts +24 -0
  104. package/dist/adk/examples/multi-agent.d.ts.map +1 -0
  105. package/dist/adk/examples/multi-agent.js +321 -0
  106. package/dist/adk/examples/multi-agent.js.map +1 -0
  107. package/dist/adk/examples/streaming-example.d.ts +9 -0
  108. package/dist/adk/examples/streaming-example.d.ts.map +1 -0
  109. package/dist/adk/examples/streaming-example.js +193 -0
  110. package/dist/adk/examples/streaming-example.js.map +1 -0
  111. package/dist/adk/index.d.ts +65 -0
  112. package/dist/adk/index.d.ts.map +1 -0
  113. package/dist/adk/index.js +251 -0
  114. package/dist/adk/index.js.map +1 -0
  115. package/dist/adk/models.d.ts +338 -0
  116. package/dist/adk/models.d.ts.map +1 -0
  117. package/dist/adk/models.js +466 -0
  118. package/dist/adk/models.js.map +1 -0
  119. package/dist/adk/providers/error-handler.d.ts +100 -0
  120. package/dist/adk/providers/error-handler.d.ts.map +1 -0
  121. package/dist/adk/providers/error-handler.js +289 -0
  122. package/dist/adk/providers/error-handler.js.map +1 -0
  123. package/dist/adk/providers/llm-service.d.ts +41 -0
  124. package/dist/adk/providers/llm-service.d.ts.map +1 -0
  125. package/dist/adk/providers/llm-service.js +520 -0
  126. package/dist/adk/providers/llm-service.js.map +1 -0
  127. package/dist/adk/providers/type-converters.d.ts +34 -0
  128. package/dist/adk/providers/type-converters.d.ts.map +1 -0
  129. package/dist/adk/providers/type-converters.js +436 -0
  130. package/dist/adk/providers/type-converters.js.map +1 -0
  131. package/dist/adk/runners/index.d.ts +33 -0
  132. package/dist/adk/runners/index.d.ts.map +1 -0
  133. package/dist/adk/runners/index.js +466 -0
  134. package/dist/adk/runners/index.js.map +1 -0
  135. package/dist/adk/schemas/index.d.ts +85 -0
  136. package/dist/adk/schemas/index.d.ts.map +1 -0
  137. package/dist/adk/schemas/index.js +363 -0
  138. package/dist/adk/schemas/index.js.map +1 -0
  139. package/dist/adk/sessions/examples/session-provider-usage.d.ts +10 -0
  140. package/dist/adk/sessions/examples/session-provider-usage.d.ts.map +1 -0
  141. package/dist/adk/sessions/examples/session-provider-usage.js +145 -0
  142. package/dist/adk/sessions/examples/session-provider-usage.js.map +1 -0
  143. package/dist/adk/sessions/index.d.ts +53 -0
  144. package/dist/adk/sessions/index.d.ts.map +1 -0
  145. package/dist/adk/sessions/index.js +451 -0
  146. package/dist/adk/sessions/index.js.map +1 -0
  147. package/dist/adk/sessions/postgres-provider.d.ts +22 -0
  148. package/dist/adk/sessions/postgres-provider.d.ts.map +1 -0
  149. package/dist/adk/sessions/postgres-provider.js +293 -0
  150. package/dist/adk/sessions/postgres-provider.js.map +1 -0
  151. package/dist/adk/sessions/redis-provider.d.ts +19 -0
  152. package/dist/adk/sessions/redis-provider.d.ts.map +1 -0
  153. package/dist/adk/sessions/redis-provider.js +237 -0
  154. package/dist/adk/sessions/redis-provider.js.map +1 -0
  155. package/dist/adk/streaming/index.d.ts +76 -0
  156. package/dist/adk/streaming/index.d.ts.map +1 -0
  157. package/dist/adk/streaming/index.js +419 -0
  158. package/dist/adk/streaming/index.js.map +1 -0
  159. package/dist/adk/tools/index.d.ts +27 -0
  160. package/dist/adk/tools/index.d.ts.map +1 -0
  161. package/dist/adk/tools/index.js +506 -0
  162. package/dist/adk/tools/index.js.map +1 -0
  163. package/dist/adk/types.d.ts +351 -0
  164. package/dist/adk/types.d.ts.map +1 -0
  165. package/dist/adk/types.js +107 -0
  166. package/dist/adk/types.js.map +1 -0
  167. package/dist/core/engine.d.ts +3 -0
  168. package/dist/core/engine.d.ts.map +1 -0
  169. package/dist/core/engine.js +438 -0
  170. package/dist/core/engine.js.map +1 -0
  171. package/dist/core/errors.d.ts +8 -0
  172. package/dist/core/errors.d.ts.map +1 -0
  173. package/dist/core/errors.js +84 -0
  174. package/dist/core/errors.js.map +1 -0
  175. package/dist/core/tool-results.d.ts +57 -0
  176. package/dist/core/tool-results.d.ts.map +1 -0
  177. package/dist/core/tool-results.js +133 -0
  178. package/dist/core/tool-results.js.map +1 -0
  179. package/dist/core/tracing.d.ts +32 -0
  180. package/dist/core/tracing.d.ts.map +1 -0
  181. package/dist/core/tracing.js +132 -0
  182. package/dist/core/tracing.js.map +1 -0
  183. package/dist/core/types.d.ts +165 -0
  184. package/dist/core/types.d.ts.map +1 -0
  185. package/dist/core/types.js +3 -0
  186. package/dist/core/types.js.map +1 -0
  187. package/dist/demo/agents.d.ts +23 -0
  188. package/dist/demo/agents.d.ts.map +1 -0
  189. package/dist/demo/agents.js +69 -0
  190. package/dist/demo/agents.js.map +1 -0
  191. package/dist/demo/index.d.ts +2 -0
  192. package/dist/demo/index.d.ts.map +1 -0
  193. package/dist/demo/index.js +250 -0
  194. package/dist/demo/index.js.map +1 -0
  195. package/dist/demo/mock-provider.d.ts +22 -0
  196. package/dist/demo/mock-provider.d.ts.map +1 -0
  197. package/dist/demo/mock-provider.js +138 -0
  198. package/dist/demo/mock-provider.js.map +1 -0
  199. package/dist/demo/tools.d.ts +14 -0
  200. package/dist/demo/tools.d.ts.map +1 -0
  201. package/dist/demo/tools.js +115 -0
  202. package/dist/demo/tools.js.map +1 -0
  203. package/dist/index.d.ts +20 -0
  204. package/dist/index.d.ts.map +1 -0
  205. package/dist/index.js +30 -0
  206. package/dist/index.js.map +1 -0
  207. package/dist/memory/factory.d.ts +22 -0
  208. package/dist/memory/factory.d.ts.map +1 -0
  209. package/dist/memory/factory.js +88 -0
  210. package/dist/memory/factory.js.map +1 -0
  211. package/dist/memory/providers/in-memory.d.ts +7 -0
  212. package/dist/memory/providers/in-memory.d.ts.map +1 -0
  213. package/dist/memory/providers/in-memory.js +287 -0
  214. package/dist/memory/providers/in-memory.js.map +1 -0
  215. package/dist/memory/providers/postgres.d.ts +15 -0
  216. package/dist/memory/providers/postgres.d.ts.map +1 -0
  217. package/dist/memory/providers/postgres.js +495 -0
  218. package/dist/memory/providers/postgres.js.map +1 -0
  219. package/dist/memory/providers/redis.d.ts +18 -0
  220. package/dist/memory/providers/redis.d.ts.map +1 -0
  221. package/dist/memory/providers/redis.js +354 -0
  222. package/dist/memory/providers/redis.js.map +1 -0
  223. package/dist/memory/types.d.ts +296 -0
  224. package/dist/memory/types.d.ts.map +1 -0
  225. package/dist/memory/types.js +93 -0
  226. package/dist/memory/types.js.map +1 -0
  227. package/dist/policies/handoff.d.ts +16 -0
  228. package/dist/policies/handoff.d.ts.map +1 -0
  229. package/dist/policies/handoff.js +20 -0
  230. package/dist/policies/handoff.js.map +1 -0
  231. package/dist/policies/validation.d.ts +14 -0
  232. package/dist/policies/validation.d.ts.map +1 -0
  233. package/dist/policies/validation.js +92 -0
  234. package/dist/policies/validation.js.map +1 -0
  235. package/dist/providers/mcp.d.ts +17 -0
  236. package/dist/providers/mcp.d.ts.map +1 -0
  237. package/dist/providers/mcp.js +111 -0
  238. package/dist/providers/mcp.js.map +1 -0
  239. package/dist/providers/model.d.ts +3 -0
  240. package/dist/providers/model.d.ts.map +1 -0
  241. package/dist/providers/model.js +113 -0
  242. package/dist/providers/model.js.map +1 -0
  243. package/dist/server/index.d.ts +35 -0
  244. package/dist/server/index.d.ts.map +1 -0
  245. package/dist/server/index.js +66 -0
  246. package/dist/server/index.js.map +1 -0
  247. package/dist/server/server.d.ts +12 -0
  248. package/dist/server/server.d.ts.map +1 -0
  249. package/dist/server/server.js +394 -0
  250. package/dist/server/server.js.map +1 -0
  251. package/dist/server/types.d.ts +456 -0
  252. package/dist/server/types.d.ts.map +1 -0
  253. package/dist/server/types.js +75 -0
  254. package/dist/server/types.js.map +1 -0
  255. package/dist/test-utils/db-setup.d.ts +34 -0
  256. package/dist/test-utils/db-setup.d.ts.map +1 -0
  257. package/dist/test-utils/db-setup.js +149 -0
  258. package/dist/test-utils/db-setup.js.map +1 -0
  259. package/dist/utils/logger.d.ts +63 -0
  260. package/dist/utils/logger.d.ts.map +1 -0
  261. package/dist/utils/logger.js +199 -0
  262. package/dist/utils/logger.js.map +1 -0
  263. package/dist/utils/safe-math.d.ts +31 -0
  264. package/dist/utils/safe-math.d.ts.map +1 -0
  265. package/dist/utils/safe-math.js +86 -0
  266. package/dist/utils/safe-math.js.map +1 -0
  267. package/dist/visualization/example.d.ts +9 -0
  268. package/dist/visualization/example.d.ts.map +1 -0
  269. package/dist/visualization/example.js +236 -0
  270. package/dist/visualization/example.js.map +1 -0
  271. package/dist/visualization/graphviz.d.ts +42 -0
  272. package/dist/visualization/graphviz.d.ts.map +1 -0
  273. package/dist/visualization/graphviz.js +403 -0
  274. package/dist/visualization/graphviz.js.map +1 -0
  275. package/dist/visualization/index.d.ts +10 -0
  276. package/dist/visualization/index.d.ts.map +1 -0
  277. package/dist/visualization/index.js +12 -0
  278. package/dist/visualization/index.js.map +1 -0
  279. package/package.json +99 -0
@@ -0,0 +1,466 @@
1
+ /**
2
+ * JAF ADK Layer - Model Definitions
3
+ *
4
+ * Comprehensive list of all supported models across providers
5
+ * Generated from model_prices.json
6
+ */
7
+ export var Model;
8
+ (function (Model) {
9
+ // ========== OpenAI Models ==========
10
+ // GPT-4 Series
11
+ Model["GPT_4"] = "gpt-4";
12
+ Model["GPT_4_1"] = "gpt-4.1";
13
+ Model["GPT_4_1_2025_04_14"] = "gpt-4.1-2025-04-14";
14
+ Model["GPT_4_1_MINI"] = "gpt-4.1-mini";
15
+ Model["GPT_4_1_MINI_2025_04_14"] = "gpt-4.1-mini-2025-04-14";
16
+ Model["GPT_4_1_NANO"] = "gpt-4.1-nano";
17
+ Model["GPT_4_1_NANO_2025_04_14"] = "gpt-4.1-nano-2025-04-14";
18
+ Model["GPT_4_5_PREVIEW"] = "gpt-4.5-preview";
19
+ Model["GPT_4_5_PREVIEW_2025_02_27"] = "gpt-4.5-preview-2025-02-27";
20
+ Model["GPT_4_TURBO"] = "gpt-4-turbo";
21
+ Model["GPT_4_TURBO_PREVIEW"] = "gpt-4-turbo-preview";
22
+ Model["GPT_4_TURBO_2024_04_09"] = "gpt-4-turbo-2024-04-09";
23
+ Model["GPT_4_1106_PREVIEW"] = "gpt-4-1106-preview";
24
+ Model["GPT_4_0125_PREVIEW"] = "gpt-4-0125-preview";
25
+ Model["GPT_4_VISION_PREVIEW"] = "gpt-4-vision-preview";
26
+ Model["GPT_4_1106_VISION_PREVIEW"] = "gpt-4-1106-vision-preview";
27
+ Model["GPT_4_0314"] = "gpt-4-0314";
28
+ Model["GPT_4_0613"] = "gpt-4-0613";
29
+ Model["GPT_4_32K"] = "gpt-4-32k";
30
+ Model["GPT_4_32K_0314"] = "gpt-4-32k-0314";
31
+ Model["GPT_4_32K_0613"] = "gpt-4-32k-0613";
32
+ // GPT-4o Series
33
+ Model["GPT_4O"] = "gpt-4o";
34
+ Model["GPT_4O_2024_05_13"] = "gpt-4o-2024-05-13";
35
+ Model["GPT_4O_2024_08_06"] = "gpt-4o-2024-08-06";
36
+ Model["GPT_4O_2024_11_20"] = "gpt-4o-2024-11-20";
37
+ Model["GPT_4O_SEARCH_PREVIEW"] = "gpt-4o-search-preview";
38
+ Model["GPT_4O_SEARCH_PREVIEW_2025_03_11"] = "gpt-4o-search-preview-2025-03-11";
39
+ Model["GPT_4O_AUDIO_PREVIEW"] = "gpt-4o-audio-preview";
40
+ Model["GPT_4O_AUDIO_PREVIEW_2024_12_17"] = "gpt-4o-audio-preview-2024-12-17";
41
+ Model["GPT_4O_AUDIO_PREVIEW_2024_10_01"] = "gpt-4o-audio-preview-2024-10-01";
42
+ Model["GPT_4O_AUDIO_PREVIEW_2025_06_03"] = "gpt-4o-audio-preview-2025-06-03";
43
+ Model["GPT_4O_MINI"] = "gpt-4o-mini";
44
+ Model["GPT_4O_MINI_2024_07_18"] = "gpt-4o-mini-2024-07-18";
45
+ Model["GPT_4O_MINI_AUDIO_PREVIEW"] = "gpt-4o-mini-audio-preview";
46
+ Model["GPT_4O_MINI_AUDIO_PREVIEW_2024_12_17"] = "gpt-4o-mini-audio-preview-2024-12-17";
47
+ Model["GPT_4O_MINI_SEARCH_PREVIEW"] = "gpt-4o-mini-search-preview";
48
+ Model["GPT_4O_MINI_SEARCH_PREVIEW_2025_03_11"] = "gpt-4o-mini-search-preview-2025-03-11";
49
+ Model["GPT_4O_REALTIME_PREVIEW"] = "gpt-4o-realtime-preview";
50
+ Model["GPT_4O_REALTIME_PREVIEW_2024_10_01"] = "gpt-4o-realtime-preview-2024-10-01";
51
+ Model["GPT_4O_REALTIME_PREVIEW_2024_12_17"] = "gpt-4o-realtime-preview-2024-12-17";
52
+ Model["GPT_4O_REALTIME_PREVIEW_2025_06_03"] = "gpt-4o-realtime-preview-2025-06-03";
53
+ Model["GPT_4O_MINI_REALTIME_PREVIEW"] = "gpt-4o-mini-realtime-preview";
54
+ Model["GPT_4O_MINI_REALTIME_PREVIEW_2024_12_17"] = "gpt-4o-mini-realtime-preview-2024-12-17";
55
+ Model["GPT_4O_TRANSCRIBE"] = "gpt-4o-transcribe";
56
+ Model["GPT_4O_MINI_TRANSCRIBE"] = "gpt-4o-mini-transcribe";
57
+ Model["GPT_4O_MINI_TTS"] = "gpt-4o-mini-tts";
58
+ Model["CHATGPT_4O_LATEST"] = "chatgpt-4o-latest";
59
+ // GPT-3.5 Series
60
+ Model["GPT_3_5_TURBO"] = "gpt-3.5-turbo";
61
+ Model["GPT_3_5_TURBO_0301"] = "gpt-3.5-turbo-0301";
62
+ Model["GPT_3_5_TURBO_0613"] = "gpt-3.5-turbo-0613";
63
+ Model["GPT_3_5_TURBO_1106"] = "gpt-3.5-turbo-1106";
64
+ Model["GPT_3_5_TURBO_0125"] = "gpt-3.5-turbo-0125";
65
+ Model["GPT_3_5_TURBO_16K"] = "gpt-3.5-turbo-16k";
66
+ Model["GPT_3_5_TURBO_16K_0613"] = "gpt-3.5-turbo-16k-0613";
67
+ Model["GPT_3_5_TURBO_INSTRUCT"] = "gpt-3.5-turbo-instruct";
68
+ Model["GPT_3_5_TURBO_INSTRUCT_0914"] = "gpt-3.5-turbo-instruct-0914";
69
+ // O1 Series
70
+ Model["O1"] = "o1";
71
+ Model["O1_MINI"] = "o1-mini";
72
+ Model["O1_MINI_2024_09_12"] = "o1-mini-2024-09-12";
73
+ Model["O1_PREVIEW"] = "o1-preview";
74
+ Model["O1_PREVIEW_2024_09_12"] = "o1-preview-2024-09-12";
75
+ Model["O1_2024_12_17"] = "o1-2024-12-17";
76
+ Model["O1_PRO"] = "o1-pro";
77
+ Model["O1_PRO_2025_03_19"] = "o1-pro-2025-03-19";
78
+ // O3 Series
79
+ Model["O3"] = "o3";
80
+ Model["O3_2025_04_16"] = "o3-2025-04-16";
81
+ Model["O3_MINI"] = "o3-mini";
82
+ Model["O3_MINI_2025_01_31"] = "o3-mini-2025-01-31";
83
+ Model["O3_PRO"] = "o3-pro";
84
+ Model["O3_PRO_2025_06_10"] = "o3-pro-2025-06-10";
85
+ Model["O3_DEEP_RESEARCH"] = "o3-deep-research";
86
+ Model["O3_DEEP_RESEARCH_2025_06_26"] = "o3-deep-research-2025-06-26";
87
+ // O4 Series
88
+ Model["O4_MINI"] = "o4-mini";
89
+ Model["O4_MINI_2025_04_16"] = "o4-mini-2025-04-16";
90
+ Model["O4_MINI_DEEP_RESEARCH"] = "o4-mini-deep-research";
91
+ Model["O4_MINI_DEEP_RESEARCH_2025_06_26"] = "o4-mini-deep-research-2025-06-26";
92
+ // Codex Series
93
+ Model["CODEX_MINI_LATEST"] = "codex-mini-latest";
94
+ // Legacy Models
95
+ Model["BABBAGE_002"] = "babbage-002";
96
+ Model["DAVINCI_002"] = "davinci-002";
97
+ // Fine-tuned Models
98
+ Model["FT_GPT_3_5_TURBO"] = "ft:gpt-3.5-turbo";
99
+ Model["FT_GPT_3_5_TURBO_0125"] = "ft:gpt-3.5-turbo-0125";
100
+ Model["FT_GPT_3_5_TURBO_1106"] = "ft:gpt-3.5-turbo-1106";
101
+ Model["FT_GPT_3_5_TURBO_0613"] = "ft:gpt-3.5-turbo-0613";
102
+ Model["FT_GPT_4_0613"] = "ft:gpt-4-0613";
103
+ Model["FT_GPT_4O_2024_08_06"] = "ft:gpt-4o-2024-08-06";
104
+ Model["FT_GPT_4O_2024_11_20"] = "ft:gpt-4o-2024-11-20";
105
+ Model["FT_GPT_4O_MINI_2024_07_18"] = "ft:gpt-4o-mini-2024-07-18";
106
+ Model["FT_DAVINCI_002"] = "ft:davinci-002";
107
+ Model["FT_BABBAGE_002"] = "ft:babbage-002";
108
+ // Embedding Models
109
+ Model["TEXT_EMBEDDING_3_LARGE"] = "text-embedding-3-large";
110
+ Model["TEXT_EMBEDDING_3_SMALL"] = "text-embedding-3-small";
111
+ Model["TEXT_EMBEDDING_ADA_002"] = "text-embedding-ada-002";
112
+ Model["TEXT_EMBEDDING_ADA_002_V2"] = "text-embedding-ada-002-v2";
113
+ // Moderation Models
114
+ Model["OMNI_MODERATION_LATEST"] = "omni-moderation-latest";
115
+ Model["OMNI_MODERATION_LATEST_INTENTS"] = "omni-moderation-latest-intents";
116
+ Model["OMNI_MODERATION_2024_09_26"] = "omni-moderation-2024-09-26";
117
+ Model["TEXT_MODERATION_STABLE"] = "text-moderation-stable";
118
+ Model["TEXT_MODERATION_007"] = "text-moderation-007";
119
+ Model["TEXT_MODERATION_LATEST"] = "text-moderation-latest";
120
+ // Audio Models
121
+ Model["WHISPER_1"] = "whisper-1";
122
+ Model["TTS_1"] = "tts-1";
123
+ Model["TTS_1_HD"] = "tts-1-hd";
124
+ // Image Models
125
+ Model["GPT_IMAGE_1"] = "gpt-image-1";
126
+ Model["DALL_E_2"] = "dall-e-2";
127
+ Model["DALL_E_3"] = "dall-e-3";
128
+ // ========== Anthropic Models ==========
129
+ Model["CLAUDE_3_HAIKU_20240307"] = "claude-3-haiku-20240307";
130
+ Model["CLAUDE_3_5_HAIKU_20241022"] = "claude-3-5-haiku-20241022";
131
+ Model["CLAUDE_3_5_HAIKU_LATEST"] = "claude-3-5-haiku-latest";
132
+ Model["CLAUDE_3_OPUS_20240229"] = "claude-3-opus-20240229";
133
+ Model["CLAUDE_3_OPUS_LATEST"] = "claude-3-opus-latest";
134
+ Model["CLAUDE_3_5_SONNET_20240620"] = "claude-3-5-sonnet-20240620";
135
+ Model["CLAUDE_3_5_SONNET_20241022"] = "claude-3-5-sonnet-20241022";
136
+ Model["CLAUDE_3_5_SONNET_LATEST"] = "claude-3-5-sonnet-latest";
137
+ Model["CLAUDE_3_7_SONNET_LATEST"] = "claude-3-7-sonnet-latest";
138
+ Model["CLAUDE_3_7_SONNET_20250219"] = "claude-3-7-sonnet-20250219";
139
+ Model["CLAUDE_OPUS_4_20250514"] = "claude-opus-4-20250514";
140
+ Model["CLAUDE_OPUS_4_1_20250805"] = "claude-opus-4-1-20250805";
141
+ Model["CLAUDE_SONNET_4_20250514"] = "claude-sonnet-4-20250514";
142
+ Model["CLAUDE_4_OPUS_20250514"] = "claude-4-opus-20250514";
143
+ Model["CLAUDE_4_SONNET_20250514"] = "claude-4-sonnet-20250514";
144
+ // ========== Google Gemini Models ==========
145
+ // Gemini 1.0 Series
146
+ Model["GEMINI_PRO"] = "gemini-pro";
147
+ Model["GEMINI_1_0_PRO"] = "gemini-1.0-pro";
148
+ Model["GEMINI_1_0_PRO_001"] = "gemini-1.0-pro-001";
149
+ Model["GEMINI_1_0_PRO_002"] = "gemini-1.0-pro-002";
150
+ Model["GEMINI_1_0_ULTRA"] = "gemini-1.0-ultra";
151
+ Model["GEMINI_1_0_ULTRA_001"] = "gemini-1.0-ultra-001";
152
+ Model["GEMINI_PRO_VISION"] = "gemini-pro-vision";
153
+ Model["GEMINI_1_0_PRO_VISION"] = "gemini-1.0-pro-vision";
154
+ Model["GEMINI_1_0_PRO_VISION_001"] = "gemini-1.0-pro-vision-001";
155
+ // Gemini 1.5 Series
156
+ Model["GEMINI_1_5_PRO"] = "gemini-1.5-pro";
157
+ Model["GEMINI_1_5_PRO_001"] = "gemini-1.5-pro-001";
158
+ Model["GEMINI_1_5_PRO_002"] = "gemini-1.5-pro-002";
159
+ Model["GEMINI_1_5_PRO_PREVIEW_0514"] = "gemini-1.5-pro-preview-0514";
160
+ Model["GEMINI_1_5_PRO_PREVIEW_0215"] = "gemini-1.5-pro-preview-0215";
161
+ Model["GEMINI_1_5_PRO_PREVIEW_0409"] = "gemini-1.5-pro-preview-0409";
162
+ Model["GEMINI_1_5_FLASH"] = "gemini-1.5-flash";
163
+ Model["GEMINI_1_5_FLASH_001"] = "gemini-1.5-flash-001";
164
+ Model["GEMINI_1_5_FLASH_002"] = "gemini-1.5-flash-002";
165
+ Model["GEMINI_1_5_FLASH_PREVIEW_0514"] = "gemini-1.5-flash-preview-0514";
166
+ Model["GEMINI_1_5_FLASH_EXP_0827"] = "gemini-1.5-flash-exp-0827";
167
+ // Gemini 2.0 Series
168
+ Model["GEMINI_2_0_FLASH"] = "gemini-2.0-flash";
169
+ Model["GEMINI_2_0_FLASH_001"] = "gemini-2.0-flash-001";
170
+ Model["GEMINI_2_0_FLASH_EXP"] = "gemini-2.0-flash-exp";
171
+ Model["GEMINI_2_0_FLASH_LITE"] = "gemini-2.0-flash-lite";
172
+ Model["GEMINI_2_0_FLASH_LITE_001"] = "gemini-2.0-flash-lite-001";
173
+ Model["GEMINI_2_0_FLASH_THINKING_EXP"] = "gemini-2.0-flash-thinking-exp";
174
+ Model["GEMINI_2_0_FLASH_THINKING_EXP_01_21"] = "gemini-2.0-flash-thinking-exp-01-21";
175
+ Model["GEMINI_2_0_PRO_EXP_02_05"] = "gemini-2.0-pro-exp-02-05";
176
+ Model["GEMINI_2_0_FLASH_PREVIEW_IMAGE_GENERATION"] = "gemini-2.0-flash-preview-image-generation";
177
+ // Gemini 2.5 Series
178
+ Model["GEMINI_2_5_PRO"] = "gemini-2.5-pro";
179
+ Model["GEMINI_2_5_PRO_EXP_03_25"] = "gemini-2.5-pro-exp-03-25";
180
+ Model["GEMINI_2_5_PRO_PREVIEW_03_25"] = "gemini-2.5-pro-preview-03-25";
181
+ Model["GEMINI_2_5_PRO_PREVIEW_05_06"] = "gemini-2.5-pro-preview-05-06";
182
+ Model["GEMINI_2_5_PRO_PREVIEW_06_05"] = "gemini-2.5-pro-preview-06-05";
183
+ Model["GEMINI_2_5_PRO_PREVIEW_TTS"] = "gemini-2.5-pro-preview-tts";
184
+ Model["GEMINI_2_5_FLASH"] = "gemini-2.5-flash";
185
+ Model["GEMINI_2_5_FLASH_PREVIEW_04_17"] = "gemini-2.5-flash-preview-04-17";
186
+ Model["GEMINI_2_5_FLASH_PREVIEW_05_20"] = "gemini-2.5-flash-preview-05-20";
187
+ Model["GEMINI_2_5_FLASH_PREVIEW_TTS"] = "gemini-2.5-flash-preview-tts";
188
+ Model["GEMINI_2_5_FLASH_LITE"] = "gemini-2.5-flash-lite";
189
+ Model["GEMINI_2_5_FLASH_LITE_PREVIEW_06_17"] = "gemini-2.5-flash-lite-preview-06-17";
190
+ // Experimental Models
191
+ Model["GEMINI_PRO_EXPERIMENTAL"] = "gemini-pro-experimental";
192
+ Model["GEMINI_FLASH_EXPERIMENTAL"] = "gemini-flash-experimental";
193
+ // Medical Models
194
+ Model["MEDLM_MEDIUM"] = "medlm-medium";
195
+ Model["MEDLM_LARGE"] = "medlm-large";
196
+ // ========== Mistral Models ==========
197
+ Model["MISTRAL_TINY"] = "mistral/mistral-tiny";
198
+ Model["MISTRAL_SMALL"] = "mistral/mistral-small";
199
+ Model["MISTRAL_SMALL_LATEST"] = "mistral/mistral-small-latest";
200
+ Model["MISTRAL_MEDIUM"] = "mistral/mistral-medium";
201
+ Model["MISTRAL_MEDIUM_LATEST"] = "mistral/mistral-medium-latest";
202
+ Model["MISTRAL_MEDIUM_2505"] = "mistral/mistral-medium-2505";
203
+ Model["MISTRAL_MEDIUM_2312"] = "mistral/mistral-medium-2312";
204
+ Model["MISTRAL_LARGE_LATEST"] = "mistral/mistral-large-latest";
205
+ Model["MISTRAL_LARGE_2411"] = "mistral/mistral-large-2411";
206
+ Model["MISTRAL_LARGE_2402"] = "mistral/mistral-large-2402";
207
+ Model["MISTRAL_LARGE_2407"] = "mistral/mistral-large-2407";
208
+ Model["MISTRAL_NEMO"] = "mistral/open-mistral-nemo";
209
+ Model["MISTRAL_NEMO_2407"] = "mistral/open-mistral-nemo-2407";
210
+ Model["MISTRAL_7B"] = "mistral/open-mistral-7b";
211
+ Model["MIXTRAL_8X7B"] = "mistral/open-mixtral-8x7b";
212
+ Model["MIXTRAL_8X22B"] = "mistral/open-mixtral-8x22b";
213
+ Model["PIXTRAL_LARGE_LATEST"] = "mistral/pixtral-large-latest";
214
+ Model["PIXTRAL_LARGE_2411"] = "mistral/pixtral-large-2411";
215
+ Model["PIXTRAL_12B_2409"] = "mistral/pixtral-12b-2409";
216
+ Model["CODESTRAL_LATEST"] = "mistral/codestral-latest";
217
+ Model["CODESTRAL_2405"] = "mistral/codestral-2405";
218
+ Model["CODESTRAL_MAMBA_LATEST"] = "mistral/codestral-mamba-latest";
219
+ Model["OPEN_CODESTRAL_MAMBA"] = "mistral/open-codestral-mamba";
220
+ Model["DEVSTRAL_SMALL_2505"] = "mistral/devstral-small-2505";
221
+ Model["DEVSTRAL_SMALL_2507"] = "mistral/devstral-small-2507";
222
+ Model["DEVSTRAL_MEDIUM_2507"] = "mistral/devstral-medium-2507";
223
+ Model["MAGISTRAL_MEDIUM_LATEST"] = "mistral/magistral-medium-latest";
224
+ Model["MAGISTRAL_MEDIUM_2506"] = "mistral/magistral-medium-2506";
225
+ Model["MAGISTRAL_SMALL_LATEST"] = "mistral/magistral-small-latest";
226
+ Model["MAGISTRAL_SMALL_2506"] = "mistral/magistral-small-2506";
227
+ Model["MISTRAL_EMBED"] = "mistral/mistral-embed";
228
+ // ========== DeepSeek Models ==========
229
+ Model["DEEPSEEK_CHAT"] = "deepseek/deepseek-chat";
230
+ Model["DEEPSEEK_CODER"] = "deepseek/deepseek-coder";
231
+ Model["DEEPSEEK_REASONER"] = "deepseek/deepseek-reasoner";
232
+ Model["DEEPSEEK_R1"] = "deepseek/deepseek-r1";
233
+ Model["DEEPSEEK_V3"] = "deepseek/deepseek-v3";
234
+ // ========== XAI (Grok) Models ==========
235
+ Model["GROK_BETA"] = "xai/grok-beta";
236
+ Model["GROK_VISION_BETA"] = "xai/grok-vision-beta";
237
+ Model["GROK_2"] = "xai/grok-2";
238
+ Model["GROK_2_LATEST"] = "xai/grok-2-latest";
239
+ Model["GROK_2_1212"] = "xai/grok-2-1212";
240
+ Model["GROK_2_VISION"] = "xai/grok-2-vision";
241
+ Model["GROK_2_VISION_LATEST"] = "xai/grok-2-vision-latest";
242
+ Model["GROK_2_VISION_1212"] = "xai/grok-2-vision-1212";
243
+ Model["GROK_3"] = "xai/grok-3";
244
+ Model["GROK_3_LATEST"] = "xai/grok-3-latest";
245
+ Model["GROK_3_BETA"] = "xai/grok-3-beta";
246
+ Model["GROK_3_FAST_BETA"] = "xai/grok-3-fast-beta";
247
+ Model["GROK_3_FAST_LATEST"] = "xai/grok-3-fast-latest";
248
+ Model["GROK_3_MINI"] = "xai/grok-3-mini";
249
+ Model["GROK_3_MINI_LATEST"] = "xai/grok-3-mini-latest";
250
+ Model["GROK_3_MINI_BETA"] = "xai/grok-3-mini-beta";
251
+ Model["GROK_3_MINI_FAST"] = "xai/grok-3-mini-fast";
252
+ Model["GROK_3_MINI_FAST_LATEST"] = "xai/grok-3-mini-fast-latest";
253
+ Model["GROK_3_MINI_FAST_BETA"] = "xai/grok-3-mini-fast-beta";
254
+ Model["GROK_4"] = "xai/grok-4";
255
+ Model["GROK_4_LATEST"] = "xai/grok-4-latest";
256
+ Model["GROK_4_0709"] = "xai/grok-4-0709";
257
+ // ========== Groq Models ==========
258
+ Model["GROQ_DEEPSEEK_R1_DISTILL_LLAMA_70B"] = "groq/deepseek-r1-distill-llama-70b";
259
+ Model["GROQ_LLAMA_3_3_70B_VERSATILE"] = "groq/llama-3.3-70b-versatile";
260
+ Model["GROQ_LLAMA_3_3_70B_SPECDEC"] = "groq/llama-3.3-70b-specdec";
261
+ Model["GROQ_LLAMA_GUARD_3_8B"] = "groq/llama-guard-3-8b";
262
+ Model["GROQ_LLAMA2_70B_4096"] = "groq/llama2-70b-4096";
263
+ Model["GROQ_LLAMA3_8B_8192"] = "groq/llama3-8b-8192";
264
+ Model["GROQ_LLAMA3_70B_8192"] = "groq/llama3-70b-8192";
265
+ Model["GROQ_LLAMA_3_1_8B_INSTANT"] = "groq/llama-3.1-8b-instant";
266
+ Model["GROQ_LLAMA_3_1_70B_VERSATILE"] = "groq/llama-3.1-70b-versatile";
267
+ Model["GROQ_LLAMA_3_1_405B_REASONING"] = "groq/llama-3.1-405b-reasoning";
268
+ Model["GROQ_LLAMA_3_2_1B_PREVIEW"] = "groq/llama-3.2-1b-preview";
269
+ Model["GROQ_LLAMA_3_2_3B_PREVIEW"] = "groq/llama-3.2-3b-preview";
270
+ Model["GROQ_LLAMA_3_2_11B_TEXT_PREVIEW"] = "groq/llama-3.2-11b-text-preview";
271
+ Model["GROQ_LLAMA_3_2_11B_VISION_PREVIEW"] = "groq/llama-3.2-11b-vision-preview";
272
+ Model["GROQ_LLAMA_3_2_90B_TEXT_PREVIEW"] = "groq/llama-3.2-90b-text-preview";
273
+ Model["GROQ_LLAMA_3_2_90B_VISION_PREVIEW"] = "groq/llama-3.2-90b-vision-preview";
274
+ Model["GROQ_LLAMA3_GROQ_70B_8192_TOOL_USE_PREVIEW"] = "groq/llama3-groq-70b-8192-tool-use-preview";
275
+ Model["GROQ_LLAMA3_GROQ_8B_8192_TOOL_USE_PREVIEW"] = "groq/llama3-groq-8b-8192-tool-use-preview";
276
+ Model["GROQ_LLAMA_4_SCOUT_17B_16E_INSTRUCT"] = "groq/meta-llama/llama-4-scout-17b-16e-instruct";
277
+ Model["GROQ_LLAMA_4_MAVERICK_17B_128E_INSTRUCT"] = "groq/meta-llama/llama-4-maverick-17b-128e-instruct";
278
+ Model["GROQ_MISTRAL_SABA_24B"] = "groq/mistral-saba-24b";
279
+ Model["GROQ_MIXTRAL_8X7B_32768"] = "groq/mixtral-8x7b-32768";
280
+ Model["GROQ_GEMMA_7B_IT"] = "groq/gemma-7b-it";
281
+ Model["GROQ_GEMMA2_9B_IT"] = "groq/gemma2-9b-it";
282
+ Model["GROQ_QWEN3_32B"] = "groq/qwen/qwen3-32b";
283
+ Model["GROQ_KIMI_K2_INSTRUCT"] = "groq/moonshotai/kimi-k2-instruct";
284
+ Model["GROQ_WHISPER_LARGE_V3"] = "groq/whisper-large-v3";
285
+ Model["GROQ_WHISPER_LARGE_V3_TURBO"] = "groq/whisper-large-v3-turbo";
286
+ Model["GROQ_DISTIL_WHISPER_LARGE_V3_EN"] = "groq/distil-whisper-large-v3-en";
287
+ Model["GROQ_PLAYAI_TTS"] = "groq/playai-tts";
288
+ // ========== Cerebras Models ==========
289
+ Model["CEREBRAS_LLAMA3_1_8B"] = "cerebras/llama3.1-8b";
290
+ Model["CEREBRAS_LLAMA3_1_70B"] = "cerebras/llama3.1-70b";
291
+ Model["CEREBRAS_LLAMA_3_3_70B"] = "cerebras/llama-3.3-70b";
292
+ Model["CEREBRAS_QWEN_3_32B"] = "cerebras/qwen-3-32b";
293
+ // ========== FriendliAI Models ==========
294
+ Model["FRIENDLIAI_META_LLAMA_3_1_8B_INSTRUCT"] = "friendliai/meta-llama-3.1-8b-instruct";
295
+ Model["FRIENDLIAI_META_LLAMA_3_1_70B_INSTRUCT"] = "friendliai/meta-llama-3.1-70b-instruct";
296
+ // ========== Meta Llama Models ==========
297
+ Model["META_LLAMA_4_SCOUT_17B_16E_INSTRUCT_FP8"] = "meta_llama/Llama-4-Scout-17B-16E-Instruct-FP8";
298
+ Model["META_LLAMA_4_MAVERICK_17B_128E_INSTRUCT_FP8"] = "meta_llama/Llama-4-Maverick-17B-128E-Instruct-FP8";
299
+ Model["META_LLAMA_3_3_70B_INSTRUCT"] = "meta_llama/Llama-3.3-70B-Instruct";
300
+ Model["META_LLAMA_3_3_8B_INSTRUCT"] = "meta_llama/Llama-3.3-8B-Instruct";
301
+ // ========== WatsonX Models ==========
302
+ Model["WATSONX_GRANITE_3_8B_INSTRUCT"] = "watsonx/ibm/granite-3-8b-instruct";
303
+ Model["WATSONX_MISTRAL_LARGE"] = "watsonx/mistralai/mistral-large";
304
+ // ========== Google Legacy Models ==========
305
+ Model["TEXT_BISON"] = "text-bison";
306
+ Model["TEXT_BISON_001"] = "text-bison@001";
307
+ Model["TEXT_BISON_002"] = "text-bison@002";
308
+ Model["TEXT_BISON32K"] = "text-bison32k";
309
+ Model["TEXT_BISON32K_002"] = "text-bison32k@002";
310
+ Model["TEXT_UNICORN"] = "text-unicorn";
311
+ Model["TEXT_UNICORN_001"] = "text-unicorn@001";
312
+ Model["CHAT_BISON"] = "chat-bison";
313
+ Model["CHAT_BISON_001"] = "chat-bison@001";
314
+ Model["CHAT_BISON_002"] = "chat-bison@002";
315
+ Model["CHAT_BISON_32K"] = "chat-bison-32k";
316
+ Model["CHAT_BISON_32K_002"] = "chat-bison-32k@002";
317
+ Model["CODE_BISON"] = "code-bison";
318
+ Model["CODE_BISON_001"] = "code-bison@001";
319
+ Model["CODE_BISON_002"] = "code-bison@002";
320
+ Model["CODE_BISON32K"] = "code-bison32k";
321
+ Model["CODE_BISON_32K_002"] = "code-bison-32k@002";
322
+ Model["CODE_GECKO"] = "code-gecko";
323
+ Model["CODE_GECKO_001"] = "code-gecko@001";
324
+ Model["CODE_GECKO_002"] = "code-gecko@002";
325
+ Model["CODE_GECKO_LATEST"] = "code-gecko-latest";
326
+ Model["CODECHAT_BISON"] = "codechat-bison";
327
+ Model["CODECHAT_BISON_LATEST"] = "codechat-bison@latest";
328
+ Model["CODECHAT_BISON_001"] = "codechat-bison@001";
329
+ Model["CODECHAT_BISON_002"] = "codechat-bison@002";
330
+ Model["CODECHAT_BISON_32K"] = "codechat-bison-32k";
331
+ Model["CODECHAT_BISON_32K_002"] = "codechat-bison-32k@002";
332
+ // ========== Computer Use Models ==========
333
+ Model["COMPUTER_USE_PREVIEW"] = "computer-use-preview";
334
+ // ========== Custom Model (for user-provided models) ==========
335
+ Model["CUSTOM"] = "custom";
336
+ })(Model || (Model = {}));
337
+ // Convenience aliases for backward compatibility
338
+ export const CLAUDE_3_OPUS = Model.CLAUDE_3_OPUS_20240229;
339
+ export const CLAUDE_3_SONNET = Model.CLAUDE_3_5_SONNET_LATEST;
340
+ export const CLAUDE_3_HAIKU = Model.CLAUDE_3_HAIKU_20240307;
341
+ /**
342
+ * Helper function to check if a string is a valid Model enum value
343
+ */
344
+ export const isValidModel = (model) => {
345
+ return Object.values(Model).includes(model);
346
+ };
347
+ /**
348
+ * Get the model provider from a model string
349
+ */
350
+ export const getModelProvider = (model) => {
351
+ const modelStr = model.toString();
352
+ if (modelStr.startsWith('gpt-') || modelStr.startsWith('o1') || modelStr.startsWith('o3') || modelStr.startsWith('o4') ||
353
+ modelStr.startsWith('ft:') || modelStr.startsWith('text-embedding') || modelStr.startsWith('whisper') ||
354
+ modelStr.startsWith('tts-') || modelStr.startsWith('dall-e') || modelStr.startsWith('babbage') ||
355
+ modelStr.startsWith('davinci') || modelStr.startsWith('codex') || modelStr === 'gpt-image-1' ||
356
+ modelStr.startsWith('omni-moderation') || modelStr.startsWith('text-moderation') || modelStr.startsWith('chatgpt')) {
357
+ return 'openai';
358
+ }
359
+ if (modelStr.startsWith('claude-')) {
360
+ return 'anthropic';
361
+ }
362
+ if (modelStr.startsWith('gemini-') || modelStr.startsWith('text-bison') || modelStr.startsWith('chat-bison') ||
363
+ modelStr.startsWith('code-bison') || modelStr.startsWith('code-gecko') || modelStr.startsWith('codechat-bison') ||
364
+ modelStr.startsWith('text-unicorn') || modelStr.startsWith('medlm-')) {
365
+ return 'google';
366
+ }
367
+ if (modelStr.startsWith('mistral/') || modelStr.startsWith('codestral/')) {
368
+ return 'mistral';
369
+ }
370
+ if (modelStr.startsWith('deepseek/')) {
371
+ return 'deepseek';
372
+ }
373
+ if (modelStr.startsWith('xai/')) {
374
+ return 'xai';
375
+ }
376
+ if (modelStr.startsWith('groq/')) {
377
+ return 'groq';
378
+ }
379
+ if (modelStr.startsWith('cerebras/')) {
380
+ return 'cerebras';
381
+ }
382
+ if (modelStr.startsWith('friendliai/')) {
383
+ return 'friendliai';
384
+ }
385
+ if (modelStr.startsWith('meta_llama/')) {
386
+ return 'meta';
387
+ }
388
+ if (modelStr.startsWith('watsonx/')) {
389
+ return 'watsonx';
390
+ }
391
+ if (modelStr.startsWith('azure/') || modelStr.startsWith('azure_ai/')) {
392
+ return 'azure';
393
+ }
394
+ return 'unknown';
395
+ };
396
+ /**
397
+ * Model categories for grouping
398
+ */
399
+ export var ModelCategory;
400
+ (function (ModelCategory) {
401
+ ModelCategory["CHAT"] = "chat";
402
+ ModelCategory["COMPLETION"] = "completion";
403
+ ModelCategory["EMBEDDING"] = "embedding";
404
+ ModelCategory["MODERATION"] = "moderation";
405
+ ModelCategory["AUDIO_TRANSCRIPTION"] = "audio_transcription";
406
+ ModelCategory["AUDIO_SPEECH"] = "audio_speech";
407
+ ModelCategory["IMAGE_GENERATION"] = "image_generation";
408
+ ModelCategory["VISION"] = "vision";
409
+ ModelCategory["REASONING"] = "reasoning";
410
+ ModelCategory["CODING"] = "coding";
411
+ ModelCategory["RERANK"] = "rerank";
412
+ })(ModelCategory || (ModelCategory = {}));
413
+ /**
414
+ * Get the category of a model
415
+ */
416
+ export const getModelCategory = (model) => {
417
+ const modelStr = model.toString();
418
+ // Embedding models
419
+ if (modelStr.includes('embedding') || modelStr.includes('embed')) {
420
+ return ModelCategory.EMBEDDING;
421
+ }
422
+ // Moderation models
423
+ if (modelStr.includes('moderation')) {
424
+ return ModelCategory.MODERATION;
425
+ }
426
+ // Audio models
427
+ if (modelStr.includes('whisper') || modelStr.includes('transcribe')) {
428
+ return ModelCategory.AUDIO_TRANSCRIPTION;
429
+ }
430
+ if (modelStr.includes('tts')) {
431
+ return ModelCategory.AUDIO_SPEECH;
432
+ }
433
+ // Image models
434
+ if (modelStr.includes('dall-e') || modelStr.includes('image') || modelStr.includes('pixtral')) {
435
+ return ModelCategory.IMAGE_GENERATION;
436
+ }
437
+ // Vision models
438
+ if (modelStr.includes('vision')) {
439
+ return ModelCategory.VISION;
440
+ }
441
+ // Reasoning models
442
+ if (modelStr.includes('reasoning') || modelStr.includes('reasoner') || modelStr.includes('thinking') ||
443
+ modelStr.includes('o1') || modelStr.includes('o3') || modelStr.includes('o4') || modelStr.includes('r1')) {
444
+ return ModelCategory.REASONING;
445
+ }
446
+ // Coding models
447
+ if (modelStr.includes('code') || modelStr.includes('codestral') || modelStr.includes('devstral')) {
448
+ return ModelCategory.CODING;
449
+ }
450
+ // Rerank models
451
+ if (modelStr.includes('rerank')) {
452
+ return ModelCategory.RERANK;
453
+ }
454
+ // Text completion models
455
+ if (modelStr.includes('instruct') || modelStr.includes('babbage') || modelStr.includes('davinci') ||
456
+ modelStr.includes('text-')) {
457
+ return ModelCategory.COMPLETION;
458
+ }
459
+ // Default to chat
460
+ return ModelCategory.CHAT;
461
+ };
462
+ /**
463
+ * Export the Model enum as default for backward compatibility
464
+ */
465
+ export default Model;
466
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/adk/models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * JAF ADK Layer - LLM Error Handling
3
+ *
4
+ * Comprehensive error handling for LLM API failures following JAF patterns
5
+ */
6
+ import { AdkErrorObject } from '../types.js';
7
+ export interface LLMError extends AdkErrorObject {
8
+ provider?: string;
9
+ model?: string;
10
+ retryable?: boolean;
11
+ statusCode?: number;
12
+ responseBody?: string;
13
+ }
14
+ export interface LLMRetryConfig {
15
+ maxRetries: number;
16
+ baseDelay: number;
17
+ maxDelay: number;
18
+ retryableErrors: string[];
19
+ }
20
+ export declare const LLM_ERROR_TYPES: {
21
+ readonly INVALID_API_KEY: "INVALID_API_KEY";
22
+ readonly UNAUTHORIZED: "UNAUTHORIZED";
23
+ readonly QUOTA_EXCEEDED: "QUOTA_EXCEEDED";
24
+ readonly INVALID_REQUEST: "INVALID_REQUEST";
25
+ readonly MODEL_NOT_FOUND: "MODEL_NOT_FOUND";
26
+ readonly UNSUPPORTED_MODEL: "UNSUPPORTED_MODEL";
27
+ readonly INVALID_PARAMETERS: "INVALID_PARAMETERS";
28
+ readonly RATE_LIMITED: "RATE_LIMITED";
29
+ readonly CONCURRENT_LIMIT: "CONCURRENT_LIMIT";
30
+ readonly SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE";
31
+ readonly TIMEOUT: "TIMEOUT";
32
+ readonly NETWORK_ERROR: "NETWORK_ERROR";
33
+ readonly CONTENT_FILTERED: "CONTENT_FILTERED";
34
+ readonly CONTENT_TOO_LONG: "CONTENT_TOO_LONG";
35
+ readonly FUNCTION_CALL_ERROR: "FUNCTION_CALL_ERROR";
36
+ readonly FUNCTION_NOT_FOUND: "FUNCTION_NOT_FOUND";
37
+ readonly UNKNOWN_ERROR: "UNKNOWN_ERROR";
38
+ };
39
+ export declare const RETRYABLE_ERRORS: Set<"TIMEOUT" | "RATE_LIMITED" | "CONCURRENT_LIMIT" | "SERVICE_UNAVAILABLE" | "NETWORK_ERROR">;
40
+ export declare const createLLMError: (message: string, code: string, context?: {
41
+ provider?: string;
42
+ model?: string;
43
+ statusCode?: number;
44
+ responseBody?: string;
45
+ }) => LLMError;
46
+ export declare const createLLMTimeoutError: (provider: string, model: string, timeout: number) => LLMError;
47
+ export declare const createLLMRateLimitError: (provider: string, model: string, resetTime?: number) => LLMError;
48
+ export declare const createLLMQuotaError: (provider: string, model: string) => LLMError;
49
+ export declare const createLLMContentFilterError: (provider: string, model: string) => LLMError;
50
+ export declare const classifyLLMError: (error: Error, provider: string, model: string) => LLMError;
51
+ export declare const DEFAULT_RETRY_CONFIG: LLMRetryConfig;
52
+ export declare const shouldRetryError: (error: LLMError, config?: LLMRetryConfig) => boolean;
53
+ export declare const calculateRetryDelay: (attempt: number, config?: LLMRetryConfig, jitter?: boolean) => number;
54
+ export declare const withLLMRetry: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, config?: Partial<LLMRetryConfig>, provider?: string, model?: string) => (...args: T) => Promise<R>;
55
+ export declare const withLLMTimeout: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, timeoutMs: number, provider?: string, model?: string) => (...args: T) => Promise<R>;
56
+ export interface CircuitBreakerConfig {
57
+ failureThreshold: number;
58
+ resetTimeout: number;
59
+ monitoringPeriod: number;
60
+ }
61
+ export interface CircuitBreakerState {
62
+ failures: number;
63
+ lastFailureTime: number;
64
+ state: 'closed' | 'open' | 'half-open';
65
+ }
66
+ export declare const createCircuitBreaker: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, config: CircuitBreakerConfig, provider?: string, model?: string) => (...args: T) => Promise<R>;
67
+ export declare const createFallbackStrategy: <T extends unknown[], R>(primaryFn: (...args: T) => Promise<R>, fallbackFn: (...args: T) => Promise<R>, shouldFallback?: (error: LLMError) => boolean) => (...args: T) => Promise<R>;
68
+ export interface LLMErrorMetrics {
69
+ totalErrors: number;
70
+ errorsByType: Record<string, number>;
71
+ errorsByProvider: Record<string, number>;
72
+ errorsByModel: Record<string, number>;
73
+ lastError?: LLMError;
74
+ lastErrorTime?: number;
75
+ }
76
+ export declare const createLLMErrorMonitor: () => {
77
+ recordError: (error: LLMError) => void;
78
+ getMetrics: () => LLMErrorMetrics;
79
+ resetMetrics: () => void;
80
+ };
81
+ export interface LLMErrorLogger {
82
+ logError: (error: LLMError, context?: Record<string, unknown>) => void;
83
+ logRetry: (error: LLMError, attempt: number, delay: number) => void;
84
+ logRecovery: (error: LLMError, recoveryMethod: string) => void;
85
+ }
86
+ export declare const createLLMErrorLogger: () => LLMErrorLogger;
87
+ export declare const defaultLLMErrorHandler: {
88
+ classify: (error: Error, provider: string, model: string) => LLMError;
89
+ retry: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, config?: Partial<LLMRetryConfig>, provider?: string, model?: string) => (...args: T) => Promise<R>;
90
+ timeout: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, timeoutMs: number, provider?: string, model?: string) => (...args: T) => Promise<R>;
91
+ fallback: <T extends unknown[], R>(primaryFn: (...args: T) => Promise<R>, fallbackFn: (...args: T) => Promise<R>, shouldFallback?: (error: LLMError) => boolean) => (...args: T) => Promise<R>;
92
+ circuitBreaker: <T extends unknown[], R>(fn: (...args: T) => Promise<R>, config: CircuitBreakerConfig, provider?: string, model?: string) => (...args: T) => Promise<R>;
93
+ monitor: {
94
+ recordError: (error: LLMError) => void;
95
+ getMetrics: () => LLMErrorMetrics;
96
+ resetMetrics: () => void;
97
+ };
98
+ logger: LLMErrorLogger;
99
+ };
100
+ //# sourceMappingURL=error-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../../src/adk/providers/error-handler.ts"],"names":[],"mappings":"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"}