@llumiverse/common 0.24.0 → 0.25.0-dev.20260204.110528Z

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 (86) hide show
  1. package/package.json +1 -1
  2. package/lib/cjs/capability/azure_foundry.js +0 -160
  3. package/lib/cjs/capability/azure_foundry.js.map +0 -1
  4. package/lib/cjs/capability/bedrock.js +0 -158
  5. package/lib/cjs/capability/bedrock.js.map +0 -1
  6. package/lib/cjs/capability/openai.js +0 -95
  7. package/lib/cjs/capability/openai.js.map +0 -1
  8. package/lib/cjs/capability/vertexai.js +0 -80
  9. package/lib/cjs/capability/vertexai.js.map +0 -1
  10. package/lib/cjs/capability.js +0 -82
  11. package/lib/cjs/capability.js.map +0 -1
  12. package/lib/cjs/index.js +0 -25
  13. package/lib/cjs/index.js.map +0 -1
  14. package/lib/cjs/options/azure_foundry.js +0 -428
  15. package/lib/cjs/options/azure_foundry.js.map +0 -1
  16. package/lib/cjs/options/bedrock.js +0 -462
  17. package/lib/cjs/options/bedrock.js.map +0 -1
  18. package/lib/cjs/options/fallback.js +0 -35
  19. package/lib/cjs/options/fallback.js.map +0 -1
  20. package/lib/cjs/options/groq.js +0 -37
  21. package/lib/cjs/options/groq.js.map +0 -1
  22. package/lib/cjs/options/openai.js +0 -126
  23. package/lib/cjs/options/openai.js.map +0 -1
  24. package/lib/cjs/options/vertexai.js +0 -503
  25. package/lib/cjs/options/vertexai.js.map +0 -1
  26. package/lib/cjs/options.js +0 -30
  27. package/lib/cjs/options.js.map +0 -1
  28. package/lib/cjs/package.json +0 -3
  29. package/lib/cjs/types.js +0 -195
  30. package/lib/cjs/types.js.map +0 -1
  31. package/lib/esm/capability/azure_foundry.js +0 -157
  32. package/lib/esm/capability/azure_foundry.js.map +0 -1
  33. package/lib/esm/capability/bedrock.js +0 -155
  34. package/lib/esm/capability/bedrock.js.map +0 -1
  35. package/lib/esm/capability/openai.js +0 -92
  36. package/lib/esm/capability/openai.js.map +0 -1
  37. package/lib/esm/capability/vertexai.js +0 -77
  38. package/lib/esm/capability/vertexai.js.map +0 -1
  39. package/lib/esm/capability.js +0 -77
  40. package/lib/esm/capability.js.map +0 -1
  41. package/lib/esm/index.js +0 -9
  42. package/lib/esm/index.js.map +0 -1
  43. package/lib/esm/options/azure_foundry.js +0 -424
  44. package/lib/esm/options/azure_foundry.js.map +0 -1
  45. package/lib/esm/options/bedrock.js +0 -458
  46. package/lib/esm/options/bedrock.js.map +0 -1
  47. package/lib/esm/options/fallback.js +0 -32
  48. package/lib/esm/options/fallback.js.map +0 -1
  49. package/lib/esm/options/groq.js +0 -34
  50. package/lib/esm/options/groq.js.map +0 -1
  51. package/lib/esm/options/openai.js +0 -123
  52. package/lib/esm/options/openai.js.map +0 -1
  53. package/lib/esm/options/vertexai.js +0 -498
  54. package/lib/esm/options/vertexai.js.map +0 -1
  55. package/lib/esm/options.js +0 -27
  56. package/lib/esm/options.js.map +0 -1
  57. package/lib/esm/types.js +0 -192
  58. package/lib/esm/types.js.map +0 -1
  59. package/lib/types/capability/azure_foundry.d.ts +0 -7
  60. package/lib/types/capability/azure_foundry.d.ts.map +0 -1
  61. package/lib/types/capability/bedrock.d.ts +0 -7
  62. package/lib/types/capability/bedrock.d.ts.map +0 -1
  63. package/lib/types/capability/openai.d.ts +0 -13
  64. package/lib/types/capability/openai.d.ts.map +0 -1
  65. package/lib/types/capability/vertexai.d.ts +0 -11
  66. package/lib/types/capability/vertexai.d.ts.map +0 -1
  67. package/lib/types/capability.d.ts +0 -5
  68. package/lib/types/capability.d.ts.map +0 -1
  69. package/lib/types/index.d.ts +0 -9
  70. package/lib/types/index.d.ts.map +0 -1
  71. package/lib/types/options/azure_foundry.d.ts +0 -52
  72. package/lib/types/options/azure_foundry.d.ts.map +0 -1
  73. package/lib/types/options/bedrock.d.ts +0 -52
  74. package/lib/types/options/bedrock.d.ts.map +0 -1
  75. package/lib/types/options/fallback.d.ts +0 -13
  76. package/lib/types/options/fallback.d.ts.map +0 -1
  77. package/lib/types/options/groq.d.ts +0 -12
  78. package/lib/types/options/groq.d.ts.map +0 -1
  79. package/lib/types/options/openai.d.ts +0 -21
  80. package/lib/types/options/openai.d.ts.map +0 -1
  81. package/lib/types/options/vertexai.d.ts +0 -74
  82. package/lib/types/options/vertexai.d.ts.map +0 -1
  83. package/lib/types/options.d.ts +0 -3
  84. package/lib/types/options.d.ts.map +0 -1
  85. package/lib/types/types.d.ts +0 -442
  86. package/lib/types/types.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"vertexai.js","sourceRoot":"","sources":["../../../src/capability/vertexai.ts"],"names":[],"mappings":"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"}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getModelCapabilities = getModelCapabilities;
4
- exports.supportsToolUse = supportsToolUse;
5
- exports.modelModalitiesToArray = modelModalitiesToArray;
6
- const azure_foundry_js_1 = require("./capability/azure_foundry.js");
7
- const bedrock_js_1 = require("./capability/bedrock.js");
8
- const openai_js_1 = require("./capability/openai.js");
9
- const vertexai_js_1 = require("./capability/vertexai.js");
10
- const types_js_1 = require("./types.js");
11
- function getModelCapabilities(model, provider) {
12
- //Check for locations/<location>/ prefix and remove it
13
- if (model.startsWith("locations/")) {
14
- const parts = model.split("/");
15
- if (parts.length >= 3) {
16
- model = parts.slice(2).join("/");
17
- }
18
- }
19
- const capabilities = _getModelCapabilities(model, provider);
20
- // Globally disable audio and video for all models, as we don't support them yet
21
- // TODO: Remove this when we add support.
22
- capabilities.input.audio = false;
23
- capabilities.output.audio = false;
24
- capabilities.output.video = false;
25
- // Preserve tool_support_streaming from provider-specific capabilities if set,
26
- // otherwise default to false for providers that haven't been verified
27
- return capabilities;
28
- }
29
- function _getModelCapabilities(model, provider) {
30
- switch (provider?.toLowerCase()) {
31
- case types_js_1.Providers.vertexai:
32
- return (0, vertexai_js_1.getModelCapabilitiesVertexAI)(model);
33
- case types_js_1.Providers.openai:
34
- case types_js_1.Providers.openai_compatible:
35
- return (0, openai_js_1.getModelCapabilitiesOpenAI)(model);
36
- case types_js_1.Providers.bedrock:
37
- return (0, bedrock_js_1.getModelCapabilitiesBedrock)(model);
38
- case types_js_1.Providers.azure_foundry:
39
- // Azure Foundry uses OpenAI capabilities
40
- return (0, azure_foundry_js_1.getModelCapabilitiesAzureFoundry)(model);
41
- case types_js_1.Providers.xai:
42
- // xAI (Grok) models support tool use and are text-based
43
- return {
44
- input: { text: true, image: model.includes("vision") },
45
- output: { text: true },
46
- tool_support: true,
47
- tool_support_streaming: false, // Conservative - may work but not tested
48
- };
49
- default:
50
- // Guess the provider based on the model name
51
- if (model.startsWith("gpt")) {
52
- return (0, openai_js_1.getModelCapabilitiesOpenAI)(model);
53
- }
54
- else if (model.startsWith("grok")) {
55
- // xAI Grok models
56
- return {
57
- input: { text: true, image: model.includes("vision") },
58
- output: { text: true },
59
- tool_support: true,
60
- tool_support_streaming: false,
61
- };
62
- }
63
- else if (model.startsWith("publishers/")) {
64
- return (0, vertexai_js_1.getModelCapabilitiesVertexAI)(model);
65
- }
66
- else if (model.startsWith("arn:aws")) {
67
- return (0, bedrock_js_1.getModelCapabilitiesBedrock)(model);
68
- }
69
- // Fallback to a generic model with no capabilities
70
- return { input: {}, output: {} };
71
- }
72
- }
73
- function supportsToolUse(model, provider, streaming = false) {
74
- const capabilities = getModelCapabilities(model, provider);
75
- return streaming ? !!capabilities.tool_support_streaming : !!capabilities.tool_support;
76
- }
77
- function modelModalitiesToArray(modalities) {
78
- return Object.entries(modalities)
79
- .filter(([_, isSupported]) => isSupported)
80
- .map(([modality]) => modality);
81
- }
82
- //# sourceMappingURL=capability.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/capability.ts"],"names":[],"mappings":"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"}
package/lib/cjs/index.js DELETED
@@ -1,25 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./types.js"), exports);
18
- __exportStar(require("./capability.js"), exports);
19
- __exportStar(require("./options.js"), exports);
20
- __exportStar(require("./options/bedrock.js"), exports);
21
- __exportStar(require("./options/fallback.js"), exports);
22
- __exportStar(require("./options/groq.js"), exports);
23
- __exportStar(require("./options/openai.js"), exports);
24
- __exportStar(require("./options/vertexai.js"), exports);
25
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,kDAAgC;AAChC,+CAA6B;AAE7B,uDAAqC;AACrC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,wDAAsC"}
@@ -1,428 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMaxTokensLimitAzureFoundry = getMaxTokensLimitAzureFoundry;
4
- exports.getAzureFoundryOptions = getAzureFoundryOptions;
5
- const types_js_1 = require("../types.js");
6
- // Helper function to parse composite model IDs
7
- function parseAzureFoundryModelId(compositeId) {
8
- const parts = compositeId.split('::');
9
- if (parts.length === 2) {
10
- return {
11
- deploymentName: parts[0],
12
- baseModel: parts[1]
13
- };
14
- }
15
- // Backwards compatibility: if no delimiter found, treat as deployment name
16
- return {
17
- deploymentName: compositeId,
18
- baseModel: compositeId
19
- };
20
- }
21
- function getMaxTokensLimitAzureFoundry(model) {
22
- // Extract base model from composite ID (deployment::baseModel)
23
- const { baseModel } = parseAzureFoundryModelId(model);
24
- const modelLower = baseModel.toLowerCase();
25
- // GPT models
26
- if (modelLower.includes("gpt-4o")) {
27
- if (modelLower.includes("mini")) {
28
- return 16384;
29
- }
30
- return 16384;
31
- }
32
- if (modelLower.includes("gpt-4")) {
33
- if (modelLower.includes("turbo")) {
34
- return 4096;
35
- }
36
- if (modelLower.includes("32k")) {
37
- return 32768;
38
- }
39
- return 8192;
40
- }
41
- if (modelLower.includes("gpt-35") || modelLower.includes("gpt-3.5")) {
42
- return 4096;
43
- }
44
- if (model.includes("gpt-5")) {
45
- return 128000;
46
- }
47
- // O-series models
48
- if (modelLower.includes("o1")) {
49
- if (modelLower.includes("preview")) {
50
- return 32768;
51
- }
52
- if (modelLower.includes("mini")) {
53
- return 65536;
54
- }
55
- return 100000;
56
- }
57
- if (modelLower.includes("o3")) {
58
- if (modelLower.includes("mini")) {
59
- return 100000;
60
- }
61
- return 100000;
62
- }
63
- if (modelLower.includes("o4")) {
64
- return 100000;
65
- }
66
- // DeepSeek models
67
- if (modelLower.includes("deepseek")) {
68
- if (modelLower.includes("r1")) {
69
- return 163840;
70
- }
71
- if (modelLower.includes("v3")) {
72
- return 131072;
73
- }
74
- }
75
- // Claude models
76
- if (modelLower.includes("claude")) {
77
- if (modelLower.includes("3-5") || modelLower.includes("3-7")) {
78
- return 8192;
79
- }
80
- if (modelLower.includes("3")) {
81
- return 4096;
82
- }
83
- return 4096;
84
- }
85
- // Llama models
86
- if (modelLower.includes("llama")) {
87
- if (modelLower.includes("3.1") || modelLower.includes("3.3")) {
88
- return 8192;
89
- }
90
- if (modelLower.includes("4")) {
91
- return 1000000; // 1M context
92
- }
93
- return 8192;
94
- }
95
- // Mistral models
96
- if (modelLower.includes("mistral")) {
97
- if (modelLower.includes("large")) {
98
- return 4096;
99
- }
100
- if (modelLower.includes("small")) {
101
- return 4096;
102
- }
103
- return 4096;
104
- }
105
- // Phi models
106
- if (modelLower.includes("phi")) {
107
- return 4096;
108
- }
109
- // AI21 Jamba models
110
- if (modelLower.includes("jamba")) {
111
- return 4096;
112
- }
113
- // Cohere models
114
- if (modelLower.includes("cohere")) {
115
- if (modelLower.includes("command-a")) {
116
- return 8000;
117
- }
118
- return 4096;
119
- }
120
- // Grok models
121
- if (modelLower.includes("grok")) {
122
- return 131072;
123
- }
124
- return undefined;
125
- }
126
- function getAzureFoundryOptions(model, _option) {
127
- // Extract base model from composite ID (deployment::baseModel)
128
- const { baseModel } = parseAzureFoundryModelId(model);
129
- const modelLower = baseModel.toLowerCase();
130
- const max_tokens_limit = getMaxTokensLimitAzureFoundry(model);
131
- // Image generation models
132
- if (modelLower.includes("dall-e") || modelLower.includes("gpt-image")) {
133
- return {
134
- _option_id: "azure-foundry-image",
135
- options: [
136
- {
137
- name: "size",
138
- type: types_js_1.OptionType.enum,
139
- enum: {
140
- "256x256": "256x256",
141
- "512x512": "512x512",
142
- "1024x1024": "1024x1024",
143
- "1792x1024": "1792x1024",
144
- "1024x1792": "1024x1792"
145
- },
146
- default: "1024x1024",
147
- description: "The size of the generated image"
148
- },
149
- {
150
- name: "quality",
151
- type: types_js_1.OptionType.enum,
152
- enum: { "Standard": "standard", "HD": "hd" },
153
- default: "standard",
154
- description: "The quality of the generated image"
155
- },
156
- {
157
- name: "style",
158
- type: types_js_1.OptionType.enum,
159
- enum: { "Vivid": "vivid", "Natural": "natural" },
160
- default: "vivid",
161
- description: "The style of the generated image"
162
- },
163
- {
164
- name: "response_format",
165
- type: types_js_1.OptionType.enum,
166
- enum: { "URL": "url", "Base64 JSON": "b64_json" },
167
- default: "url",
168
- description: "The format of the response"
169
- }
170
- ]
171
- };
172
- }
173
- // Vision model options
174
- const visionOptions = isVisionModel(modelLower) ? [
175
- {
176
- name: "image_detail",
177
- type: types_js_1.OptionType.enum,
178
- enum: { "Low": "low", "High": "high", "Auto": "auto" },
179
- default: "auto",
180
- description: "Controls how the model processes input images"
181
- }
182
- ] : [];
183
- // O-series and thinking models
184
- if (modelLower.includes("o1") || modelLower.includes("o3") || modelLower.includes("o4")) {
185
- const reasoningOptions = (modelLower.includes("o3") || isO1Full(modelLower)) ? [
186
- {
187
- name: "reasoning_effort",
188
- type: types_js_1.OptionType.enum,
189
- enum: { "Low": "low", "Medium": "medium", "High": "high" },
190
- default: "medium",
191
- description: "How much effort the model should put into reasoning"
192
- }
193
- ] : [];
194
- return {
195
- _option_id: "azure-foundry-thinking",
196
- options: [
197
- {
198
- name: types_js_1.SharedOptions.max_tokens,
199
- type: types_js_1.OptionType.numeric,
200
- min: 1,
201
- max: max_tokens_limit,
202
- integer: true,
203
- description: "The maximum number of tokens to generate"
204
- },
205
- {
206
- name: types_js_1.SharedOptions.temperature,
207
- type: types_js_1.OptionType.numeric,
208
- min: 0.0,
209
- max: 2.0,
210
- default: 1.0,
211
- step: 0.1,
212
- description: "Controls randomness in the output"
213
- },
214
- {
215
- name: types_js_1.SharedOptions.top_p,
216
- type: types_js_1.OptionType.numeric,
217
- min: 0,
218
- max: 1,
219
- step: 0.1,
220
- description: "Nucleus sampling parameter"
221
- },
222
- {
223
- name: types_js_1.SharedOptions.stop_sequence,
224
- type: types_js_1.OptionType.string_list,
225
- value: [],
226
- description: "Sequences where the model will stop generating"
227
- },
228
- ...reasoningOptions,
229
- ...visionOptions
230
- ]
231
- };
232
- }
233
- // DeepSeek R1 models
234
- if (modelLower.includes("deepseek") && modelLower.includes("r1")) {
235
- return {
236
- _option_id: "azure-foundry-deepseek",
237
- options: [
238
- {
239
- name: types_js_1.SharedOptions.max_tokens,
240
- type: types_js_1.OptionType.numeric,
241
- min: 1,
242
- max: max_tokens_limit,
243
- integer: true,
244
- description: "The maximum number of tokens to generate"
245
- },
246
- {
247
- name: types_js_1.SharedOptions.temperature,
248
- type: types_js_1.OptionType.numeric,
249
- min: 0.0,
250
- max: 2.0,
251
- default: 0.7,
252
- step: 0.1,
253
- description: "Lower temperatures recommended for DeepSeek R1 (0.3-0.7)"
254
- },
255
- {
256
- name: types_js_1.SharedOptions.top_p,
257
- type: types_js_1.OptionType.numeric,
258
- min: 0,
259
- max: 1,
260
- step: 0.1,
261
- description: "Nucleus sampling parameter"
262
- },
263
- {
264
- name: types_js_1.SharedOptions.stop_sequence,
265
- type: types_js_1.OptionType.string_list,
266
- value: [],
267
- description: "Sequences where the model will stop generating"
268
- }
269
- ]
270
- };
271
- }
272
- // OpenAI models (GPT-4, GPT-4o, GPT-3.5)
273
- if (modelLower.includes("gpt-")) {
274
- return {
275
- _option_id: "azure-foundry-openai",
276
- options: [
277
- {
278
- name: types_js_1.SharedOptions.max_tokens,
279
- type: types_js_1.OptionType.numeric,
280
- min: 1,
281
- max: max_tokens_limit,
282
- integer: true,
283
- step: 200,
284
- description: "The maximum number of tokens to generate"
285
- },
286
- {
287
- name: types_js_1.SharedOptions.temperature,
288
- type: types_js_1.OptionType.numeric,
289
- min: 0.0,
290
- max: 2.0,
291
- default: 0.7,
292
- step: 0.1,
293
- description: "Controls randomness in the output"
294
- },
295
- {
296
- name: types_js_1.SharedOptions.top_p,
297
- type: types_js_1.OptionType.numeric,
298
- min: 0,
299
- max: 1,
300
- step: 0.1,
301
- description: "Nucleus sampling parameter"
302
- },
303
- {
304
- name: types_js_1.SharedOptions.presence_penalty,
305
- type: types_js_1.OptionType.numeric,
306
- min: -2.0,
307
- max: 2.0,
308
- step: 0.1,
309
- description: "Penalize new tokens based on their presence in the text"
310
- },
311
- {
312
- name: types_js_1.SharedOptions.frequency_penalty,
313
- type: types_js_1.OptionType.numeric,
314
- min: -2.0,
315
- max: 2.0,
316
- step: 0.1,
317
- description: "Penalize new tokens based on their frequency in the text"
318
- },
319
- {
320
- name: types_js_1.SharedOptions.stop_sequence,
321
- type: types_js_1.OptionType.string_list,
322
- value: [],
323
- description: "Sequences where the model will stop generating"
324
- },
325
- ...visionOptions
326
- ]
327
- };
328
- }
329
- // General text models (Claude, Llama, Mistral, Phi, etc.)
330
- const baseOptions = [
331
- {
332
- name: types_js_1.SharedOptions.max_tokens,
333
- type: types_js_1.OptionType.numeric,
334
- min: 1,
335
- max: max_tokens_limit,
336
- integer: true,
337
- step: 200,
338
- description: "The maximum number of tokens to generate"
339
- },
340
- {
341
- name: types_js_1.SharedOptions.temperature,
342
- type: types_js_1.OptionType.numeric,
343
- min: 0.0,
344
- max: 2.0,
345
- default: 0.7,
346
- step: 0.1,
347
- description: "Controls randomness in the output"
348
- },
349
- {
350
- name: types_js_1.SharedOptions.top_p,
351
- type: types_js_1.OptionType.numeric,
352
- min: 0,
353
- max: 1,
354
- step: 0.1,
355
- description: "Nucleus sampling parameter"
356
- },
357
- {
358
- name: types_js_1.SharedOptions.stop_sequence,
359
- type: types_js_1.OptionType.string_list,
360
- value: [],
361
- description: "Sequences where the model will stop generating"
362
- }
363
- ];
364
- // Add model-specific options
365
- const additionalOptions = [];
366
- // Add top_k for certain models
367
- if (modelLower.includes("claude") || modelLower.includes("mistral") || modelLower.includes("phi")) {
368
- additionalOptions.push({
369
- name: types_js_1.SharedOptions.top_k,
370
- type: types_js_1.OptionType.numeric,
371
- min: 1,
372
- integer: true,
373
- step: 1,
374
- description: "Limits token sampling to the top k tokens"
375
- });
376
- }
377
- // Add penalty options for certain models
378
- if (modelLower.includes("claude") || modelLower.includes("jamba") || modelLower.includes("cohere")) {
379
- additionalOptions.push({
380
- name: types_js_1.SharedOptions.presence_penalty,
381
- type: types_js_1.OptionType.numeric,
382
- min: -2.0,
383
- max: 2.0,
384
- step: 0.1,
385
- description: "Penalize new tokens based on their presence in the text"
386
- }, {
387
- name: types_js_1.SharedOptions.frequency_penalty,
388
- type: types_js_1.OptionType.numeric,
389
- min: -2.0,
390
- max: 2.0,
391
- step: 0.1,
392
- description: "Penalize new tokens based on their frequency in the text"
393
- });
394
- }
395
- // Add seed option for certain models
396
- if (modelLower.includes("mistral") || modelLower.includes("phi") || modelLower.includes("gemini")) {
397
- additionalOptions.push({
398
- name: types_js_1.SharedOptions.seed,
399
- type: types_js_1.OptionType.numeric,
400
- integer: true,
401
- description: "Random seed for reproducible generation"
402
- });
403
- }
404
- return {
405
- _option_id: "azure-foundry-text",
406
- options: [
407
- ...baseOptions,
408
- ...additionalOptions,
409
- ...visionOptions
410
- ]
411
- };
412
- }
413
- function isVisionModel(modelLower) {
414
- return modelLower.includes("gpt-4o") ||
415
- modelLower.includes("gpt-4-turbo") ||
416
- modelLower.includes("claude-3") ||
417
- modelLower.includes("llama-3.2") ||
418
- modelLower.includes("llama-4") ||
419
- modelLower.includes("gemini") ||
420
- isO1Full(modelLower);
421
- }
422
- function isO1Full(modelLower) {
423
- if (modelLower.includes("o1")) {
424
- return !modelLower.includes("mini") && !modelLower.includes("preview");
425
- }
426
- return false;
427
- }
428
- //# sourceMappingURL=azure_foundry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"azure_foundry.js","sourceRoot":"","sources":["../../../src/options/azure_foundry.ts"],"names":[],"mappings":"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"}