typia 8.0.0-dev.20250225 → 8.0.0-dev.20250301
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/IValidation.d.ts +1 -17
- package/lib/index.mjs +0 -2
- package/lib/index.mjs.map +1 -1
- package/lib/llm.d.ts +33 -115
- package/lib/llm.js +5 -5
- package/lib/llm.js.map +1 -1
- package/lib/llm.mjs +4 -4
- package/lib/llm.mjs.map +1 -1
- package/lib/module.mjs +0 -2
- package/lib/module.mjs.map +1 -1
- package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +5 -0
- package/lib/programmers/llm/LlmApplicationProgrammer.js +57 -16
- package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
- package/lib/schemas/llm/ILlmApplicationOfValidate.d.ts +3 -50
- package/lib/schemas/llm/ILlmApplicationOfValidate.js +0 -4
- package/lib/schemas/llm/ILlmApplicationOfValidate.js.map +1 -1
- package/lib/schemas/llm/ILlmFunctionOfValidate.d.ts +3 -34
- package/lib/schemas/llm/ILlmFunctionOfValidate.js +0 -4
- package/lib/schemas/llm/ILlmFunctionOfValidate.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.js +1 -2
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/features/llm/LlmApplicationTransformer.js +3 -0
- package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
- package/package.json +4 -5
- package/src/IValidation.ts +1 -21
- package/src/llm.ts +46 -131
- package/src/programmers/llm/LlmApplicationProgrammer.ts +98 -12
- package/src/schemas/llm/ILlmApplicationOfValidate.ts +3 -52
- package/src/schemas/llm/ILlmFunctionOfValidate.ts +3 -36
- package/src/transformers/CallExpressionTransformer.ts +1 -2
- package/src/transformers/features/llm/LlmApplicationTransformer.ts +3 -0
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.d.ts +0 -19
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.js +0 -49
- package/lib/programmers/llm/LlmApplicationOfValidateProgrammer.js.map +0 -1
- package/lib/schemas/llm/ILlmApplicationOfValidate.mjs +0 -6
- package/lib/schemas/llm/ILlmApplicationOfValidate.mjs.map +0 -1
- package/lib/schemas/llm/ILlmFunctionOfValidate.mjs +0 -6
- package/lib/schemas/llm/ILlmFunctionOfValidate.mjs.map +0 -1
- package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.d.ts +0 -5
- package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js +0 -105
- package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js.map +0 -1
- package/src/programmers/llm/LlmApplicationOfValidateProgrammer.ts +0 -104
- package/src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts +0 -129
package/lib/IValidation.d.ts
CHANGED
|
@@ -1,17 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export declare namespace IValidation {
|
|
3
|
-
interface ISuccess<T = unknown> {
|
|
4
|
-
success: true;
|
|
5
|
-
data: T;
|
|
6
|
-
}
|
|
7
|
-
interface IFailure {
|
|
8
|
-
success: false;
|
|
9
|
-
errors: IError[];
|
|
10
|
-
data: unknown;
|
|
11
|
-
}
|
|
12
|
-
interface IError {
|
|
13
|
-
path: string;
|
|
14
|
-
expected: string;
|
|
15
|
-
value: any;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
1
|
+
export { IValidation } from "@samchon/openapi";
|
package/lib/index.mjs
CHANGED
|
@@ -18,8 +18,6 @@ import * as reflect from './reflect.mjs';
|
|
|
18
18
|
export { reflect };
|
|
19
19
|
import * as index from './tags/index.mjs';
|
|
20
20
|
export { index as tags };
|
|
21
|
-
export { ILlmApplicationOfValidate } from './schemas/llm/ILlmApplicationOfValidate.mjs';
|
|
22
|
-
export { ILlmFunctionOfValidate } from './schemas/llm/ILlmFunctionOfValidate.mjs';
|
|
23
21
|
export { TypeGuardError } from './TypeGuardError.mjs';
|
|
24
22
|
|
|
25
23
|
|
package/lib/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/lib/llm.d.ts
CHANGED
|
@@ -1,89 +1,24 @@
|
|
|
1
1
|
import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
|
|
2
|
-
import { ILlmApplicationOfValidate } from "./module";
|
|
3
2
|
/**
|
|
4
3
|
* > You must configure the generic argument `App`.
|
|
5
4
|
*
|
|
6
|
-
* TypeScript functions to LLM function calling application
|
|
7
|
-
*
|
|
8
|
-
* Creates an application of LLM (Large Language Model) function calling application
|
|
9
|
-
* from a TypeScript class or interface type containing the target functions to be
|
|
10
|
-
* called by the LLM function calling feature.
|
|
11
|
-
*
|
|
12
|
-
* If you put the returned {@link ILlmApplicationOfValidate.functions} objects to the
|
|
13
|
-
* LLM provider like [OpenAI (ChatGPT)](https://openai.com/), the LLM will automatically
|
|
14
|
-
* select the proper function and fill its arguments from the conversation
|
|
15
|
-
* (maybe chatting text) with user (human). This is the concept of the LLM function calling.
|
|
16
|
-
*
|
|
17
|
-
* Additionally, the LLM function calling sometimes take a mistake that composing wrong typed
|
|
18
|
-
* {@link ILlmFunctionOfValidate.parameters}. In that case, deliver return value of the
|
|
19
|
-
* {@link ILlmFunctionOfValidate.validate} function, then LLM provider will correct the
|
|
20
|
-
* parameters at the next conversation. The {@link ILlmFunctionOfValidate.validate} function
|
|
21
|
-
* is a validator function reporting the detailed information about the wrong typed parameters.
|
|
22
|
-
*
|
|
23
|
-
* By the way, there can be some parameters (or their nested properties) which must be
|
|
24
|
-
* composed by human, not by LLM. File uploading feature or some sensitive information
|
|
25
|
-
* like security keys (password) are the examples. In that case, you can separate the
|
|
26
|
-
* function parameters to both LLM and human sides by configuring the
|
|
27
|
-
* {@link ILlmApplicationOfValidate.IOptions.separate} property. The separated parameters
|
|
28
|
-
* are assigned to the {@link ILlmFunctionOfValidate.separated} property.
|
|
29
|
-
*
|
|
30
|
-
* For reference, the actual function call execution is not by LLM, but by you.
|
|
31
|
-
* When the LLM selects the proper function and fills the arguments, you just call
|
|
32
|
-
* the function with the LLM prepared arguments. And then informs the return value to
|
|
33
|
-
* the LLM by system prompt. The LLM will continue the next conversation based on
|
|
34
|
-
* the return value.
|
|
35
|
-
*
|
|
36
|
-
* Additionally, if you've configured {@link ILlmApplicationOfValidate.IOptions.separate},
|
|
37
|
-
* so that the parameters are separated to human and LLM sides, you can merge these
|
|
38
|
-
* humand and LLM sides' parameters into one through {@link HttpLlm.mergeParameters}
|
|
39
|
-
* before the actual LLM function call execution.
|
|
40
|
-
*
|
|
41
|
-
* Here is the list of available `Model` types with their corresponding LLM schema.
|
|
42
|
-
* Reading the following list, and determine the `Model` type considering the
|
|
43
|
-
* characteristics of the target LLM provider.
|
|
44
|
-
*
|
|
45
|
-
* - LLM provider schemas
|
|
46
|
-
* - `chatgpt`: [`IChatGptSchema`](https://github.com/samchon/openapi/blob/master/src/structures/IChatGptSchema.ts)
|
|
47
|
-
* - `claude`: [`IClaudeSchema`](https://github.com/samchon/openapi/blob/master/src/structures/IClaudeSchema.ts)
|
|
48
|
-
* - `gemini`: [`IGeminiSchema`](https://github.com/samchon/openapi/blob/master/src/structures/IGeminiSchema.ts)
|
|
49
|
-
* - `llama`: [`ILlamaSchema`](https://github.com/samchon/openapi/blob/master/src/structures/ILlamaSchema.ts)
|
|
50
|
-
* - Midldle layer schemas
|
|
51
|
-
* - `3.0`: [`ILlmSchemaV3`](https://github.com/samchon/openapi/blob/master/src/structures/ILlmSchemaV3.ts)
|
|
52
|
-
* - `3.1`: [`ILlmSchemaV3_1`](https://github.com/samchon/openapi/blob/master/src/structures/ILlmSchemaV3_1.ts)
|
|
53
|
-
*
|
|
54
|
-
* @template App Target class or interface type collecting the functions to call
|
|
55
|
-
* @template Model LLM schema model
|
|
56
|
-
* @template Config Configuration of LLM schema composition
|
|
57
|
-
* @param options Options for the LLM application construction
|
|
58
|
-
* @returns Application of LLM function calling schemas
|
|
59
|
-
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
60
|
-
* @author Jeongho Nam - https://github.com/samchon
|
|
61
|
-
*/
|
|
62
|
-
export declare function applicationOfValidate(options?: Partial<Pick<ILlmApplicationOfValidate.IOptions<any>, "separate">>): never;
|
|
63
|
-
/**
|
|
64
|
-
* TypeScript functions to LLM function calling application with validators.
|
|
5
|
+
* TypeScript functions to LLM function calling application.
|
|
65
6
|
*
|
|
66
7
|
* Creates an application of LLM (Large Language Model) function calling application
|
|
67
8
|
* from a TypeScript class or interface type containing the target functions to be
|
|
68
9
|
* called by the LLM function calling feature.
|
|
69
10
|
*
|
|
70
|
-
* If you put the returned {@link
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
* Additionally, the LLM function calling sometimes take a mistake that composing wrong typed
|
|
76
|
-
* {@link ILlmFunctionOfValidate.parameters}. In that case, deliver return value of the
|
|
77
|
-
* {@link ILlmFunctionOfValidate.validate} function, then LLM provider will correct the
|
|
78
|
-
* parameters at the next conversation. The {@link ILlmFunctionOfValidate.validate} function
|
|
79
|
-
* is a validator function reporting the detailed information about the wrong typed parameters.
|
|
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.
|
|
80
15
|
*
|
|
81
16
|
* By the way, there can be some parameters (or their nested properties) which must be
|
|
82
17
|
* composed by human, not by LLM. File uploading feature or some sensitive information
|
|
83
18
|
* like security keys (password) are the examples. In that case, you can separate the
|
|
84
19
|
* function parameters to both LLM and human sides by configuring the
|
|
85
|
-
* {@link
|
|
86
|
-
*
|
|
20
|
+
* {@link ILlmApplication.IOptions.separate} property. The separated parameters are
|
|
21
|
+
* assigned to the {@link ILlmFunction.separated} property.
|
|
87
22
|
*
|
|
88
23
|
* For reference, the actual function call execution is not by LLM, but by you.
|
|
89
24
|
* When the LLM selects the proper function and fills the arguments, you just call
|
|
@@ -91,7 +26,7 @@ export declare function applicationOfValidate(options?: Partial<Pick<ILlmApplica
|
|
|
91
26
|
* the LLM by system prompt. The LLM will continue the next conversation based on
|
|
92
27
|
* the return value.
|
|
93
28
|
*
|
|
94
|
-
* Additionally, if you've configured {@link
|
|
29
|
+
* Additionally, if you've configured {@link ILlmApplication.IOptions.separate},
|
|
95
30
|
* so that the parameters are separated to human and LLM sides, you can merge these
|
|
96
31
|
* humand and LLM sides' parameters into one through {@link HttpLlm.mergeParameters}
|
|
97
32
|
* before the actual LLM function call execution.
|
|
@@ -117,10 +52,8 @@ export declare function applicationOfValidate(options?: Partial<Pick<ILlmApplica
|
|
|
117
52
|
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
118
53
|
* @author Jeongho Nam - https://github.com/samchon
|
|
119
54
|
*/
|
|
120
|
-
export declare function
|
|
55
|
+
export declare function application(options?: Partial<Pick<ILlmApplication.IOptions<any>, "separate">>): never;
|
|
121
56
|
/**
|
|
122
|
-
* > You must configure the generic argument `App`.
|
|
123
|
-
*
|
|
124
57
|
* TypeScript functions to LLM function calling application.
|
|
125
58
|
*
|
|
126
59
|
* Creates an application of LLM (Large Language Model) function calling application
|
|
@@ -171,59 +104,44 @@ export declare function applicationOfValidate<App extends Record<string, any>, M
|
|
|
171
104
|
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
172
105
|
* @author Jeongho Nam - https://github.com/samchon
|
|
173
106
|
*/
|
|
174
|
-
export declare function application(options?: Partial<Pick<ILlmApplication.IOptions<
|
|
107
|
+
export declare function application<App extends Record<string, any>, Model extends ILlmSchema.Model, Config extends Partial<ILlmSchema.ModelConfig[Model]> = {}>(options?: Partial<Pick<ILlmApplication.IOptions<Model>, "separate">>): ILlmApplication<Model, App>;
|
|
175
108
|
/**
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
* Creates an application of LLM (Large Language Model) function calling application
|
|
179
|
-
* from a TypeScript class or interface type containing the target functions to be
|
|
180
|
-
* called by the LLM function calling feature.
|
|
109
|
+
* > You must configure the generic argument `App`.
|
|
181
110
|
*
|
|
182
|
-
*
|
|
183
|
-
* like [OpenAI (ChatGPT)](https://openai.com/), the LLM will automatically select the
|
|
184
|
-
* proper function and fill its arguments from the conversation (maybe chatting text)
|
|
185
|
-
* with user (human). This is the concept of the LLM function calling.
|
|
111
|
+
* Use {@link application} instead.
|
|
186
112
|
*
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
* function
|
|
191
|
-
* {@link ILlmApplication.IOptions.separate} property. The separated parameters are
|
|
192
|
-
* assigned to the {@link ILlmFunction.separated} property.
|
|
113
|
+
* Since the version `typia@8.0.0`, {@link application} function has
|
|
114
|
+
* started supporting the {@link ILlmFunction.validate} function which
|
|
115
|
+
* has been designed for the validation feedback strategy of the LLM
|
|
116
|
+
* function calling.
|
|
193
117
|
*
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
* the LLM by system prompt. The LLM will continue the next conversation based on
|
|
198
|
-
* the return value.
|
|
118
|
+
* This `applicationOfValidate` function would be eliminated in the
|
|
119
|
+
* next major version `typia@9.0.0`. So please use {@link application}
|
|
120
|
+
* function instead.
|
|
199
121
|
*
|
|
200
|
-
*
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
122
|
+
* @deprecated
|
|
123
|
+
*/
|
|
124
|
+
export declare function applicationOfValidate(options?: Partial<Pick<ILlmApplication.IOptions<any>, "separate">>): never;
|
|
125
|
+
/**
|
|
126
|
+
* Use {@link application} instead.
|
|
204
127
|
*
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
*
|
|
128
|
+
* Since the version `typia@8.0.0`, {@link application} function has
|
|
129
|
+
* started supporting the {@link ILlmFunction.validate} function which
|
|
130
|
+
* has been designed for the validation feedback strategy of the LLM
|
|
131
|
+
* function calling.
|
|
208
132
|
*
|
|
209
|
-
*
|
|
210
|
-
*
|
|
211
|
-
*
|
|
212
|
-
* - `gemini`: [`IGeminiSchema`](https://github.com/samchon/openapi/blob/master/src/structures/IGeminiSchema.ts)
|
|
213
|
-
* - `llama`: [`ILlamaSchema`](https://github.com/samchon/openapi/blob/master/src/structures/ILlamaSchema.ts)
|
|
214
|
-
* - Midldle layer schemas
|
|
215
|
-
* - `3.0`: [`ILlmSchemaV3`](https://github.com/samchon/openapi/blob/master/src/structures/ILlmSchemaV3.ts)
|
|
216
|
-
* - `3.1`: [`ILlmSchemaV3_1`](https://github.com/samchon/openapi/blob/master/src/structures/ILlmSchemaV3_1.ts)
|
|
133
|
+
* This `applicationOfValidate` function would be eliminated in the
|
|
134
|
+
* next major version `typia@9.0.0`. So please use {@link application}
|
|
135
|
+
* function instead.
|
|
217
136
|
*
|
|
218
137
|
* @template App Target class or interface type collecting the functions to call
|
|
219
138
|
* @template Model LLM schema model
|
|
220
139
|
* @template Config Configuration of LLM schema composition
|
|
221
140
|
* @param options Options for the LLM application construction
|
|
222
141
|
* @returns Application of LLM function calling schemas
|
|
223
|
-
* @
|
|
224
|
-
* @author Jeongho Nam - https://github.com/samchon
|
|
142
|
+
* @deprecated
|
|
225
143
|
*/
|
|
226
|
-
export declare function
|
|
144
|
+
export declare function applicationOfValidate<App extends Record<string, any>, Model extends ILlmSchema.Model, Config extends Partial<ILlmSchema.ModelConfig[Model]> = {}>(options?: Partial<Pick<ILlmApplication.IOptions<Model>, "separate">>): ILlmApplication<Model, App>;
|
|
227
145
|
/**
|
|
228
146
|
* > You must configure the generic argument `Parameters`.
|
|
229
147
|
*
|
package/lib/llm.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applicationOfValidate = applicationOfValidate;
|
|
4
3
|
exports.application = application;
|
|
4
|
+
exports.applicationOfValidate = applicationOfValidate;
|
|
5
5
|
exports.parameters = parameters;
|
|
6
6
|
exports.schema = schema;
|
|
7
7
|
/**
|
|
8
8
|
* @internal
|
|
9
9
|
*/
|
|
10
|
-
function
|
|
11
|
-
halt("
|
|
10
|
+
function application() {
|
|
11
|
+
halt("application");
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
16
|
-
function
|
|
17
|
-
halt("
|
|
16
|
+
function applicationOfValidate() {
|
|
17
|
+
halt("applicationOfValidate");
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* @internal
|
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":";;AAyHA,kCAEC;AAoDD,sDAEC;AA2FD,gCAEC;AAkHD,wBAEC;AA5QD;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,CAAC,aAAa,CAAC,CAAC;AACtB,CAAC;AAiDD;;GAEG;AACH,SAAgB,qBAAqB;IACnC,IAAI,CAAC,uBAAuB,CAAC,CAAC;AAChC,CAAC;AAwFD;;GAEG;AACH,SAAgB,UAAU;IACxB,IAAI,CAAC,YAAY,CAAC,CAAC;AACrB,CAAC;AA+GD;;GAEG;AACH,SAAgB,MAAM;IACpB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,IAAI,CAAC,IAAY;IACxB,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,2FAA2F,CACtH,CAAC;AACJ,CAAC"}
|
package/lib/llm.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @internal
|
|
3
3
|
*/
|
|
4
|
-
function
|
|
5
|
-
halt("
|
|
4
|
+
function application() {
|
|
5
|
+
halt("application");
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
8
|
* @internal
|
|
9
9
|
*/
|
|
10
|
-
function
|
|
11
|
-
halt("
|
|
10
|
+
function applicationOfValidate() {
|
|
11
|
+
halt("applicationOfValidate");
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* @internal
|
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":[],"mappings":"AAsHA;;AAEG;SACa,WAAW,GAAA;IACzB,IAAI,CAAC,aAAa,CAAC;AACrB;AAiDA;;AAEG;SACa,qBAAqB,GAAA;IACnC,IAAI,CAAC,uBAAuB,CAAC;AAC/B;AAwFA;;AAEG;SACa,UAAU,GAAA;IACxB,IAAI,CAAC,YAAY,CAAC;AACpB;AA+GA;;AAEG;SACa,MAAM,GAAA;IACpB,IAAI,CAAC,QAAQ,CAAC;AAChB;AAEA;;AAEG;AACH,SAAS,IAAI,CAAC,IAAY,EAAA;AACxB,IAAA,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAA,yFAAA,CAA2F,CACtH;AACH;;;;"}
|
package/lib/module.mjs
CHANGED
|
@@ -16,8 +16,6 @@ import * as reflect from './reflect.mjs';
|
|
|
16
16
|
export { reflect };
|
|
17
17
|
import * as index from './tags/index.mjs';
|
|
18
18
|
export { index as tags };
|
|
19
|
-
export { ILlmApplicationOfValidate } from './schemas/llm/ILlmApplicationOfValidate.mjs';
|
|
20
|
-
export { ILlmFunctionOfValidate } from './schemas/llm/ILlmFunctionOfValidate.mjs';
|
|
21
19
|
export { TypeGuardError } from './TypeGuardError.mjs';
|
|
22
20
|
|
|
23
21
|
/**
|
package/lib/module.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","sources":["../src/module.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module.mjs","sources":["../src/module.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AA4FA;;AAEG;SACa,MAAM,GAAA;IACpB,IAAI,CAAC,QAAQ,CAAC;AAChB;AA8DA;;AAEG;SACa,WAAW,GAAA;IACzB,IAAI,CAAC,aAAa,CAAC;AACrB;AAmDA;;AAEG;SACa,EAAE,GAAA;IAChB,IAAI,CAAC,IAAI,CAAC;AACZ;AAoDA;;AAEG;SACa,QAAQ,GAAA;IACtB,IAAI,CAAC,UAAU,CAAC;AAClB;AA+DA;;AAEG;SACa,YAAY,GAAA;IAC1B,IAAI,CAAC,cAAc,CAAC;AACtB;AAoEA;;AAEG;SACa,iBAAiB,GAAA;IAC/B,IAAI,CAAC,mBAAmB,CAAC;AAC3B;AAoDA;;AAEG;SACa,MAAM,GAAA;IACpB,IAAI,CAAC,QAAQ,CAAC;AAChB;AAsDA;;AAEG;SACa,cAAc,GAAA;IAC5B,IAAI,CAAC,gBAAgB,CAAC;AACxB;AA2CA;;AAEG;SACa,MAAM,GAAA;IACpB,IAAI,CAAC,QAAQ,CAAC;AAChB;AAgCA;;AAEG;SACa,YAAY,GAAA;IAC1B,IAAI,CAAC,cAAc,CAAC;AACtB;AA2DA;;AAEG;SACa,iBAAiB,GAAA;IAC/B,IAAI,CAAC,mBAAmB,CAAC;AAC3B;AAuBA;;AAEG;SACa,QAAQ,GAAA;IACtB,IAAI,CAAC,UAAU,CAAC;AAClB;AAuBA;;AAEG;SACa,cAAc,GAAA;IAC5B,IAAI,CAAC,gBAAgB,CAAC;AACxB;AA6BA;;AAEG;SACa,kBAAkB,GAAA;IAChC,IAAI,CAAC,oBAAoB,CAAC;AAC5B;AA2DA;;AAEG;SACa,uBAAuB,GAAA;IAGrC,IAAI,CAAC,yBAAyB,CAAC;AACjC;AAuBA;;AAEG;SACa,YAAY,GAAA;IAC1B,IAAI,CAAC,cAAc,CAAC;AACtB;AAuBA;;AAEG;SACa,oBAAoB,GAAA;IAClC,IAAI,CAAC,sBAAsB,CAAC;AAC9B;AA2BA;;AAEG;SACa,YAAY,GAAA;IAC1B,IAAI,CAAC,cAAc,CAAC;AACtB;AAEA;;AAEG;AACH,SAAS,IAAI,CAAC,IAAY,EAAA;AACxB,IAAA,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAA,yFAAA,CAA2F,CAClH;AACH;;;;"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
|
|
2
|
+
import ts from "typescript";
|
|
2
3
|
import { MetadataFactory } from "../../factories/MetadataFactory";
|
|
3
4
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
5
|
+
import { ITypiaContext } from "../../transformers/ITypiaContext";
|
|
4
6
|
export declare namespace LlmApplicationProgrammer {
|
|
5
7
|
const validate: <Model extends ILlmSchema.Model>(props: {
|
|
6
8
|
model: Model;
|
|
@@ -8,7 +10,10 @@ export declare namespace LlmApplicationProgrammer {
|
|
|
8
10
|
}) => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
|
|
9
11
|
const write: <Model extends ILlmSchema.Model>(props: {
|
|
10
12
|
model: Model;
|
|
13
|
+
context: ITypiaContext;
|
|
14
|
+
modulo: ts.LeftHandSideExpression;
|
|
11
15
|
metadata: Metadata;
|
|
12
16
|
config?: Partial<ILlmSchema.ModelConfig[Model]>;
|
|
17
|
+
name?: string;
|
|
13
18
|
}) => ILlmApplication<Model>;
|
|
14
19
|
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LlmApplicationProgrammer = void 0;
|
|
4
4
|
const LlmSchemaComposer_1 = require("@samchon/openapi/lib/composers/LlmSchemaComposer");
|
|
5
|
+
const TypeFactory_1 = require("../../factories/TypeFactory");
|
|
6
|
+
const ValidateProgrammer_1 = require("../ValidateProgrammer");
|
|
5
7
|
const JsonApplicationProgrammer_1 = require("../json/JsonApplicationProgrammer");
|
|
6
8
|
const LlmSchemaProgrammer_1 = require("./LlmSchemaProgrammer");
|
|
7
9
|
var LlmApplicationProgrammer;
|
|
@@ -103,18 +105,35 @@ var LlmApplicationProgrammer;
|
|
|
103
105
|
});
|
|
104
106
|
if (errors.length)
|
|
105
107
|
throw new Error("Failed to write LLM application: " + errors.join("\n"));
|
|
108
|
+
const functionParameters = Object.fromEntries(props.metadata.objects[0].type.properties.filter((p) => p.key.isSoleLiteral() &&
|
|
109
|
+
p.value.size() === 1 &&
|
|
110
|
+
p.value.nullable === false &&
|
|
111
|
+
p.value.isRequired() === true &&
|
|
112
|
+
p.value.functions.length === 1)
|
|
113
|
+
.filter((p) => p.jsDocTags.find((tag) => tag.name === "hidden" || tag.name === "internal") === undefined)
|
|
114
|
+
.map((p) => [
|
|
115
|
+
p.key.getSoleLiteral(),
|
|
116
|
+
p.value.functions[0].parameters[0],
|
|
117
|
+
]));
|
|
106
118
|
const errorMessages = [];
|
|
107
119
|
const application = JsonApplicationProgrammer_1.JsonApplicationProgrammer.write({
|
|
108
120
|
version: "3.1",
|
|
109
121
|
metadata: props.metadata,
|
|
110
122
|
filter: (p) => p.jsDocTags.some((tag) => tag.name === "human") === false,
|
|
111
123
|
});
|
|
112
|
-
const functions = application.functions.map((func) =>
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
124
|
+
const functions = application.functions.map((func) => {
|
|
125
|
+
var _a;
|
|
126
|
+
return writeFunction({
|
|
127
|
+
model: props.model,
|
|
128
|
+
context: props.context,
|
|
129
|
+
modulo: props.modulo,
|
|
130
|
+
className: props.name,
|
|
131
|
+
components: application.components,
|
|
132
|
+
function: func,
|
|
133
|
+
errors: errorMessages,
|
|
134
|
+
parameter: (_a = functionParameters[func.name]) !== null && _a !== void 0 ? _a : null,
|
|
135
|
+
});
|
|
136
|
+
});
|
|
118
137
|
if (functions.some((func) => func === null))
|
|
119
138
|
throw new Error("Failed to write LLM application:\n\n" +
|
|
120
139
|
errorMessages.map((str) => ` - ${str}`).join("\n"));
|
|
@@ -161,6 +180,13 @@ var LlmApplicationProgrammer;
|
|
|
161
180
|
})(),
|
|
162
181
|
deprecated: props.function.deprecated,
|
|
163
182
|
tags: props.function.tags,
|
|
183
|
+
validate: writeValidadtor({
|
|
184
|
+
context: props.context,
|
|
185
|
+
modulo: props.modulo,
|
|
186
|
+
parameter: props.parameter,
|
|
187
|
+
name: props.function.name,
|
|
188
|
+
className: props.className,
|
|
189
|
+
}),
|
|
164
190
|
};
|
|
165
191
|
};
|
|
166
192
|
const writeParameters = (props) => {
|
|
@@ -199,16 +225,31 @@ var LlmApplicationProgrammer;
|
|
|
199
225
|
}
|
|
200
226
|
return result.value;
|
|
201
227
|
};
|
|
202
|
-
const
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
228
|
+
const writeValidadtor = (props) => {
|
|
229
|
+
if (props.parameter === null)
|
|
230
|
+
return ValidateProgrammer_1.ValidateProgrammer.write(Object.assign(Object.assign({}, props), { type: props.context.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any")), config: {
|
|
231
|
+
equals: false,
|
|
232
|
+
}, name: undefined }));
|
|
233
|
+
const type = props.parameter.tsType;
|
|
234
|
+
if (type === undefined)
|
|
235
|
+
// unreachable
|
|
236
|
+
throw new Error("Failed to write LLM application's function validator. You don't have to call `LlmApplicationOfValidator.write()` function by yourself, but only by the `typia.llm.applicationOfValidate()` function.");
|
|
237
|
+
return ValidateProgrammer_1.ValidateProgrammer.write(Object.assign(Object.assign({}, props), { type: props.parameter.tsType, config: {
|
|
238
|
+
equals: false,
|
|
239
|
+
}, name: props.className
|
|
240
|
+
? `Parameters<${props.className}[${JSON.stringify(props.name)}]>[0]`
|
|
241
|
+
: undefined }));
|
|
212
242
|
};
|
|
213
243
|
})(LlmApplicationProgrammer || (exports.LlmApplicationProgrammer = LlmApplicationProgrammer = {}));
|
|
244
|
+
const concatDescription = (p) => {
|
|
245
|
+
var _a, _b, _c;
|
|
246
|
+
if (!((_a = p.summary) === null || _a === void 0 ? void 0 : _a.length) || !((_b = p.description) === null || _b === void 0 ? void 0 : _b.length))
|
|
247
|
+
return (_c = p.summary) !== null && _c !== void 0 ? _c : p.description;
|
|
248
|
+
const summary = p.summary.endsWith(".")
|
|
249
|
+
? p.summary.slice(0, -1)
|
|
250
|
+
: p.summary;
|
|
251
|
+
return p.description.startsWith(summary)
|
|
252
|
+
? p.description
|
|
253
|
+
: summary + ".\n\n" + p.description;
|
|
254
|
+
};
|
|
214
255
|
//# sourceMappingURL=LlmApplicationProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LlmApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmApplicationProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +1,5 @@
|
|
|
1
|
-
import { ILlmApplication
|
|
2
|
-
import { ILlmFunctionOfValidate } from "./ILlmFunctionOfValidate";
|
|
1
|
+
import { ILlmApplication } from "@samchon/openapi";
|
|
3
2
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* `ILlmApplication` is a data structure representing a collection of
|
|
7
|
-
* {@link ILlmFunctionOfValidate LLM function calling schemas}, composed from a native
|
|
8
|
-
* TypeScript class (or interface) type by the `typia.llm.applicationOfValidate<App, Model>()`
|
|
9
|
-
* function.
|
|
10
|
-
*
|
|
11
|
-
* If you put the returned {@link ILlmApplicationOfValidate.functions} objects to the
|
|
12
|
-
* LLM provider like [OpenAI (ChatGPT)](https://openai.com/), the LLM will automatically
|
|
13
|
-
* select the proper function and fill its arguments from the conversation
|
|
14
|
-
* (maybe chatting text) with user (human). This is the concept of the LLM function calling.
|
|
15
|
-
*
|
|
16
|
-
* Additionally, the LLM function calling sometimes take a mistake that composing wrong typed
|
|
17
|
-
* {@link ILlmFunctionOfValidate.parameters}. In that case, deliver return value of the
|
|
18
|
-
* {@link ILlmFunctionOfValidate.validate} function, then LLM provider will correct the
|
|
19
|
-
* parameters at the next conversation. The {@link ILlmFunctionOfValidate.validate} function
|
|
20
|
-
* is a validator function reporting the detailed information about the wrong typed parameters.
|
|
21
|
-
*
|
|
22
|
-
* By the way, there can be some parameters (or their nested properties) which must be
|
|
23
|
-
* composed by Human, not by LLM. File uploading feature or some sensitive information
|
|
24
|
-
* like secret keys (password) are the examples. In that case, you can separate the
|
|
25
|
-
* function parameters to both LLM and human sides by configuring the
|
|
26
|
-
* {@link ILlmApplication.IOptions.separate} property. The separated parameters are
|
|
27
|
-
* assigned to the {@link ILlmFunction.separated} property.
|
|
28
|
-
*
|
|
29
|
-
* For reference, when both LLM and Human filled parameter values to call, you can
|
|
30
|
-
* merge them by calling the {@link HttpLlm.mergeParameters} function. In other words,
|
|
31
|
-
* if you've configured the {@link ILlmApplication.IOptions.separate} property, you
|
|
32
|
-
* have to merge the separated parameters before the function call execution.
|
|
33
|
-
*
|
|
34
|
-
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
35
|
-
* @author Jeongho Nam - https://github.com/samchon
|
|
3
|
+
* @deprecated Use `ILlmApplication` type instead
|
|
36
4
|
*/
|
|
37
|
-
export
|
|
38
|
-
/**
|
|
39
|
-
* List of function metadata.
|
|
40
|
-
*
|
|
41
|
-
* List of function metadata that can be used for the LLM function call.
|
|
42
|
-
*
|
|
43
|
-
* Also, every functions have their own parameters validator
|
|
44
|
-
* {@link ILlmFunctionOfValidate.validate}. If the LLM function calling composes wrong
|
|
45
|
-
* typed parameters, then deliver return value of it, then LLM will correct parameters
|
|
46
|
-
* at the next conversation.
|
|
47
|
-
*/
|
|
48
|
-
functions: ILlmFunctionOfValidate<Model>[];
|
|
49
|
-
}
|
|
50
|
-
export declare namespace ILlmApplicationOfValidate {
|
|
51
|
-
export import IOptions = ILlmApplication.IOptions;
|
|
52
|
-
}
|
|
5
|
+
export import ILlmApplicationOfValidate = ILlmApplication;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ILlmApplicationOfValidate = void 0;
|
|
4
|
-
var ILlmApplicationOfValidate;
|
|
5
|
-
(function (ILlmApplicationOfValidate) {
|
|
6
|
-
})(ILlmApplicationOfValidate || (exports.ILlmApplicationOfValidate = ILlmApplicationOfValidate = {}));
|
|
7
3
|
//# sourceMappingURL=ILlmApplicationOfValidate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ILlmApplicationOfValidate.js","sourceRoot":"","sources":["../../../src/schemas/llm/ILlmApplicationOfValidate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ILlmApplicationOfValidate.js","sourceRoot":"","sources":["../../../src/schemas/llm/ILlmApplicationOfValidate.ts"],"names":[],"mappings":""}
|
|
@@ -1,36 +1,5 @@
|
|
|
1
|
-
import { ILlmFunction
|
|
2
|
-
import { IValidation } from "../../IValidation";
|
|
1
|
+
import { ILlmFunction } from "@samchon/openapi";
|
|
3
2
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* `ILlmFunctionOfValidate` is an interface representing a function metadata,
|
|
7
|
-
* which has been used for the LLM (Language Large Model) function
|
|
8
|
-
* calling. Also, it's a function structure containing the function
|
|
9
|
-
* {@link name}, {@link parameters} and {@link output return type}.
|
|
10
|
-
*
|
|
11
|
-
* If you provide this `ILlmFunctionOfValidate` data to the LLM provider like "OpenAI",
|
|
12
|
-
* the "OpenAI" will compose a function arguments by analyzing conversations
|
|
13
|
-
* with the user. With the LLM composed arguments, you can execute the function
|
|
14
|
-
* and get the result.
|
|
15
|
-
*
|
|
16
|
-
* If the LLM function calling take s a mistake that composing wrong typed
|
|
17
|
-
* {@link parameters}, you can correct the parameters by delivering the return
|
|
18
|
-
* value of the {@link validate} function. The {@link validate} function is a
|
|
19
|
-
* validator function reporting the detailed information about the wrong typed
|
|
20
|
-
* {@link parameters}.
|
|
21
|
-
*
|
|
22
|
-
* By the way, do not ensure that LLM will always provide the correct arguments.
|
|
23
|
-
* The LLM of present age is not perfect, and sometimes takes a mistake that composing
|
|
24
|
-
* wrong typed {@link parameters}. In that case, you can correc the parameters by
|
|
25
|
-
* delivering the return value of the {@link validate} function. The {@link validate}
|
|
26
|
-
* function reports the detailed information about the wrong typed {@link parameters},
|
|
27
|
-
*
|
|
28
|
-
* @reference https://platform.openai.com/docs/guides/function-calling
|
|
29
|
-
* @author Jeongho Nam - https://github.com/samchon
|
|
3
|
+
* @deprecated Use `ILlmFunction` type instead
|
|
30
4
|
*/
|
|
31
|
-
export
|
|
32
|
-
validate(props: object): IValidation<unknown>;
|
|
33
|
-
}
|
|
34
|
-
export declare namespace ILlmFunctionOfValidate {
|
|
35
|
-
export import ISeparated = ILlmFunction.ISeparated;
|
|
36
|
-
}
|
|
5
|
+
export import ILlmFunctionOfValidate = ILlmFunction;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ILlmFunctionOfValidate = void 0;
|
|
4
|
-
var ILlmFunctionOfValidate;
|
|
5
|
-
(function (ILlmFunctionOfValidate) {
|
|
6
|
-
})(ILlmFunctionOfValidate || (exports.ILlmFunctionOfValidate = ILlmFunctionOfValidate = {}));
|
|
7
3
|
//# sourceMappingURL=ILlmFunctionOfValidate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ILlmFunctionOfValidate.js","sourceRoot":"","sources":["../../../src/schemas/llm/ILlmFunctionOfValidate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ILlmFunctionOfValidate.js","sourceRoot":"","sources":["../../../src/schemas/llm/ILlmFunctionOfValidate.ts"],"names":[],"mappings":""}
|