typia 7.3.0 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.d.ts +4 -1
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.js +1 -1
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +4 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.js +3 -3
- package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmParametersProgrammer.d.ts +4 -1
- package/lib/programmers/llm/LlmParametersProgrammer.js +2 -2
- package/lib/programmers/llm/LlmParametersProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmSchemaProgrammer.d.ts +4 -1
- package/lib/programmers/llm/LlmSchemaProgrammer.js +17 -6
- package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
- package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js +11 -7
- package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmApplicationTransformer.js +12 -8
- package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmParametersTransformer.js +11 -7
- package/lib/transformers/features/llm/LlmParametersTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmSchemaTransformer.js +11 -7
- package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
- package/package.json +3 -3
- package/src/programmers/llm/LlmApplicationOfValidateProgrammer.ts +4 -2
- package/src/programmers/llm/LlmApplicationProgrammer.ts +6 -3
- package/src/programmers/llm/LlmParametersProgrammer.ts +5 -2
- package/src/programmers/llm/LlmSchemaProgrammer.ts +41 -11
- package/src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts +12 -7
- package/src/transformers/features/llm/LlmApplicationTransformer.ts +13 -8
- package/src/transformers/features/llm/LlmParametersTransformer.ts +12 -7
- package/src/transformers/features/llm/LlmSchemaTransformer.ts +12 -7
|
@@ -4,7 +4,10 @@ import { ILlmApplicationOfValidate } from "../../schemas/llm/ILlmApplicationOfVa
|
|
|
4
4
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
5
5
|
import { ITypiaContext } from "../../transformers/ITypiaContext";
|
|
6
6
|
export declare namespace LlmApplicationOfValidateProgrammer {
|
|
7
|
-
const validate:
|
|
7
|
+
const validate: <Model extends ILlmSchema.Model>(props: {
|
|
8
|
+
model: Model;
|
|
9
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
10
|
+
}) => (metadata: Metadata, explore: import("../../factories/MetadataFactory").MetadataFactory.IExplore) => string[];
|
|
8
11
|
const write: <Model extends ILlmSchema.Model>(props: {
|
|
9
12
|
context: ITypiaContext;
|
|
10
13
|
modulo: ts.LeftHandSideExpression;
|
|
@@ -5,7 +5,7 @@ const ValidateProgrammer_1 = require("../ValidateProgrammer");
|
|
|
5
5
|
const LlmApplicationProgrammer_1 = require("./LlmApplicationProgrammer");
|
|
6
6
|
var LlmApplicationOfValidateProgrammer;
|
|
7
7
|
(function (LlmApplicationOfValidateProgrammer) {
|
|
8
|
-
LlmApplicationOfValidateProgrammer.validate = (
|
|
8
|
+
LlmApplicationOfValidateProgrammer.validate = (props) => LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate(props);
|
|
9
9
|
LlmApplicationOfValidateProgrammer.write = (props) => {
|
|
10
10
|
const app = LlmApplicationProgrammer_1.LlmApplicationProgrammer.write(props);
|
|
11
11
|
const parameters = Object.fromEntries(props.metadata.objects[0].type.properties.filter((p) => p.key.isSoleLiteral() &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationOfValidateProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationOfValidateProgrammer.ts"],"names":[],"mappings":";;;AAUA,8DAA2D;AAC3D,yEAAsE;AAEtE,IAAiB,kCAAkC,
|
|
1
|
+
{"version":3,"file":"LlmApplicationOfValidateProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationOfValidateProgrammer.ts"],"names":[],"mappings":";;;AAUA,8DAA2D;AAC3D,yEAAsE;AAEtE,IAAiB,kCAAkC,CAqElD;AArED,WAAiB,kCAAkC;IACpC,2CAAQ,GAAG,CAAiC,KAGxD,EAAE,EAAE,CAAC,mDAAwB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElC,wCAAK,GAAG,CAAiC,KAMrD,EAAoC,EAAE;QACrC,MAAM,GAAG,GAA2B,mDAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAsC,MAAM,CAAC,WAAW,CACtE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE;YACrB,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;YACpB,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK;YAC1B,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,IAAI;YAC7B,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CACjC;aACE,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,SAAS,CAAC,IAAI,CACd,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAC1D,KAAK,SAAS,CAClB;aACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACV,CAAC,CAAC,GAAG,CAAC,cAAc,EAAG;YACvB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC,CAAC,CAAE;SACrC,CAAC,CACL,CAAC;QACF,uCACK,GAAG,KACN,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iCAClC,IAAI,KACP,QAAQ,EAAE,eAAe,CAAC;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAE;iBAClC,CAAC,IACF,CAAC,IACH;IACJ,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAIxB,EAA6C,EAAE;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS;YACpB,cAAc;YACd,MAAM,IAAI,KAAK,CACb,sMAAsM,CACvM,CAAC;QACJ,OAAO,uCAAkB,CAAC,KAAK,iCAC1B,KAAK,KACR,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,MAAO,EAC7B,MAAM,EAAE;gBACN,MAAM,EAAE,KAAK;aACd,EACD,IAAI,EAAE,SAAS,IAGQ,CAAC;IAC5B,CAAC,CAAC;AACJ,CAAC,EArEgB,kCAAkC,kDAAlC,kCAAkC,QAqElD"}
|
|
@@ -2,7 +2,10 @@ import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
|
|
|
2
2
|
import { MetadataFactory } from "../../factories/MetadataFactory";
|
|
3
3
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
4
4
|
export declare namespace LlmApplicationProgrammer {
|
|
5
|
-
const validate:
|
|
5
|
+
const validate: <Model extends ILlmSchema.Model>(props: {
|
|
6
|
+
model: Model;
|
|
7
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
8
|
+
}) => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
|
|
6
9
|
const write: <Model extends ILlmSchema.Model>(props: {
|
|
7
10
|
model: Model;
|
|
8
11
|
metadata: Metadata;
|
|
@@ -6,7 +6,7 @@ const JsonApplicationProgrammer_1 = require("../json/JsonApplicationProgrammer")
|
|
|
6
6
|
const LlmSchemaProgrammer_1 = require("./LlmSchemaProgrammer");
|
|
7
7
|
var LlmApplicationProgrammer;
|
|
8
8
|
(function (LlmApplicationProgrammer) {
|
|
9
|
-
LlmApplicationProgrammer.validate = (
|
|
9
|
+
LlmApplicationProgrammer.validate = (props) => {
|
|
10
10
|
let top;
|
|
11
11
|
return (metadata, explore) => {
|
|
12
12
|
var _a, _b;
|
|
@@ -20,7 +20,7 @@ var LlmApplicationProgrammer;
|
|
|
20
20
|
metadata.functions.length === 1)
|
|
21
21
|
return validateFunction(explore.property, metadata.functions[0]);
|
|
22
22
|
else
|
|
23
|
-
return LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(
|
|
23
|
+
return LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(props)(metadata);
|
|
24
24
|
const output = [];
|
|
25
25
|
const valid = metadata.size() === 1 &&
|
|
26
26
|
metadata.objects.length === 1 &&
|
|
@@ -76,7 +76,7 @@ var LlmApplicationProgrammer;
|
|
|
76
76
|
return output;
|
|
77
77
|
};
|
|
78
78
|
LlmApplicationProgrammer.write = (props) => {
|
|
79
|
-
const errors = LlmApplicationProgrammer.validate(props
|
|
79
|
+
const errors = LlmApplicationProgrammer.validate(props)(props.metadata, {
|
|
80
80
|
top: true,
|
|
81
81
|
object: null,
|
|
82
82
|
property: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":";;;AAOA,wFAAqF;AAUrF,iFAA8E;AAC9E,+DAA4D;AAE5D,IAAiB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,5 +7,8 @@ export declare namespace LlmParametersProgrammer {
|
|
|
7
7
|
metadata: Metadata;
|
|
8
8
|
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
9
9
|
}) => ILlmSchema.ModelParameters[Model];
|
|
10
|
-
const validate:
|
|
10
|
+
const validate: <Model extends ILlmSchema.Model>(props: {
|
|
11
|
+
model: Model;
|
|
12
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
13
|
+
}) => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
|
|
11
14
|
}
|
|
@@ -40,7 +40,7 @@ var LlmParametersProgrammer;
|
|
|
40
40
|
});
|
|
41
41
|
return result.value;
|
|
42
42
|
};
|
|
43
|
-
LlmParametersProgrammer.validate = (
|
|
43
|
+
LlmParametersProgrammer.validate = (props) => (metadata, explore) => {
|
|
44
44
|
const output = [];
|
|
45
45
|
if (explore.top === true) {
|
|
46
46
|
if (metadata.objects.length === 0)
|
|
@@ -56,7 +56,7 @@ var LlmParametersProgrammer;
|
|
|
56
56
|
output.push("LLM parameters must be a non-undefined object type.");
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
output.push(...LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(
|
|
59
|
+
output.push(...LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(props)(metadata));
|
|
60
60
|
return output;
|
|
61
61
|
};
|
|
62
62
|
})(LlmParametersProgrammer || (exports.LlmParametersProgrammer = LlmParametersProgrammer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmParametersProgrammer.ts"],"names":[],"mappings":";;;AAAA,8CAM0B;AAC1B,wFAAqF;AAMrF,0EAAuE;AAGvE,yEAAsE;AACtE,+DAA4D;AAE5D,IAAiB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"LlmParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmParametersProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,5 +11,8 @@ export declare namespace LlmSchemaProgrammer {
|
|
|
11
11
|
metadata: Metadata;
|
|
12
12
|
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
13
13
|
}) => IOutput<Model>;
|
|
14
|
-
const validate:
|
|
14
|
+
const validate: <Model extends ILlmSchema.Model>(props: {
|
|
15
|
+
model: ILlmSchema.Model;
|
|
16
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
17
|
+
}) => (metadata: Metadata) => string[];
|
|
15
18
|
}
|
|
@@ -38,14 +38,27 @@ var LlmSchemaProgrammer;
|
|
|
38
38
|
schema: result.value,
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
|
-
LlmSchemaProgrammer.validate = (
|
|
41
|
+
LlmSchemaProgrammer.validate = (props) => (metadata) => {
|
|
42
|
+
var _a, _b;
|
|
42
43
|
const output = [];
|
|
44
|
+
// no additionalProperties in ChatGPT strict mode or Gemini
|
|
45
|
+
if (((props.model === "chatgpt" &&
|
|
46
|
+
((_a = props.config) === null || _a === void 0 ? void 0 : _a.strict) === true) ||
|
|
47
|
+
props.model === "gemini") &&
|
|
48
|
+
metadata.objects.some((o) => o.type.properties.some((p) => p.key.isSoleLiteral() === false && p.value.size() !== 0)))
|
|
49
|
+
output.push(`LLM schema of "${props.model}"${props.model === "chatgpt" ? " (strict mode)" : ""} does not support dynamic property in object.`);
|
|
50
|
+
// ChatGPT strict mode even does not support the optional property
|
|
51
|
+
if (props.model === "chatgpt" &&
|
|
52
|
+
((_b = props.config) === null || _b === void 0 ? void 0 : _b.strict) === true &&
|
|
53
|
+
metadata.objects.some((o) => o.type.properties.some((p) => p.value.isRequired() === false)))
|
|
54
|
+
output.push(`LLM schema of "chatgpt" (strict mode) does not support optional property in object.`);
|
|
55
|
+
// Gemini does not support the union type
|
|
56
|
+
if (props.model === "gemini" && size(metadata) > 1)
|
|
57
|
+
output.push("Gemini model does not support the union type.");
|
|
58
|
+
// just JSON rule
|
|
43
59
|
if (metadata.atomics.some((a) => a.type === "bigint") ||
|
|
44
60
|
metadata.constants.some((c) => c.type === "bigint"))
|
|
45
61
|
output.push("LLM schema does not support bigint type.");
|
|
46
|
-
if ((model === "chatgpt" || model === "gemini") &&
|
|
47
|
-
metadata.objects.some((o) => o.type.properties.some((p) => p.key.isSoleLiteral() === false && p.value.size() !== 0)))
|
|
48
|
-
output.push(`LLM schema of "${model}" does not support dynamic property in object.`);
|
|
49
62
|
if (metadata.tuples.some((t) => t.type.elements.some((e) => e.isRequired() === false)) ||
|
|
50
63
|
metadata.arrays.some((a) => a.type.value.isRequired() === false))
|
|
51
64
|
output.push("LLM schema does not support undefined type in array.");
|
|
@@ -59,8 +72,6 @@ var LlmSchemaProgrammer;
|
|
|
59
72
|
native.name !== "Blob" &&
|
|
60
73
|
native.name !== "File")
|
|
61
74
|
output.push(`LLM schema does not support ${native.name} type.`);
|
|
62
|
-
if (model === "gemini" && size(metadata) > 1)
|
|
63
|
-
output.push("Gemini model does not support the union type.");
|
|
64
75
|
return output;
|
|
65
76
|
};
|
|
66
77
|
})(LlmSchemaProgrammer || (exports.LlmSchemaProgrammer = LlmSchemaProgrammer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmSchemaProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmSchemaProgrammer.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"LlmSchemaProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmSchemaProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,12 @@ var LlmApplicationOfValidateTransformer;
|
|
|
32
32
|
method: "application",
|
|
33
33
|
node: props.expression.typeArguments[1],
|
|
34
34
|
});
|
|
35
|
+
const config = LlmModelPredicator_1.LlmModelPredicator.getConfig({
|
|
36
|
+
context: props.context,
|
|
37
|
+
method: "application",
|
|
38
|
+
model,
|
|
39
|
+
node: props.expression.typeArguments[2],
|
|
40
|
+
});
|
|
35
41
|
const type = props.context.checker.getTypeFromTypeNode(top);
|
|
36
42
|
const collection = new MetadataCollection_1.MetadataCollection({
|
|
37
43
|
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
@@ -44,7 +50,10 @@ var LlmApplicationOfValidateTransformer;
|
|
|
44
50
|
constant: true,
|
|
45
51
|
absorb: false,
|
|
46
52
|
functional: true,
|
|
47
|
-
validate: LlmApplicationOfValidateProgrammer_1.LlmApplicationOfValidateProgrammer.validate(
|
|
53
|
+
validate: LlmApplicationOfValidateProgrammer_1.LlmApplicationOfValidateProgrammer.validate({
|
|
54
|
+
model,
|
|
55
|
+
config,
|
|
56
|
+
}),
|
|
48
57
|
},
|
|
49
58
|
collection,
|
|
50
59
|
type,
|
|
@@ -60,12 +69,7 @@ var LlmApplicationOfValidateTransformer;
|
|
|
60
69
|
context: props.context,
|
|
61
70
|
modulo: props.modulo,
|
|
62
71
|
metadata: result.data,
|
|
63
|
-
config
|
|
64
|
-
context: props.context,
|
|
65
|
-
method: "application",
|
|
66
|
-
model,
|
|
67
|
-
node: props.expression.typeArguments[2],
|
|
68
|
-
}),
|
|
72
|
+
config,
|
|
69
73
|
});
|
|
70
74
|
const literal = typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(schema), props.context.importer.type({
|
|
71
75
|
file: "typia",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationOfValidateTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts"],"names":[],"mappings":";;;;;;AACA,4DAA4B;AAE5B,4EAAyE;AACzE,sEAAmE;AACnE,8EAA2E;AAC3E,wEAAqE;AACrE,0EAAuE;AAIvE,oHAAiH;AACjH,oFAAiF;AAKjF,6DAA0D;AAE1D,IAAiB,mCAAmC,
|
|
1
|
+
{"version":3,"file":"LlmApplicationOfValidateTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,9 +29,15 @@ var LlmApplicationTransformer;
|
|
|
29
29
|
// GET TYPE
|
|
30
30
|
const model = LlmModelPredicator_1.LlmModelPredicator.getModel({
|
|
31
31
|
checker: props.context.checker,
|
|
32
|
-
method: "
|
|
32
|
+
method: "application",
|
|
33
33
|
node: props.expression.typeArguments[1],
|
|
34
34
|
});
|
|
35
|
+
const config = LlmModelPredicator_1.LlmModelPredicator.getConfig({
|
|
36
|
+
context: props.context,
|
|
37
|
+
method: "application",
|
|
38
|
+
model,
|
|
39
|
+
node: props.expression.typeArguments[2],
|
|
40
|
+
});
|
|
35
41
|
const type = props.context.checker.getTypeFromTypeNode(top);
|
|
36
42
|
const collection = new MetadataCollection_1.MetadataCollection({
|
|
37
43
|
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
@@ -44,7 +50,10 @@ var LlmApplicationTransformer;
|
|
|
44
50
|
constant: true,
|
|
45
51
|
absorb: false,
|
|
46
52
|
functional: true,
|
|
47
|
-
validate: LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate(
|
|
53
|
+
validate: LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate({
|
|
54
|
+
model,
|
|
55
|
+
config,
|
|
56
|
+
}),
|
|
48
57
|
},
|
|
49
58
|
collection,
|
|
50
59
|
type,
|
|
@@ -58,12 +67,7 @@ var LlmApplicationTransformer;
|
|
|
58
67
|
const schema = LlmApplicationProgrammer_1.LlmApplicationProgrammer.write({
|
|
59
68
|
model,
|
|
60
69
|
metadata: result.data,
|
|
61
|
-
config
|
|
62
|
-
context: props.context,
|
|
63
|
-
method: "application",
|
|
64
|
-
model,
|
|
65
|
-
node: props.expression.typeArguments[2],
|
|
66
|
-
}),
|
|
70
|
+
config,
|
|
67
71
|
});
|
|
68
72
|
const literal = typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(schema), props.context.importer.type({
|
|
69
73
|
file: "@samchon/openapi",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":";;;;;;AACA,4DAA4B;AAE5B,4EAAyE;AACzE,sEAAmE;AACnE,8EAA2E;AAC3E,wEAAqE;AACrE,0EAAuE;AAIvE,gGAA6F;AAC7F,oFAAiF;AAKjF,6DAA0D;AAE1D,IAAiB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,12 @@ var LlmParametersTransformer;
|
|
|
30
30
|
method: "parameters",
|
|
31
31
|
node: props.expression.typeArguments[1],
|
|
32
32
|
});
|
|
33
|
+
const config = LlmModelPredicator_1.LlmModelPredicator.getConfig({
|
|
34
|
+
context: props.context,
|
|
35
|
+
method: "parameters",
|
|
36
|
+
model,
|
|
37
|
+
node: props.expression.typeArguments[2],
|
|
38
|
+
});
|
|
33
39
|
const type = props.context.checker.getTypeFromTypeNode(top);
|
|
34
40
|
const collection = new MetadataCollection_1.MetadataCollection({
|
|
35
41
|
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
@@ -41,7 +47,10 @@ var LlmParametersTransformer;
|
|
|
41
47
|
escape: true,
|
|
42
48
|
constant: true,
|
|
43
49
|
absorb: false,
|
|
44
|
-
validate: LlmParametersProgrammer_1.LlmParametersProgrammer.validate(
|
|
50
|
+
validate: LlmParametersProgrammer_1.LlmParametersProgrammer.validate({
|
|
51
|
+
model,
|
|
52
|
+
config,
|
|
53
|
+
}),
|
|
45
54
|
},
|
|
46
55
|
collection,
|
|
47
56
|
type,
|
|
@@ -55,12 +64,7 @@ var LlmParametersTransformer;
|
|
|
55
64
|
const out = LlmParametersProgrammer_1.LlmParametersProgrammer.write({
|
|
56
65
|
model,
|
|
57
66
|
metadata: result.data,
|
|
58
|
-
config
|
|
59
|
-
context: props.context,
|
|
60
|
-
method: "parameters",
|
|
61
|
-
model,
|
|
62
|
-
node: props.expression.typeArguments[2],
|
|
63
|
-
}),
|
|
67
|
+
config,
|
|
64
68
|
});
|
|
65
69
|
return typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(out), props.context.importer.type({
|
|
66
70
|
file: "@samchon/openapi",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":";;;;;;AAEA,4DAA4B;AAE5B,sEAAmE;AACnE,8EAA2E;AAC3E,wEAAqE;AAIrE,oFAAiF;AACjF,8FAA2F;AAK3F,6DAA0D;AAE1D,IAAiB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,12 @@ var LlmSchemaTransformer;
|
|
|
31
31
|
method: "schema",
|
|
32
32
|
node: props.expression.typeArguments[1],
|
|
33
33
|
});
|
|
34
|
+
const config = LlmModelPredicator_1.LlmModelPredicator.getConfig({
|
|
35
|
+
context: props.context,
|
|
36
|
+
method: "schema",
|
|
37
|
+
model,
|
|
38
|
+
node: props.expression.typeArguments[2],
|
|
39
|
+
});
|
|
34
40
|
const type = props.context.checker.getTypeFromTypeNode(top);
|
|
35
41
|
const collection = new MetadataCollection_1.MetadataCollection({
|
|
36
42
|
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
@@ -42,7 +48,10 @@ var LlmSchemaTransformer;
|
|
|
42
48
|
escape: true,
|
|
43
49
|
constant: true,
|
|
44
50
|
absorb: false,
|
|
45
|
-
validate: LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(
|
|
51
|
+
validate: LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate({
|
|
52
|
+
model,
|
|
53
|
+
config,
|
|
54
|
+
}),
|
|
46
55
|
},
|
|
47
56
|
collection,
|
|
48
57
|
type,
|
|
@@ -56,12 +65,7 @@ var LlmSchemaTransformer;
|
|
|
56
65
|
const out = LlmSchemaProgrammer_1.LlmSchemaProgrammer.write({
|
|
57
66
|
model,
|
|
58
67
|
metadata: result.data,
|
|
59
|
-
config
|
|
60
|
-
context: props.context,
|
|
61
|
-
method: "schema",
|
|
62
|
-
model,
|
|
63
|
-
node: props.expression.typeArguments[2],
|
|
64
|
-
}),
|
|
68
|
+
config,
|
|
65
69
|
});
|
|
66
70
|
const schemaTypeNode = props.context.importer.type({
|
|
67
71
|
file: "@samchon/openapi",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":";;;;;;AACA,4DAA4B;AAE5B,4EAAyE;AACzE,sEAAmE;AACnE,8EAA2E;AAC3E,wEAAqE;AAIrE,oFAAiF;AACjF,sFAAmF;AAKnF,6DAA0D;AAE1D,IAAiB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typia",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.4.0",
|
|
4
4
|
"description": "Superfast runtime validators with only one line",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"homepage": "https://typia.io",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@samchon/openapi": "^2.
|
|
44
|
+
"@samchon/openapi": "^2.2.0",
|
|
45
45
|
"commander": "^10.0.0",
|
|
46
46
|
"comment-json": "^4.2.3",
|
|
47
47
|
"inquirer": "^8.2.5",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
52
|
"typescript": ">=4.8.0 <5.8.0",
|
|
53
|
-
"@samchon/openapi": ">=2.
|
|
53
|
+
"@samchon/openapi": ">=2.2.0 <3.0.0"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@rollup/plugin-commonjs": "^26.0.1",
|
|
@@ -12,8 +12,10 @@ import { ValidateProgrammer } from "../ValidateProgrammer";
|
|
|
12
12
|
import { LlmApplicationProgrammer } from "./LlmApplicationProgrammer";
|
|
13
13
|
|
|
14
14
|
export namespace LlmApplicationOfValidateProgrammer {
|
|
15
|
-
export const validate =
|
|
16
|
-
|
|
15
|
+
export const validate = <Model extends ILlmSchema.Model>(props: {
|
|
16
|
+
model: Model;
|
|
17
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
18
|
+
}) => LlmApplicationProgrammer.validate(props);
|
|
17
19
|
|
|
18
20
|
export const write = <Model extends ILlmSchema.Model>(props: {
|
|
19
21
|
context: ITypiaContext;
|
|
@@ -19,7 +19,10 @@ import { JsonApplicationProgrammer } from "../json/JsonApplicationProgrammer";
|
|
|
19
19
|
import { LlmSchemaProgrammer } from "./LlmSchemaProgrammer";
|
|
20
20
|
|
|
21
21
|
export namespace LlmApplicationProgrammer {
|
|
22
|
-
export const validate =
|
|
22
|
+
export const validate = <Model extends ILlmSchema.Model>(props: {
|
|
23
|
+
model: Model;
|
|
24
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
25
|
+
}) => {
|
|
23
26
|
let top: Metadata | undefined;
|
|
24
27
|
return (
|
|
25
28
|
metadata: Metadata,
|
|
@@ -36,7 +39,7 @@ export namespace LlmApplicationProgrammer {
|
|
|
36
39
|
metadata.functions.length === 1
|
|
37
40
|
)
|
|
38
41
|
return validateFunction(explore.property, metadata.functions[0]!);
|
|
39
|
-
else return LlmSchemaProgrammer.validate(
|
|
42
|
+
else return LlmSchemaProgrammer.validate(props)(metadata);
|
|
40
43
|
|
|
41
44
|
const output: string[] = [];
|
|
42
45
|
const valid: boolean =
|
|
@@ -121,7 +124,7 @@ export namespace LlmApplicationProgrammer {
|
|
|
121
124
|
metadata: Metadata;
|
|
122
125
|
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
123
126
|
}): ILlmApplication<Model> => {
|
|
124
|
-
const errors: string[] = validate(props
|
|
127
|
+
const errors: string[] = validate(props)(props.metadata, {
|
|
125
128
|
top: true,
|
|
126
129
|
object: null,
|
|
127
130
|
property: null,
|
|
@@ -63,7 +63,10 @@ export namespace LlmParametersProgrammer {
|
|
|
63
63
|
};
|
|
64
64
|
|
|
65
65
|
export const validate =
|
|
66
|
-
|
|
66
|
+
<Model extends ILlmSchema.Model>(props: {
|
|
67
|
+
model: Model;
|
|
68
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
69
|
+
}) =>
|
|
67
70
|
(metadata: Metadata, explore: MetadataFactory.IExplore): string[] => {
|
|
68
71
|
const output: string[] = [];
|
|
69
72
|
if (explore.top === true) {
|
|
@@ -84,7 +87,7 @@ export namespace LlmParametersProgrammer {
|
|
|
84
87
|
output.push("LLM parameters must be a non-undefined object type.");
|
|
85
88
|
}
|
|
86
89
|
}
|
|
87
|
-
output.push(...LlmSchemaProgrammer.validate(
|
|
90
|
+
output.push(...LlmSchemaProgrammer.validate(props)(metadata));
|
|
88
91
|
return output;
|
|
89
92
|
};
|
|
90
93
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
IChatGptSchema,
|
|
3
|
+
ILlmSchema,
|
|
4
|
+
IOpenApiSchemaError,
|
|
5
|
+
IResult,
|
|
6
|
+
} from "@samchon/openapi";
|
|
2
7
|
import { LlmSchemaComposer } from "@samchon/openapi/lib/composers/LlmSchemaComposer";
|
|
3
8
|
|
|
4
9
|
import { IJsonSchemaCollection } from "../../schemas/json/IJsonSchemaCollection";
|
|
@@ -60,16 +65,19 @@ export namespace LlmSchemaProgrammer {
|
|
|
60
65
|
};
|
|
61
66
|
|
|
62
67
|
export const validate =
|
|
63
|
-
|
|
68
|
+
<Model extends ILlmSchema.Model>(props: {
|
|
69
|
+
model: ILlmSchema.Model;
|
|
70
|
+
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
71
|
+
}) =>
|
|
64
72
|
(metadata: Metadata): string[] => {
|
|
65
73
|
const output: string[] = [];
|
|
74
|
+
|
|
75
|
+
// no additionalProperties in ChatGPT strict mode or Gemini
|
|
66
76
|
if (
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (
|
|
72
|
-
(model === "chatgpt" || model === "gemini") &&
|
|
77
|
+
((props.model === "chatgpt" &&
|
|
78
|
+
(props.config as Partial<IChatGptSchema.IConfig> | undefined)
|
|
79
|
+
?.strict === true) ||
|
|
80
|
+
props.model === "gemini") &&
|
|
73
81
|
metadata.objects.some((o) =>
|
|
74
82
|
o.type.properties.some(
|
|
75
83
|
(p) => p.key.isSoleLiteral() === false && p.value.size() !== 0,
|
|
@@ -77,8 +85,32 @@ export namespace LlmSchemaProgrammer {
|
|
|
77
85
|
)
|
|
78
86
|
)
|
|
79
87
|
output.push(
|
|
80
|
-
`LLM schema of "${model}" does not support dynamic property in object.`,
|
|
88
|
+
`LLM schema of "${props.model}"${props.model === "chatgpt" ? " (strict mode)" : ""} does not support dynamic property in object.`,
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
// ChatGPT strict mode even does not support the optional property
|
|
92
|
+
if (
|
|
93
|
+
props.model === "chatgpt" &&
|
|
94
|
+
(props.config as Partial<IChatGptSchema.IConfig> | undefined)
|
|
95
|
+
?.strict === true &&
|
|
96
|
+
metadata.objects.some((o) =>
|
|
97
|
+
o.type.properties.some((p) => p.value.isRequired() === false),
|
|
98
|
+
)
|
|
99
|
+
)
|
|
100
|
+
output.push(
|
|
101
|
+
`LLM schema of "chatgpt" (strict mode) does not support optional property in object.`,
|
|
81
102
|
);
|
|
103
|
+
|
|
104
|
+
// Gemini does not support the union type
|
|
105
|
+
if (props.model === "gemini" && size(metadata) > 1)
|
|
106
|
+
output.push("Gemini model does not support the union type.");
|
|
107
|
+
|
|
108
|
+
// just JSON rule
|
|
109
|
+
if (
|
|
110
|
+
metadata.atomics.some((a) => a.type === "bigint") ||
|
|
111
|
+
metadata.constants.some((c) => c.type === "bigint")
|
|
112
|
+
)
|
|
113
|
+
output.push("LLM schema does not support bigint type.");
|
|
82
114
|
if (
|
|
83
115
|
metadata.tuples.some((t) =>
|
|
84
116
|
t.type.elements.some((e) => e.isRequired() === false),
|
|
@@ -98,8 +130,6 @@ export namespace LlmSchemaProgrammer {
|
|
|
98
130
|
native.name !== "File"
|
|
99
131
|
)
|
|
100
132
|
output.push(`LLM schema does not support ${native.name} type.`);
|
|
101
|
-
if (model === "gemini" && size(metadata) > 1)
|
|
102
|
-
output.push("Gemini model does not support the union type.");
|
|
103
133
|
return output;
|
|
104
134
|
};
|
|
105
135
|
}
|
|
@@ -35,6 +35,13 @@ export namespace LlmApplicationOfValidateTransformer {
|
|
|
35
35
|
method: "application",
|
|
36
36
|
node: props.expression.typeArguments[1],
|
|
37
37
|
});
|
|
38
|
+
const config: Partial<ILlmSchema.IConfig> = LlmModelPredicator.getConfig({
|
|
39
|
+
context: props.context,
|
|
40
|
+
method: "application",
|
|
41
|
+
model,
|
|
42
|
+
node: props.expression.typeArguments[2],
|
|
43
|
+
}) as Partial<ILlmSchema.IConfig>;
|
|
44
|
+
|
|
38
45
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
39
46
|
const collection: MetadataCollection = new MetadataCollection({
|
|
40
47
|
replace: MetadataCollection.replace,
|
|
@@ -48,7 +55,10 @@ export namespace LlmApplicationOfValidateTransformer {
|
|
|
48
55
|
constant: true,
|
|
49
56
|
absorb: false,
|
|
50
57
|
functional: true,
|
|
51
|
-
validate: LlmApplicationOfValidateProgrammer.validate(
|
|
58
|
+
validate: LlmApplicationOfValidateProgrammer.validate({
|
|
59
|
+
model,
|
|
60
|
+
config,
|
|
61
|
+
}),
|
|
52
62
|
},
|
|
53
63
|
collection,
|
|
54
64
|
type,
|
|
@@ -66,12 +76,7 @@ export namespace LlmApplicationOfValidateTransformer {
|
|
|
66
76
|
context: props.context,
|
|
67
77
|
modulo: props.modulo,
|
|
68
78
|
metadata: result.data,
|
|
69
|
-
config
|
|
70
|
-
context: props.context,
|
|
71
|
-
method: "application",
|
|
72
|
-
model,
|
|
73
|
-
node: props.expression.typeArguments[2],
|
|
74
|
-
}),
|
|
79
|
+
config,
|
|
75
80
|
});
|
|
76
81
|
const literal: ts.Expression = ts.factory.createAsExpression(
|
|
77
82
|
LiteralFactory.write(schema),
|
|
@@ -32,9 +32,16 @@ export namespace LlmApplicationTransformer {
|
|
|
32
32
|
// GET TYPE
|
|
33
33
|
const model: ILlmSchema.Model = LlmModelPredicator.getModel({
|
|
34
34
|
checker: props.context.checker,
|
|
35
|
-
method: "
|
|
35
|
+
method: "application",
|
|
36
36
|
node: props.expression.typeArguments[1],
|
|
37
37
|
});
|
|
38
|
+
const config: Partial<ILlmSchema.IConfig> = LlmModelPredicator.getConfig({
|
|
39
|
+
context: props.context,
|
|
40
|
+
method: "application",
|
|
41
|
+
model,
|
|
42
|
+
node: props.expression.typeArguments[2],
|
|
43
|
+
}) as Partial<ILlmSchema.IConfig>;
|
|
44
|
+
|
|
38
45
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
39
46
|
const collection: MetadataCollection = new MetadataCollection({
|
|
40
47
|
replace: MetadataCollection.replace,
|
|
@@ -48,7 +55,10 @@ export namespace LlmApplicationTransformer {
|
|
|
48
55
|
constant: true,
|
|
49
56
|
absorb: false,
|
|
50
57
|
functional: true,
|
|
51
|
-
validate: LlmApplicationProgrammer.validate(
|
|
58
|
+
validate: LlmApplicationProgrammer.validate({
|
|
59
|
+
model,
|
|
60
|
+
config,
|
|
61
|
+
}),
|
|
52
62
|
},
|
|
53
63
|
collection,
|
|
54
64
|
type,
|
|
@@ -64,12 +74,7 @@ export namespace LlmApplicationTransformer {
|
|
|
64
74
|
LlmApplicationProgrammer.write({
|
|
65
75
|
model,
|
|
66
76
|
metadata: result.data,
|
|
67
|
-
config
|
|
68
|
-
context: props.context,
|
|
69
|
-
method: "application",
|
|
70
|
-
model,
|
|
71
|
-
node: props.expression.typeArguments[2],
|
|
72
|
-
}),
|
|
77
|
+
config,
|
|
73
78
|
});
|
|
74
79
|
const literal: ts.Expression = ts.factory.createAsExpression(
|
|
75
80
|
LiteralFactory.write(schema),
|
|
@@ -36,6 +36,13 @@ export namespace LlmParametersTransformer {
|
|
|
36
36
|
method: "parameters",
|
|
37
37
|
node: props.expression.typeArguments[1],
|
|
38
38
|
});
|
|
39
|
+
const config: Partial<ILlmSchema.IConfig> = LlmModelPredicator.getConfig({
|
|
40
|
+
context: props.context,
|
|
41
|
+
method: "parameters",
|
|
42
|
+
model,
|
|
43
|
+
node: props.expression.typeArguments[2],
|
|
44
|
+
}) as Partial<ILlmSchema.IConfig>;
|
|
45
|
+
|
|
39
46
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
40
47
|
const collection: MetadataCollection = new MetadataCollection({
|
|
41
48
|
replace: MetadataCollection.replace,
|
|
@@ -48,7 +55,10 @@ export namespace LlmParametersTransformer {
|
|
|
48
55
|
escape: true,
|
|
49
56
|
constant: true,
|
|
50
57
|
absorb: false,
|
|
51
|
-
validate: LlmParametersProgrammer.validate(
|
|
58
|
+
validate: LlmParametersProgrammer.validate({
|
|
59
|
+
model,
|
|
60
|
+
config,
|
|
61
|
+
}),
|
|
52
62
|
},
|
|
53
63
|
collection,
|
|
54
64
|
type,
|
|
@@ -63,12 +73,7 @@ export namespace LlmParametersTransformer {
|
|
|
63
73
|
const out: ILlmFunction<any>["parameters"] = LlmParametersProgrammer.write({
|
|
64
74
|
model,
|
|
65
75
|
metadata: result.data,
|
|
66
|
-
config
|
|
67
|
-
context: props.context,
|
|
68
|
-
method: "parameters",
|
|
69
|
-
model,
|
|
70
|
-
node: props.expression.typeArguments[2],
|
|
71
|
-
}),
|
|
76
|
+
config,
|
|
72
77
|
});
|
|
73
78
|
return ts.factory.createAsExpression(
|
|
74
79
|
LiteralFactory.write(out),
|
|
@@ -36,6 +36,13 @@ export namespace LlmSchemaTransformer {
|
|
|
36
36
|
method: "schema",
|
|
37
37
|
node: props.expression.typeArguments[1],
|
|
38
38
|
});
|
|
39
|
+
const config: Partial<ILlmSchema.IConfig> = LlmModelPredicator.getConfig({
|
|
40
|
+
context: props.context,
|
|
41
|
+
method: "schema",
|
|
42
|
+
model,
|
|
43
|
+
node: props.expression.typeArguments[2],
|
|
44
|
+
}) as Partial<ILlmSchema.IConfig>;
|
|
45
|
+
|
|
39
46
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
40
47
|
const collection: MetadataCollection = new MetadataCollection({
|
|
41
48
|
replace: MetadataCollection.replace,
|
|
@@ -48,7 +55,10 @@ export namespace LlmSchemaTransformer {
|
|
|
48
55
|
escape: true,
|
|
49
56
|
constant: true,
|
|
50
57
|
absorb: false,
|
|
51
|
-
validate: LlmSchemaProgrammer.validate(
|
|
58
|
+
validate: LlmSchemaProgrammer.validate({
|
|
59
|
+
model,
|
|
60
|
+
config,
|
|
61
|
+
}),
|
|
52
62
|
},
|
|
53
63
|
collection,
|
|
54
64
|
type,
|
|
@@ -63,12 +73,7 @@ export namespace LlmSchemaTransformer {
|
|
|
63
73
|
const out: LlmSchemaProgrammer.IOutput<any> = LlmSchemaProgrammer.write({
|
|
64
74
|
model,
|
|
65
75
|
metadata: result.data,
|
|
66
|
-
config
|
|
67
|
-
context: props.context,
|
|
68
|
-
method: "schema",
|
|
69
|
-
model,
|
|
70
|
-
node: props.expression.typeArguments[2],
|
|
71
|
-
}),
|
|
76
|
+
config,
|
|
72
77
|
});
|
|
73
78
|
const schemaTypeNode = props.context.importer.type({
|
|
74
79
|
file: "@samchon/openapi",
|