@llumiverse/common 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/lib/capability/anthropic.d.ts +3 -0
  2. package/lib/capability/anthropic.d.ts.map +1 -0
  3. package/lib/capability/anthropic.js +92 -0
  4. package/lib/capability/anthropic.js.map +1 -0
  5. package/lib/{types/capability → capability}/azure_foundry.d.ts +1 -1
  6. package/lib/capability/azure_foundry.d.ts.map +1 -0
  7. package/lib/capability/azure_foundry.js +394 -0
  8. package/lib/capability/azure_foundry.js.map +1 -0
  9. package/lib/{types/capability → capability}/bedrock.d.ts +1 -1
  10. package/lib/capability/bedrock.d.ts.map +1 -0
  11. package/lib/capability/bedrock.js +300 -0
  12. package/lib/capability/bedrock.js.map +1 -0
  13. package/lib/{types/capability → capability}/openai.d.ts +1 -1
  14. package/lib/capability/openai.d.ts.map +1 -0
  15. package/lib/capability/openai.js +179 -0
  16. package/lib/capability/openai.js.map +1 -0
  17. package/lib/{types/capability → capability}/vertexai.d.ts +1 -1
  18. package/lib/capability/vertexai.d.ts.map +1 -0
  19. package/lib/capability/vertexai.js +137 -0
  20. package/lib/capability/vertexai.js.map +1 -0
  21. package/lib/{types/capability.d.ts → capability.d.ts} +1 -1
  22. package/lib/capability.d.ts.map +1 -0
  23. package/lib/{esm/capability.js → capability.js} +17 -17
  24. package/lib/capability.js.map +1 -0
  25. package/lib/index.d.ts +14 -0
  26. package/lib/index.d.ts.map +1 -0
  27. package/lib/index.js +14 -0
  28. package/lib/index.js.map +1 -0
  29. package/lib/{types/options → options}/anthropic.d.ts +2 -2
  30. package/lib/options/anthropic.d.ts.map +1 -0
  31. package/lib/{esm/options → options}/anthropic.js +14 -11
  32. package/lib/options/anthropic.js.map +1 -0
  33. package/lib/{types/options → options}/azure_foundry.d.ts +14 -14
  34. package/lib/options/azure_foundry.d.ts.map +1 -0
  35. package/lib/{esm/options → options}/azure_foundry.js +126 -126
  36. package/lib/options/azure_foundry.js.map +1 -0
  37. package/lib/{types/options → options}/bedrock.d.ts +16 -16
  38. package/lib/{types/options → options}/bedrock.d.ts.map +1 -1
  39. package/lib/options/bedrock.js +489 -0
  40. package/lib/options/bedrock.js.map +1 -0
  41. package/lib/options/context-windows.d.ts.map +1 -0
  42. package/lib/options/context-windows.js.map +1 -0
  43. package/lib/options/embedding.d.ts +38 -0
  44. package/lib/options/embedding.d.ts.map +1 -0
  45. package/lib/options/embedding.js +77 -0
  46. package/lib/options/embedding.js.map +1 -0
  47. package/lib/{types/options → options}/fallback.d.ts +2 -2
  48. package/lib/options/fallback.d.ts.map +1 -0
  49. package/lib/options/fallback.js +65 -0
  50. package/lib/options/fallback.js.map +1 -0
  51. package/lib/{types/options → options}/groq.d.ts +2 -2
  52. package/lib/options/groq.d.ts.map +1 -0
  53. package/lib/options/groq.js +54 -0
  54. package/lib/options/groq.js.map +1 -0
  55. package/lib/options/openai.d.ts +40 -0
  56. package/lib/options/openai.d.ts.map +1 -0
  57. package/lib/options/openai.js +284 -0
  58. package/lib/options/openai.js.map +1 -0
  59. package/lib/{types/options → options}/shared-parsing.d.ts +1 -1
  60. package/lib/options/shared-parsing.d.ts.map +1 -0
  61. package/lib/{esm/options → options}/shared-parsing.js +14 -17
  62. package/lib/options/shared-parsing.js.map +1 -0
  63. package/lib/options/version-parsing.d.ts.map +1 -0
  64. package/lib/{esm/options → options}/version-parsing.js +15 -15
  65. package/lib/options/version-parsing.js.map +1 -0
  66. package/lib/{types/options → options}/vertexai.d.ts +15 -15
  67. package/lib/options/vertexai.d.ts.map +1 -0
  68. package/lib/options/vertexai.js +606 -0
  69. package/lib/options/vertexai.js.map +1 -0
  70. package/lib/{types/options.d.ts → options.d.ts} +1 -1
  71. package/lib/options.d.ts.map +1 -0
  72. package/lib/{esm/options.js → options.js} +8 -8
  73. package/lib/options.js.map +1 -0
  74. package/lib/{types/types.d.ts → types.d.ts} +143 -35
  75. package/lib/types.d.ts.map +1 -0
  76. package/lib/{esm/types.js → types.js} +21 -23
  77. package/lib/types.js.map +1 -0
  78. package/package.json +11 -34
  79. package/src/LlumiverseError.test.ts +18 -72
  80. package/src/capability/anthropic.ts +61 -11
  81. package/src/capability/azure_foundry.ts +303 -65
  82. package/src/capability/bedrock.ts +201 -56
  83. package/src/capability/openai.ts +135 -41
  84. package/src/capability/vertexai.ts +105 -35
  85. package/src/capability.ts +18 -18
  86. package/src/index.ts +13 -12
  87. package/src/options/anthropic.ts +16 -13
  88. package/src/options/azure_foundry.ts +157 -143
  89. package/src/options/bedrock.ts +247 -185
  90. package/src/options/context-windows.ts +2 -2
  91. package/src/options/embedding.ts +92 -0
  92. package/src/options/fallback.ts +50 -17
  93. package/src/options/groq.ts +48 -21
  94. package/src/options/openai.ts +228 -183
  95. package/src/options/shared-parsing.ts +16 -21
  96. package/src/options/version-parsing.ts +17 -17
  97. package/src/options/vertexai.ts +382 -288
  98. package/src/options.ts +8 -8
  99. package/src/types.ts +260 -155
  100. package/lib/cjs/capability/anthropic.js +0 -45
  101. package/lib/cjs/capability/anthropic.js.map +0 -1
  102. package/lib/cjs/capability/azure_foundry.js +0 -160
  103. package/lib/cjs/capability/azure_foundry.js.map +0 -1
  104. package/lib/cjs/capability/bedrock.js +0 -158
  105. package/lib/cjs/capability/bedrock.js.map +0 -1
  106. package/lib/cjs/capability/openai.js +0 -98
  107. package/lib/cjs/capability/openai.js.map +0 -1
  108. package/lib/cjs/capability/vertexai.js +0 -80
  109. package/lib/cjs/capability/vertexai.js.map +0 -1
  110. package/lib/cjs/capability.js +0 -115
  111. package/lib/cjs/capability.js.map +0 -1
  112. package/lib/cjs/index.js +0 -29
  113. package/lib/cjs/index.js.map +0 -1
  114. package/lib/cjs/options/anthropic.js +0 -34
  115. package/lib/cjs/options/anthropic.js.map +0 -1
  116. package/lib/cjs/options/azure_foundry.js +0 -423
  117. package/lib/cjs/options/azure_foundry.js.map +0 -1
  118. package/lib/cjs/options/bedrock.js +0 -427
  119. package/lib/cjs/options/bedrock.js.map +0 -1
  120. package/lib/cjs/options/context-windows.js +0 -138
  121. package/lib/cjs/options/context-windows.js.map +0 -1
  122. package/lib/cjs/options/fallback.js +0 -35
  123. package/lib/cjs/options/fallback.js.map +0 -1
  124. package/lib/cjs/options/groq.js +0 -37
  125. package/lib/cjs/options/groq.js.map +0 -1
  126. package/lib/cjs/options/openai.js +0 -246
  127. package/lib/cjs/options/openai.js.map +0 -1
  128. package/lib/cjs/options/shared-parsing.js +0 -144
  129. package/lib/cjs/options/shared-parsing.js.map +0 -1
  130. package/lib/cjs/options/version-parsing.js +0 -326
  131. package/lib/cjs/options/version-parsing.js.map +0 -1
  132. package/lib/cjs/options/vertexai.js +0 -525
  133. package/lib/cjs/options/vertexai.js.map +0 -1
  134. package/lib/cjs/options.js +0 -33
  135. package/lib/cjs/options.js.map +0 -1
  136. package/lib/cjs/package.json +0 -3
  137. package/lib/cjs/types.js +0 -307
  138. package/lib/cjs/types.js.map +0 -1
  139. package/lib/esm/capability/anthropic.js +0 -42
  140. package/lib/esm/capability/anthropic.js.map +0 -1
  141. package/lib/esm/capability/azure_foundry.js +0 -157
  142. package/lib/esm/capability/azure_foundry.js.map +0 -1
  143. package/lib/esm/capability/bedrock.js +0 -155
  144. package/lib/esm/capability/bedrock.js.map +0 -1
  145. package/lib/esm/capability/openai.js +0 -95
  146. package/lib/esm/capability/openai.js.map +0 -1
  147. package/lib/esm/capability/vertexai.js +0 -77
  148. package/lib/esm/capability/vertexai.js.map +0 -1
  149. package/lib/esm/capability.js.map +0 -1
  150. package/lib/esm/index.js +0 -13
  151. package/lib/esm/index.js.map +0 -1
  152. package/lib/esm/options/anthropic.js.map +0 -1
  153. package/lib/esm/options/azure_foundry.js.map +0 -1
  154. package/lib/esm/options/bedrock.js +0 -423
  155. package/lib/esm/options/bedrock.js.map +0 -1
  156. package/lib/esm/options/context-windows.js.map +0 -1
  157. package/lib/esm/options/fallback.js +0 -32
  158. package/lib/esm/options/fallback.js.map +0 -1
  159. package/lib/esm/options/groq.js +0 -34
  160. package/lib/esm/options/groq.js.map +0 -1
  161. package/lib/esm/options/openai.js +0 -243
  162. package/lib/esm/options/openai.js.map +0 -1
  163. package/lib/esm/options/shared-parsing.js.map +0 -1
  164. package/lib/esm/options/version-parsing.js.map +0 -1
  165. package/lib/esm/options/vertexai.js +0 -519
  166. package/lib/esm/options/vertexai.js.map +0 -1
  167. package/lib/esm/options.js.map +0 -1
  168. package/lib/esm/types.js.map +0 -1
  169. package/lib/types/capability/anthropic.d.ts +0 -3
  170. package/lib/types/capability/anthropic.d.ts.map +0 -1
  171. package/lib/types/capability/azure_foundry.d.ts.map +0 -1
  172. package/lib/types/capability/bedrock.d.ts.map +0 -1
  173. package/lib/types/capability/openai.d.ts.map +0 -1
  174. package/lib/types/capability/vertexai.d.ts.map +0 -1
  175. package/lib/types/capability.d.ts.map +0 -1
  176. package/lib/types/index.d.ts +0 -13
  177. package/lib/types/index.d.ts.map +0 -1
  178. package/lib/types/options/anthropic.d.ts.map +0 -1
  179. package/lib/types/options/azure_foundry.d.ts.map +0 -1
  180. package/lib/types/options/context-windows.d.ts.map +0 -1
  181. package/lib/types/options/fallback.d.ts.map +0 -1
  182. package/lib/types/options/groq.d.ts.map +0 -1
  183. package/lib/types/options/openai.d.ts +0 -40
  184. package/lib/types/options/openai.d.ts.map +0 -1
  185. package/lib/types/options/shared-parsing.d.ts.map +0 -1
  186. package/lib/types/options/version-parsing.d.ts.map +0 -1
  187. package/lib/types/options/vertexai.d.ts.map +0 -1
  188. package/lib/types/options.d.ts.map +0 -1
  189. package/lib/types/types.d.ts.map +0 -1
  190. /package/lib/{types/options → options}/context-windows.d.ts +0 -0
  191. /package/lib/{esm/options → options}/context-windows.js +0 -0
  192. /package/lib/{types/options → options}/version-parsing.d.ts +0 -0
@@ -0,0 +1,3 @@
1
+ import type { ModelCapabilities } from '../types.js';
2
+ export declare function getModelCapabilitiesAnthropic(model: string): ModelCapabilities;
3
+ //# sourceMappingURL=anthropic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/capability/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA8ErD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAoB9E"}
@@ -0,0 +1,92 @@
1
+ // Explicit model exceptions
2
+ const RECORD_MODEL_CAPABILITIES = {
3
+ // claude-3-5-haiku: no image input
4
+ 'claude-3-5-haiku-20241022': {
5
+ input: { text: true, image: false, video: false, audio: false, embed: false },
6
+ output: { text: true, image: false, video: false, audio: false, embed: false },
7
+ tool_support: true,
8
+ tool_support_streaming: true,
9
+ },
10
+ };
11
+ // Family-level capabilities (longest prefix match)
12
+ const RECORD_FAMILY_CAPABILITIES = {
13
+ 'claude-3-5-haiku': {
14
+ input: { text: true, image: false, video: false, audio: false, embed: false },
15
+ output: { text: true, image: false, video: false, audio: false, embed: false },
16
+ tool_support: true,
17
+ tool_support_streaming: true,
18
+ },
19
+ 'claude-3-haiku': {
20
+ input: { text: true, image: true, video: false, audio: false, embed: false },
21
+ output: { text: true, image: false, video: false, audio: false, embed: false },
22
+ tool_support: true,
23
+ tool_support_streaming: true,
24
+ },
25
+ 'claude-3-sonnet': {
26
+ input: { text: true, image: true, video: false, audio: false, embed: false },
27
+ output: { text: true, image: false, video: false, audio: false, embed: false },
28
+ tool_support: true,
29
+ tool_support_streaming: true,
30
+ },
31
+ 'claude-3-opus': {
32
+ input: { text: true, image: true, video: false, audio: false, embed: false },
33
+ output: { text: true, image: false, video: false, audio: false, embed: false },
34
+ tool_support: true,
35
+ tool_support_streaming: true,
36
+ },
37
+ 'claude-3-5': {
38
+ input: { text: true, image: true, video: false, audio: false, embed: false },
39
+ output: { text: true, image: false, video: false, audio: false, embed: false },
40
+ tool_support: true,
41
+ tool_support_streaming: true,
42
+ },
43
+ 'claude-3-7': {
44
+ input: { text: true, image: true, video: false, audio: false, embed: false },
45
+ output: { text: true, image: false, video: false, audio: false, embed: false },
46
+ tool_support: true,
47
+ tool_support_streaming: true,
48
+ },
49
+ 'claude-3': {
50
+ input: { text: true, image: true, video: false, audio: false, embed: false },
51
+ output: { text: true, image: false, video: false, audio: false, embed: false },
52
+ tool_support: true,
53
+ tool_support_streaming: true,
54
+ },
55
+ 'claude-4': {
56
+ input: { text: true, image: true, video: false, audio: false, embed: false },
57
+ output: { text: true, image: false, video: false, audio: false, embed: false },
58
+ tool_support: true,
59
+ tool_support_streaming: true,
60
+ },
61
+ 'claude-': {
62
+ input: { text: true, image: true, video: false, audio: false, embed: false },
63
+ output: { text: true, image: false, video: false, audio: false, embed: false },
64
+ tool_support: true,
65
+ tool_support_streaming: true,
66
+ },
67
+ };
68
+ const DEFAULT_CLAUDE_CAPABILITIES = {
69
+ input: { text: true, image: true, video: false, audio: false, embed: false },
70
+ output: { text: true, image: false, video: false, audio: false, embed: false },
71
+ tool_support: true,
72
+ tool_support_streaming: true,
73
+ };
74
+ export function getModelCapabilitiesAnthropic(model) {
75
+ const lower = model.toLowerCase();
76
+ // Exact match first
77
+ if (lower in RECORD_MODEL_CAPABILITIES) {
78
+ return RECORD_MODEL_CAPABILITIES[lower];
79
+ }
80
+ // Longest prefix family match
81
+ let bestKey;
82
+ for (const key of Object.keys(RECORD_FAMILY_CAPABILITIES)) {
83
+ if (lower.startsWith(key) && (!bestKey || key.length > bestKey.length)) {
84
+ bestKey = key;
85
+ }
86
+ }
87
+ if (bestKey) {
88
+ return RECORD_FAMILY_CAPABILITIES[bestKey];
89
+ }
90
+ return DEFAULT_CLAUDE_CAPABILITIES;
91
+ }
92
+ //# sourceMappingURL=anthropic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/capability/anthropic.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ModelCapabilities } from "../types.js";
1
+ import type { ModelCapabilities } from '../types.js';
2
2
  /**
3
3
  * Get the full ModelCapabilities for an Azure Foundry model.
4
4
  * Checks RECORD_MODEL_CAPABILITIES first, then falls back to family pattern matching.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"azure_foundry.d.ts","sourceRoot":"","sources":["../../src/capability/azure_foundry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,aAAa,CAAC;AAyUtE;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CA4CjF"}
@@ -0,0 +1,394 @@
1
+ // Global feature flags - temporarily disable tool support for non-OpenAI models
2
+ const ENABLE_TOOL_SUPPORT_NON_OPENAI = false;
3
+ // Record of Azure Foundry model capabilities keyed by model ID (lowercased)
4
+ // Only include models with specific exceptions that differ from their family patterns
5
+ const RECORD_MODEL_CAPABILITIES = {
6
+ // OpenAI O-series exceptions - o1-mini doesn't have tool support like other o1 models
7
+ 'o1-mini': {
8
+ input: { text: true, image: true, video: false, audio: false, embed: false },
9
+ output: { text: true, image: false, video: false, audio: false, embed: false },
10
+ tool_support: false,
11
+ tool_support_streaming: false,
12
+ },
13
+ // OpenAI o3 is text-only unlike other o-series models
14
+ o3: {
15
+ input: { text: true, image: false, video: false, audio: false, embed: false },
16
+ output: { text: true, image: false, video: false, audio: false, embed: false },
17
+ tool_support: true,
18
+ tool_support_streaming: false,
19
+ },
20
+ // Models with special properties not covered by family patterns
21
+ 'deepseek-r1-0528': {
22
+ input: { text: true, image: false, video: false, audio: false, embed: false },
23
+ output: { text: true, image: false, video: false, audio: false, embed: false },
24
+ tool_support: false,
25
+ tool_support_streaming: false,
26
+ },
27
+ 'deepseek-v3-0324': {
28
+ input: { text: true, image: false, video: false, audio: false, embed: false },
29
+ output: { text: true, image: false, video: false, audio: false, embed: false },
30
+ tool_support: false,
31
+ tool_support_streaming: false,
32
+ },
33
+ 'mistral-medium-2505': {
34
+ input: { text: true, image: false, video: false, audio: false, embed: false },
35
+ output: { text: true, image: false, video: false, audio: false, embed: false },
36
+ tool_support: false,
37
+ tool_support_streaming: false,
38
+ },
39
+ 'mistral-nemo': {
40
+ input: { text: true, image: false, video: false, audio: false, embed: false },
41
+ output: { text: true, image: false, video: false, audio: false, embed: false },
42
+ tool_support: false,
43
+ tool_support_streaming: false,
44
+ },
45
+ 'llama-4-scout-17b-16e-instruct': {
46
+ input: { text: true, image: true, video: false, audio: false, embed: false },
47
+ output: { text: true, image: false, video: false, audio: false, embed: false },
48
+ tool_support: false,
49
+ tool_support_streaming: false,
50
+ },
51
+ };
52
+ // Populate RECORD_FAMILY_CAPABILITIES as a const record (lowest common denominator for each family)
53
+ const RECORD_FAMILY_CAPABILITIES = {
54
+ // OpenAI GPT families
55
+ 'gpt-3.5-turbo': {
56
+ input: { text: true, image: false, video: false, audio: false, embed: false },
57
+ output: { text: true, image: false, video: false, audio: false, embed: false },
58
+ tool_support: false,
59
+ tool_support_streaming: false,
60
+ },
61
+ 'gpt-35-turbo': {
62
+ input: { text: true, image: false, video: false, audio: false, embed: false },
63
+ output: { text: true, image: false, video: false, audio: false, embed: false },
64
+ tool_support: false,
65
+ tool_support_streaming: false,
66
+ },
67
+ 'gpt-35': {
68
+ input: { text: true, image: false, video: false, audio: false, embed: false },
69
+ output: { text: true, image: false, video: false, audio: false, embed: false },
70
+ tool_support: false,
71
+ tool_support_streaming: false,
72
+ },
73
+ 'gpt-4': {
74
+ input: { text: true, image: true, video: false, audio: false, embed: false },
75
+ output: { text: true, image: false, video: false, audio: false, embed: false },
76
+ tool_support: true,
77
+ tool_support_streaming: true,
78
+ },
79
+ 'gpt-4.1': {
80
+ input: { text: true, image: true, video: false, audio: false, embed: false },
81
+ output: { text: true, image: false, video: false, audio: false, embed: false },
82
+ tool_support: true,
83
+ tool_support_streaming: true,
84
+ },
85
+ 'gpt-4.5': {
86
+ input: { text: true, image: true, video: false, audio: false, embed: false },
87
+ output: { text: true, image: false, video: false, audio: false, embed: false },
88
+ tool_support: true,
89
+ tool_support_streaming: true,
90
+ },
91
+ 'gpt-4o': {
92
+ input: { text: true, image: true, video: false, audio: false, embed: false },
93
+ output: { text: true, image: false, video: false, audio: false, embed: false },
94
+ tool_support: true,
95
+ tool_support_streaming: true,
96
+ },
97
+ gpt: {
98
+ input: { text: true, image: true, video: false, audio: false, embed: false },
99
+ output: { text: true, image: false, video: false, audio: false, embed: false },
100
+ tool_support: true,
101
+ tool_support_streaming: true,
102
+ },
103
+ // OpenAI O-series families
104
+ o1: {
105
+ input: { text: true, image: true, video: false, audio: false, embed: false },
106
+ output: { text: true, image: false, video: false, audio: false, embed: false },
107
+ tool_support: true,
108
+ tool_support_streaming: false,
109
+ },
110
+ 'o1-preview': {
111
+ input: { text: true, image: true, video: false, audio: false, embed: false },
112
+ output: { text: true, image: false, video: false, audio: false, embed: false },
113
+ tool_support: true,
114
+ tool_support_streaming: false,
115
+ },
116
+ 'o1-pro': {
117
+ input: { text: true, image: true, video: false, audio: false, embed: false },
118
+ output: { text: true, image: false, video: false, audio: false, embed: false },
119
+ tool_support: true,
120
+ tool_support_streaming: false,
121
+ },
122
+ 'o3-mini': {
123
+ input: { text: true, image: true, video: false, audio: false, embed: false },
124
+ output: { text: true, image: false, video: false, audio: false, embed: false },
125
+ tool_support: true,
126
+ tool_support_streaming: false,
127
+ },
128
+ 'o4-mini': {
129
+ input: { text: true, image: true, video: false, audio: false, embed: false },
130
+ output: { text: true, image: false, video: false, audio: false, embed: false },
131
+ tool_support: true,
132
+ tool_support_streaming: false,
133
+ },
134
+ o4: {
135
+ input: { text: true, image: true, video: false, audio: false, embed: false },
136
+ output: { text: true, image: false, video: false, audio: false, embed: false },
137
+ tool_support: true,
138
+ tool_support_streaming: false,
139
+ },
140
+ o: {
141
+ input: { text: true, image: true, video: false, audio: false, embed: false },
142
+ output: { text: true, image: false, video: false, audio: false, embed: false },
143
+ tool_support: true,
144
+ tool_support_streaming: false,
145
+ },
146
+ // Llama families
147
+ 'llama-3.1': {
148
+ input: { text: true, image: false, video: false, audio: false, embed: false },
149
+ output: { text: true, image: false, video: false, audio: false, embed: false },
150
+ tool_support: true,
151
+ tool_support_streaming: false,
152
+ },
153
+ 'llama-3.2': {
154
+ input: { text: true, image: true, video: false, audio: false, embed: false },
155
+ output: { text: true, image: false, video: false, audio: false, embed: false },
156
+ tool_support: false,
157
+ tool_support_streaming: false,
158
+ },
159
+ 'llama-3.3': {
160
+ input: { text: true, image: false, video: false, audio: false, embed: false },
161
+ output: { text: true, image: false, video: false, audio: false, embed: false },
162
+ tool_support: true,
163
+ tool_support_streaming: false,
164
+ },
165
+ 'llama-3': {
166
+ input: { text: true, image: false, video: false, audio: false, embed: false },
167
+ output: { text: true, image: false, video: false, audio: false, embed: false },
168
+ tool_support: true,
169
+ tool_support_streaming: false,
170
+ },
171
+ 'llama-4': {
172
+ input: { text: true, image: true, video: false, audio: false, embed: false },
173
+ output: { text: true, image: false, video: false, audio: false, embed: false },
174
+ tool_support: false,
175
+ tool_support_streaming: false,
176
+ },
177
+ llama: {
178
+ input: { text: true, image: false, video: false, audio: false, embed: false },
179
+ output: { text: true, image: false, video: false, audio: false, embed: false },
180
+ tool_support: false,
181
+ tool_support_streaming: false,
182
+ },
183
+ // Mistral families
184
+ 'mistral-large': {
185
+ input: { text: true, image: false, video: false, audio: false, embed: false },
186
+ output: { text: true, image: false, video: false, audio: false, embed: false },
187
+ tool_support: true,
188
+ tool_support_streaming: false,
189
+ },
190
+ 'mistral-small': {
191
+ input: { text: true, image: false, video: false, audio: false, embed: false },
192
+ output: { text: true, image: false, video: false, audio: false, embed: false },
193
+ tool_support: true,
194
+ tool_support_streaming: false,
195
+ },
196
+ mistral: {
197
+ input: { text: true, image: false, video: false, audio: false, embed: false },
198
+ output: { text: true, image: false, video: false, audio: false, embed: false },
199
+ tool_support: false,
200
+ tool_support_streaming: false,
201
+ },
202
+ // Microsoft Phi families
203
+ 'phi-4': {
204
+ input: { text: true, image: false, video: false, audio: false, embed: false },
205
+ output: { text: true, image: false, video: false, audio: false, embed: false },
206
+ tool_support: false,
207
+ tool_support_streaming: false,
208
+ },
209
+ phi: {
210
+ input: { text: true, image: false, video: false, audio: false, embed: false },
211
+ output: { text: true, image: false, video: false, audio: false, embed: false },
212
+ tool_support: false,
213
+ tool_support_streaming: false,
214
+ },
215
+ // DeepSeek families
216
+ 'deepseek-r1': {
217
+ input: { text: true, image: false, video: false, audio: false, embed: false },
218
+ output: { text: true, image: false, video: false, audio: false, embed: false },
219
+ tool_support: false,
220
+ tool_support_streaming: false,
221
+ },
222
+ 'deepseek-v3': {
223
+ input: { text: true, image: false, video: false, audio: false, embed: false },
224
+ output: { text: true, image: false, video: false, audio: false, embed: false },
225
+ tool_support: true,
226
+ tool_support_streaming: false,
227
+ },
228
+ deepseek: {
229
+ input: { text: true, image: false, video: false, audio: false, embed: false },
230
+ output: { text: true, image: false, video: false, audio: false, embed: false },
231
+ tool_support: false,
232
+ tool_support_streaming: false,
233
+ },
234
+ // AI21 families
235
+ 'ai21-jamba': {
236
+ input: { text: true, image: false, video: false, audio: false, embed: false },
237
+ output: { text: true, image: false, video: false, audio: false, embed: false },
238
+ tool_support: true,
239
+ tool_support_streaming: true,
240
+ },
241
+ ai21: {
242
+ input: { text: true, image: false, video: false, audio: false, embed: false },
243
+ output: { text: true, image: false, video: false, audio: false, embed: false },
244
+ tool_support: true,
245
+ tool_support_streaming: true,
246
+ },
247
+ jamba: {
248
+ input: { text: true, image: false, video: false, audio: false, embed: false },
249
+ output: { text: true, image: false, video: false, audio: false, embed: false },
250
+ tool_support: true,
251
+ tool_support_streaming: true,
252
+ },
253
+ // Cohere families
254
+ 'cohere-command': {
255
+ input: { text: true, image: false, video: false, audio: false, embed: false },
256
+ output: { text: true, image: false, video: false, audio: false, embed: false },
257
+ tool_support: true,
258
+ tool_support_streaming: true,
259
+ },
260
+ cohere: {
261
+ input: { text: true, image: false, video: false, audio: false, embed: false },
262
+ output: { text: true, image: false, video: false, audio: false, embed: false },
263
+ tool_support: true,
264
+ tool_support_streaming: true,
265
+ },
266
+ command: {
267
+ input: { text: true, image: false, video: false, audio: false, embed: false },
268
+ output: { text: true, image: false, video: false, audio: false, embed: false },
269
+ tool_support: true,
270
+ tool_support_streaming: true,
271
+ },
272
+ // xAI families
273
+ 'grok-3': {
274
+ input: { text: true, image: false, video: false, audio: false, embed: false },
275
+ output: { text: true, image: false, video: false, audio: false, embed: false },
276
+ tool_support: true,
277
+ tool_support_streaming: true,
278
+ },
279
+ grok: {
280
+ input: { text: true, image: false, video: false, audio: false, embed: false },
281
+ output: { text: true, image: false, video: false, audio: false, embed: false },
282
+ tool_support: true,
283
+ tool_support_streaming: true,
284
+ },
285
+ };
286
+ // Fallback pattern lists for inferring modalities and tool support
287
+ const IMAGE_INPUT_MODELS = ['image', 'vision'];
288
+ const VIDEO_INPUT_MODELS = ['video'];
289
+ const AUDIO_INPUT_MODELS = ['audio'];
290
+ const TEXT_INPUT_MODELS = ['text'];
291
+ const IMAGE_OUTPUT_MODELS = ['image'];
292
+ const VIDEO_OUTPUT_MODELS = ['video'];
293
+ const AUDIO_OUTPUT_MODELS = ['audio'];
294
+ const TEXT_OUTPUT_MODELS = ['text'];
295
+ const EMBEDDING_OUTPUT_MODELS = ['embed'];
296
+ const TOOL_SUPPORT_MODELS = [
297
+ 'tool',
298
+ 'gpt-4',
299
+ 'gpt-4o',
300
+ 'o1',
301
+ 'o3',
302
+ 'o4',
303
+ 'llama-3',
304
+ 'mistral-large',
305
+ 'mistral-small',
306
+ 'jamba',
307
+ 'cohere',
308
+ 'command',
309
+ 'grok',
310
+ ];
311
+ function modelMatches(modelName, patterns) {
312
+ return patterns.some((pattern) => modelName.includes(pattern));
313
+ }
314
+ /**
315
+ * Get the full ModelCapabilities for an Azure Foundry model.
316
+ * Checks RECORD_MODEL_CAPABILITIES first, then falls back to family pattern matching.
317
+ */
318
+ export function getModelCapabilitiesAzureFoundry(model) {
319
+ // Extract base model from composite ID (deployment::baseModel)
320
+ const { baseModel } = parseAzureFoundryModelId(model);
321
+ const normalized = baseModel.toLowerCase();
322
+ // 1. Exact match in record
323
+ const record = RECORD_MODEL_CAPABILITIES[normalized];
324
+ if (record) {
325
+ return applyGlobalToolSupportDisable(record, normalized);
326
+ }
327
+ // 2. Fallback: find the longest matching family prefix in RECORD_FAMILY_CAPABILITIES
328
+ let bestFamilyKey;
329
+ let bestFamilyLength = 0;
330
+ for (const key of Object.keys(RECORD_FAMILY_CAPABILITIES)) {
331
+ if (normalized.startsWith(key) && key.length > bestFamilyLength) {
332
+ bestFamilyKey = key;
333
+ bestFamilyLength = key.length;
334
+ }
335
+ }
336
+ if (bestFamilyKey) {
337
+ return applyGlobalToolSupportDisable(RECORD_FAMILY_CAPABILITIES[bestFamilyKey], normalized);
338
+ }
339
+ // 3. Fallback: infer from normalized name using patterns
340
+ const input = {
341
+ text: modelMatches(normalized, TEXT_INPUT_MODELS) || true, // Default to text input
342
+ image: modelMatches(normalized, IMAGE_INPUT_MODELS) || undefined,
343
+ video: modelMatches(normalized, VIDEO_INPUT_MODELS) || undefined,
344
+ audio: modelMatches(normalized, AUDIO_INPUT_MODELS) || undefined,
345
+ embed: false,
346
+ };
347
+ const output = {
348
+ text: modelMatches(normalized, TEXT_OUTPUT_MODELS) || true, // Default to text output
349
+ image: modelMatches(normalized, IMAGE_OUTPUT_MODELS) || undefined,
350
+ video: modelMatches(normalized, VIDEO_OUTPUT_MODELS) || undefined,
351
+ audio: modelMatches(normalized, AUDIO_OUTPUT_MODELS) || undefined,
352
+ embed: modelMatches(normalized, EMBEDDING_OUTPUT_MODELS) || undefined,
353
+ };
354
+ const tool_support = modelMatches(normalized, TOOL_SUPPORT_MODELS) || undefined;
355
+ const tool_support_streaming = tool_support || undefined;
356
+ const inferredCapabilities = { input, output, tool_support, tool_support_streaming };
357
+ return applyGlobalToolSupportDisable(inferredCapabilities, normalized);
358
+ }
359
+ /**
360
+ * Apply global tool support disable for non-OpenAI models.
361
+ * Preserves model-specific information for future use while temporarily disabling tool support.
362
+ */
363
+ function applyGlobalToolSupportDisable(capabilities, modelName) {
364
+ // Check if this is an OpenAI model
365
+ const isOpenAIModel = modelName.startsWith('gpt-') ||
366
+ modelName.startsWith('o1') ||
367
+ modelName.startsWith('o3') ||
368
+ modelName.startsWith('o4');
369
+ if (!ENABLE_TOOL_SUPPORT_NON_OPENAI && !isOpenAIModel) {
370
+ // Disable tool support for non-OpenAI models while preserving other capabilities
371
+ return {
372
+ ...capabilities,
373
+ tool_support: false,
374
+ tool_support_streaming: false,
375
+ };
376
+ }
377
+ return capabilities;
378
+ }
379
+ // Helper function to parse composite model IDs
380
+ function parseAzureFoundryModelId(compositeId) {
381
+ const parts = compositeId.split('::');
382
+ if (parts.length === 2) {
383
+ return {
384
+ deploymentName: parts[0],
385
+ baseModel: parts[1],
386
+ };
387
+ }
388
+ // Backwards compatibility: if no delimiter found, treat as deployment name
389
+ return {
390
+ deploymentName: compositeId,
391
+ baseModel: compositeId,
392
+ };
393
+ }
394
+ //# sourceMappingURL=azure_foundry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"azure_foundry.js","sourceRoot":"","sources":["../../src/capability/azure_foundry.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ModelCapabilities } from "../types.js";
1
+ import type { ModelCapabilities } from '../types.js';
2
2
  /**
3
3
  * Get the full ModelCapabilities for a Bedrock model.
4
4
  * Checks RECORD_MODEL_CAPABILITIES first, then falls back to pattern-based inference.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bedrock.d.ts","sourceRoot":"","sources":["../../src/capability/bedrock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,aAAa,CAAC;AA2PtE;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAsD5E"}