typia 6.10.0-dev.20240906 → 6.10.0-dev.20240908
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/_external/node_modules_@samchon_openapi_lib_utils/LlmSchemaSeparator.mjs +142 -0
- package/lib/_external/node_modules_@samchon_openapi_lib_utils/LlmSchemaSeparator.mjs.map +1 -0
- package/lib/_external/node_modules_@samchon_openapi_lib_utils/LlmTypeChecker.mjs +171 -0
- package/lib/_external/node_modules_@samchon_openapi_lib_utils/LlmTypeChecker.mjs.map +1 -0
- package/lib/_virtual/LlmSchemaSeparator.mjs +4 -0
- package/lib/_virtual/LlmSchemaSeparator.mjs.map +1 -0
- package/lib/_virtual/LlmTypeChecker.mjs +4 -0
- package/lib/_virtual/LlmTypeChecker.mjs.map +1 -0
- package/lib/_virtual/_commonjsHelpers.mjs +3 -1
- package/lib/_virtual/_commonjsHelpers.mjs.map +1 -1
- package/lib/factories/MetadataFactory.d.ts +1 -0
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/MetadataTypeTagSchemaFactory.js +1 -1
- package/lib/factories/MetadataTypeTagSchemaFactory.js.map +1 -1
- package/lib/factories/ProtobufFactory.js +1 -1
- package/lib/factories/ProtobufFactory.js.map +1 -1
- package/lib/factories/TypeFactory.d.ts +1 -0
- package/lib/factories/TypeFactory.js +2 -2
- package/lib/factories/TypeFactory.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_object.js +11 -6
- package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.js +2 -0
- package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +0 -5
- package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_function.d.ts +5 -0
- package/lib/factories/internal/metadata/iterate_metadata_function.js +89 -0
- package/lib/factories/internal/metadata/iterate_metadata_function.js.map +1 -0
- package/lib/functional/Namespace/index.d.ts +1 -0
- package/lib/functional/Namespace/index.js +2 -1
- package/lib/functional/Namespace/index.js.map +1 -1
- package/lib/functional/Namespace/index.mjs +1 -0
- package/lib/functional/Namespace/index.mjs.map +1 -1
- package/lib/functional/Namespace/llm.d.ts +4 -0
- package/lib/functional/Namespace/llm.js +44 -0
- package/lib/functional/Namespace/llm.js.map +1 -0
- package/lib/functional/Namespace/llm.mjs +19 -0
- package/lib/functional/Namespace/llm.mjs.map +1 -0
- package/lib/llm.d.ts +148 -2
- package/lib/llm.js +28 -1
- package/lib/llm.js.map +1 -1
- package/lib/llm.mjs +6 -1
- package/lib/llm.mjs.map +1 -1
- package/lib/programmers/CheckerProgrammer.js +1 -1
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.js +1 -1
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.d.ts +1 -1
- package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js.map +1 -1
- package/lib/programmers/internal/application_v30_object.js +1 -1
- package/lib/programmers/internal/application_v30_object.js.map +1 -1
- package/lib/programmers/internal/application_v31_object.js +1 -1
- package/lib/programmers/internal/application_v31_object.js.map +1 -1
- package/lib/programmers/internal/llm_schema_object.js +1 -1
- package/lib/programmers/internal/llm_schema_object.js.map +1 -1
- package/lib/programmers/internal/llm_schema_tuple.d.ts +1 -6
- package/lib/programmers/internal/llm_schema_tuple.js +3 -0
- package/lib/programmers/internal/llm_schema_tuple.js.map +1 -1
- package/lib/programmers/internal/stringify_regular_properties.js +4 -4
- package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
- package/lib/programmers/json/JsonStringifyProgrammer.js +2 -2
- package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +7 -0
- package/lib/programmers/llm/LlmApplicationProgrammer.js +211 -0
- package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -0
- package/lib/programmers/misc/MiscCloneProgrammer.js +1 -1
- package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
- package/lib/programmers/notations/NotationGeneralProgrammer.js +1 -1
- package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
- package/lib/schemas/metadata/IMetadata.d.ts +2 -1
- package/lib/schemas/metadata/IMetadataFunction.d.ts +7 -0
- package/lib/schemas/metadata/IMetadataFunction.js +3 -0
- package/lib/schemas/metadata/IMetadataFunction.js.map +1 -0
- package/lib/schemas/metadata/IMetadataParameter.d.ts +8 -0
- package/lib/schemas/metadata/IMetadataParameter.js +3 -0
- package/lib/schemas/metadata/IMetadataParameter.js.map +1 -0
- package/lib/schemas/metadata/Metadata.d.ts +2 -1
- package/lib/schemas/metadata/Metadata.js +12 -11
- package/lib/schemas/metadata/Metadata.js.map +1 -1
- package/lib/schemas/metadata/MetadataFunction.d.ts +15 -0
- package/lib/schemas/metadata/MetadataFunction.js +38 -0
- package/lib/schemas/metadata/MetadataFunction.js.map +1 -0
- package/lib/schemas/metadata/MetadataParameter.d.ts +13 -0
- package/lib/schemas/metadata/MetadataParameter.js +37 -0
- package/lib/schemas/metadata/MetadataParameter.js.map +1 -0
- package/lib/transformers/CallExpressionTransformer.js +4 -0
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmApplicationTransformer.d.ts +5 -0
- package/lib/transformers/features/llm/LlmApplicationTransformer.js +86 -0
- package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -0
- package/lib/transformers/features/llm/LlmSchemaTransformer.js +2 -1
- package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +1 -0
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
- package/package.json +2 -2
- package/src/factories/MetadataFactory.ts +1 -0
- package/src/factories/MetadataTypeTagSchemaFactory.ts +59 -59
- package/src/factories/ProtobufFactory.ts +1 -1
- package/src/factories/TypeFactory.ts +1 -1
- package/src/factories/internal/metadata/emplace_metadata_object.ts +10 -6
- package/src/factories/internal/metadata/explore_metadata.ts +28 -28
- package/src/factories/internal/metadata/iterate_metadata.ts +6 -0
- package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +0 -5
- package/src/factories/internal/metadata/iterate_metadata_function.ts +85 -0
- package/src/functional/Namespace/index.ts +1 -0
- package/src/functional/Namespace/llm.ts +20 -0
- package/src/llm.ts +159 -3
- package/src/programmers/CheckerProgrammer.ts +1 -1
- package/src/programmers/RandomProgrammer.ts +1 -1
- package/src/programmers/functional/internal/FunctionalGeneralProgrammer.ts +3 -1
- package/src/programmers/internal/application_escaped.ts +74 -74
- package/src/programmers/internal/application_v30_object.ts +1 -1
- package/src/programmers/internal/application_v31_object.ts +1 -1
- package/src/programmers/internal/llm_schema_object.ts +1 -1
- package/src/programmers/internal/stringify_regular_properties.ts +4 -4
- package/src/programmers/json/JsonStringifyProgrammer.ts +2 -2
- package/src/programmers/llm/LlmApplicationProgrammer.ts +211 -0
- package/src/programmers/misc/MiscCloneProgrammer.ts +1 -1
- package/src/programmers/notations/NotationGeneralProgrammer.ts +1 -1
- package/src/schemas/metadata/IMetadata.ts +2 -1
- package/src/schemas/metadata/IMetadataFunction.ts +8 -0
- package/src/schemas/metadata/IMetadataParameter.ts +9 -0
- package/src/schemas/metadata/Metadata.ts +13 -12
- package/src/schemas/metadata/MetadataFunction.ts +49 -0
- package/src/schemas/metadata/MetadataParameter.ts +50 -0
- package/src/transformers/CallExpressionTransformer.ts +508 -505
- package/src/transformers/features/llm/LlmApplicationTransformer.ts +87 -0
- package/src/transformers/features/llm/LlmSchemaTransformer.ts +2 -1
- package/src/transformers/features/reflect/ReflectMetadataTransformer.ts +1 -0
|
@@ -19,6 +19,7 @@ var iterate_metadata_atomic_1 = require("./iterate_metadata_atomic");
|
|
|
19
19
|
var iterate_metadata_coalesce_1 = require("./iterate_metadata_coalesce");
|
|
20
20
|
var iterate_metadata_constant_1 = require("./iterate_metadata_constant");
|
|
21
21
|
var iterate_metadata_escape_1 = require("./iterate_metadata_escape");
|
|
22
|
+
var iterate_metadata_function_1 = require("./iterate_metadata_function");
|
|
22
23
|
var iterate_metadata_intersection_1 = require("./iterate_metadata_intersection");
|
|
23
24
|
var iterate_metadata_map_1 = require("./iterate_metadata_map");
|
|
24
25
|
var iterate_metadata_native_1 = require("./iterate_metadata_native");
|
|
@@ -49,6 +50,7 @@ var iterate_metadata = function (checker) {
|
|
|
49
50
|
return;
|
|
50
51
|
// ITERATE CASES
|
|
51
52
|
(0, iterate_metadata_coalesce_1.iterate_metadata_coalesce)(meta, type) ||
|
|
53
|
+
(0, iterate_metadata_function_1.iterate_metadata_function)(checker)(options)(collection)(errors)(meta, type, explore) ||
|
|
52
54
|
(0, iterate_metadata_constant_1.iterate_metadata_constant)(checker)(options)(meta, type) ||
|
|
53
55
|
(0, iterate_metadata_template_1.iterate_metadata_template)(checker)(options)(collection)(errors)(meta, type, explore) ||
|
|
54
56
|
(0, iterate_metadata_atomic_1.iterate_metadata_atomic)(meta, type) ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.iterate_metadata_coalesce = void 0;
|
|
7
7
|
var typescript_1 = __importDefault(require("typescript"));
|
|
8
8
|
var Writable_1 = require("../../../typings/Writable");
|
|
9
|
-
var TypeFactory_1 = require("../../TypeFactory");
|
|
10
9
|
var iterate_metadata_coalesce = function (meta, type) {
|
|
11
10
|
var filter = function (flag) { return (type.getFlags() & flag) !== 0; };
|
|
12
11
|
if (filter(typescript_1.default.TypeFlags.Unknown) || filter(typescript_1.default.TypeFlags.Any)) {
|
|
@@ -24,10 +23,6 @@ var iterate_metadata_coalesce = function (meta, type) {
|
|
|
24
23
|
(0, Writable_1.Writable)(meta).required = false;
|
|
25
24
|
return true;
|
|
26
25
|
}
|
|
27
|
-
else if (TypeFactory_1.TypeFactory.isFunction(type) === true) {
|
|
28
|
-
(0, Writable_1.Writable)(meta).functional = true;
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
26
|
return false;
|
|
32
27
|
};
|
|
33
28
|
exports.iterate_metadata_coalesce = iterate_metadata_coalesce;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterate_metadata_coalesce.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_coalesce.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAI5B,sDAAqD;
|
|
1
|
+
{"version":3,"file":"iterate_metadata_coalesce.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_coalesce.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAI5B,sDAAqD;AAE9C,IAAM,yBAAyB,GAAG,UACvC,IAAc,EACd,IAAa;IAEb,IAAM,MAAM,GAAG,UAAC,IAAkB,IAAK,OAAA,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC;IACtE,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7D,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,IACL,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,SAAS,CAAC;QAC9B,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,IAAI,CAAC;QACzB,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAC7B,CAAC;QACD,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AArBW,QAAA,yBAAyB,6BAqBpC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { Metadata } from "../../../schemas/metadata/Metadata";
|
|
3
|
+
import { MetadataCollection } from "../../MetadataCollection";
|
|
4
|
+
import { MetadataFactory } from "../../MetadataFactory";
|
|
5
|
+
export declare const iterate_metadata_function: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (errors: MetadataFactory.IError[]) => (metadata: Metadata, type: ts.Type, explore: MetadataFactory.IExplore) => boolean;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
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
|
+
};
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.iterate_metadata_function = void 0;
|
|
31
|
+
var FunctionalGeneralProgrammer_1 = require("../../../programmers/functional/internal/FunctionalGeneralProgrammer");
|
|
32
|
+
var Metadata_1 = require("../../../schemas/metadata/Metadata");
|
|
33
|
+
var MetadataFunction_1 = require("../../../schemas/metadata/MetadataFunction");
|
|
34
|
+
var MetadataParameter_1 = require("../../../schemas/metadata/MetadataParameter");
|
|
35
|
+
var CommentFactory_1 = require("../../CommentFactory");
|
|
36
|
+
var TypeFactory_1 = require("../../TypeFactory");
|
|
37
|
+
var explore_metadata_1 = require("./explore_metadata");
|
|
38
|
+
var iterate_metadata_function = function (checker) {
|
|
39
|
+
return function (options) {
|
|
40
|
+
return function (collection) {
|
|
41
|
+
return function (errors) {
|
|
42
|
+
return function (metadata, type, explore) {
|
|
43
|
+
var _a, _b;
|
|
44
|
+
var declaration = TypeFactory_1.TypeFactory.getFunction(type);
|
|
45
|
+
if (declaration === null)
|
|
46
|
+
return false;
|
|
47
|
+
else if (!options.functional) {
|
|
48
|
+
if (metadata.functions.length === 0)
|
|
49
|
+
metadata.functions.push(MetadataFunction_1.MetadataFunction.create({
|
|
50
|
+
parameters: [],
|
|
51
|
+
output: Metadata_1.Metadata.initialize(),
|
|
52
|
+
async: false,
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
var _c = __read(type.getCallSignatures(), 1), signature = _c[0];
|
|
57
|
+
if (signature === undefined || signature.declaration === undefined)
|
|
58
|
+
metadata.functions.push(MetadataFunction_1.MetadataFunction.create({
|
|
59
|
+
parameters: [],
|
|
60
|
+
output: Metadata_1.Metadata.initialize(),
|
|
61
|
+
async: false,
|
|
62
|
+
}));
|
|
63
|
+
else {
|
|
64
|
+
var async = FunctionalGeneralProgrammer_1.FunctionalGeneralProgrammer.getReturnType(checker)(declaration).async;
|
|
65
|
+
metadata.functions.push(MetadataFunction_1.MetadataFunction.create({
|
|
66
|
+
parameters: signature.parameters.map(function (p) {
|
|
67
|
+
var _a, _b;
|
|
68
|
+
return MetadataParameter_1.MetadataParameter.create({
|
|
69
|
+
name: p.name,
|
|
70
|
+
type: (0, explore_metadata_1.explore_metadata)(checker)(options)(collection)(errors)(checker.getTypeOfSymbol(p), __assign(__assign({}, explore), { top: false })),
|
|
71
|
+
description: (_a = CommentFactory_1.CommentFactory.description(p)) !== null && _a !== void 0 ? _a : null,
|
|
72
|
+
jsDocTags: (_b = p === null || p === void 0 ? void 0 : p.getJsDocTags()) !== null && _b !== void 0 ? _b : [],
|
|
73
|
+
});
|
|
74
|
+
}),
|
|
75
|
+
async: async,
|
|
76
|
+
output: (0, explore_metadata_1.explore_metadata)(checker)(__assign(__assign({}, options), { functional: false }))(collection)(errors)(async
|
|
77
|
+
? ((_b = (_a = signature.getReturnType().aliasTypeArguments) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any")))
|
|
78
|
+
: signature.getReturnType(), __assign(__assign({}, explore), { top: false })),
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return true;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
exports.iterate_metadata_function = iterate_metadata_function;
|
|
89
|
+
//# sourceMappingURL=iterate_metadata_function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iterate_metadata_function.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_function.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,oHAAmH;AAEnH,+DAA8D;AAC9D,+EAA8E;AAC9E,iFAAgF;AAEhF,uDAAsD;AAGtD,iDAAgD;AAChD,uDAAsD;AAE/C,IAAM,yBAAyB,GACpC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,QAAkB,EAClB,IAAa,EACb,OAAiC;;oBAEjC,IAAM,WAAW,GACf,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAChC,IAAI,WAAW,KAAK,IAAI;wBAAE,OAAO,KAAK,CAAC;yBAClC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;wBAC7B,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;4BACjC,QAAQ,CAAC,SAAS,CAAC,IAAI,CACrB,mCAAgB,CAAC,MAAM,CAAC;gCACtB,UAAU,EAAE,EAAE;gCACd,MAAM,EAAE,mBAAQ,CAAC,UAAU,EAAE;gCAC7B,KAAK,EAAE,KAAK;6BACb,CAAC,CACH,CAAC;oBACN,CAAC;yBAAM,CAAC;wBACA,IAAA,KAAA,OAAc,IAAI,CAAC,iBAAiB,EAAE,IAAA,EAArC,SAAS,QAA4B,CAAC;wBAC7C,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS;4BAChE,QAAQ,CAAC,SAAS,CAAC,IAAI,CACrB,mCAAgB,CAAC,MAAM,CAAC;gCACtB,UAAU,EAAE,EAAE;gCACd,MAAM,EAAE,mBAAQ,CAAC,UAAU,EAAE;gCAC7B,KAAK,EAAE,KAAK;6BACb,CAAC,CACH,CAAC;6BACC,CAAC;4BACI,IAAA,KAAK,GACX,yDAA2B,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,MADpD,CACqD;4BAClE,QAAQ,CAAC,SAAS,CAAC,IAAI,CACrB,mCAAgB,CAAC,MAAM,CAAC;gCACtB,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;;oCACrC,OAAA,qCAAiB,CAAC,MAAM,CAAC;wCACvB,IAAI,EAAE,CAAC,CAAC,IAAI;wCACZ,IAAI,EAAE,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC1D,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,wBAErB,OAAO,KACV,GAAG,EAAE,KAAK,IAEb;wCACD,WAAW,EAAE,MAAA,+BAAc,CAAC,WAAW,CAAC,CAAC,CAAC,mCAAI,IAAI;wCAClD,SAAS,EAAE,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,YAAY,EAAE,mCAAI,EAAE;qCACnC,CAAC,CAAA;iCAAA,CACH;gCACD,KAAK,OAAA;gCACL,MAAM,EAAE,IAAA,mCAAgB,EAAC,OAAO,CAAC,uBAC5B,OAAO,KACV,UAAU,EAAE,KAAK,IACjB,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACpB,KAAK;oCACH,CAAC,CAAC,CAAC,MAAA,MAAA,SAAS,CAAC,aAAa,EAAE,CAAC,kBAAkB,0CAAG,CAAC,CAAC,mCAChD,OAAO,CAAC,mBAAmB,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;oCAC5D,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,wBAExB,OAAO,KACV,GAAG,EAAE,KAAK,IAEb;6BACF,CAAC,CACH,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;YAjED,CAiEC;QAlED,CAkEC;IAnED,CAmEC;AApED,CAoEC,CAAC;AAtES,QAAA,yBAAyB,6BAsElC"}
|
|
@@ -8,6 +8,7 @@ export * as http from "./http";
|
|
|
8
8
|
export * as notations from "./notations";
|
|
9
9
|
export * as misc from "./misc";
|
|
10
10
|
export * as protobuf from "./protobuf";
|
|
11
|
+
export * as llm from "./llm";
|
|
11
12
|
export { is };
|
|
12
13
|
export declare const assert: (method: string) => {
|
|
13
14
|
join: (str: string) => string;
|
|
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
34
34
|
return result;
|
|
35
35
|
};
|
|
36
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
-
exports.random = exports.validate = exports.assert = exports.is = exports.protobuf = exports.misc = exports.notations = exports.http = exports.json = exports.functional = void 0;
|
|
37
|
+
exports.random = exports.validate = exports.assert = exports.is = exports.llm = exports.protobuf = exports.misc = exports.notations = exports.http = exports.json = exports.functional = void 0;
|
|
38
38
|
var RandomGenerator_1 = require("../../utils/RandomGenerator");
|
|
39
39
|
var _every_1 = require("../$every");
|
|
40
40
|
var _guard_1 = require("../$guard");
|
|
@@ -49,6 +49,7 @@ exports.http = __importStar(require("./http"));
|
|
|
49
49
|
exports.notations = __importStar(require("./notations"));
|
|
50
50
|
exports.misc = __importStar(require("./misc"));
|
|
51
51
|
exports.protobuf = __importStar(require("./protobuf"));
|
|
52
|
+
exports.llm = __importStar(require("./llm"));
|
|
52
53
|
var assert = function (method) { return (__assign(__assign({}, (0, is_1.is)()), { join: _join_1.$join, every: _every_1.$every, guard: (0, _guard_1.$guard)("typia.".concat(method)), predicate: function (matched, exceptionable, closure) {
|
|
53
54
|
if (matched === false && exceptionable === true)
|
|
54
55
|
throw new TypeGuardError_1.TypeGuardError(__assign(__assign({}, closure()), { method: "typia.".concat(method) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functional/Namespace/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA8D;AAE9D,oCAAmC;AACnC,oCAAmC;AACnC,kCAAiC;AACjC,sCAAqC;AAErC,uDAAsD;AACtD,4BAA2B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functional/Namespace/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA8D;AAE9D,oCAAmC;AACnC,oCAAmC;AACnC,kCAAiC;AACjC,sCAAqC;AAErC,uDAAsD;AACtD,4BAA2B;AAUlB,mFAVA,OAAE,OAUA;AARX,2DAA2C;AAC3C,+CAA+B;AAC/B,+CAA+B;AAC/B,yDAAyC;AACzC,+CAA+B;AAC/B,uDAAuC;AACvC,6CAA6B;AAItB,IAAM,MAAM,GAAG,UAAC,MAAc,IAAK,OAAA,uBACrC,IAAA,OAAE,GAAE,KACP,IAAI,EAAE,aAAK,EACX,KAAK,EAAE,eAAM,EACb,KAAK,EAAE,IAAA,eAAM,EAAC,gBAAS,MAAM,CAAE,CAAC,EAChC,SAAS,EAAE,UACT,OAAgB,EAChB,aAAsB,EACtB,OAAoD;QAEpD,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;YAC7C,MAAM,IAAI,+BAAc,uBACnB,OAAO,EAAE,KACZ,MAAM,EAAE,gBAAS,MAAM,CAAE,IACzB,CAAC;QACL,OAAO,OAAO,CAAC;IACjB,CAAC,IACD,EAjBwC,CAiBxC,CAAC;AAjBU,QAAA,MAAM,UAiBhB;AAEI,IAAM,QAAQ,GAAG,cAAM,OAAA,uBACzB,IAAA,OAAE,GAAE,KACP,IAAI,EAAE,aAAK,EACX,MAAM,EAAE,iBAAO,EACf,SAAS,EACP,UAAC,GAAgB;QACjB,OAAA,UACE,OAAgB,EAChB,aAAsB,EACtB,OAAiC;YAEjC,gBAAgB;YAChB,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;gBAC7C,CAAC;oBACC,GAAG,CAAC,OAAO,KAAX,GAAG,CAAC,OAAO,GAAK,KAAK,EAAC;oBACtB,IAAM,SAAS,GAAI,GAA4B,CAAC,MAAM,CAAC;oBAEvD,cAAc;oBACd,IAAM,KAAK,GAAG,OAAO,EAAE,CAAC;oBACxB,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;wBACrB,IAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,CAAC;wBACnD,IACE,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM;4BAChC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI;4BAEnD,OAAO;oBACX,CAAC;oBACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACtB,OAAO;gBACT,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,OAAO,CAAC;QACjB,CAAC;IAzBD,CAyBC,IACH,EAhC4B,CAgC5B,CAAC;AAhCU,QAAA,QAAQ,YAgClB;AAEI,IAAM,MAAM,GAAG,cAAM,OAAA,CAAC;IAC3B,SAAS,EAAE,iCAAe;IAC1B,IAAI,EAAE,iCAAe,CAAC,IAAI;CAC3B,CAAC,EAH0B,CAG1B,CAAC;AAHU,QAAA,MAAM,UAGhB"}
|
|
@@ -6,6 +6,7 @@ import { $join } from '../_join.mjs';
|
|
|
6
6
|
import { $report } from '../_report.mjs';
|
|
7
7
|
import { TypeGuardError } from '../../TypeGuardError.mjs';
|
|
8
8
|
import { is } from '../is.mjs';
|
|
9
|
+
import '../../_external/node_modules_@samchon_openapi_lib_utils/LlmSchemaSeparator.mjs';
|
|
9
10
|
|
|
10
11
|
const assert = (method) => ({
|
|
11
12
|
...is(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../src/functional/Namespace/index.ts"],"sourcesContent":[null],"names":["RandomGenerator.pick"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../src/functional/Namespace/index.ts"],"sourcesContent":[null],"names":["RandomGenerator.pick"],"mappings":";;;;;;;;;;MAoBa,MAAM,GAAG,CAAC,MAAc,MAAM;AACzC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,KAAK,EAAE,MAAM,CAAC,CAAS,MAAA,EAAA,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,CACT,OAAgB,EAChB,aAAsB,EACtB,OAAoD,KACzC;AACX,QAAA,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;YAC7C,MAAM,IAAI,cAAc,CAAC;AACvB,gBAAA,GAAG,OAAO,EAAE;gBACZ,MAAM,EAAE,CAAS,MAAA,EAAA,MAAM,CAAE,CAAA;AAC1B,aAAA,CAAC,CAAC;AACL,QAAA,OAAO,OAAO,CAAC;KAChB;AACF,CAAA,EAAE;AAEU,MAAA,QAAQ,GAAG,OAAO;AAC7B,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,SAAS,EACP,CAAC,GAAgB,KACjB,CACE,OAAgB,EAChB,aAAsB,EACtB,OAAiC,KAC/B;;AAEF,QAAA,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;AAC7C,YAAA,CAAC,MAAK;AACJ,gBAAA,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC;AACtB,gBAAA,MAAM,SAAS,GAAI,GAA4B,CAAC,MAAM,CAAC;;AAGvD,gBAAA,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;AACxB,gBAAA,IAAI,SAAS,CAAC,MAAM,EAAE;AACpB,oBAAA,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,CAAC;oBACnD,IACE,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM;AAChC,wBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI;wBAEnD,OAAO;iBACV;AACD,gBAAA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,OAAO;aACR,GAAG,CAAC;AACP,QAAA,OAAO,OAAO,CAAC;KAChB;AACJ,CAAA,EAAE;AAEU,MAAA,MAAM,GAAG,OAAO;AAC3B,IAAA,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAEA,IAAoB;AAC3B,CAAA;;;;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.application = void 0;
|
|
15
|
+
var LlmSchemaSeparator_1 = require("@samchon/openapi/lib/utils/LlmSchemaSeparator");
|
|
16
|
+
var application = function () { return ({
|
|
17
|
+
finalize: function (app, options) {
|
|
18
|
+
var e_1, _a;
|
|
19
|
+
var _b;
|
|
20
|
+
app.options = {
|
|
21
|
+
separate: (_b = options === null || options === void 0 ? void 0 : options.separate) !== null && _b !== void 0 ? _b : null,
|
|
22
|
+
};
|
|
23
|
+
if (app.options.separate === null)
|
|
24
|
+
return;
|
|
25
|
+
try {
|
|
26
|
+
for (var _c = __values(app.functions), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
27
|
+
var func = _d.value;
|
|
28
|
+
func.separated = LlmSchemaSeparator_1.LlmSchemaSeparator.parameters({
|
|
29
|
+
parameters: func.parameters,
|
|
30
|
+
predicator: app.options.separate,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
35
|
+
finally {
|
|
36
|
+
try {
|
|
37
|
+
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
38
|
+
}
|
|
39
|
+
finally { if (e_1) throw e_1.error; }
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
}); };
|
|
43
|
+
exports.application = application;
|
|
44
|
+
//# sourceMappingURL=llm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../../../src/functional/Namespace/llm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,oFAAmF;AAE5E,IAAM,WAAW,GAAG,cAAM,OAAA,CAAC;IAChC,QAAQ,EAAE,UACR,GAAoB,EACpB,OAAkC;;;QAElC,GAAG,CAAC,OAAO,GAAG;YACZ,QAAQ,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,IAAI;SACpC,CAAC;QACF,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO;;YAC1C,KAAmB,IAAA,KAAA,SAAA,GAAG,CAAC,SAAS,CAAA,gBAAA;gBAA3B,IAAM,IAAI,WAAA;gBACb,IAAI,CAAC,SAAS,GAAG,uCAAkB,CAAC,UAAU,CAAC;oBAC7C,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ;iBACjC,CAAC,CAAC;aAAA;;;;;;;;;IACP,CAAC;CACF,CAAC,EAf+B,CAe/B,CAAC;AAfU,QAAA,WAAW,eAerB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { LlmSchemaSeparator as LlmSchemaSeparator_2 } from '../../_external/node_modules_@samchon_openapi_lib_utils/LlmSchemaSeparator.mjs';
|
|
2
|
+
|
|
3
|
+
const application = () => ({
|
|
4
|
+
finalize: (app, options) => {
|
|
5
|
+
app.options = {
|
|
6
|
+
separate: options?.separate ?? null,
|
|
7
|
+
};
|
|
8
|
+
if (app.options.separate === null)
|
|
9
|
+
return;
|
|
10
|
+
for (const func of app.functions)
|
|
11
|
+
func.separated = LlmSchemaSeparator_2.parameters({
|
|
12
|
+
parameters: func.parameters,
|
|
13
|
+
predicator: app.options.separate,
|
|
14
|
+
});
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
export { application };
|
|
19
|
+
//# sourceMappingURL=llm.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm.mjs","sources":["../../../src/functional/Namespace/llm.ts"],"sourcesContent":[null],"names":["LlmSchemaSeparator"],"mappings":";;AAIa,MAAA,WAAW,GAAG,OAAO;AAChC,IAAA,QAAQ,EAAE,CACR,GAAoB,EACpB,OAAkC,KAC1B;QACR,GAAG,CAAC,OAAO,GAAG;AACZ,YAAA,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI;SACpC,CAAC;AACF,QAAA,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO;AAC1C,QAAA,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,SAAS;AAC9B,YAAA,IAAI,CAAC,SAAS,GAAGA,oBAAkB,CAAC,UAAU,CAAC;gBAC7C,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,gBAAA,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ;AACjC,aAAA,CAAC,CAAC;KACN;AACF,CAAA;;;;"}
|
package/lib/llm.d.ts
CHANGED
|
@@ -1,5 +1,151 @@
|
|
|
1
1
|
import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
/**
|
|
3
|
+
* > You must configure the generic argument `App`.
|
|
4
|
+
*
|
|
5
|
+
* TypeScript functions to LLM function schemas.
|
|
6
|
+
*
|
|
7
|
+
* Creates an application of LLM (Large Language Model) function calling schemas from
|
|
8
|
+
* a TypeScript class or interface type containig the target functions to be called by
|
|
9
|
+
* the LLM function calling feature.
|
|
10
|
+
*
|
|
11
|
+
* If you put the returned {@link ILlmApplication.functions} objects to the LLM provider
|
|
12
|
+
* like [OpenAI (ChatGPT)](https://openai.com/), the LLM will automatically select the
|
|
13
|
+
* proper function and fill its arguments from the conversation (maybe chatting text)
|
|
14
|
+
* with user (human). This is the concept of the LLM function calling.
|
|
15
|
+
*
|
|
16
|
+
* By the way, there can be some parameters (or their nested properties) which must be
|
|
17
|
+
* composed by human, not by LLM. File uploading feature or some sensitive information
|
|
18
|
+
* like secrety key (password) are the examples. In that case, you can separate the
|
|
19
|
+
* function parameters to both LLM and human sides by configuring the
|
|
20
|
+
* {@link ILlmApplication.IOptions.separate} property. The separated parameters are
|
|
21
|
+
* assigned to the {@link ILlmFunction.separated} property.
|
|
22
|
+
*
|
|
23
|
+
* For reference, the actual function call execution is not by LLM, but by you.
|
|
24
|
+
* When the LLM selects the proper function and fills the arguments, you just call
|
|
25
|
+
* the function with the LLM prepared arguments. And then informs the return value to
|
|
26
|
+
* the LLM by system prompt. The LLM will continue the next conversation based on
|
|
27
|
+
* the return value.
|
|
28
|
+
*
|
|
29
|
+
* Additionally, if you've configured {@link ILlmApplication.IOptions.separate},
|
|
30
|
+
* so that the parameters are separated to human and LLM sides, you can merge these
|
|
31
|
+
* humand and LLM sides' parameters into one through {@link HttpLlm.mergeParameters}
|
|
32
|
+
* before the actual LLM function call execution.
|
|
33
|
+
*
|
|
34
|
+
* @template App Target class or interface type collecting the functions to call
|
|
35
|
+
* @param options Options for the LLM application construction
|
|
36
|
+
* @returns Application of LLM function calling schemas
|
|
37
|
+
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
38
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
39
|
+
*/
|
|
40
|
+
declare function application(options?: ILlmApplication.IOptions): never;
|
|
41
|
+
/**
|
|
42
|
+
* TypeScript functions to LLM function schemas.
|
|
43
|
+
*
|
|
44
|
+
* Creates an application of LLM (Large Language Model) function calling schemas from
|
|
45
|
+
* a TypeScript class or interface type containig the target functions to be called by
|
|
46
|
+
* the LLM function calling feature.
|
|
47
|
+
*
|
|
48
|
+
* If you put the returned {@link ILlmApplication.functions} objects to the LLM provider
|
|
49
|
+
* like [OpenAI (ChatGPT)](https://openai.com/), the LLM will automatically select the
|
|
50
|
+
* proper function and fill its arguments from the conversation (maybe chatting text)
|
|
51
|
+
* with user (human). This is the concept of the LLM function calling.
|
|
52
|
+
*
|
|
53
|
+
* By the way, there can be some parameters (or their nested properties) which must be
|
|
54
|
+
* composed by human, not by LLM. File uploading feature or some sensitive information
|
|
55
|
+
* like secrety key (password) are the examples. In that case, you can separate the
|
|
56
|
+
* function parameters to both LLM and human sides by configuring the
|
|
57
|
+
* {@link ILlmApplication.IOptions.separate} property. The separated parameters are
|
|
58
|
+
* assigned to the {@link ILlmFunction.separated} property.
|
|
59
|
+
*
|
|
60
|
+
* For reference, the actual function call execution is not by LLM, but by you.
|
|
61
|
+
* When the LLM selects the proper function and fills the arguments, you just call
|
|
62
|
+
* the function with the LLM prepared arguments. And then informs the return value to
|
|
63
|
+
* the LLM by system prompt. The LLM will continue the next conversation based on
|
|
64
|
+
* the return value.
|
|
65
|
+
*
|
|
66
|
+
* Additionally, if you've configured {@link ILlmApplication.IOptions.separate},
|
|
67
|
+
* so that the parameters are separated to human and LLM sides, you can merge these
|
|
68
|
+
* humand and LLM sides' parameters into one through {@link HttpLlm.mergeParameters}
|
|
69
|
+
* before the actual LLM function call execution.
|
|
70
|
+
*
|
|
71
|
+
* @template App Target class or interface type collecting the functions to call
|
|
72
|
+
* @param options Options for the LLM application construction
|
|
73
|
+
* @returns Application of LLM function calling schemas
|
|
74
|
+
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
75
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
76
|
+
*/
|
|
77
|
+
declare function application<App extends object>(options?: ILlmApplication.IOptions): ILlmApplication;
|
|
78
|
+
declare const applicationPure: typeof application;
|
|
79
|
+
export { applicationPure as application };
|
|
80
|
+
/**
|
|
81
|
+
* > You must configure the generic argument `T`.
|
|
82
|
+
*
|
|
83
|
+
* TypeScript type to LLM type schema.
|
|
84
|
+
*
|
|
85
|
+
* Creates an LLM (Large Language Model) type schema, a type metadata that is used in the
|
|
86
|
+
* [LLM function calling](@reference https://platform.openai.com/docs/guides/function-calling),
|
|
87
|
+
* from a TypeScript type.
|
|
88
|
+
*
|
|
89
|
+
* The returned {@link ILlmSchema} type is similar to the OpenAPI v3.0 based JSON schema
|
|
90
|
+
* definition, but it is more simplified for the LLM function calling by remmoving the
|
|
91
|
+
* {@link OpenApiV3.IJson.IReference reference} type embodied by the
|
|
92
|
+
* {@link OpenApiV3.IJson.IReference.$ref `$ref`} proeprty.
|
|
93
|
+
*
|
|
94
|
+
* If you actually want to perform the LLM function calling with TypeScript functions,
|
|
95
|
+
* you can do it with the {@link application} function. Let's enjoy the
|
|
96
|
+
* LLM function calling with native TypeScript functions and types.
|
|
97
|
+
*
|
|
98
|
+
* > **What LLM function calling is?
|
|
99
|
+
* >
|
|
100
|
+
* > LLM (Large Language Model) selects propert function and fill the arguments,
|
|
101
|
+
* > but actuall function call execution is not by LLM, but by you.
|
|
102
|
+
* >
|
|
103
|
+
* > In nowadays, most LLM (Large Language Model) like OpenAI are supporting
|
|
104
|
+
* > "function calling" feature. The "function calling" means that LLM automatically selects
|
|
105
|
+
* > a proper function and compose parameter values from the user's chatting text.
|
|
106
|
+
* >
|
|
107
|
+
* > When LLM selects the proper function and its arguments, you just call the function
|
|
108
|
+
* > with the arguments. And then informs the return value to the LLM by system prompt,
|
|
109
|
+
* > LLM will continue the next conversation based on the return value.
|
|
110
|
+
*
|
|
111
|
+
* @template T Target type
|
|
112
|
+
* @returns LLM schema
|
|
113
|
+
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
114
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
115
|
+
*/
|
|
4
116
|
export declare function schema(): never;
|
|
117
|
+
/**
|
|
118
|
+
* TypeScript type to LLM type schema.
|
|
119
|
+
*
|
|
120
|
+
* Creates an LLM (Large Language Model) type schema, a type metadata that is used in the
|
|
121
|
+
* [LLM function calling](@reference https://platform.openai.com/docs/guides/function-calling),
|
|
122
|
+
* from a TypeScript type.
|
|
123
|
+
*
|
|
124
|
+
* The returned {@link ILlmSchema} type is similar to the OpenAPI v3.0 based JSON schema
|
|
125
|
+
* definition, but it is more simplified for the LLM function calling by remmoving the
|
|
126
|
+
* {@link OpenApiV3.IJson.IReference reference} type embodied by the
|
|
127
|
+
* {@link OpenApiV3.IJson.IReference.$ref `$ref`} proeprty.
|
|
128
|
+
*
|
|
129
|
+
* If you actually want to perform the LLM function calling with TypeScript functions,
|
|
130
|
+
* you can do it with the {@link application} function. Let's enjoy the
|
|
131
|
+
* LLM function calling with native TypeScript functions and types.
|
|
132
|
+
*
|
|
133
|
+
* > **What LLM function calling is?
|
|
134
|
+
* >
|
|
135
|
+
* > LLM (Large Language Model) selects propert function and fill the arguments,
|
|
136
|
+
* > but actuall function call execution is not by LLM, but by you.
|
|
137
|
+
* >
|
|
138
|
+
* > In nowadays, most LLM (Large Language Model) like OpenAI are supporting
|
|
139
|
+
* > "function calling" feature. The "function calling" means that LLM automatically selects
|
|
140
|
+
* > a proper function and compose parameter values from the user's chatting text.
|
|
141
|
+
* >
|
|
142
|
+
* > When LLM selects the proper function and its arguments, you just call the function
|
|
143
|
+
* > with the arguments. And then informs the return value to the LLM by system prompt,
|
|
144
|
+
* > LLM will continue the next conversation based on the return value.
|
|
145
|
+
*
|
|
146
|
+
* @template T Target type
|
|
147
|
+
* @returns LLM schema
|
|
148
|
+
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
149
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
150
|
+
*/
|
|
5
151
|
export declare function schema<T>(): ILlmSchema;
|
package/lib/llm.js
CHANGED
|
@@ -1,13 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.application =
|
|
26
|
+
exports.application = void 0;
|
|
4
27
|
exports.schema = schema;
|
|
28
|
+
var Namespace = __importStar(require("./functional/Namespace"));
|
|
5
29
|
/**
|
|
6
30
|
* @internal
|
|
7
31
|
*/
|
|
8
32
|
function application() {
|
|
9
33
|
halt("application");
|
|
10
34
|
}
|
|
35
|
+
var applicationPure = /** @__PURE__ */ Object.assign(application,
|
|
36
|
+
/** @__PURE__ */ Namespace.llm.application());
|
|
37
|
+
exports.application = applicationPure;
|
|
11
38
|
/**
|
|
12
39
|
* @internal
|
|
13
40
|
*/
|
package/lib/llm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA8KA,wBAEC;AA9KD,gEAAoD;AAkFpD;;GAEG;AACH,SAAS,WAAW;IAClB,IAAI,CAAC,aAAa,CAAC,CAAC;AACtB,CAAC;AAED,IAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CACpD,WAAW;AACX,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,CAC7C,CAAC;AAC0B,sCAAW;AA4EvC;;GAEG;AACH,SAAgB,MAAM;IACpB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,IAAI,CAAC,IAAY;IACxB,MAAM,IAAI,KAAK,CACb,6BAAsB,IAAI,8FAA2F,CACtH,CAAC;AACJ,CAAC"}
|
package/lib/llm.mjs
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import './_external/node_modules_randexp_lib/randexp.mjs';
|
|
2
|
+
import { application as application$1 } from './functional/Namespace/llm.mjs';
|
|
3
|
+
|
|
1
4
|
/**
|
|
2
5
|
* @internal
|
|
3
6
|
*/
|
|
4
7
|
function application() {
|
|
5
8
|
halt("application");
|
|
6
9
|
}
|
|
10
|
+
const applicationPure = /** @__PURE__ */ Object.assign(application,
|
|
11
|
+
/** @__PURE__ */ application$1());
|
|
7
12
|
/**
|
|
8
13
|
* @internal
|
|
9
14
|
*/
|
|
@@ -17,5 +22,5 @@ function halt(name) {
|
|
|
17
22
|
throw new Error(`Error on typia.llm.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
|
|
18
23
|
}
|
|
19
24
|
|
|
20
|
-
export { application, schema };
|
|
25
|
+
export { applicationPure as application, schema };
|
|
21
26
|
//# sourceMappingURL=llm.mjs.map
|
package/lib/llm.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.mjs","sources":["../src/llm.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llm.mjs","sources":["../src/llm.ts"],"sourcesContent":[null],"names":["Namespace.llm.application"],"mappings":";;;AAoFA;;AAEG;AACH,SAAS,WAAW,GAAA;IAClB,IAAI,CAAC,aAAa,CAAC,CAAC;AACtB,CAAC;AAEK,MAAA,eAAe,oBAAoB,MAAM,CAAC,MAAM,CACpD,WAAW;AACX,iBAAiBA,aAAyB,EAAE,EAC5C;AA6EF;;AAEG;SACa,MAAM,GAAA;IACpB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjB,CAAC;AAED;;AAEG;AACH,SAAS,IAAI,CAAC,IAAY,EAAA;AACxB,IAAA,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAA,yFAAA,CAA2F,CACtH,CAAC;AACJ;;;;"}
|
|
@@ -233,7 +233,7 @@ var CheckerProgrammer;
|
|
|
233
233
|
if (checkOptional || !meta.isRequired())
|
|
234
234
|
(meta.isRequired() ? create_add(top)(input) : add)(!meta.isRequired(), ValueFactory_1.ValueFactory.UNDEFINED());
|
|
235
235
|
// FUNCTIONAL
|
|
236
|
-
if (meta.
|
|
236
|
+
if (meta.functions.length)
|
|
237
237
|
if (OptionPredicator_1.OptionPredicator.functional(project.options) || meta.size() !== 1)
|
|
238
238
|
add(true, typescript_1.default.factory.createStringLiteral("function"), ValueFactory_1.ValueFactory.TYPEOF(input));
|
|
239
239
|
else
|