ai.matey.utils 0.2.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.
- package/LICENSE +21 -0
- package/dist/cjs/conversation-history.js +139 -0
- package/dist/cjs/conversation-history.js.map +1 -0
- package/dist/cjs/index.js +42 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/model-cache.js +163 -0
- package/dist/cjs/model-cache.js.map +1 -0
- package/dist/cjs/parameter-normalizer.js +451 -0
- package/dist/cjs/parameter-normalizer.js.map +1 -0
- package/dist/cjs/streaming-modes.js +277 -0
- package/dist/cjs/streaming-modes.js.map +1 -0
- package/dist/cjs/streaming.js +892 -0
- package/dist/cjs/streaming.js.map +1 -0
- package/dist/cjs/structured-output.js +398 -0
- package/dist/cjs/structured-output.js.map +1 -0
- package/dist/cjs/system-message.js +222 -0
- package/dist/cjs/system-message.js.map +1 -0
- package/dist/cjs/validation.js +534 -0
- package/dist/cjs/validation.js.map +1 -0
- package/dist/cjs/warnings.js +301 -0
- package/dist/cjs/warnings.js.map +1 -0
- package/dist/esm/conversation-history.js +134 -0
- package/dist/esm/conversation-history.js.map +1 -0
- package/dist/esm/index.js +26 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/model-cache.js +158 -0
- package/dist/esm/model-cache.js.map +1 -0
- package/dist/esm/parameter-normalizer.js +434 -0
- package/dist/esm/parameter-normalizer.js.map +1 -0
- package/dist/esm/streaming-modes.js +265 -0
- package/dist/esm/streaming-modes.js.map +1 -0
- package/dist/esm/streaming.js +860 -0
- package/dist/esm/streaming.js.map +1 -0
- package/dist/esm/structured-output.js +387 -0
- package/dist/esm/structured-output.js.map +1 -0
- package/dist/esm/system-message.js +213 -0
- package/dist/esm/system-message.js.map +1 -0
- package/dist/esm/validation.js +523 -0
- package/dist/esm/validation.js.map +1 -0
- package/dist/esm/warnings.js +284 -0
- package/dist/esm/warnings.js.map +1 -0
- package/dist/types/conversation-history.d.ts +70 -0
- package/dist/types/conversation-history.d.ts.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/model-cache.d.ts +88 -0
- package/dist/types/model-cache.d.ts.map +1 -0
- package/dist/types/parameter-normalizer.d.ts +154 -0
- package/dist/types/parameter-normalizer.d.ts.map +1 -0
- package/dist/types/streaming-modes.d.ts +139 -0
- package/dist/types/streaming-modes.d.ts.map +1 -0
- package/dist/types/streaming.d.ts +384 -0
- package/dist/types/streaming.d.ts.map +1 -0
- package/dist/types/structured-output.d.ts +157 -0
- package/dist/types/structured-output.d.ts.map +1 -0
- package/dist/types/system-message.d.ts +78 -0
- package/dist/types/system-message.d.ts.map +1 -0
- package/dist/types/validation.d.ts +46 -0
- package/dist/types/validation.d.ts.map +1 -0
- package/dist/types/warnings.d.ts +149 -0
- package/dist/types/warnings.d.ts.map +1 -0
- package/package.json +75 -0
- package/readme.md +280 -0
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Parameter Normalization Utilities
|
|
4
|
+
*
|
|
5
|
+
* Normalizes parameters across different provider ranges and conventions.
|
|
6
|
+
* Enhanced with warning generation for semantic drift tracking.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.normalizeTemperature = normalizeTemperature;
|
|
12
|
+
exports.denormalizeTemperature = denormalizeTemperature;
|
|
13
|
+
exports.normalizeTopP = normalizeTopP;
|
|
14
|
+
exports.normalizeTopK = normalizeTopK;
|
|
15
|
+
exports.normalizePenalty = normalizePenalty;
|
|
16
|
+
exports.normalizeStopSequences = normalizeStopSequences;
|
|
17
|
+
exports.filterUnsupportedParameters = filterUnsupportedParameters;
|
|
18
|
+
exports.applyParameterDefaults = applyParameterDefaults;
|
|
19
|
+
exports.mergeParameters = mergeParameters;
|
|
20
|
+
exports.clampParameter = clampParameter;
|
|
21
|
+
exports.sanitizeParameters = sanitizeParameters;
|
|
22
|
+
exports.areParametersValid = areParametersValid;
|
|
23
|
+
exports.normalizeTemperatureWithWarnings = normalizeTemperatureWithWarnings;
|
|
24
|
+
exports.normalizeStopSequencesWithWarnings = normalizeStopSequencesWithWarnings;
|
|
25
|
+
exports.filterUnsupportedParametersWithWarnings = filterUnsupportedParametersWithWarnings;
|
|
26
|
+
const warnings_js_1 = require("./warnings.js");
|
|
27
|
+
// ============================================================================
|
|
28
|
+
// Parameter Normalization
|
|
29
|
+
// ============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Normalize temperature to provider's range.
|
|
32
|
+
*
|
|
33
|
+
* IR uses 0-2 range (OpenAI convention).
|
|
34
|
+
* Some providers use 0-1 range (Anthropic).
|
|
35
|
+
*
|
|
36
|
+
* @param temperature Temperature value (0-2)
|
|
37
|
+
* @param targetRange Target range ('0-1' or '0-2')
|
|
38
|
+
* @returns Normalized temperature
|
|
39
|
+
*/
|
|
40
|
+
function normalizeTemperature(temperature, targetRange = '0-2') {
|
|
41
|
+
if (temperature === undefined) {
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
// Clamp to IR range
|
|
45
|
+
const clamped = Math.max(0, Math.min(2, temperature));
|
|
46
|
+
if (targetRange === '0-1') {
|
|
47
|
+
// Scale 0-2 to 0-1
|
|
48
|
+
return clamped / 2;
|
|
49
|
+
}
|
|
50
|
+
return clamped;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Denormalize temperature from provider's range back to IR.
|
|
54
|
+
*
|
|
55
|
+
* @param temperature Temperature value from provider
|
|
56
|
+
* @param sourceRange Source range ('0-1' or '0-2')
|
|
57
|
+
* @returns IR temperature (0-2)
|
|
58
|
+
*/
|
|
59
|
+
function denormalizeTemperature(temperature, sourceRange = '0-2') {
|
|
60
|
+
if (temperature === undefined) {
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
if (sourceRange === '0-1') {
|
|
64
|
+
// Scale 0-1 to 0-2
|
|
65
|
+
return temperature * 2;
|
|
66
|
+
}
|
|
67
|
+
return temperature;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Normalize topP parameter.
|
|
71
|
+
*
|
|
72
|
+
* Always 0-1 range across providers.
|
|
73
|
+
*
|
|
74
|
+
* @param topP TopP value
|
|
75
|
+
* @returns Clamped topP
|
|
76
|
+
*/
|
|
77
|
+
function normalizeTopP(topP) {
|
|
78
|
+
if (topP === undefined) {
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
return Math.max(0, Math.min(1, topP));
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Normalize topK parameter.
|
|
85
|
+
*
|
|
86
|
+
* @param topK TopK value
|
|
87
|
+
* @param maxTopK Maximum topK supported by provider
|
|
88
|
+
* @returns Clamped topK
|
|
89
|
+
*/
|
|
90
|
+
function normalizeTopK(topK, maxTopK = 100) {
|
|
91
|
+
if (topK === undefined) {
|
|
92
|
+
return undefined;
|
|
93
|
+
}
|
|
94
|
+
return Math.max(1, Math.min(maxTopK, Math.floor(topK)));
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Normalize penalty parameters (frequency, presence).
|
|
98
|
+
*
|
|
99
|
+
* IR uses -2 to 2 range (OpenAI convention).
|
|
100
|
+
* Some providers might use different ranges.
|
|
101
|
+
*
|
|
102
|
+
* @param penalty Penalty value
|
|
103
|
+
* @param targetRange Target range
|
|
104
|
+
* @returns Normalized penalty
|
|
105
|
+
*/
|
|
106
|
+
function normalizePenalty(penalty, targetRange = { min: -2, max: 2 }) {
|
|
107
|
+
if (penalty === undefined) {
|
|
108
|
+
return undefined;
|
|
109
|
+
}
|
|
110
|
+
// Clamp to IR range first
|
|
111
|
+
const clamped = Math.max(-2, Math.min(2, penalty));
|
|
112
|
+
// Map from -2..2 to target range
|
|
113
|
+
const normalized = ((clamped + 2) / 4) * (targetRange.max - targetRange.min) + targetRange.min;
|
|
114
|
+
return normalized;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Normalize stop sequences.
|
|
118
|
+
*
|
|
119
|
+
* @param stopSequences Stop sequences array
|
|
120
|
+
* @param maxStopSequences Maximum number of stop sequences supported
|
|
121
|
+
* @returns Normalized stop sequences
|
|
122
|
+
*/
|
|
123
|
+
function normalizeStopSequences(stopSequences, maxStopSequences) {
|
|
124
|
+
if (!stopSequences || stopSequences.length === 0) {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
// Remove duplicates
|
|
128
|
+
const unique = Array.from(new Set(stopSequences));
|
|
129
|
+
// Limit to max if specified
|
|
130
|
+
if (maxStopSequences !== undefined && maxStopSequences > 0) {
|
|
131
|
+
return unique.slice(0, maxStopSequences);
|
|
132
|
+
}
|
|
133
|
+
return unique;
|
|
134
|
+
}
|
|
135
|
+
// ============================================================================
|
|
136
|
+
// Parameter Filtering
|
|
137
|
+
// ============================================================================
|
|
138
|
+
/**
|
|
139
|
+
* Filter parameters based on provider capabilities.
|
|
140
|
+
*
|
|
141
|
+
* Removes parameters that the provider doesn't support.
|
|
142
|
+
*
|
|
143
|
+
* @param parameters IR parameters
|
|
144
|
+
* @param capabilities Provider capabilities
|
|
145
|
+
* @returns Filtered parameters
|
|
146
|
+
*/
|
|
147
|
+
function filterUnsupportedParameters(parameters, capabilities) {
|
|
148
|
+
if (!parameters) {
|
|
149
|
+
return {};
|
|
150
|
+
}
|
|
151
|
+
const filtered = {
|
|
152
|
+
model: parameters.model,
|
|
153
|
+
};
|
|
154
|
+
// Only include supported parameters
|
|
155
|
+
if (capabilities.supportsTemperature !== false && parameters.temperature !== undefined) {
|
|
156
|
+
filtered.temperature = parameters.temperature;
|
|
157
|
+
}
|
|
158
|
+
if (capabilities.supportsTopP !== false && parameters.topP !== undefined) {
|
|
159
|
+
filtered.topP = parameters.topP;
|
|
160
|
+
}
|
|
161
|
+
if (capabilities.supportsTopK && parameters.topK !== undefined) {
|
|
162
|
+
filtered.topK = parameters.topK;
|
|
163
|
+
}
|
|
164
|
+
if (capabilities.supportsFrequencyPenalty !== false &&
|
|
165
|
+
parameters.frequencyPenalty !== undefined) {
|
|
166
|
+
filtered.frequencyPenalty = parameters.frequencyPenalty;
|
|
167
|
+
}
|
|
168
|
+
if (capabilities.supportsPresencePenalty !== false && parameters.presencePenalty !== undefined) {
|
|
169
|
+
filtered.presencePenalty = parameters.presencePenalty;
|
|
170
|
+
}
|
|
171
|
+
if (parameters.maxTokens !== undefined) {
|
|
172
|
+
filtered.maxTokens = parameters.maxTokens;
|
|
173
|
+
}
|
|
174
|
+
if (parameters.stopSequences !== undefined) {
|
|
175
|
+
filtered.stopSequences = normalizeStopSequences(parameters.stopSequences, capabilities.maxStopSequences);
|
|
176
|
+
}
|
|
177
|
+
if (capabilities.supportsSeed !== false && parameters.seed !== undefined) {
|
|
178
|
+
filtered.seed = parameters.seed;
|
|
179
|
+
}
|
|
180
|
+
if (parameters.user !== undefined) {
|
|
181
|
+
filtered.user = parameters.user;
|
|
182
|
+
}
|
|
183
|
+
if (parameters.custom !== undefined) {
|
|
184
|
+
filtered.custom = parameters.custom;
|
|
185
|
+
}
|
|
186
|
+
return filtered;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Apply parameter defaults.
|
|
190
|
+
*
|
|
191
|
+
* @param parameters IR parameters
|
|
192
|
+
* @param defaults Default values
|
|
193
|
+
* @returns Parameters with defaults applied
|
|
194
|
+
*/
|
|
195
|
+
function applyParameterDefaults(parameters, defaults) {
|
|
196
|
+
return {
|
|
197
|
+
...defaults,
|
|
198
|
+
...parameters,
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Merge parameter objects.
|
|
203
|
+
*
|
|
204
|
+
* Later parameters override earlier ones.
|
|
205
|
+
*
|
|
206
|
+
* @param parameterSets Parameter objects to merge
|
|
207
|
+
* @returns Merged parameters
|
|
208
|
+
*/
|
|
209
|
+
function mergeParameters(...parameterSets) {
|
|
210
|
+
const merged = {};
|
|
211
|
+
for (const params of parameterSets) {
|
|
212
|
+
if (!params) {
|
|
213
|
+
continue;
|
|
214
|
+
}
|
|
215
|
+
Object.assign(merged, params);
|
|
216
|
+
}
|
|
217
|
+
return merged;
|
|
218
|
+
}
|
|
219
|
+
// ============================================================================
|
|
220
|
+
// Parameter Validation
|
|
221
|
+
// ============================================================================
|
|
222
|
+
/**
|
|
223
|
+
* Clamp parameter to valid range.
|
|
224
|
+
*
|
|
225
|
+
* @param value Parameter value
|
|
226
|
+
* @param min Minimum value
|
|
227
|
+
* @param max Maximum value
|
|
228
|
+
* @returns Clamped value
|
|
229
|
+
*/
|
|
230
|
+
function clampParameter(value, min, max) {
|
|
231
|
+
if (value === undefined) {
|
|
232
|
+
return undefined;
|
|
233
|
+
}
|
|
234
|
+
return Math.max(min, Math.min(max, value));
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Sanitize parameters by clamping to valid ranges.
|
|
238
|
+
*
|
|
239
|
+
* @param parameters IR parameters
|
|
240
|
+
* @returns Sanitized parameters
|
|
241
|
+
*/
|
|
242
|
+
function sanitizeParameters(parameters) {
|
|
243
|
+
if (!parameters) {
|
|
244
|
+
return {};
|
|
245
|
+
}
|
|
246
|
+
const sanitized = { ...parameters };
|
|
247
|
+
if (parameters.temperature !== undefined) {
|
|
248
|
+
sanitized.temperature = clampParameter(parameters.temperature, 0, 2);
|
|
249
|
+
}
|
|
250
|
+
if (parameters.maxTokens !== undefined) {
|
|
251
|
+
sanitized.maxTokens = Math.max(1, Math.floor(parameters.maxTokens));
|
|
252
|
+
}
|
|
253
|
+
if (parameters.topP !== undefined) {
|
|
254
|
+
sanitized.topP = clampParameter(parameters.topP, 0, 1);
|
|
255
|
+
}
|
|
256
|
+
if (parameters.topK !== undefined) {
|
|
257
|
+
sanitized.topK = Math.max(1, Math.floor(parameters.topK));
|
|
258
|
+
}
|
|
259
|
+
if (parameters.frequencyPenalty !== undefined) {
|
|
260
|
+
sanitized.frequencyPenalty = clampParameter(parameters.frequencyPenalty, -2, 2);
|
|
261
|
+
}
|
|
262
|
+
if (parameters.presencePenalty !== undefined) {
|
|
263
|
+
sanitized.presencePenalty = clampParameter(parameters.presencePenalty, -2, 2);
|
|
264
|
+
}
|
|
265
|
+
if (parameters.seed !== undefined) {
|
|
266
|
+
sanitized.seed = Math.floor(parameters.seed);
|
|
267
|
+
}
|
|
268
|
+
return sanitized;
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Check if parameters are within valid ranges.
|
|
272
|
+
*
|
|
273
|
+
* @param parameters IR parameters
|
|
274
|
+
* @returns true if all parameters are valid
|
|
275
|
+
*/
|
|
276
|
+
function areParametersValid(parameters) {
|
|
277
|
+
if (!parameters) {
|
|
278
|
+
return true;
|
|
279
|
+
}
|
|
280
|
+
// Check temperature
|
|
281
|
+
if (parameters.temperature !== undefined) {
|
|
282
|
+
if (parameters.temperature < 0 || parameters.temperature > 2) {
|
|
283
|
+
return false;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
// Check maxTokens
|
|
287
|
+
if (parameters.maxTokens !== undefined) {
|
|
288
|
+
if (parameters.maxTokens < 1 || !Number.isInteger(parameters.maxTokens)) {
|
|
289
|
+
return false;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
// Check topP
|
|
293
|
+
if (parameters.topP !== undefined) {
|
|
294
|
+
if (parameters.topP < 0 || parameters.topP > 1) {
|
|
295
|
+
return false;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
// Check topK
|
|
299
|
+
if (parameters.topK !== undefined) {
|
|
300
|
+
if (parameters.topK < 1 || !Number.isInteger(parameters.topK)) {
|
|
301
|
+
return false;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
// Check penalties
|
|
305
|
+
if (parameters.frequencyPenalty !== undefined) {
|
|
306
|
+
if (parameters.frequencyPenalty < -2 || parameters.frequencyPenalty > 2) {
|
|
307
|
+
return false;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
if (parameters.presencePenalty !== undefined) {
|
|
311
|
+
if (parameters.presencePenalty < -2 || parameters.presencePenalty > 2) {
|
|
312
|
+
return false;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
return true;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Normalize temperature with warning generation.
|
|
319
|
+
*
|
|
320
|
+
* @param temperature Temperature value (0-2)
|
|
321
|
+
* @param targetRange Target range ('0-1' or '0-2')
|
|
322
|
+
* @param source Source adapter name
|
|
323
|
+
* @returns Normalized temperature and warnings
|
|
324
|
+
*/
|
|
325
|
+
function normalizeTemperatureWithWarnings(temperature, targetRange = '0-2', source) {
|
|
326
|
+
const warnings = [];
|
|
327
|
+
if (temperature === undefined) {
|
|
328
|
+
return { value: undefined, warnings };
|
|
329
|
+
}
|
|
330
|
+
const original = temperature;
|
|
331
|
+
const clamped = Math.max(0, Math.min(2, temperature));
|
|
332
|
+
// Warn if clamped
|
|
333
|
+
if (clamped !== original) {
|
|
334
|
+
warnings.push((0, warnings_js_1.createClampingWarning)('temperature', original, clamped, 0, 2, source));
|
|
335
|
+
}
|
|
336
|
+
if (targetRange === '0-1') {
|
|
337
|
+
const normalized = clamped / 2;
|
|
338
|
+
// Warn about scaling
|
|
339
|
+
if (clamped > 1) {
|
|
340
|
+
warnings.push((0, warnings_js_1.createNormalizationWarning)('temperature', clamped, normalized, `Temperature scaled from 0-2 range (${clamped}) to 0-1 range (${normalized.toFixed(2)})`, source));
|
|
341
|
+
}
|
|
342
|
+
return { value: normalized, warnings };
|
|
343
|
+
}
|
|
344
|
+
return { value: clamped, warnings };
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Normalize stop sequences with warning generation.
|
|
348
|
+
*
|
|
349
|
+
* @param stopSequences Stop sequences array
|
|
350
|
+
* @param maxStopSequences Maximum number supported
|
|
351
|
+
* @param source Source adapter name
|
|
352
|
+
* @returns Normalized stop sequences and warnings
|
|
353
|
+
*/
|
|
354
|
+
function normalizeStopSequencesWithWarnings(stopSequences, maxStopSequences, source) {
|
|
355
|
+
const warnings = [];
|
|
356
|
+
if (!stopSequences || stopSequences.length === 0) {
|
|
357
|
+
return { value: undefined, warnings };
|
|
358
|
+
}
|
|
359
|
+
// Remove duplicates
|
|
360
|
+
const unique = Array.from(new Set(stopSequences));
|
|
361
|
+
// Limit to max if specified
|
|
362
|
+
if (maxStopSequences !== undefined && maxStopSequences > 0 && unique.length > maxStopSequences) {
|
|
363
|
+
warnings.push((0, warnings_js_1.createStopSequencesTruncatedWarning)(unique.length, maxStopSequences, source));
|
|
364
|
+
return { value: unique.slice(0, maxStopSequences), warnings };
|
|
365
|
+
}
|
|
366
|
+
return { value: unique, warnings };
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Filter parameters with warning generation.
|
|
370
|
+
*
|
|
371
|
+
* @param parameters IR parameters
|
|
372
|
+
* @param capabilities Provider capabilities
|
|
373
|
+
* @param source Source adapter name
|
|
374
|
+
* @returns Filtered parameters and warnings
|
|
375
|
+
*/
|
|
376
|
+
function filterUnsupportedParametersWithWarnings(parameters, capabilities, source) {
|
|
377
|
+
const warnings = [];
|
|
378
|
+
if (!parameters) {
|
|
379
|
+
return { value: {}, warnings };
|
|
380
|
+
}
|
|
381
|
+
const filtered = {
|
|
382
|
+
model: parameters.model,
|
|
383
|
+
};
|
|
384
|
+
// Check each parameter for support
|
|
385
|
+
if (parameters.temperature !== undefined) {
|
|
386
|
+
if (capabilities.supportsTemperature !== false) {
|
|
387
|
+
filtered.temperature = parameters.temperature;
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('temperature', parameters.temperature, source));
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
if (parameters.topP !== undefined) {
|
|
394
|
+
if (capabilities.supportsTopP !== false) {
|
|
395
|
+
filtered.topP = parameters.topP;
|
|
396
|
+
}
|
|
397
|
+
else {
|
|
398
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('topP', parameters.topP, source));
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
if (parameters.topK !== undefined) {
|
|
402
|
+
if (capabilities.supportsTopK) {
|
|
403
|
+
filtered.topK = parameters.topK;
|
|
404
|
+
}
|
|
405
|
+
else {
|
|
406
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('topK', parameters.topK, source));
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
if (parameters.frequencyPenalty !== undefined) {
|
|
410
|
+
if (capabilities.supportsFrequencyPenalty !== false) {
|
|
411
|
+
filtered.frequencyPenalty = parameters.frequencyPenalty;
|
|
412
|
+
}
|
|
413
|
+
else {
|
|
414
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('frequencyPenalty', parameters.frequencyPenalty, source));
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
if (parameters.presencePenalty !== undefined) {
|
|
418
|
+
if (capabilities.supportsPresencePenalty !== false) {
|
|
419
|
+
filtered.presencePenalty = parameters.presencePenalty;
|
|
420
|
+
}
|
|
421
|
+
else {
|
|
422
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('presencePenalty', parameters.presencePenalty, source));
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
if (parameters.seed !== undefined) {
|
|
426
|
+
if (capabilities.supportsSeed !== false) {
|
|
427
|
+
filtered.seed = parameters.seed;
|
|
428
|
+
}
|
|
429
|
+
else {
|
|
430
|
+
warnings.push((0, warnings_js_1.createUnsupportedParameterWarning)('seed', parameters.seed, source));
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
// Always include these
|
|
434
|
+
if (parameters.maxTokens !== undefined) {
|
|
435
|
+
filtered.maxTokens = parameters.maxTokens;
|
|
436
|
+
}
|
|
437
|
+
// Handle stop sequences with warnings
|
|
438
|
+
if (parameters.stopSequences !== undefined) {
|
|
439
|
+
const stopResult = normalizeStopSequencesWithWarnings(parameters.stopSequences, capabilities.maxStopSequences, source);
|
|
440
|
+
filtered.stopSequences = stopResult.value;
|
|
441
|
+
warnings.push(...stopResult.warnings);
|
|
442
|
+
}
|
|
443
|
+
if (parameters.user !== undefined) {
|
|
444
|
+
filtered.user = parameters.user;
|
|
445
|
+
}
|
|
446
|
+
if (parameters.custom !== undefined) {
|
|
447
|
+
filtered.custom = parameters.custom;
|
|
448
|
+
}
|
|
449
|
+
return { value: filtered, warnings };
|
|
450
|
+
}
|
|
451
|
+
//# sourceMappingURL=parameter-normalizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parameter-normalizer.js","sourceRoot":"","sources":["../../src/parameter-normalizer.ts"],"names":[],"mappings":"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"}
|