typia 7.0.0-dev.20241110 → 7.0.0-dev.20241111
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/factories/MetadataCollection.js +8 -8
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/programmers/internal/json_schema_array.js +9 -6
- package/lib/programmers/internal/json_schema_array.js.map +1 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +1 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.js +3 -3
- package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmSchemaProgrammer.d.ts +1 -1
- package/lib/programmers/llm/LlmSchemaProgrammer.js +68 -38
- package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
- package/lib/transformers/features/llm/LlmApplicationTransformer.js +14 -13
- package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmSchemaTransformer.js +14 -13
- package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
- package/package.json +2 -2
- package/src/factories/MetadataCollection.ts +8 -8
- package/src/programmers/internal/json_schema_array.ts +9 -5
- package/src/programmers/llm/LlmApplicationProgrammer.ts +3 -3
- package/src/programmers/llm/LlmSchemaProgrammer.ts +48 -33
- package/src/transformers/features/llm/LlmApplicationTransformer.ts +14 -12
- package/src/transformers/features/llm/LlmSchemaTransformer.ts +14 -12
|
@@ -127,9 +127,9 @@ var MetadataCollection = /** @class */ (function () {
|
|
|
127
127
|
var oldbie = this.objects_.get(type);
|
|
128
128
|
if (oldbie !== undefined)
|
|
129
129
|
return [oldbie, false];
|
|
130
|
-
var
|
|
130
|
+
var id = this.getName(checker, type);
|
|
131
131
|
var obj = MetadataObjectType_1.MetadataObjectType.create({
|
|
132
|
-
name:
|
|
132
|
+
name: id,
|
|
133
133
|
properties: [],
|
|
134
134
|
description: (_b = (_a = (type.aliasSymbol && CommentFactory_1.CommentFactory.description(type.aliasSymbol))) !== null && _a !== void 0 ? _a : (type.symbol && CommentFactory_1.CommentFactory.description(type.symbol))) !== null && _b !== void 0 ? _b : undefined,
|
|
135
135
|
jsDocTags: (_f = (_d = (_c = type.aliasSymbol) === null || _c === void 0 ? void 0 : _c.getJsDocTags()) !== null && _d !== void 0 ? _d : (_e = type.symbol) === null || _e === void 0 ? void 0 : _e.getJsDocTags()) !== null && _f !== void 0 ? _f : [],
|
|
@@ -146,9 +146,9 @@ var MetadataCollection = /** @class */ (function () {
|
|
|
146
146
|
var oldbie = this.aliases_.get(type);
|
|
147
147
|
if (oldbie !== undefined)
|
|
148
148
|
return [oldbie, false, function () { }];
|
|
149
|
-
var
|
|
149
|
+
var id = this.getName(checker, type);
|
|
150
150
|
var alias = MetadataAliasType_1.MetadataAliasType.create({
|
|
151
|
-
name:
|
|
151
|
+
name: id,
|
|
152
152
|
value: null,
|
|
153
153
|
description: (_a = CommentFactory_1.CommentFactory.description(symbol)) !== null && _a !== void 0 ? _a : null,
|
|
154
154
|
recursive: null,
|
|
@@ -162,9 +162,9 @@ var MetadataCollection = /** @class */ (function () {
|
|
|
162
162
|
var oldbie = this.arrays_.get(type);
|
|
163
163
|
if (oldbie !== undefined)
|
|
164
164
|
return [oldbie, false, function () { }];
|
|
165
|
-
var
|
|
165
|
+
var id = this.getName(checker, type);
|
|
166
166
|
var array = MetadataArrayType_1.MetadataArrayType.create({
|
|
167
|
-
name:
|
|
167
|
+
name: id,
|
|
168
168
|
value: null,
|
|
169
169
|
index: null,
|
|
170
170
|
recursive: null,
|
|
@@ -177,9 +177,9 @@ var MetadataCollection = /** @class */ (function () {
|
|
|
177
177
|
var oldbie = this.tuples_.get(type);
|
|
178
178
|
if (oldbie !== undefined)
|
|
179
179
|
return [oldbie, false, function () { }];
|
|
180
|
-
var
|
|
180
|
+
var id = this.getName(checker, type);
|
|
181
181
|
var tuple = MetadataTupleType_1.MetadataTupleType.create({
|
|
182
|
-
name:
|
|
182
|
+
name: id,
|
|
183
183
|
elements: null,
|
|
184
184
|
index: null,
|
|
185
185
|
recursive: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ var json_schema_plugin_1 = require("./json_schema_plugin");
|
|
|
5
5
|
var json_schema_station_1 = require("./json_schema_station");
|
|
6
6
|
var json_schema_array = function (props) {
|
|
7
7
|
var _a, _b, _c;
|
|
8
|
-
var _d, _e;
|
|
8
|
+
var _d, _e, _f;
|
|
9
9
|
var factory = function () {
|
|
10
10
|
return (0, json_schema_plugin_1.json_schema_plugin)({
|
|
11
11
|
schema: {
|
|
@@ -21,14 +21,17 @@ var json_schema_array = function (props) {
|
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
23
|
if (props.array.type.recursive === true) {
|
|
24
|
-
var out = function () { return [
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
var out = function () { return [
|
|
25
|
+
{
|
|
26
|
+
$ref: "#/components/schemas/".concat(props.array.type.name),
|
|
27
|
+
},
|
|
28
|
+
]; };
|
|
29
|
+
if (((_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[props.array.type.name]) !== undefined)
|
|
27
30
|
return out();
|
|
28
31
|
(_b = (_d = props.components).schemas) !== null && _b !== void 0 ? _b : (_d.schemas = {});
|
|
29
|
-
(_c = (_e = props.components.schemas)[
|
|
32
|
+
(_c = (_e = props.components.schemas)[_f = props.array.type.name]) !== null && _c !== void 0 ? _c : (_e[_f] = {});
|
|
30
33
|
var oneOf = factory();
|
|
31
|
-
Object.assign(props.components.schemas[
|
|
34
|
+
Object.assign(props.components.schemas[props.array.type.name], oneOf.length === 1 ? oneOf[0] : { oneOf: oneOf });
|
|
32
35
|
return out();
|
|
33
36
|
}
|
|
34
37
|
return factory();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/json_schema_array.ts"],"names":[],"mappings":";;;AAIA,2DAA0D;AAC1D,6DAA4D;AAErD,IAAM,iBAAiB,GAAG,UAAC,KAGjC;;;IACC,IAAM,OAAO,GAAG;QACd,OAAA,IAAA,uCAAkB,EAAC;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,IAAA,yCAAmB,EAAC;oBACzB,UAAU,EAAE,KAAK;oBACjB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK;oBAChC,SAAS,EAAE,EAAE;iBACd,CAAC;aACkC;YACtC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SACvB,CAAC;IAXF,CAWE,CAAC;IACL,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QACxC,IAAM,GAAG,GAAG,cAAM,OAAA,
|
|
1
|
+
{"version":3,"file":"json_schema_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/json_schema_array.ts"],"names":[],"mappings":";;;AAIA,2DAA0D;AAC1D,6DAA4D;AAErD,IAAM,iBAAiB,GAAG,UAAC,KAGjC;;;IACC,IAAM,OAAO,GAAG;QACd,OAAA,IAAA,uCAAkB,EAAC;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,IAAA,yCAAmB,EAAC;oBACzB,UAAU,EAAE,KAAK;oBACjB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK;oBAChC,SAAS,EAAE,EAAE;iBACd,CAAC;aACkC;YACtC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SACvB,CAAC;IAXF,CAWE,CAAC;IACL,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QACxC,IAAM,GAAG,GAAG,cAAM,OAAA;YAChB;gBACE,IAAI,EAAE,+BAAwB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAE;aACtD;SACF,EAJiB,CAIjB,CAAC;QACF,IAAI,CAAA,MAAA,KAAK,CAAC,UAAU,CAAC,OAAO,0CAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAK,SAAS;YACjE,OAAO,GAAG,EAAE,CAAC;QAEf,YAAA,KAAK,CAAC,UAAU,EAAC,OAAO,uCAAP,OAAO,GAAK,EAAE,EAAC;QAChC,YAAA,KAAK,CAAC,UAAU,CAAC,OAAO,OAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,8CAAM,EAAE,EAAC;QAEvD,IAAM,KAAK,GAAiC,OAAO,EAAE,CAAC;QACtD,MAAM,CAAC,MAAM,CACX,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAE,EAChD,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,OAAA,EAAE,CAC1C,CAAC;QACF,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IACD,OAAO,OAAO,EAAE,CAAC;AACnB,CAAC,CAAC;AArCW,QAAA,iBAAiB,qBAqC5B"}
|
|
@@ -2,7 +2,7 @@ import { ILlmApplication } 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: () => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
|
|
5
|
+
const validate: (model: ILlmApplication.Model) => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
|
|
6
6
|
const write: <Model extends ILlmApplication.Model>(props: {
|
|
7
7
|
model: Model;
|
|
8
8
|
metadata: Metadata;
|
|
@@ -42,7 +42,7 @@ exports.LlmApplicationProgrammer = void 0;
|
|
|
42
42
|
var LlmSchemaProgrammer_1 = require("./LlmSchemaProgrammer");
|
|
43
43
|
var LlmApplicationProgrammer;
|
|
44
44
|
(function (LlmApplicationProgrammer) {
|
|
45
|
-
LlmApplicationProgrammer.validate = function () {
|
|
45
|
+
LlmApplicationProgrammer.validate = function (model) {
|
|
46
46
|
var top;
|
|
47
47
|
return function (metadata, explore) {
|
|
48
48
|
var e_1, _a;
|
|
@@ -57,7 +57,7 @@ var LlmApplicationProgrammer;
|
|
|
57
57
|
metadata.functions.length === 1)
|
|
58
58
|
return validateFunction(metadata.functions[0]);
|
|
59
59
|
else
|
|
60
|
-
return LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(metadata);
|
|
60
|
+
return LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(model)(metadata);
|
|
61
61
|
var output = [];
|
|
62
62
|
var valid = metadata.size() === 1 &&
|
|
63
63
|
metadata.objects.length === 1 &&
|
|
@@ -107,7 +107,7 @@ var LlmApplicationProgrammer;
|
|
|
107
107
|
return output;
|
|
108
108
|
};
|
|
109
109
|
LlmApplicationProgrammer.write = function (props) {
|
|
110
|
-
var errors = LlmApplicationProgrammer.validate()(props.metadata, {
|
|
110
|
+
var errors = LlmApplicationProgrammer.validate(props.model)(props.metadata, {
|
|
111
111
|
top: true,
|
|
112
112
|
object: null,
|
|
113
113
|
property: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,6DAA4D;AAE5D,IAAiB,wBAAwB,CAsQxC;AAtQD,WAAiB,wBAAwB;IAC1B,iCAAQ,GAAG;
|
|
1
|
+
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,6DAA4D;AAE5D,IAAiB,wBAAwB,CAsQxC;AAtQD,WAAiB,wBAAwB;IAC1B,iCAAQ,GAAG,UAAC,KAA4B;QACnD,IAAI,GAAyB,CAAC;QAC9B,OAAO,UACL,QAAkB,EAClB,OAAiC;;;YAEjC,GAAG,aAAH,GAAG,cAAH,GAAG,IAAH,GAAG,GAAK,QAAQ,EAAC;YACjB,IAAI,OAAO,CAAC,GAAG,KAAK,KAAK;gBACvB,IACE,OAAO,CAAC,MAAM,MAAK,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;oBACxC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;oBACpC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;oBACrB,QAAQ,CAAC,QAAQ,KAAK,KAAK;oBAC3B,QAAQ,CAAC,UAAU,EAAE,KAAK,IAAI;oBAC9B,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;oBAE/B,OAAO,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;;oBAC7C,OAAO,yCAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;YAE5D,IAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAM,KAAK,GACT,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;gBACrB,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC7B,QAAQ,CAAC,UAAU,EAAE,KAAK,IAAI;gBAC9B,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC;YAC9B,IAAI,KAAK,KAAK,KAAK;gBACjB,MAAM,CAAC,IAAI,CACT,oEAAoE,CACrE,CAAC;YAEJ,IAAM,MAAM,GAAmC,MAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC;YACzE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,KAAK,EAA/B,CAA+B,CAAC;oBAChE,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;gBAC9D,IAAI,KAAK,GAAY,KAAK,CAAC;;oBAC3B,KAAgB,IAAA,KAAA,SAAA,MAAM,CAAC,UAAU,CAAA,gBAAA,4BAAE,CAAC;wBAA/B,IAAM,CAAC,WAAA;wBACV,IAAM,KAAK,GAAa,CAAC,CAAC,KAAK,CAAC;wBAChC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;4BAC3B,KAAK,KAAL,KAAK,GAAK,IAAI,EAAC;4BACf,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gCACpB,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;oCACpD,MAAM,CAAC,IAAI,CACT,4DAA4D,CAC7D,CAAC;gCACJ,IAAI,KAAK,CAAC,UAAU,EAAE,KAAK,KAAK;oCAC9B,MAAM,CAAC,IAAI,CACT,mDAAmD,CACpD,CAAC;gCACJ,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;oCACzB,MAAM,CAAC,IAAI,CACT,uDAAuD,CACxD,CAAC;4BACN,CAAC;wBACH,CAAC;oBACH,CAAC;;;;;;;;;gBACD,IAAI,KAAK,KAAK,KAAK;oBACjB,MAAM,CAAC,IAAI,CACT,mEAAmE,CACpE,CAAC;YACN,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG,UAAC,IAAsB;QAC9C,IAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,KAAK;YAC1D,MAAM,CAAC,IAAI,CACT,+EAA+E,CAChF,CAAC;QACJ,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEW,8BAAK,GAAG,UAAsC,KAG1D;QACC,IAAM,MAAM,GAAa,yBAAA,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC7D,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM;YACf,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3E,IAAM,MAAM,GAAuB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;QACnE,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,MAAM,CAAC,UAAU;iBACzB,MAAM,CACL,UAAC,CAAC;gBACA,OAAA,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;oBAC9B,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;oBACpB,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE;YAFrB,CAEqB,CACxB;iBACA,MAAM,CACL,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,QAAQ,EAArB,CAAqB,CAAC,KAAK,SAAS,EAA9D,CAA8D,CACtE;iBACA,GAAG,CAAC,UAAC,CAAC;gBACL,OAAA,aAAa,CAAC;oBACZ,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAG;oBAC7B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAE;oBAC/B,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC;YANF,CAME,CACH;YACH,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,CAAS;aAC9D;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG,UAAsC,KAM3D;;QACC,IAAM,UAAU,GAAY,KAAK,CAAC,SAAS,CAAC,IAAI,CAC9C,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,YAAY,EAAzB,CAAyB,CACnC,CAAC;QACF,IAAM,IAAI,GAAa,KAAK,CAAC,SAAS;aACnC,GAAG,CAAC,UAAC,GAAG;;YACP,OAAA,GAAG,CAAC,IAAI,KAAK,KAAK;gBAChB,CAAC,CAAC,CAAC,MAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,MAAM,EAApB,CAAoB,CAAC,mCAAI,EAAE,CAAC;gBAC1D,CAAC,CAAC,EAAE,CAAA;SAAA,CACP;aACA,IAAI,EAAE;aACN,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,EAAT,CAAS,CAAC;aACxB,GAAG,CAAC,UAAC,GAAG,YAAK,OAAA,MAAA,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAA,EAAA,CAAC;aAC5C,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,MAAM,EAAZ,CAAY,CAAC,CAAC;QACjC,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;gBAC1C,IAAM,mBAAmB,GAAkB,4BAA4B,CACrE;oBACE,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,CAAC,CAAC,IAAI;iBAClB,CACF,CAAC;gBACF,OAAO,WAAW,CAAC;oBACjB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE,CAAC,CAAC,IAAI;oBAChB,WAAW,EAAE,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAI,CAAC,CAAC,WAAW;oBACjD,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;iBAClD,CAAC,CAAC;YACL,CAAC,CAAC;YACF,MAAM,EACJ,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAC5D,CAAC,CAAC,WAAW,CAAC;oBACV,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;oBAC/B,WAAW,EACT,MAAA,4BAA4B,CAAC;wBAC3B,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,IAAI,EAAE,QAAQ;qBACf,CAAC,mCACF,4BAA4B,CAAC;wBAC3B,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,IAAI,EAAE,SAAS;qBAChB,CAAC;oBACJ,SAAS,EAAE,EAAE;iBACd,CAAC;gBACJ,CAAC,CAAC,SAAS;YACf,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,SAAS;YAC3C,UAAU,EAAE,UAAU,IAAI,SAAS;YACnC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACrC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAsC,KAKzD;;QACC,IAAM,MAAM,GACV,yCAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnC,IAAM,QAAQ,GAGV,gBAAgB,CAAC;YACnB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;QACH,6BACK,MAAM,GACN,CAAC,CAAC,CAAC,CAAA,MAAA,QAAQ,CAAC,KAAK,0CAAE,MAAM,CAAA,IAAI,CAAC,CAAC,CAAA,MAAA,QAAQ,CAAC,WAAW,0CAAE,MAAM,CAAA;YAC5D,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,EAAE,CAAC,EACP;IACJ,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG,UAAsC,KAI9D;;QACC,IAAM,KAAK,GAAuB,CAAC;;YAC3B,IAAA,KAAA,OAAa,aAAa,CAAC;gBAC/B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,OAAO;aACd,CAAC,IAAA,EAHK,QAAQ,QAGb,CAAC;YACH,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM;gBAAE,OAAO,QAAQ,CAAC;iBACjC,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,WAAW,0CAAE,MAAM,CAAA;gBAAE,OAAO,SAAS,CAAC;YAEtD,IAAM,KAAK,GAAW,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtD,IAAM,GAAG,GAAW,CAClB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CACzE,CAAC,IAAI,EAAE,CAAC;YACT,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,CAAC,CAAC,EAAE,CAAC;QACL,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,WAAW,EAAE,CAAA,MAAA,KAAK,CAAC,WAAW,0CAAE,MAAM,EAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAChE,CAAC;IACX,CAAC,CAAC;IAEF,IAAM,4BAA4B,GAAG,UAAC,KAIrC;;QACC,IAAM,UAAU,GAAqC,KAAK,CAAC,SAAS;YAClE,CAAC,CAAC,UAAC,GAAG;gBACF,OAAA,GAAG,CAAC,IAAK,CAAC,IAAI,CACZ,UAAC,IAAI;oBACH,OAAA,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,SAAS;gBAA9D,CAA8D,CACjE,KAAK,SAAS;YAHf,CAGe;YACnB,CAAC,CAAC,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC;QACf,IAAM,GAAG,GAA8B,KAAK,CAAC,SAAS,CAAC,IAAI,CACzD,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,EAAtD,CAAsD,CAChE,CAAC;QACF,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI;YACpB,CAAC,CAAC,CAAC,MAAA,MAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,MAAM,EAApB,CAAoB,CAAC,0CAAE,IAAI,mCAAI,IAAI,CAAC;YAC/D,CAAC,CAAC,IAAI,CAAC;IACX,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG,UAAC,KAGtB;QACC,OAAA,KAAK,CAAC,SAAS;aACZ,MAAM,CACL,UAAC,GAAG;YACF,OAAA,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;gBACvB,GAAG,CAAC,IAAI;gBACR,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAxC,CAAwC,CAAC;oBAC/D,SAAS;QAHX,CAGW,CACd;aACA,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAK,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,MAAM,EAApB,CAAoB,CAAE,CAAC,IAAI,EAApD,CAAoD,CAAC;IARrE,CAQqE,CAAC;AAC1E,CAAC,EAtQgB,wBAAwB,wCAAxB,wBAAwB,QAsQxC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ILlmApplication } from "@samchon/openapi";
|
|
2
2
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
3
3
|
export declare namespace LlmSchemaProgrammer {
|
|
4
|
-
const validate: (metadata: Metadata) => string[];
|
|
4
|
+
const validate: (model: ILlmApplication.Model) => (metadata: Metadata) => string[];
|
|
5
5
|
const write: <Model extends ILlmApplication.Model>(props: {
|
|
6
6
|
model: Model;
|
|
7
7
|
metadata: Metadata;
|
|
@@ -10,53 +10,83 @@ var __values = (this && this.__values) || function(o) {
|
|
|
10
10
|
};
|
|
11
11
|
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
12
|
};
|
|
13
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
+
if (!m) return o;
|
|
16
|
+
var i = m.call(o), r, ar = [], e;
|
|
17
|
+
try {
|
|
18
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
+
}
|
|
20
|
+
catch (error) { e = { error: error }; }
|
|
21
|
+
finally {
|
|
22
|
+
try {
|
|
23
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
+
}
|
|
25
|
+
finally { if (e) throw e.error; }
|
|
26
|
+
}
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
13
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
30
|
exports.LlmSchemaProgrammer = void 0;
|
|
15
31
|
var HttpLlmConverter_1 = require("@samchon/openapi/lib/converters/HttpLlmConverter");
|
|
32
|
+
var OpenApiV3Converter_1 = require("@samchon/openapi/lib/converters/OpenApiV3Converter");
|
|
16
33
|
var AtomicPredicator_1 = require("../helpers/AtomicPredicator");
|
|
17
34
|
var JsonSchemasProgrammer_1 = require("../json/JsonSchemasProgrammer");
|
|
18
35
|
var LlmSchemaProgrammer;
|
|
19
36
|
(function (LlmSchemaProgrammer) {
|
|
20
|
-
LlmSchemaProgrammer.validate = function (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
metadata.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
for (var _b = __values(metadata.natives), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
37
|
-
var native = _c.value;
|
|
38
|
-
if (AtomicPredicator_1.AtomicPredicator.native(native.name) === false &&
|
|
39
|
-
native.name !== "Date" &&
|
|
40
|
-
native.name !== "Blob" &&
|
|
41
|
-
native.name !== "File")
|
|
42
|
-
output.push("LLM schema does not support ".concat(native.name, " type."));
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
46
|
-
finally {
|
|
37
|
+
LlmSchemaProgrammer.validate = function (model) {
|
|
38
|
+
return function (metadata) {
|
|
39
|
+
var e_1, _a;
|
|
40
|
+
var output = [];
|
|
41
|
+
if (metadata.atomics.some(function (a) { return a.type === "bigint"; }) ||
|
|
42
|
+
metadata.constants.some(function (c) { return c.type === "bigint"; }))
|
|
43
|
+
output.push("LLM schema does not support bigint type.");
|
|
44
|
+
if (metadata.tuples.some(function (t) {
|
|
45
|
+
return t.type.elements.some(function (e) { return e.isRequired() === false; });
|
|
46
|
+
}) ||
|
|
47
|
+
metadata.arrays.some(function (a) { return a.type.value.isRequired() === false; }))
|
|
48
|
+
output.push("LLM schema does not support undefined type in array.");
|
|
49
|
+
if (metadata.maps.length)
|
|
50
|
+
output.push("LLM schema does not support Map type.");
|
|
51
|
+
if (metadata.sets.length)
|
|
52
|
+
output.push("LLM schema does not support Set type.");
|
|
47
53
|
try {
|
|
48
|
-
|
|
54
|
+
for (var _b = __values(metadata.natives), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
55
|
+
var native = _c.value;
|
|
56
|
+
if (AtomicPredicator_1.AtomicPredicator.native(native.name) === false &&
|
|
57
|
+
native.name !== "Date" &&
|
|
58
|
+
native.name !== "Blob" &&
|
|
59
|
+
native.name !== "File")
|
|
60
|
+
output.push("LLM schema does not support ".concat(native.name, " type."));
|
|
61
|
+
}
|
|
49
62
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
63
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
64
|
+
finally {
|
|
65
|
+
try {
|
|
66
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
67
|
+
}
|
|
68
|
+
finally { if (e_1) throw e_1.error; }
|
|
69
|
+
}
|
|
70
|
+
if (model === "gemini") {
|
|
71
|
+
try {
|
|
72
|
+
var _d = __read(JsonSchemasProgrammer_1.JsonSchemasProgrammer.write({
|
|
73
|
+
version: "3.0",
|
|
74
|
+
metadatas: [metadata],
|
|
75
|
+
}).schemas, 1), schema = _d[0];
|
|
76
|
+
if (OpenApiV3Converter_1.OpenApiV3Converter.TypeChecker.isOneOf(schema))
|
|
77
|
+
output.push("Gemini model does not support the union type.");
|
|
78
|
+
}
|
|
79
|
+
catch (_e) { }
|
|
80
|
+
}
|
|
81
|
+
// if (
|
|
82
|
+
// metadata.aliases.some((a) => a.type.recursive) ||
|
|
83
|
+
// metadata.arrays.some((a) => a.type.recursive) ||
|
|
84
|
+
// metadata.objects.some((o) => o.type.recursive) ||
|
|
85
|
+
// metadata.tuples.some((t) => t.type.recursive)
|
|
86
|
+
// )
|
|
87
|
+
// output.push("LLM schema does not support recursive type.");
|
|
88
|
+
return output;
|
|
89
|
+
};
|
|
60
90
|
};
|
|
61
91
|
LlmSchemaProgrammer.write = function (props) {
|
|
62
92
|
var collection = JsonSchemasProgrammer_1.JsonSchemasProgrammer.write({
|
|
@@ -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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"}
|
|
@@ -50,6 +50,19 @@ var LlmApplicationTransformer;
|
|
|
50
50
|
var top = props.expression.typeArguments[0];
|
|
51
51
|
if (typescript_1.default.isTypeNode(top) === false)
|
|
52
52
|
return props.expression;
|
|
53
|
+
// GET MODEL
|
|
54
|
+
var model = get_parameter({
|
|
55
|
+
checker: props.context.checker,
|
|
56
|
+
name: "Model",
|
|
57
|
+
is: function (value) {
|
|
58
|
+
return value === "3.1" ||
|
|
59
|
+
value === "3.0" ||
|
|
60
|
+
value === "chatgpt" ||
|
|
61
|
+
value === "gemini";
|
|
62
|
+
},
|
|
63
|
+
cast: function (value) { return value; },
|
|
64
|
+
default: function () { return "3.1"; },
|
|
65
|
+
})(props.expression.typeArguments[1]);
|
|
53
66
|
// GET TYPE
|
|
54
67
|
var type = props.context.checker.getTypeFromTypeNode(top);
|
|
55
68
|
var collection = new MetadataCollection_1.MetadataCollection({
|
|
@@ -63,7 +76,7 @@ var LlmApplicationTransformer;
|
|
|
63
76
|
constant: true,
|
|
64
77
|
absorb: false,
|
|
65
78
|
functional: true,
|
|
66
|
-
validate: LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate(),
|
|
79
|
+
validate: LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate(model),
|
|
67
80
|
},
|
|
68
81
|
collection: collection,
|
|
69
82
|
type: type,
|
|
@@ -74,18 +87,6 @@ var LlmApplicationTransformer;
|
|
|
74
87
|
errors: result.errors,
|
|
75
88
|
});
|
|
76
89
|
// GENERATE LLM APPLICATION
|
|
77
|
-
var model = get_parameter({
|
|
78
|
-
checker: props.context.checker,
|
|
79
|
-
name: "Model",
|
|
80
|
-
is: function (value) {
|
|
81
|
-
return value === "3.1" ||
|
|
82
|
-
value === "3.0" ||
|
|
83
|
-
value === "chatgpt" ||
|
|
84
|
-
value === "gemini";
|
|
85
|
-
},
|
|
86
|
-
cast: function (value) { return value; },
|
|
87
|
-
default: function () { return "3.1"; },
|
|
88
|
-
})(props.expression.typeArguments[1]);
|
|
89
90
|
var schema = LlmApplicationProgrammer_1.LlmApplicationProgrammer.write({
|
|
90
91
|
model: model,
|
|
91
92
|
metadata: result.data,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0DAA4B;AAE5B,0EAAyE;AACzE,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AACrE,wEAAuE;AAIvE,8FAA6F;AAK7F,2DAA0D;AAE1D,IAAiB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,19 @@ var LlmSchemaTransformer;
|
|
|
23
23
|
var top = props.expression.typeArguments[0];
|
|
24
24
|
if (typescript_1.default.isTypeNode(top) === false)
|
|
25
25
|
return props.expression;
|
|
26
|
+
// GET MODEL
|
|
27
|
+
var model = get_parameter({
|
|
28
|
+
checker: props.context.checker,
|
|
29
|
+
name: "Model",
|
|
30
|
+
is: function (value) {
|
|
31
|
+
return value === "3.1" ||
|
|
32
|
+
value === "3.0" ||
|
|
33
|
+
value === "chatgpt" ||
|
|
34
|
+
value === "gemini";
|
|
35
|
+
},
|
|
36
|
+
cast: function (value) { return value; },
|
|
37
|
+
default: function () { return "3.1"; },
|
|
38
|
+
})(props.expression.typeArguments[1]);
|
|
26
39
|
// GET TYPE
|
|
27
40
|
var type = props.context.checker.getTypeFromTypeNode(top);
|
|
28
41
|
var collection = new MetadataCollection_1.MetadataCollection({
|
|
@@ -35,7 +48,7 @@ var LlmSchemaTransformer;
|
|
|
35
48
|
escape: true,
|
|
36
49
|
constant: true,
|
|
37
50
|
absorb: false,
|
|
38
|
-
validate: LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate,
|
|
51
|
+
validate: LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate(model),
|
|
39
52
|
},
|
|
40
53
|
collection: collection,
|
|
41
54
|
type: type,
|
|
@@ -46,18 +59,6 @@ var LlmSchemaTransformer;
|
|
|
46
59
|
errors: result.errors,
|
|
47
60
|
});
|
|
48
61
|
// GENERATE LLM SCHEMA
|
|
49
|
-
var model = get_parameter({
|
|
50
|
-
checker: props.context.checker,
|
|
51
|
-
name: "Model",
|
|
52
|
-
is: function (value) {
|
|
53
|
-
return value === "3.1" ||
|
|
54
|
-
value === "3.0" ||
|
|
55
|
-
value === "chatgpt" ||
|
|
56
|
-
value === "gemini";
|
|
57
|
-
},
|
|
58
|
-
cast: function (value) { return value; },
|
|
59
|
-
default: function () { return "3.1"; },
|
|
60
|
-
})(props.expression.typeArguments[1]);
|
|
61
62
|
var schema = LlmSchemaProgrammer_1.LlmSchemaProgrammer.write({
|
|
62
63
|
model: model,
|
|
63
64
|
metadata: result.data,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAE5B,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AAIrE,oFAAmF;AAKnF,2DAA0D;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.0.0-dev.
|
|
3
|
+
"version": "7.0.0-dev.20241111",
|
|
4
4
|
"description": "Superfast runtime validators with only one line",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
},
|
|
69
69
|
"homepage": "https://typia.io",
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@samchon/openapi": "
|
|
71
|
+
"@samchon/openapi": "2.0.0-dev.20241111",
|
|
72
72
|
"commander": "^10.0.0",
|
|
73
73
|
"comment-json": "^4.2.3",
|
|
74
74
|
"inquirer": "^8.2.5",
|
|
@@ -123,9 +123,9 @@ export class MetadataCollection {
|
|
|
123
123
|
const oldbie = this.objects_.get(type);
|
|
124
124
|
if (oldbie !== undefined) return [oldbie, false];
|
|
125
125
|
|
|
126
|
-
const
|
|
126
|
+
const id: string = this.getName(checker, type);
|
|
127
127
|
const obj: MetadataObjectType = MetadataObjectType.create({
|
|
128
|
-
name:
|
|
128
|
+
name: id,
|
|
129
129
|
properties: [],
|
|
130
130
|
description:
|
|
131
131
|
(type.aliasSymbol && CommentFactory.description(type.aliasSymbol)) ??
|
|
@@ -150,9 +150,9 @@ export class MetadataCollection {
|
|
|
150
150
|
const oldbie = this.aliases_.get(type);
|
|
151
151
|
if (oldbie !== undefined) return [oldbie, false, () => {}];
|
|
152
152
|
|
|
153
|
-
const
|
|
153
|
+
const id: string = this.getName(checker, type);
|
|
154
154
|
const alias: MetadataAliasType = MetadataAliasType.create({
|
|
155
|
-
name:
|
|
155
|
+
name: id,
|
|
156
156
|
value: null!,
|
|
157
157
|
description: CommentFactory.description(symbol) ?? null,
|
|
158
158
|
recursive: null!,
|
|
@@ -170,9 +170,9 @@ export class MetadataCollection {
|
|
|
170
170
|
const oldbie = this.arrays_.get(type);
|
|
171
171
|
if (oldbie !== undefined) return [oldbie, false, () => {}];
|
|
172
172
|
|
|
173
|
-
const
|
|
173
|
+
const id = this.getName(checker, type);
|
|
174
174
|
const array: MetadataArrayType = MetadataArrayType.create({
|
|
175
|
-
name:
|
|
175
|
+
name: id,
|
|
176
176
|
value: null!,
|
|
177
177
|
index: null,
|
|
178
178
|
recursive: null!,
|
|
@@ -189,9 +189,9 @@ export class MetadataCollection {
|
|
|
189
189
|
const oldbie = this.tuples_.get(type);
|
|
190
190
|
if (oldbie !== undefined) return [oldbie, false, () => {}];
|
|
191
191
|
|
|
192
|
-
const
|
|
192
|
+
const id = this.getName(checker, type);
|
|
193
193
|
const tuple: MetadataTupleType = MetadataTupleType.create({
|
|
194
|
-
name:
|
|
194
|
+
name: id,
|
|
195
195
|
elements: null!,
|
|
196
196
|
index: null,
|
|
197
197
|
recursive: null!,
|
|
@@ -23,16 +23,20 @@ export const json_schema_array = (props: {
|
|
|
23
23
|
tags: props.array.tags,
|
|
24
24
|
});
|
|
25
25
|
if (props.array.type.recursive === true) {
|
|
26
|
-
const out = () => [
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
const out = () => [
|
|
27
|
+
{
|
|
28
|
+
$ref: `#/components/schemas/${props.array.type.name}`,
|
|
29
|
+
},
|
|
30
|
+
];
|
|
31
|
+
if (props.components.schemas?.[props.array.type.name] !== undefined)
|
|
32
|
+
return out();
|
|
29
33
|
|
|
30
34
|
props.components.schemas ??= {};
|
|
31
|
-
props.components.schemas[
|
|
35
|
+
props.components.schemas[props.array.type.name] ??= {};
|
|
32
36
|
|
|
33
37
|
const oneOf: OpenApi.IJsonSchema.IArray[] = factory();
|
|
34
38
|
Object.assign(
|
|
35
|
-
props.components.schemas[
|
|
39
|
+
props.components.schemas[props.array.type.name]!,
|
|
36
40
|
oneOf.length === 1 ? oneOf[0] : { oneOf },
|
|
37
41
|
);
|
|
38
42
|
return out();
|
|
@@ -11,7 +11,7 @@ import { MetadataObjectType } from "../../schemas/metadata/MetadataObjectType";
|
|
|
11
11
|
import { LlmSchemaProgrammer } from "./LlmSchemaProgrammer";
|
|
12
12
|
|
|
13
13
|
export namespace LlmApplicationProgrammer {
|
|
14
|
-
export const validate = () => {
|
|
14
|
+
export const validate = (model: ILlmApplication.Model) => {
|
|
15
15
|
let top: Metadata | undefined;
|
|
16
16
|
return (
|
|
17
17
|
metadata: Metadata,
|
|
@@ -28,7 +28,7 @@ export namespace LlmApplicationProgrammer {
|
|
|
28
28
|
metadata.functions.length === 1
|
|
29
29
|
)
|
|
30
30
|
return validateFunction(metadata.functions[0]!);
|
|
31
|
-
else return LlmSchemaProgrammer.validate(metadata);
|
|
31
|
+
else return LlmSchemaProgrammer.validate(model)(metadata);
|
|
32
32
|
|
|
33
33
|
const output: string[] = [];
|
|
34
34
|
const valid: boolean =
|
|
@@ -88,7 +88,7 @@ export namespace LlmApplicationProgrammer {
|
|
|
88
88
|
model: Model;
|
|
89
89
|
metadata: Metadata;
|
|
90
90
|
}): ILlmApplication<Model> => {
|
|
91
|
-
const errors: string[] = validate()(props.metadata, {
|
|
91
|
+
const errors: string[] = validate(props.model)(props.metadata, {
|
|
92
92
|
top: true,
|
|
93
93
|
object: null,
|
|
94
94
|
property: null,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ILlmApplication } from "@samchon/openapi";
|
|
2
2
|
import { HttpLlmConverter } from "@samchon/openapi/lib/converters/HttpLlmConverter";
|
|
3
|
+
import { OpenApiV3Converter } from "@samchon/openapi/lib/converters/OpenApiV3Converter";
|
|
3
4
|
|
|
4
5
|
import { IJsonSchemaCollection } from "../../schemas/json/IJsonSchemaCollection";
|
|
5
6
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
@@ -8,41 +9,55 @@ import { AtomicPredicator } from "../helpers/AtomicPredicator";
|
|
|
8
9
|
import { JsonSchemasProgrammer } from "../json/JsonSchemasProgrammer";
|
|
9
10
|
|
|
10
11
|
export namespace LlmSchemaProgrammer {
|
|
11
|
-
export const validate =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
metadata.constants.some((c) => c.type === "bigint")
|
|
16
|
-
)
|
|
17
|
-
output.push("LLM schema does not support bigint type.");
|
|
18
|
-
if (
|
|
19
|
-
metadata.tuples.some((t) =>
|
|
20
|
-
t.type.elements.some((e) => e.isRequired() === false),
|
|
21
|
-
) ||
|
|
22
|
-
metadata.arrays.some((a) => a.type.value.isRequired() === false)
|
|
23
|
-
)
|
|
24
|
-
output.push("LLM schema does not support undefined type in array.");
|
|
25
|
-
if (metadata.maps.length)
|
|
26
|
-
output.push("LLM schema does not support Map type.");
|
|
27
|
-
if (metadata.sets.length)
|
|
28
|
-
output.push("LLM schema does not support Set type.");
|
|
29
|
-
for (const native of metadata.natives)
|
|
12
|
+
export const validate =
|
|
13
|
+
(model: ILlmApplication.Model) =>
|
|
14
|
+
(metadata: Metadata): string[] => {
|
|
15
|
+
const output: string[] = [];
|
|
30
16
|
if (
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
native.name !== "Blob" &&
|
|
34
|
-
native.name !== "File"
|
|
17
|
+
metadata.atomics.some((a) => a.type === "bigint") ||
|
|
18
|
+
metadata.constants.some((c) => c.type === "bigint")
|
|
35
19
|
)
|
|
36
|
-
output.push(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
20
|
+
output.push("LLM schema does not support bigint type.");
|
|
21
|
+
if (
|
|
22
|
+
metadata.tuples.some((t) =>
|
|
23
|
+
t.type.elements.some((e) => e.isRequired() === false),
|
|
24
|
+
) ||
|
|
25
|
+
metadata.arrays.some((a) => a.type.value.isRequired() === false)
|
|
26
|
+
)
|
|
27
|
+
output.push("LLM schema does not support undefined type in array.");
|
|
28
|
+
if (metadata.maps.length)
|
|
29
|
+
output.push("LLM schema does not support Map type.");
|
|
30
|
+
if (metadata.sets.length)
|
|
31
|
+
output.push("LLM schema does not support Set type.");
|
|
32
|
+
for (const native of metadata.natives)
|
|
33
|
+
if (
|
|
34
|
+
AtomicPredicator.native(native.name) === false &&
|
|
35
|
+
native.name !== "Date" &&
|
|
36
|
+
native.name !== "Blob" &&
|
|
37
|
+
native.name !== "File"
|
|
38
|
+
)
|
|
39
|
+
output.push(`LLM schema does not support ${native.name} type.`);
|
|
40
|
+
if (model === "gemini") {
|
|
41
|
+
try {
|
|
42
|
+
const {
|
|
43
|
+
schemas: [schema],
|
|
44
|
+
} = JsonSchemasProgrammer.write({
|
|
45
|
+
version: "3.0",
|
|
46
|
+
metadatas: [metadata],
|
|
47
|
+
});
|
|
48
|
+
if (OpenApiV3Converter.TypeChecker.isOneOf(schema!))
|
|
49
|
+
output.push("Gemini model does not support the union type.");
|
|
50
|
+
} catch {}
|
|
51
|
+
}
|
|
52
|
+
// if (
|
|
53
|
+
// metadata.aliases.some((a) => a.type.recursive) ||
|
|
54
|
+
// metadata.arrays.some((a) => a.type.recursive) ||
|
|
55
|
+
// metadata.objects.some((o) => o.type.recursive) ||
|
|
56
|
+
// metadata.tuples.some((t) => t.type.recursive)
|
|
57
|
+
// )
|
|
58
|
+
// output.push("LLM schema does not support recursive type.");
|
|
59
|
+
return output;
|
|
60
|
+
};
|
|
46
61
|
|
|
47
62
|
export const write = <Model extends ILlmApplication.Model>(props: {
|
|
48
63
|
model: Model;
|
|
@@ -28,6 +28,19 @@ export namespace LlmApplicationTransformer {
|
|
|
28
28
|
const top: ts.Node = props.expression.typeArguments[0]!;
|
|
29
29
|
if (ts.isTypeNode(top) === false) return props.expression;
|
|
30
30
|
|
|
31
|
+
// GET MODEL
|
|
32
|
+
const model: ILlmApplication.Model = get_parameter<ILlmApplication.Model>({
|
|
33
|
+
checker: props.context.checker,
|
|
34
|
+
name: "Model",
|
|
35
|
+
is: (value) =>
|
|
36
|
+
value === "3.1" ||
|
|
37
|
+
value === "3.0" ||
|
|
38
|
+
value === "chatgpt" ||
|
|
39
|
+
value === "gemini",
|
|
40
|
+
cast: (value) => value as ILlmApplication.Model,
|
|
41
|
+
default: () => "3.1",
|
|
42
|
+
})(props.expression.typeArguments[1]);
|
|
43
|
+
|
|
31
44
|
// GET TYPE
|
|
32
45
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
33
46
|
const collection: MetadataCollection = new MetadataCollection({
|
|
@@ -42,7 +55,7 @@ export namespace LlmApplicationTransformer {
|
|
|
42
55
|
constant: true,
|
|
43
56
|
absorb: false,
|
|
44
57
|
functional: true,
|
|
45
|
-
validate: LlmApplicationProgrammer.validate(),
|
|
58
|
+
validate: LlmApplicationProgrammer.validate(model),
|
|
46
59
|
},
|
|
47
60
|
collection,
|
|
48
61
|
type,
|
|
@@ -54,17 +67,6 @@ export namespace LlmApplicationTransformer {
|
|
|
54
67
|
});
|
|
55
68
|
|
|
56
69
|
// GENERATE LLM APPLICATION
|
|
57
|
-
const model: ILlmApplication.Model = get_parameter<ILlmApplication.Model>({
|
|
58
|
-
checker: props.context.checker,
|
|
59
|
-
name: "Model",
|
|
60
|
-
is: (value) =>
|
|
61
|
-
value === "3.1" ||
|
|
62
|
-
value === "3.0" ||
|
|
63
|
-
value === "chatgpt" ||
|
|
64
|
-
value === "gemini",
|
|
65
|
-
cast: (value) => value as ILlmApplication.Model,
|
|
66
|
-
default: () => "3.1",
|
|
67
|
-
})(props.expression.typeArguments[1]);
|
|
68
70
|
const schema: ILlmApplication<ILlmApplication.Model> =
|
|
69
71
|
LlmApplicationProgrammer.write({
|
|
70
72
|
model,
|
|
@@ -28,6 +28,19 @@ export namespace LlmSchemaTransformer {
|
|
|
28
28
|
const top: ts.Node = props.expression.typeArguments[0]!;
|
|
29
29
|
if (ts.isTypeNode(top) === false) return props.expression;
|
|
30
30
|
|
|
31
|
+
// GET MODEL
|
|
32
|
+
const model: ILlmApplication.Model = get_parameter<ILlmApplication.Model>({
|
|
33
|
+
checker: props.context.checker,
|
|
34
|
+
name: "Model",
|
|
35
|
+
is: (value) =>
|
|
36
|
+
value === "3.1" ||
|
|
37
|
+
value === "3.0" ||
|
|
38
|
+
value === "chatgpt" ||
|
|
39
|
+
value === "gemini",
|
|
40
|
+
cast: (value) => value as ILlmApplication.Model,
|
|
41
|
+
default: () => "3.1",
|
|
42
|
+
})(props.expression.typeArguments[1]);
|
|
43
|
+
|
|
31
44
|
// GET TYPE
|
|
32
45
|
const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
|
|
33
46
|
const collection: MetadataCollection = new MetadataCollection({
|
|
@@ -41,7 +54,7 @@ export namespace LlmSchemaTransformer {
|
|
|
41
54
|
escape: true,
|
|
42
55
|
constant: true,
|
|
43
56
|
absorb: false,
|
|
44
|
-
validate: LlmSchemaProgrammer.validate,
|
|
57
|
+
validate: LlmSchemaProgrammer.validate(model),
|
|
45
58
|
},
|
|
46
59
|
collection,
|
|
47
60
|
type,
|
|
@@ -53,17 +66,6 @@ export namespace LlmSchemaTransformer {
|
|
|
53
66
|
});
|
|
54
67
|
|
|
55
68
|
// GENERATE LLM SCHEMA
|
|
56
|
-
const model: ILlmApplication.Model = get_parameter<ILlmApplication.Model>({
|
|
57
|
-
checker: props.context.checker,
|
|
58
|
-
name: "Model",
|
|
59
|
-
is: (value) =>
|
|
60
|
-
value === "3.1" ||
|
|
61
|
-
value === "3.0" ||
|
|
62
|
-
value === "chatgpt" ||
|
|
63
|
-
value === "gemini",
|
|
64
|
-
cast: (value) => value as ILlmApplication.Model,
|
|
65
|
-
default: () => "3.1",
|
|
66
|
-
})(props.expression.typeArguments[1]);
|
|
67
69
|
const schema: ILlmApplication.ModelSchema[ILlmApplication.Model] =
|
|
68
70
|
LlmSchemaProgrammer.write({
|
|
69
71
|
model,
|