@typia/utils 12.0.0-dev.20260305 → 12.0.0-dev.20260307

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 (60) hide show
  1. package/README.md +5 -5
  2. package/lib/converters/LlmSchemaConverter.d.ts +1 -20
  3. package/lib/converters/LlmSchemaConverter.js +0 -189
  4. package/lib/converters/LlmSchemaConverter.js.map +1 -1
  5. package/lib/converters/LlmSchemaConverter.mjs +0 -227
  6. package/lib/converters/LlmSchemaConverter.mjs.map +1 -1
  7. package/lib/http/HttpLlm.d.ts +2 -32
  8. package/lib/http/HttpLlm.js +4 -27
  9. package/lib/http/HttpLlm.js.map +1 -1
  10. package/lib/http/HttpLlm.mjs +1 -24
  11. package/lib/http/HttpLlm.mjs.map +1 -1
  12. package/lib/http/internal/HttpLlmApplicationComposer.js +13 -19
  13. package/lib/http/internal/HttpLlmApplicationComposer.js.map +1 -1
  14. package/lib/http/internal/HttpLlmApplicationComposer.mjs +7 -9
  15. package/lib/http/internal/HttpLlmApplicationComposer.mjs.map +1 -1
  16. package/lib/index.mjs +11 -11
  17. package/lib/utils/LlmJson.d.ts +67 -0
  18. package/lib/utils/LlmJson.js +106 -0
  19. package/lib/utils/LlmJson.js.map +1 -0
  20. package/lib/utils/LlmJson.mjs +113 -0
  21. package/lib/utils/LlmJson.mjs.map +1 -0
  22. package/lib/utils/index.d.ts +1 -1
  23. package/lib/utils/index.js +1 -1
  24. package/lib/utils/index.js.map +1 -1
  25. package/lib/utils/index.mjs +1 -1
  26. package/lib/utils/internal/coerceLlmArguments.d.ts +1 -0
  27. package/lib/utils/internal/coerceLlmArguments.js +233 -0
  28. package/lib/utils/internal/coerceLlmArguments.js.map +1 -0
  29. package/lib/utils/internal/coerceLlmArguments.mjs +232 -0
  30. package/lib/utils/internal/coerceLlmArguments.mjs.map +1 -0
  31. package/lib/utils/internal/parseLenientJson.d.ts +1 -0
  32. package/lib/utils/internal/parseLenientJson.js +639 -0
  33. package/lib/utils/internal/parseLenientJson.js.map +1 -0
  34. package/lib/utils/internal/parseLenientJson.mjs +640 -0
  35. package/lib/utils/internal/parseLenientJson.mjs.map +1 -0
  36. package/lib/utils/internal/stringifyValidationFailure.d.ts +2 -0
  37. package/lib/utils/{stringifyValidationFailure.js → internal/stringifyValidationFailure.js} +55 -63
  38. package/lib/utils/internal/stringifyValidationFailure.js.map +1 -0
  39. package/lib/utils/{stringifyValidationFailure.mjs → internal/stringifyValidationFailure.mjs} +54 -63
  40. package/lib/utils/internal/stringifyValidationFailure.mjs.map +1 -0
  41. package/lib/validators/internal/OpenApiOneOfValidator.mjs +5 -1
  42. package/lib/validators/internal/OpenApiOneOfValidator.mjs.map +1 -1
  43. package/package.json +2 -2
  44. package/src/converters/LlmSchemaConverter.ts +0 -277
  45. package/src/http/HttpLlm.ts +1 -44
  46. package/src/http/internal/HttpLlmApplicationComposer.ts +3 -9
  47. package/src/utils/LlmJson.ts +115 -0
  48. package/src/utils/index.ts +1 -1
  49. package/src/utils/internal/coerceLlmArguments.ts +297 -0
  50. package/src/utils/internal/parseLenientJson.ts +731 -0
  51. package/src/utils/{stringifyValidationFailure.ts → internal/stringifyValidationFailure.ts} +66 -70
  52. package/lib/http/internal/LlmDataMerger.d.ts +0 -48
  53. package/lib/http/internal/LlmDataMerger.js +0 -60
  54. package/lib/http/internal/LlmDataMerger.js.map +0 -1
  55. package/lib/http/internal/LlmDataMerger.mjs +0 -59
  56. package/lib/http/internal/LlmDataMerger.mjs.map +0 -1
  57. package/lib/utils/stringifyValidationFailure.d.ts +0 -25
  58. package/lib/utils/stringifyValidationFailure.js.map +0 -1
  59. package/lib/utils/stringifyValidationFailure.mjs.map +0 -1
  60. package/src/http/internal/LlmDataMerger.ts +0 -73
@@ -1,38 +1,22 @@
1
1
  import { IValidation } from "@typia/interface";
2
2
 
3
- import { NamingConvention } from "./NamingConvention";
4
- import { dedent } from "./dedent";
3
+ import { NamingConvention } from "../NamingConvention";
4
+ import { dedent } from "../dedent";
5
5
 
6
- /**
7
- * Format validation failure for LLM auto-correction feedback.
8
- *
9
- * When LLM generates invalid function call arguments, this produces annotated
10
- * JSON with inline `// ❌` error comments at each invalid property. The output
11
- * is wrapped in a markdown code block so that LLM can understand and correct
12
- * its mistakes in the next turn.
13
- *
14
- * Below is an example of the output format:
15
- *
16
- * ```json
17
- * {
18
- * "name": "John",
19
- * "age": "twenty", // ❌ [{"path":"$input.age","expected":"number & Type<\"uint32\">"}]
20
- * "email": "not-an-email", // ❌ [{"path":"$input.email","expected":"string & Format<\"email\">"}]
21
- * "hobbies": "reading" // ❌ [{"path":"$input.hobbies","expected":"Array<string>"}]
22
- * }
23
- * ```
24
- *
25
- * @author Jeongho Nam - https://github.com/samchon
26
- * @param failure Validation failure from {@link ILlmFunction.validate}
27
- * @returns Markdown code block with error-annotated JSON
28
- */
29
6
  export function stringifyValidationFailure(
30
7
  failure: IValidation.IFailure,
31
8
  ): string {
32
9
  const usedErrors: Set<IValidation.IError> = new Set();
10
+ // Pre-index errors by path for O(1) lookup
11
+ const errorsByPath: Map<string, IValidation.IError[]> = new Map();
12
+ for (const e of failure.errors) {
13
+ const arr: IValidation.IError[] | undefined = errorsByPath.get(e.path);
14
+ if (arr !== undefined) arr.push(e);
15
+ else errorsByPath.set(e.path, [e]);
16
+ }
33
17
  const jsonOutput = stringify({
34
18
  value: failure.data,
35
- errors: failure.errors,
19
+ errorsByPath,
36
20
  path: "$input",
37
21
  tab: 0,
38
22
  inArray: false,
@@ -66,16 +50,17 @@ export function stringifyValidationFailure(
66
50
 
67
51
  function stringify(props: {
68
52
  value: unknown;
69
- errors: IValidation.IError[];
53
+ errorsByPath: Map<string, IValidation.IError[]>;
70
54
  path: string;
71
55
  tab: number;
72
56
  inArray: boolean;
73
57
  inToJson: boolean;
74
58
  usedErrors: Set<IValidation.IError>;
75
59
  }): string {
76
- const { value, errors, path, tab, inArray, inToJson, usedErrors } = props;
60
+ const { value, errorsByPath, path, tab, inArray, inToJson, usedErrors } =
61
+ props;
77
62
  const indent: string = " ".repeat(tab);
78
- const errorComment: string = getErrorComment(path, errors, usedErrors);
63
+ const errorComment: string = getErrorComment(path, errorsByPath, usedErrors);
79
64
 
80
65
  // Handle undefined in arrays
81
66
  if (inArray && value === undefined) {
@@ -87,7 +72,7 @@ function stringify(props: {
87
72
  // Check for missing array element errors (path[])
88
73
  const missingElementErrors = getMissingArrayElementErrors(
89
74
  path,
90
- errors,
75
+ errorsByPath,
91
76
  usedErrors,
92
77
  );
93
78
  const hasMissingElements = missingElementErrors.length > 0;
@@ -120,7 +105,7 @@ function stringify(props: {
120
105
 
121
106
  let itemStr: string = stringify({
122
107
  value: item,
123
- errors,
108
+ errorsByPath,
124
109
  path: itemPath,
125
110
  tab: tab + 1,
126
111
  inArray: true,
@@ -129,18 +114,7 @@ function stringify(props: {
129
114
  });
130
115
  // Add comma before the error comment if not the last element
131
116
  if (needsComma) {
132
- const itemLines: string[] = itemStr.split("\n");
133
- const lastLine: string = itemLines[itemLines.length - 1]!;
134
- const commentIndex: number = lastLine.indexOf(" //");
135
- if (commentIndex !== -1) {
136
- itemLines[itemLines.length - 1] = `${lastLine.slice(
137
- 0,
138
- commentIndex,
139
- )},${lastLine.slice(commentIndex)}`;
140
- } else {
141
- itemLines[itemLines.length - 1] += ",";
142
- }
143
- itemStr = itemLines.join("\n");
117
+ itemStr = insertCommaBeforeComment(itemStr);
144
118
  }
145
119
  lines.push(itemStr);
146
120
  });
@@ -168,7 +142,7 @@ function stringify(props: {
168
142
  const jsonValue: unknown = (value as any).toJSON();
169
143
  return stringify({
170
144
  value: jsonValue,
171
- errors,
145
+ errorsByPath,
172
146
  path,
173
147
  tab,
174
148
  inArray,
@@ -189,7 +163,11 @@ function stringify(props: {
189
163
  );
190
164
 
191
165
  // Find missing properties that have validation errors (not in object at all)
192
- const missingKeys: string[] = getMissingProperties(path, value, errors);
166
+ const missingKeys: string[] = getMissingProperties(
167
+ path,
168
+ value,
169
+ errorsByPath,
170
+ );
193
171
 
194
172
  // Combine: defined entries + undefined entries with errors + missing properties
195
173
  const undefinedKeysWithErrors: string[] = Array.from(
@@ -198,7 +176,7 @@ function stringify(props: {
198
176
  const propPath = NamingConvention.variable(key)
199
177
  ? `${path}.${key}`
200
178
  : `${path}[${JSON.stringify(key)}]`;
201
- return errors.some((e) => e.path.startsWith(propPath));
179
+ return hasErrorsAtOrUnder(propPath, errorsByPath);
202
180
  });
203
181
 
204
182
  const allKeys: string[] = [
@@ -237,7 +215,7 @@ function stringify(props: {
237
215
  ) {
238
216
  const propErrorComment: string = getErrorComment(
239
217
  propPath,
240
- errors,
218
+ errorsByPath,
241
219
  usedErrors,
242
220
  );
243
221
  const keyStr: string = JSON.stringify(key);
@@ -255,7 +233,7 @@ function stringify(props: {
255
233
  const keyLine: string = `${propIndent}${JSON.stringify(key)}: `;
256
234
  let valStr: string = stringify({
257
235
  value: val,
258
- errors,
236
+ errorsByPath,
259
237
  path: propPath,
260
238
  tab: tab + 1,
261
239
  inArray: false,
@@ -265,18 +243,7 @@ function stringify(props: {
265
243
  const valStrWithoutIndent: string = valStr.trimStart();
266
244
  // Add comma before the error comment if not the last property
267
245
  if (index < array.length - 1) {
268
- const valLines: string[] = valStrWithoutIndent.split("\n");
269
- const lastLine: string = valLines[valLines.length - 1]!;
270
- const commentIndex: number = lastLine.indexOf(" //");
271
- if (commentIndex !== -1) {
272
- valLines[valLines.length - 1] = `${lastLine.slice(
273
- 0,
274
- commentIndex,
275
- )},${lastLine.slice(commentIndex)}`;
276
- } else {
277
- valLines[valLines.length - 1] += ",";
278
- }
279
- valStr = valLines.join("\n");
246
+ valStr = insertCommaBeforeComment(valStrWithoutIndent);
280
247
  } else {
281
248
  valStr = valStrWithoutIndent;
282
249
  }
@@ -297,16 +264,31 @@ function stringify(props: {
297
264
  return `${indent}${valStr}${errorComment}`;
298
265
  }
299
266
 
267
+ /** Insert comma before inline error comment on the last line */
268
+ function insertCommaBeforeComment(str: string): string {
269
+ const lines: string[] = str.split("\n");
270
+ const lastLine: string = lines[lines.length - 1]!;
271
+ // Use specific error marker to avoid false positives with values containing " //"
272
+ const commentIndex: number = lastLine.indexOf(" // ❌");
273
+ if (commentIndex !== -1) {
274
+ lines[lines.length - 1] = `${lastLine.slice(
275
+ 0,
276
+ commentIndex,
277
+ )},${lastLine.slice(commentIndex)}`;
278
+ } else {
279
+ lines[lines.length - 1] += ",";
280
+ }
281
+ return lines.join("\n");
282
+ }
283
+
300
284
  /** Get error comment for a given path */
301
285
  function getErrorComment(
302
286
  path: string,
303
- errors: IValidation.IError[],
287
+ errorsByPath: Map<string, IValidation.IError[]>,
304
288
  usedErrors: Set<IValidation.IError>,
305
289
  ): string {
306
- const pathErrors: IValidation.IError[] = errors.filter(
307
- (e: IValidation.IError) => e.path === path,
308
- );
309
- if (pathErrors.length === 0) {
290
+ const pathErrors: IValidation.IError[] | undefined = errorsByPath.get(path);
291
+ if (pathErrors === undefined || pathErrors.length === 0) {
310
292
  return "";
311
293
  }
312
294
 
@@ -328,11 +310,12 @@ function getErrorComment(
328
310
  */
329
311
  function getMissingArrayElementErrors(
330
312
  path: string,
331
- errors: IValidation.IError[],
313
+ errorsByPath: Map<string, IValidation.IError[]>,
332
314
  usedErrors: Set<IValidation.IError>,
333
315
  ): IValidation.IError[] {
334
316
  const wildcardPath = `${path}[]`;
335
- const missingErrors = errors.filter((e) => e.path === wildcardPath);
317
+ const missingErrors: IValidation.IError[] =
318
+ errorsByPath.get(wildcardPath) ?? [];
336
319
 
337
320
  // Mark these errors as used
338
321
  missingErrors.forEach((e) => usedErrors.add(e));
@@ -340,6 +323,19 @@ function getMissingArrayElementErrors(
340
323
  return missingErrors;
341
324
  }
342
325
 
326
+ /** Check if any errors exist at or under the given path prefix */
327
+ function hasErrorsAtOrUnder(
328
+ pathPrefix: string,
329
+ errorsByPath: Map<string, IValidation.IError[]>,
330
+ ): boolean {
331
+ for (const errorPath of errorsByPath.keys()) {
332
+ if (errorPath.startsWith(pathPrefix)) {
333
+ return true;
334
+ }
335
+ }
336
+ return false;
337
+ }
338
+
343
339
  /**
344
340
  * Find missing properties that have validation errors but don't exist in the
345
341
  * data Returns array of property keys that should be displayed as undefined
@@ -347,13 +343,13 @@ function getMissingArrayElementErrors(
347
343
  function getMissingProperties(
348
344
  path: string,
349
345
  value: object,
350
- errors: IValidation.IError[],
346
+ errorsByPath: Map<string, IValidation.IError[]>,
351
347
  ): string[] {
352
348
  const missingKeys: Set<string> = new Set();
353
349
 
354
- for (const e of errors) {
350
+ for (const errorPath of errorsByPath.keys()) {
355
351
  // Check if error.path is a direct child of current path
356
- const childKey = extractDirectChildKey(path, e.path);
352
+ const childKey = extractDirectChildKey(path, errorPath);
357
353
  if (childKey !== null) {
358
354
  // Check if this property actually exists in the value
359
355
  if (!(childKey in value)) {
@@ -1,48 +0,0 @@
1
- import { ILlmFunction } from "@typia/interface";
2
- /**
3
- * Data combiner for LLM function call.
4
- *
5
- * @author Samchon
6
- */
7
- export declare namespace LlmDataMerger {
8
- /** Properties of {@link parameters} function. */
9
- interface IProps {
10
- /** Target function to call. */
11
- function: ILlmFunction;
12
- /** Arguments composed by LLM (Large Language Model). */
13
- llm: object | null;
14
- /** Arguments composed by human. */
15
- human: object | null;
16
- }
17
- /**
18
- * Combine LLM and human arguments into one.
19
- *
20
- * When you compose {@link IHttpLlmApplication} with
21
- * {@link IHttpLlmApplication.IConfig.separate} option, then the arguments of
22
- * the target function would be separated into two parts; LLM (Large Language
23
- * Model) and human.
24
- *
25
- * In that case, you can combine both LLM and human composed arguments into
26
- * one by utilizing this {@link LlmDataMerger.parameters} function, referencing
27
- * the target function metadata {@link ILlmFunction.separated}.
28
- *
29
- * @param props Properties to combine LLM and human arguments with metadata.
30
- * @returns Combined arguments
31
- */
32
- const parameters: (props: IProps) => object;
33
- /**
34
- * Combine two values into one.
35
- *
36
- * If both values are objects, then combines them in the properties level.
37
- *
38
- * Otherwise, returns the latter value if it's not null, otherwise the former
39
- * value
40
- *
41
- * - `return (y ?? x)`
42
- *
43
- * @param x Value X
44
- * @param y Value Y
45
- * @returns Combined value
46
- */
47
- const value: (x: unknown, y: unknown) => unknown;
48
- }
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LlmDataMerger = void 0;
4
- /**
5
- * Data combiner for LLM function call.
6
- *
7
- * @author Samchon
8
- */
9
- var LlmDataMerger;
10
- (function (LlmDataMerger) {
11
- /**
12
- * Combine LLM and human arguments into one.
13
- *
14
- * When you compose {@link IHttpLlmApplication} with
15
- * {@link IHttpLlmApplication.IConfig.separate} option, then the arguments of
16
- * the target function would be separated into two parts; LLM (Large Language
17
- * Model) and human.
18
- *
19
- * In that case, you can combine both LLM and human composed arguments into
20
- * one by utilizing this {@link LlmDataMerger.parameters} function, referencing
21
- * the target function metadata {@link ILlmFunction.separated}.
22
- *
23
- * @param props Properties to combine LLM and human arguments with metadata.
24
- * @returns Combined arguments
25
- */
26
- LlmDataMerger.parameters = (props) => {
27
- const separated = props.function.separated;
28
- if (separated === undefined)
29
- throw new Error("Error on LlmDataMerger.parameters(): the function parameters are not separated.");
30
- return LlmDataMerger.value(props.llm, props.human);
31
- };
32
- /**
33
- * Combine two values into one.
34
- *
35
- * If both values are objects, then combines them in the properties level.
36
- *
37
- * Otherwise, returns the latter value if it's not null, otherwise the former
38
- * value
39
- *
40
- * - `return (y ?? x)`
41
- *
42
- * @param x Value X
43
- * @param y Value Y
44
- * @returns Combined value
45
- */
46
- LlmDataMerger.value = (x, y) => typeof x === "object" && typeof y === "object" && x !== null && y !== null
47
- ? combineObject(x, y)
48
- : Array.isArray(x) && Array.isArray(y)
49
- ? new Array(Math.max(x.length, y.length))
50
- .fill(0)
51
- .map((_, i) => LlmDataMerger.value(x[i], y[i]))
52
- : (y !== null && y !== void 0 ? y : x);
53
- const combineObject = (x, y) => {
54
- const output = Object.assign({}, x);
55
- for (const [k, v] of Object.entries(y))
56
- output[k] = LlmDataMerger.value(x[k], v);
57
- return output;
58
- };
59
- })(LlmDataMerger || (exports.LlmDataMerger = LlmDataMerger = {}));
60
- //# sourceMappingURL=LlmDataMerger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LlmDataMerger.js","sourceRoot":"","sources":["../../../src/http/internal/LlmDataMerger.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,IAAiB,aAAa,CAiE7B;AAjED,WAAiB,aAAa;IAa5B;;;;;;;;;;;;;;OAcG;IACU,wBAAU,GAAG,CAAC,KAAa,EAAU,EAAE;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC3C,IAAI,SAAS,KAAK,SAAS;YACzB,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;QACJ,OAAO,cAAA,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAW,CAAC;IACjD,CAAC,CAAC;IAEF;;;;;;;;;;;;;OAaG;IACU,mBAAK,GAAG,CAAC,CAAU,EAAE,CAAU,EAAW,EAAE,CACvD,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QACxE,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;iBACpC,IAAI,CAAC,CAAC,CAAC;iBACP,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,cAAA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,CAAC,CAAC,CAAC;IAEjB,MAAM,aAAa,GAAG,CAAC,CAAM,EAAE,CAAM,EAAO,EAAE;QAC5C,MAAM,MAAM,qBAAa,CAAC,CAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,CAAC,CAAC,GAAG,cAAA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC,EAjEgB,aAAa,6BAAb,aAAa,QAiE7B"}
@@ -1,59 +0,0 @@
1
- /**
2
- * Data combiner for LLM function call.
3
- *
4
- * @author Samchon
5
- */
6
- var LlmDataMerger;
7
- (function (LlmDataMerger) {
8
- /**
9
- * Combine LLM and human arguments into one.
10
- *
11
- * When you compose {@link IHttpLlmApplication} with
12
- * {@link IHttpLlmApplication.IConfig.separate} option, then the arguments of
13
- * the target function would be separated into two parts; LLM (Large Language
14
- * Model) and human.
15
- *
16
- * In that case, you can combine both LLM and human composed arguments into
17
- * one by utilizing this {@link LlmDataMerger.parameters} function, referencing
18
- * the target function metadata {@link ILlmFunction.separated}.
19
- *
20
- * @param props Properties to combine LLM and human arguments with metadata.
21
- * @returns Combined arguments
22
- */
23
- LlmDataMerger.parameters = (props) => {
24
- const separated = props.function.separated;
25
- if (separated === undefined)
26
- throw new Error("Error on LlmDataMerger.parameters(): the function parameters are not separated.");
27
- return LlmDataMerger.value(props.llm, props.human);
28
- };
29
- /**
30
- * Combine two values into one.
31
- *
32
- * If both values are objects, then combines them in the properties level.
33
- *
34
- * Otherwise, returns the latter value if it's not null, otherwise the former
35
- * value
36
- *
37
- * - `return (y ?? x)`
38
- *
39
- * @param x Value X
40
- * @param y Value Y
41
- * @returns Combined value
42
- */
43
- LlmDataMerger.value = (x, y) => typeof x === "object" && typeof y === "object" && x !== null && y !== null
44
- ? combineObject(x, y)
45
- : Array.isArray(x) && Array.isArray(y)
46
- ? new Array(Math.max(x.length, y.length))
47
- .fill(0)
48
- .map((_, i) => LlmDataMerger.value(x[i], y[i]))
49
- : (y ?? x);
50
- const combineObject = (x, y) => {
51
- const output = { ...x };
52
- for (const [k, v] of Object.entries(y))
53
- output[k] = LlmDataMerger.value(x[k], v);
54
- return output;
55
- };
56
- })(LlmDataMerger || (LlmDataMerger = {}));
57
-
58
- export { LlmDataMerger };
59
- //# sourceMappingURL=LlmDataMerger.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LlmDataMerger.mjs","sources":["../../../src/http/internal/LlmDataMerger.ts"],"sourcesContent":[null],"names":[],"mappings":"AAEA;;;;AAIG;AACG,IAAW;AAAjB,CAAA,UAAiB,aAAa,EAAA;AAa5B;;;;;;;;;;;;;;AAcG;AACU,IAAA,aAAA,CAAA,UAAU,GAAG,CAAC,KAAa,KAAY;AAClD,QAAA,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS;QAC1C,IAAI,SAAS,KAAK,SAAS;AACzB,YAAA,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF;QACH,OAAO,aAAA,CAAA,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAW;AAChD,IAAA,CAAC;AAED;;;;;;;;;;;;;AAaG;IACU,aAAA,CAAA,KAAK,GAAG,CAAC,CAAU,EAAE,CAAU,KAC1C,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;AACpE,UAAE,aAAa,CAAC,CAAC,EAAE,CAAC;AACpB,UAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACnC,cAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;iBACnC,IAAI,CAAC,CAAC;iBACN,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,aAAA,CAAA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,eAAG,CAAC,IAAI,CAAC,CAAC;AAEhB,IAAA,MAAM,aAAa,GAAG,CAAC,CAAM,EAAE,CAAM,KAAS;AAC5C,QAAA,MAAM,MAAM,GAAQ,EAAE,GAAG,CAAC,EAAE;AAC5B,QAAA,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AAAE,YAAA,MAAM,CAAC,CAAC,CAAC,GAAG,cAAA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClE,QAAA,OAAO,MAAM;AACf,IAAA,CAAC;AACH,CAAC,EAjEgB,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;;;"}
@@ -1,25 +0,0 @@
1
- import { IValidation } from "@typia/interface";
2
- /**
3
- * Format validation failure for LLM auto-correction feedback.
4
- *
5
- * When LLM generates invalid function call arguments, this produces annotated
6
- * JSON with inline `// ❌` error comments at each invalid property. The output
7
- * is wrapped in a markdown code block so that LLM can understand and correct
8
- * its mistakes in the next turn.
9
- *
10
- * Below is an example of the output format:
11
- *
12
- * ```json
13
- * {
14
- * "name": "John",
15
- * "age": "twenty", // ❌ [{"path":"$input.age","expected":"number & Type<\"uint32\">"}]
16
- * "email": "not-an-email", // ❌ [{"path":"$input.email","expected":"string & Format<\"email\">"}]
17
- * "hobbies": "reading" // ❌ [{"path":"$input.hobbies","expected":"Array<string>"}]
18
- * }
19
- * ```
20
- *
21
- * @author Jeongho Nam - https://github.com/samchon
22
- * @param failure Validation failure from {@link ILlmFunction.validate}
23
- * @returns Markdown code block with error-annotated JSON
24
- */
25
- export declare function stringifyValidationFailure(failure: IValidation.IFailure): string;
@@ -1 +0,0 @@
1
- {"version":3,"file":"stringifyValidationFailure.js","sourceRoot":"","sources":["../../src/utils/stringifyValidationFailure.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"stringifyValidationFailure.mjs","sources":["../../src/utils/stringifyValidationFailure.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,73 +0,0 @@
1
- import { ILlmFunction } from "@typia/interface";
2
-
3
- /**
4
- * Data combiner for LLM function call.
5
- *
6
- * @author Samchon
7
- */
8
- export namespace LlmDataMerger {
9
- /** Properties of {@link parameters} function. */
10
- export interface IProps {
11
- /** Target function to call. */
12
- function: ILlmFunction;
13
-
14
- /** Arguments composed by LLM (Large Language Model). */
15
- llm: object | null;
16
-
17
- /** Arguments composed by human. */
18
- human: object | null;
19
- }
20
-
21
- /**
22
- * Combine LLM and human arguments into one.
23
- *
24
- * When you compose {@link IHttpLlmApplication} with
25
- * {@link IHttpLlmApplication.IConfig.separate} option, then the arguments of
26
- * the target function would be separated into two parts; LLM (Large Language
27
- * Model) and human.
28
- *
29
- * In that case, you can combine both LLM and human composed arguments into
30
- * one by utilizing this {@link LlmDataMerger.parameters} function, referencing
31
- * the target function metadata {@link ILlmFunction.separated}.
32
- *
33
- * @param props Properties to combine LLM and human arguments with metadata.
34
- * @returns Combined arguments
35
- */
36
- export const parameters = (props: IProps): object => {
37
- const separated = props.function.separated;
38
- if (separated === undefined)
39
- throw new Error(
40
- "Error on LlmDataMerger.parameters(): the function parameters are not separated.",
41
- );
42
- return value(props.llm, props.human) as object;
43
- };
44
-
45
- /**
46
- * Combine two values into one.
47
- *
48
- * If both values are objects, then combines them in the properties level.
49
- *
50
- * Otherwise, returns the latter value if it's not null, otherwise the former
51
- * value
52
- *
53
- * - `return (y ?? x)`
54
- *
55
- * @param x Value X
56
- * @param y Value Y
57
- * @returns Combined value
58
- */
59
- export const value = (x: unknown, y: unknown): unknown =>
60
- typeof x === "object" && typeof y === "object" && x !== null && y !== null
61
- ? combineObject(x, y)
62
- : Array.isArray(x) && Array.isArray(y)
63
- ? new Array(Math.max(x.length, y.length))
64
- .fill(0)
65
- .map((_, i) => value(x[i], y[i]))
66
- : (y ?? x);
67
-
68
- const combineObject = (x: any, y: any): any => {
69
- const output: any = { ...x };
70
- for (const [k, v] of Object.entries(y)) output[k] = value(x[k], v);
71
- return output;
72
- };
73
- }