@llumiverse/common 1.2.0 → 1.4.0-dev.20260629.090753Z

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 (184) 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} +21 -15
  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/options/anthropic.d.ts +16 -0
  30. package/lib/options/anthropic.d.ts.map +1 -0
  31. package/lib/options/anthropic.js +34 -0
  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/options/bedrock.d.ts +61 -0
  38. package/lib/options/bedrock.d.ts.map +1 -0
  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 +18 -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} +10 -7
  73. package/lib/options.js.map +1 -0
  74. package/lib/{types/types.d.ts → types.d.ts} +161 -42
  75. package/lib/types.d.ts.map +1 -0
  76. package/lib/{esm/types.js → types.js} +28 -22
  77. package/lib/types.js.map +1 -0
  78. package/package.json +12 -34
  79. package/src/LlumiverseError.test.ts +18 -72
  80. package/src/capability/anthropic.ts +99 -0
  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 +21 -16
  86. package/src/index.ts +13 -11
  87. package/src/options/anthropic.ts +59 -0
  88. package/src/options/azure_foundry.ts +157 -143
  89. package/src/options/bedrock.ts +266 -187
  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 +231 -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 +385 -288
  98. package/src/options.ts +11 -8
  99. package/src/types.ts +284 -160
  100. package/lib/cjs/capability/azure_foundry.js +0 -160
  101. package/lib/cjs/capability/azure_foundry.js.map +0 -1
  102. package/lib/cjs/capability/bedrock.js +0 -158
  103. package/lib/cjs/capability/bedrock.js.map +0 -1
  104. package/lib/cjs/capability/openai.js +0 -98
  105. package/lib/cjs/capability/openai.js.map +0 -1
  106. package/lib/cjs/capability/vertexai.js +0 -80
  107. package/lib/cjs/capability/vertexai.js.map +0 -1
  108. package/lib/cjs/capability.js +0 -109
  109. package/lib/cjs/capability.js.map +0 -1
  110. package/lib/cjs/index.js +0 -27
  111. package/lib/cjs/index.js.map +0 -1
  112. package/lib/cjs/options/azure_foundry.js +0 -423
  113. package/lib/cjs/options/azure_foundry.js.map +0 -1
  114. package/lib/cjs/options/bedrock.js +0 -427
  115. package/lib/cjs/options/bedrock.js.map +0 -1
  116. package/lib/cjs/options/context-windows.js +0 -138
  117. package/lib/cjs/options/context-windows.js.map +0 -1
  118. package/lib/cjs/options/fallback.js +0 -35
  119. package/lib/cjs/options/fallback.js.map +0 -1
  120. package/lib/cjs/options/groq.js +0 -37
  121. package/lib/cjs/options/groq.js.map +0 -1
  122. package/lib/cjs/options/openai.js +0 -246
  123. package/lib/cjs/options/openai.js.map +0 -1
  124. package/lib/cjs/options/shared-parsing.js +0 -144
  125. package/lib/cjs/options/shared-parsing.js.map +0 -1
  126. package/lib/cjs/options/version-parsing.js +0 -326
  127. package/lib/cjs/options/version-parsing.js.map +0 -1
  128. package/lib/cjs/options/vertexai.js +0 -525
  129. package/lib/cjs/options/vertexai.js.map +0 -1
  130. package/lib/cjs/options.js +0 -30
  131. package/lib/cjs/options.js.map +0 -1
  132. package/lib/cjs/package.json +0 -3
  133. package/lib/cjs/types.js +0 -299
  134. package/lib/cjs/types.js.map +0 -1
  135. package/lib/esm/capability/azure_foundry.js +0 -157
  136. package/lib/esm/capability/azure_foundry.js.map +0 -1
  137. package/lib/esm/capability/bedrock.js +0 -155
  138. package/lib/esm/capability/bedrock.js.map +0 -1
  139. package/lib/esm/capability/openai.js +0 -95
  140. package/lib/esm/capability/openai.js.map +0 -1
  141. package/lib/esm/capability/vertexai.js +0 -77
  142. package/lib/esm/capability/vertexai.js.map +0 -1
  143. package/lib/esm/capability.js.map +0 -1
  144. package/lib/esm/index.js +0 -11
  145. package/lib/esm/index.js.map +0 -1
  146. package/lib/esm/options/azure_foundry.js.map +0 -1
  147. package/lib/esm/options/bedrock.js +0 -423
  148. package/lib/esm/options/bedrock.js.map +0 -1
  149. package/lib/esm/options/context-windows.js.map +0 -1
  150. package/lib/esm/options/fallback.js +0 -32
  151. package/lib/esm/options/fallback.js.map +0 -1
  152. package/lib/esm/options/groq.js +0 -34
  153. package/lib/esm/options/groq.js.map +0 -1
  154. package/lib/esm/options/openai.js +0 -243
  155. package/lib/esm/options/openai.js.map +0 -1
  156. package/lib/esm/options/shared-parsing.js.map +0 -1
  157. package/lib/esm/options/version-parsing.js.map +0 -1
  158. package/lib/esm/options/vertexai.js +0 -519
  159. package/lib/esm/options/vertexai.js.map +0 -1
  160. package/lib/esm/options.js.map +0 -1
  161. package/lib/esm/types.js.map +0 -1
  162. package/lib/types/capability/azure_foundry.d.ts.map +0 -1
  163. package/lib/types/capability/bedrock.d.ts.map +0 -1
  164. package/lib/types/capability/openai.d.ts.map +0 -1
  165. package/lib/types/capability/vertexai.d.ts.map +0 -1
  166. package/lib/types/capability.d.ts.map +0 -1
  167. package/lib/types/index.d.ts +0 -11
  168. package/lib/types/index.d.ts.map +0 -1
  169. package/lib/types/options/azure_foundry.d.ts.map +0 -1
  170. package/lib/types/options/bedrock.d.ts +0 -54
  171. package/lib/types/options/bedrock.d.ts.map +0 -1
  172. package/lib/types/options/context-windows.d.ts.map +0 -1
  173. package/lib/types/options/fallback.d.ts.map +0 -1
  174. package/lib/types/options/groq.d.ts.map +0 -1
  175. package/lib/types/options/openai.d.ts +0 -37
  176. package/lib/types/options/openai.d.ts.map +0 -1
  177. package/lib/types/options/shared-parsing.d.ts.map +0 -1
  178. package/lib/types/options/version-parsing.d.ts.map +0 -1
  179. package/lib/types/options/vertexai.d.ts.map +0 -1
  180. package/lib/types/options.d.ts.map +0 -1
  181. package/lib/types/types.d.ts.map +0 -1
  182. /package/lib/{types/options → options}/context-windows.d.ts +0 -0
  183. /package/lib/{esm/options → options}/context-windows.js +0 -0
  184. /package/lib/{types/options → options}/version-parsing.d.ts +0 -0
@@ -0,0 +1,606 @@
1
+ import { OptionType, SharedOptions, } from '../types.js';
2
+ import { textOptionsFallback } from './fallback.js';
3
+ import { buildClaudeCacheOptions, buildClaudeCacheTtlOptions, buildClaudeEffortOptions, buildClaudeIncludeThoughtsOption, buildClaudeThinkingBudgetOption, getClaudeMaxTokensLimit, } from './shared-parsing.js';
4
+ import { hasSamplingParameterRestriction, isGeminiModelVersionGte } from './version-parsing.js';
5
+ export var ImagenTaskType;
6
+ (function (ImagenTaskType) {
7
+ ImagenTaskType["TEXT_IMAGE"] = "TEXT_IMAGE";
8
+ ImagenTaskType["EDIT_MODE_INPAINT_REMOVAL"] = "EDIT_MODE_INPAINT_REMOVAL";
9
+ ImagenTaskType["EDIT_MODE_INPAINT_INSERTION"] = "EDIT_MODE_INPAINT_INSERTION";
10
+ ImagenTaskType["EDIT_MODE_BGSWAP"] = "EDIT_MODE_BGSWAP";
11
+ ImagenTaskType["EDIT_MODE_OUTPAINT"] = "EDIT_MODE_OUTPAINT";
12
+ ImagenTaskType["CUSTOMIZATION_SUBJECT"] = "CUSTOMIZATION_SUBJECT";
13
+ ImagenTaskType["CUSTOMIZATION_STYLE"] = "CUSTOMIZATION_STYLE";
14
+ ImagenTaskType["CUSTOMIZATION_CONTROLLED"] = "CUSTOMIZATION_CONTROLLED";
15
+ ImagenTaskType["CUSTOMIZATION_INSTRUCT"] = "CUSTOMIZATION_INSTRUCT";
16
+ })(ImagenTaskType || (ImagenTaskType = {}));
17
+ export var ImagenMaskMode;
18
+ (function (ImagenMaskMode) {
19
+ ImagenMaskMode["MASK_MODE_USER_PROVIDED"] = "MASK_MODE_USER_PROVIDED";
20
+ ImagenMaskMode["MASK_MODE_BACKGROUND"] = "MASK_MODE_BACKGROUND";
21
+ ImagenMaskMode["MASK_MODE_FOREGROUND"] = "MASK_MODE_FOREGROUND";
22
+ ImagenMaskMode["MASK_MODE_SEMANTIC"] = "MASK_MODE_SEMANTIC";
23
+ })(ImagenMaskMode || (ImagenMaskMode = {}));
24
+ export var ThinkingLevel;
25
+ (function (ThinkingLevel) {
26
+ ThinkingLevel["HIGH"] = "HIGH";
27
+ ThinkingLevel["MEDIUM"] = "MEDIUM";
28
+ ThinkingLevel["LOW"] = "LOW";
29
+ ThinkingLevel["MINIMAL"] = "MINIMAL";
30
+ ThinkingLevel["THINKING_LEVEL_UNSPECIFIED"] = "THINKING_LEVEL_UNSPECIFIED";
31
+ })(ThinkingLevel || (ThinkingLevel = {}));
32
+ /** Models that support Flex processing (shared, cost-efficient tier). */
33
+ const FLEX_SUPPORTED_GEMINI_MODELS = [
34
+ 'gemini-3.1-flash-lite-preview',
35
+ 'gemini-3.1-flash-image-preview',
36
+ 'gemini-3.1-pro-preview',
37
+ 'gemini-3-flash-preview',
38
+ 'gemini-3-pro-image-preview',
39
+ ];
40
+ export function isFlexSupportedGeminiModel(model) {
41
+ const modelName = model.split('/').pop() ?? model;
42
+ return FLEX_SUPPORTED_GEMINI_MODELS.some((m) => modelName.includes(m));
43
+ }
44
+ export function getVertexAiOptions(model, option) {
45
+ if (model.includes('imagen-')) {
46
+ return getImagenOptions(model, option);
47
+ }
48
+ else if (model.includes('gemini')) {
49
+ return getGeminiOptions(model, option);
50
+ }
51
+ else if (model.includes('claude')) {
52
+ return getClaudeOptions(model, option);
53
+ }
54
+ else if (model.includes('llama')) {
55
+ return getLlamaOptions(model);
56
+ }
57
+ return textOptionsFallback;
58
+ }
59
+ function getImagenOptions(model, option) {
60
+ const commonOptions = [
61
+ {
62
+ name: SharedOptions.number_of_images,
63
+ type: OptionType.numeric,
64
+ min: 1,
65
+ max: 4,
66
+ default: 1,
67
+ integer: true,
68
+ description: 'Number of Images to generate',
69
+ },
70
+ {
71
+ name: SharedOptions.seed,
72
+ type: OptionType.numeric,
73
+ min: 0,
74
+ max: 4294967295,
75
+ default: 12,
76
+ integer: true,
77
+ description: 'The seed of the generated image',
78
+ },
79
+ {
80
+ name: 'person_generation',
81
+ type: OptionType.enum,
82
+ enum: {
83
+ 'Disallow the inclusion of people or faces in images': 'dont_allow',
84
+ 'Allow generation of adults only': 'allow_adult',
85
+ 'Allow generation of people of all ages': 'allow_all',
86
+ },
87
+ default: 'allow_adult',
88
+ description: 'The safety setting for allowing the generation of people in the image',
89
+ },
90
+ {
91
+ name: 'safety_setting',
92
+ type: OptionType.enum,
93
+ enum: {
94
+ 'Block very few problematic prompts and responses': 'block_none',
95
+ 'Block only few problematic prompts and responses': 'block_only_high',
96
+ 'Block some problematic prompts and responses': 'block_medium_and_above',
97
+ 'Strictest filtering': 'block_low_and_above',
98
+ },
99
+ default: 'block_medium_and_above',
100
+ description: 'The overall safety setting',
101
+ },
102
+ ];
103
+ const outputOptions = [
104
+ {
105
+ name: 'image_file_type',
106
+ type: OptionType.enum,
107
+ enum: { JPEG: 'image/jpeg', PNG: 'image/png' },
108
+ default: 'image/png',
109
+ description: 'The file type of the generated image',
110
+ refresh: true,
111
+ },
112
+ ];
113
+ const jpegQuality = {
114
+ name: 'jpeg_compression_quality',
115
+ type: OptionType.numeric,
116
+ min: 0,
117
+ max: 100,
118
+ default: 75,
119
+ integer: true,
120
+ description: 'The compression quality of the JPEG image',
121
+ };
122
+ if (option?.image_file_type === 'image/jpeg') {
123
+ outputOptions.push(jpegQuality);
124
+ }
125
+ if (model.includes('generate')) {
126
+ // Generate models
127
+ const modeOptions = [
128
+ {
129
+ name: 'aspect_ratio',
130
+ type: OptionType.enum,
131
+ enum: { '1:1': '1:1', '4:3': '4:3', '3:4': '3:4', '16:9': '16:9', '9:16': '9:16' },
132
+ default: '1:1',
133
+ description: 'The aspect ratio of the generated image',
134
+ },
135
+ {
136
+ name: 'add_watermark',
137
+ type: OptionType.boolean,
138
+ default: false,
139
+ description: 'Add an invisible watermark to the generated image, useful for detection of AI images',
140
+ },
141
+ ];
142
+ const enhanceOptions = !model.includes('generate-001')
143
+ ? [
144
+ {
145
+ name: 'enhance_prompt',
146
+ type: OptionType.boolean,
147
+ default: true,
148
+ description: "VertexAI automatically rewrites the prompt to better reflect the prompt's intent.",
149
+ },
150
+ ]
151
+ : [];
152
+ return {
153
+ _option_id: 'vertexai-imagen',
154
+ options: [...commonOptions, ...modeOptions, ...outputOptions, ...enhanceOptions],
155
+ };
156
+ }
157
+ if (model.includes('capability')) {
158
+ // Edit models
159
+ let guidanceScaleDefault = 75;
160
+ if (option?.edit_mode === ImagenTaskType.EDIT_MODE_INPAINT_INSERTION) {
161
+ guidanceScaleDefault = 60;
162
+ }
163
+ const modeOptions = [
164
+ {
165
+ name: 'edit_mode',
166
+ type: OptionType.enum,
167
+ enum: {
168
+ EDIT_MODE_INPAINT_REMOVAL: 'EDIT_MODE_INPAINT_REMOVAL',
169
+ EDIT_MODE_INPAINT_INSERTION: 'EDIT_MODE_INPAINT_INSERTION',
170
+ EDIT_MODE_BGSWAP: 'EDIT_MODE_BGSWAP',
171
+ EDIT_MODE_OUTPAINT: 'EDIT_MODE_OUTPAINT',
172
+ CUSTOMIZATION_SUBJECT: 'CUSTOMIZATION_SUBJECT',
173
+ CUSTOMIZATION_STYLE: 'CUSTOMIZATION_STYLE',
174
+ CUSTOMIZATION_CONTROLLED: 'CUSTOMIZATION_CONTROLLED',
175
+ CUSTOMIZATION_INSTRUCT: 'CUSTOMIZATION_INSTRUCT',
176
+ },
177
+ description: 'The editing mode. CUSTOMIZATION options use few-shot learning to generate images based on a few examples.',
178
+ },
179
+ {
180
+ name: 'guidance_scale',
181
+ type: OptionType.numeric,
182
+ min: 0,
183
+ max: 500,
184
+ default: guidanceScaleDefault,
185
+ integer: true,
186
+ description: 'How closely the generation follows the prompt',
187
+ },
188
+ ];
189
+ const maskOptions = option?.edit_mode?.includes('EDIT')
190
+ ? [
191
+ {
192
+ name: 'mask_mode',
193
+ type: OptionType.enum,
194
+ enum: {
195
+ MASK_MODE_USER_PROVIDED: 'MASK_MODE_USER_PROVIDED',
196
+ MASK_MODE_BACKGROUND: 'MASK_MODE_BACKGROUND',
197
+ MASK_MODE_FOREGROUND: 'MASK_MODE_FOREGROUND',
198
+ MASK_MODE_SEMANTIC: 'MASK_MODE_SEMANTIC',
199
+ },
200
+ default: 'MASK_MODE_USER_PROVIDED',
201
+ description: 'How should the mask for the generation be provided',
202
+ },
203
+ {
204
+ name: 'mask_dilation',
205
+ type: OptionType.numeric,
206
+ min: 0,
207
+ max: 1,
208
+ integer: true,
209
+ description: 'The mask dilation, grows the mask by a percentage of image width to compensate for imprecise masks.',
210
+ },
211
+ ]
212
+ : [];
213
+ const maskClassOptions = option?.mask_mode === ImagenMaskMode.MASK_MODE_SEMANTIC
214
+ ? [
215
+ {
216
+ name: 'mask_class',
217
+ type: OptionType.string_list,
218
+ default: [],
219
+ description: 'Input Class IDs. Create a mask based on image class, based on https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/imagen-api-customization#segment-ids',
220
+ },
221
+ ]
222
+ : [];
223
+ const editOptions = option?.edit_mode?.includes('EDIT')
224
+ ? [
225
+ {
226
+ name: 'edit_steps',
227
+ type: OptionType.numeric,
228
+ default: 75,
229
+ integer: true,
230
+ description: 'The number of steps for the base image generation, more steps means more time and better quality',
231
+ },
232
+ ]
233
+ : [];
234
+ const customizationOptions = option?.edit_mode === ImagenTaskType.CUSTOMIZATION_CONTROLLED ||
235
+ option?.edit_mode === ImagenTaskType.CUSTOMIZATION_SUBJECT
236
+ ? [
237
+ {
238
+ name: 'controlType',
239
+ type: OptionType.enum,
240
+ enum: {
241
+ 'Face Mesh': 'CONTROL_TYPE_FACE_MESH',
242
+ Canny: 'CONTROL_TYPE_CANNY',
243
+ Scribble: 'CONTROL_TYPE_SCRIBBLE',
244
+ },
245
+ default: 'CONTROL_TYPE_CANNY',
246
+ description: 'Method used to generate the control image',
247
+ },
248
+ {
249
+ name: 'controlImageComputation',
250
+ type: OptionType.boolean,
251
+ default: true,
252
+ description: 'Should the control image be computed from the input image, or is it provided',
253
+ },
254
+ ]
255
+ : [];
256
+ return {
257
+ _option_id: 'vertexai-imagen',
258
+ options: [
259
+ ...modeOptions,
260
+ ...commonOptions,
261
+ ...maskOptions,
262
+ ...maskClassOptions,
263
+ ...editOptions,
264
+ ...customizationOptions,
265
+ ...outputOptions,
266
+ ],
267
+ };
268
+ }
269
+ return textOptionsFallback;
270
+ }
271
+ function getGeminiEffortOptions(model) {
272
+ if (model.includes('gemini-3-pro-image')) {
273
+ return { High: 'high' };
274
+ }
275
+ if (model.includes('gemini-3.1-flash-image')) {
276
+ return { Low: 'low', High: 'high' };
277
+ }
278
+ return { Low: 'low', Medium: 'medium', High: 'high' };
279
+ }
280
+ function getGeminiThinkingOptionItems(model) {
281
+ return [
282
+ {
283
+ name: 'include_thoughts',
284
+ type: OptionType.boolean,
285
+ default: false,
286
+ description: "Include the model's reasoning process in the response",
287
+ },
288
+ {
289
+ name: SharedOptions.effort,
290
+ type: OptionType.enum,
291
+ enum: getGeminiEffortOptions(model),
292
+ description: 'Higher thinking levels may improve quality, but increase response times and token costs',
293
+ },
294
+ ];
295
+ }
296
+ function getGeminiOptions(model, option) {
297
+ // Special handling for gemini image / nano banana models
298
+ if (model.includes('image')) {
299
+ const isGemini25OrLater = isGeminiModelVersionGte(model, '2.5');
300
+ const isGemini3OrLater = isGeminiModelVersionGte(model, '3.0');
301
+ const max_tokens_limit = getGeminiMaxTokensLimit(model);
302
+ const excludeOptions = ['max_tokens', 'presence_penalty', 'frequency_penalty', 'seed', 'top_k'];
303
+ let commonOptions = textOptionsFallback.options.filter((option) => !excludeOptions.includes(option.name));
304
+ // Set max temperature to 2.0
305
+ commonOptions = commonOptions.map((option) => {
306
+ if (option.name === SharedOptions.temperature && option.type === OptionType.numeric) {
307
+ return {
308
+ ...option,
309
+ max: 2.0,
310
+ };
311
+ }
312
+ return option;
313
+ });
314
+ const max_tokens = [
315
+ {
316
+ name: SharedOptions.max_tokens,
317
+ type: OptionType.numeric,
318
+ min: 1,
319
+ max: max_tokens_limit,
320
+ integer: true,
321
+ step: 200,
322
+ description: 'Maximum output tokens',
323
+ },
324
+ ];
325
+ const imageOptions = [];
326
+ // Aspect ratio, person generation, prominent people: 2.5+
327
+ if (isGemini25OrLater) {
328
+ imageOptions.push({
329
+ name: 'image_aspect_ratio',
330
+ type: OptionType.enum,
331
+ enum: {
332
+ '1:1': '1:1',
333
+ '2:3': '2:3',
334
+ '3:2': '3:2',
335
+ '3:4': '3:4',
336
+ '4:3': '4:3',
337
+ '9:16': '9:16',
338
+ '16:9': '16:9',
339
+ '21:9': '21:9',
340
+ },
341
+ default: '1:1',
342
+ description: 'Aspect ratio of the generated images',
343
+ }, {
344
+ name: 'person_generation',
345
+ type: OptionType.enum,
346
+ enum: {
347
+ 'Allow all people': 'ALLOW_ALL',
348
+ 'Allow adults only': 'ALLOW_ADULT',
349
+ 'Do not generate people': 'ALLOW_NONE',
350
+ },
351
+ default: 'ALLOW_ALL',
352
+ description: 'Controls the generation of people in images',
353
+ }, {
354
+ name: 'prominent_people',
355
+ type: OptionType.enum,
356
+ enum: {
357
+ 'Allow prominent people': 'ALLOW_PROMINENT_PEOPLE',
358
+ 'Block prominent people': 'BLOCK_PROMINENT_PEOPLE',
359
+ },
360
+ description: 'Controls whether prominent people (celebrities) can be generated',
361
+ });
362
+ }
363
+ // Resolution settings: 3.0+
364
+ if (isGemini3OrLater) {
365
+ imageOptions.push({
366
+ name: 'image_size',
367
+ type: OptionType.enum,
368
+ enum: {
369
+ '1K': '1K',
370
+ '2K': '2K',
371
+ '4K': '4K',
372
+ },
373
+ default: '1K',
374
+ description: 'Size of generated images',
375
+ });
376
+ }
377
+ // Output format: all image models
378
+ imageOptions.push({
379
+ name: 'output_mime_type',
380
+ type: OptionType.enum,
381
+ enum: {
382
+ PNG: 'image/png',
383
+ JPEG: 'image/jpeg',
384
+ },
385
+ default: 'image/png',
386
+ description: 'MIME type of the generated image',
387
+ refresh: true,
388
+ });
389
+ if (option?.output_mime_type === 'image/jpeg') {
390
+ imageOptions.push({
391
+ name: 'output_compression_quality',
392
+ type: OptionType.numeric,
393
+ min: 0,
394
+ max: 100,
395
+ default: 90,
396
+ integer: true,
397
+ description: 'Compression quality for JPEG images (0-100)',
398
+ });
399
+ }
400
+ // Thinking options: 3.0+ (same as non-image counterparts)
401
+ const thinkingOptions = isGemini3OrLater ? getGeminiThinkingOptionItems(model) : [];
402
+ return {
403
+ _option_id: 'vertexai-gemini',
404
+ options: [...max_tokens, ...commonOptions, ...imageOptions, ...thinkingOptions],
405
+ };
406
+ }
407
+ const max_tokens_limit = getGeminiMaxTokensLimit(model);
408
+ const excludeOptions = ['max_tokens'];
409
+ const commonOptions = textOptionsFallback.options.filter((option) => !excludeOptions.includes(option.name));
410
+ const max_tokens = [
411
+ {
412
+ name: SharedOptions.max_tokens,
413
+ type: OptionType.numeric,
414
+ min: 1,
415
+ max: max_tokens_limit,
416
+ integer: true,
417
+ step: 200,
418
+ description: 'The maximum number of tokens to generate',
419
+ },
420
+ ];
421
+ const seedOption = {
422
+ name: SharedOptions.seed,
423
+ type: OptionType.numeric,
424
+ integer: true,
425
+ description: 'The seed for the generation, useful for reproducibility',
426
+ };
427
+ if (isGeminiModelVersionGte(model, '3.0')) {
428
+ const flexOptions = isFlexSupportedGeminiModel(model)
429
+ ? [
430
+ {
431
+ name: 'flex',
432
+ type: OptionType.boolean,
433
+ default: false,
434
+ description: 'Use Flex processing tier for cost-efficient, batch-style execution with relaxed latency.',
435
+ },
436
+ ]
437
+ : [];
438
+ return {
439
+ _option_id: 'vertexai-gemini',
440
+ options: [
441
+ ...max_tokens,
442
+ ...commonOptions,
443
+ seedOption,
444
+ ...getGeminiThinkingOptionItems(model),
445
+ ...flexOptions,
446
+ ],
447
+ };
448
+ }
449
+ if (model.includes('-2.5-')) {
450
+ // Gemini 2.5 thinking models
451
+ // Set budget token ranges based on model variant
452
+ let budgetMin = -1;
453
+ let budgetMax = 24576;
454
+ let budgetDescription = '';
455
+ if (model.includes('flash-lite')) {
456
+ budgetMin = -1;
457
+ budgetMax = 24576;
458
+ budgetDescription =
459
+ 'The target number of tokens to use for reasoning. ' +
460
+ 'Flash Lite default: Model does not think. ' +
461
+ 'Range: 512-24576 tokens. ' +
462
+ 'Set to 0 to disable thinking, -1 for dynamic thinking.';
463
+ }
464
+ else if (model.includes('flash')) {
465
+ budgetMin = -1;
466
+ budgetMax = 24576;
467
+ budgetDescription =
468
+ 'The target number of tokens to use for reasoning. ' +
469
+ 'Flash default: Dynamic thinking (model decides when and how much to think). ' +
470
+ 'Range: 0-24576 tokens. ' +
471
+ 'Set to 0 to disable thinking, -1 for dynamic thinking.';
472
+ }
473
+ else if (model.includes('pro')) {
474
+ budgetMin = -1;
475
+ budgetMax = 32768;
476
+ budgetDescription =
477
+ 'The target number of tokens to use for reasoning. ' +
478
+ 'Pro default: Dynamic thinking (model decides when and how much to think). ' +
479
+ 'Range: 128-32768 tokens. ' +
480
+ 'Cannot disable thinking - minimum 128 tokens. Set to -1 for dynamic thinking.';
481
+ }
482
+ const geminiThinkingOptions = [
483
+ {
484
+ name: 'include_thoughts',
485
+ type: OptionType.boolean,
486
+ default: false,
487
+ description: "Include the model's reasoning process in the response",
488
+ },
489
+ {
490
+ name: 'thinking_budget_tokens',
491
+ type: OptionType.numeric,
492
+ min: budgetMin,
493
+ max: budgetMax,
494
+ default: undefined,
495
+ integer: true,
496
+ step: 100,
497
+ description: budgetDescription,
498
+ },
499
+ ];
500
+ return {
501
+ _option_id: 'vertexai-gemini',
502
+ options: [...max_tokens, ...commonOptions, seedOption, ...geminiThinkingOptions],
503
+ };
504
+ }
505
+ return {
506
+ _option_id: 'vertexai-gemini',
507
+ options: [...max_tokens, ...commonOptions, seedOption],
508
+ };
509
+ }
510
+ function getClaudeOptions(model, option) {
511
+ const max_tokens_limit = getClaudeMaxTokensLimit(model);
512
+ const excludeOptions = ['max_tokens', 'presence_penalty', 'frequency_penalty'];
513
+ let commonOptions = textOptionsFallback.options.filter((option) => !excludeOptions.includes(option.name));
514
+ // Opus 4.7+ models no longer support temperature, top_p, top_k (returns 400 error)
515
+ // Opus 4.6 and Sonnet 4.6 still support these parameters
516
+ const hasSamplingRestriction = hasSamplingParameterRestriction(model);
517
+ if (hasSamplingRestriction) {
518
+ commonOptions = commonOptions.filter((option) => option.name !== SharedOptions.temperature &&
519
+ option.name !== SharedOptions.top_p &&
520
+ option.name !== 'top_k');
521
+ }
522
+ const max_tokens = [
523
+ {
524
+ name: SharedOptions.max_tokens,
525
+ type: OptionType.numeric,
526
+ min: 1,
527
+ max: max_tokens_limit,
528
+ integer: true,
529
+ step: 200,
530
+ description: 'The maximum number of tokens to generate',
531
+ },
532
+ ];
533
+ return {
534
+ _option_id: 'vertexai-claude',
535
+ options: [
536
+ ...max_tokens,
537
+ ...commonOptions,
538
+ ...buildClaudeEffortOptions(model),
539
+ ...buildClaudeThinkingBudgetOption(model),
540
+ ...buildClaudeIncludeThoughtsOption(model),
541
+ ...buildClaudeCacheOptions(),
542
+ ...buildClaudeCacheTtlOptions(option?.cache_enabled),
543
+ ],
544
+ };
545
+ }
546
+ function getLlamaOptions(model) {
547
+ const max_tokens_limit = getLlamaMaxTokensLimit(model);
548
+ const excludeOptions = ['max_tokens', 'presence_penalty', 'frequency_penalty', 'stop_sequence'];
549
+ let commonOptions = textOptionsFallback.options.filter((option) => !excludeOptions.includes(option.name));
550
+ const max_tokens = [
551
+ {
552
+ name: SharedOptions.max_tokens,
553
+ type: OptionType.numeric,
554
+ min: 1,
555
+ max: max_tokens_limit,
556
+ integer: true,
557
+ step: 200,
558
+ description: 'The maximum number of tokens to generate',
559
+ },
560
+ ];
561
+ // Set max temperature to 1.0 for Llama models
562
+ commonOptions = commonOptions.map((option) => {
563
+ if (option.name === SharedOptions.temperature && option.type === OptionType.numeric) {
564
+ return {
565
+ ...option,
566
+ max: 1.0,
567
+ };
568
+ }
569
+ return option;
570
+ });
571
+ return {
572
+ _option_id: 'text-fallback',
573
+ options: [...max_tokens, ...commonOptions],
574
+ };
575
+ }
576
+ function getGeminiMaxTokensLimit(model) {
577
+ if (model.includes('image')) {
578
+ return isGeminiModelVersionGte(model, '2.5') ? 32768 : 8192;
579
+ }
580
+ if (model.includes('thinking') || isGeminiModelVersionGte(model, '2.5')) {
581
+ return 65535; // API upper bound is exclusive
582
+ }
583
+ if (model.includes('ultra') || model.includes('vision')) {
584
+ return 2048;
585
+ }
586
+ return 8192;
587
+ }
588
+ function getLlamaMaxTokensLimit(_model) {
589
+ return 8192;
590
+ }
591
+ export function getMaxTokensLimitVertexAi(model) {
592
+ if (model.includes('imagen-')) {
593
+ return 0; // Imagen models do not have a max tokens limit in the same way as text models
594
+ }
595
+ else if (model.includes('claude')) {
596
+ return getClaudeMaxTokensLimit(model);
597
+ }
598
+ else if (model.includes('gemini')) {
599
+ return getGeminiMaxTokensLimit(model);
600
+ }
601
+ else if (model.includes('llama')) {
602
+ return getLlamaMaxTokensLimit(model);
603
+ }
604
+ return 8192; // Default fallback limit
605
+ }
606
+ //# sourceMappingURL=vertexai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vertexai.js","sourceRoot":"","sources":["../../src/options/vertexai.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { ModelOptionsInfo, ModelOptions, Providers } from "./types.js";
1
+ import { type ModelOptions, type ModelOptionsInfo, Providers } from './types.js';
2
2
  export declare function getOptions(model: string, provider?: string | Providers, options?: ModelOptions): ModelOptionsInfo;
3
3
  //# sourceMappingURL=options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,gBAAgB,CAoBjH"}
@@ -1,15 +1,18 @@
1
- import { getBedrockOptions } from "./options/bedrock.js";
2
- import { getGroqOptions } from "./options/groq.js";
3
- import { getOpenAiOptions } from "./options/openai.js";
4
- import { getVertexAiOptions } from "./options/vertexai.js";
5
- import { textOptionsFallback } from "./options/fallback.js";
6
- import { Providers } from "./types.js";
7
- import { getAzureFoundryOptions } from "./options/azure_foundry.js";
1
+ import { getAnthropicOptions } from './options/anthropic.js';
2
+ import { getAzureFoundryOptions } from './options/azure_foundry.js';
3
+ import { getBedrockOptions } from './options/bedrock.js';
4
+ import { textOptionsFallback } from './options/fallback.js';
5
+ import { getGroqOptions } from './options/groq.js';
6
+ import { getOpenAiOptions } from './options/openai.js';
7
+ import { getVertexAiOptions } from './options/vertexai.js';
8
+ import { Providers } from './types.js';
8
9
  export function getOptions(model, provider, options) {
9
10
  if (!provider) {
10
11
  return textOptionsFallback;
11
12
  }
12
13
  switch (provider.toLowerCase()) {
14
+ case Providers.anthropic:
15
+ return getAnthropicOptions(model, options);
13
16
  case Providers.bedrock:
14
17
  return getBedrockOptions(model, options);
15
18
  case Providers.vertexai:
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAA4C,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjF,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,QAA6B,EAAE,OAAsB;IAC3F,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IACD,QAAQ,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC7B,KAAK,SAAS,CAAC,SAAS;YACpB,OAAO,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,KAAK,SAAS,CAAC,OAAO;YAClB,OAAO,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,KAAK,SAAS,CAAC,QAAQ;YACnB,OAAO,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9C,KAAK,SAAS,CAAC,MAAM;YACjB,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5C,KAAK,SAAS,CAAC,IAAI;YACf,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,KAAK,SAAS,CAAC,aAAa;YACxB,OAAO,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAClD;YACI,OAAO,mBAAmB,CAAC;IACnC,CAAC;AACL,CAAC"}