typia 7.0.0-dev.20241127-4 → 7.0.0-dev.20241127-5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/lib/index.mjs.map +1 -1
  2. package/lib/llm.d.ts +9 -3
  3. package/lib/llm.js.map +1 -1
  4. package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +1 -0
  5. package/lib/programmers/llm/LlmApplicationProgrammer.js +1 -1
  6. package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
  7. package/lib/programmers/llm/LlmModelPredicator.d.ts +16 -0
  8. package/lib/programmers/llm/LlmModelPredicator.js +99 -0
  9. package/lib/programmers/llm/LlmModelPredicator.js.map +1 -0
  10. package/lib/programmers/llm/LlmParametersProgrammer.d.ts +1 -0
  11. package/lib/programmers/llm/LlmParametersProgrammer.js +1 -1
  12. package/lib/programmers/llm/LlmParametersProgrammer.js.map +1 -1
  13. package/lib/programmers/llm/LlmSchemaProgrammer.d.ts +1 -0
  14. package/lib/programmers/llm/LlmSchemaProgrammer.js +1 -1
  15. package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
  16. package/lib/transformers/features/llm/LlmApplicationTransformer.js +12 -32
  17. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  18. package/lib/transformers/features/llm/LlmParametersTransformer.js +12 -32
  19. package/lib/transformers/features/llm/LlmParametersTransformer.js.map +1 -1
  20. package/lib/transformers/features/llm/LlmSchemaTransformer.js +12 -32
  21. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  22. package/package.json +1 -1
  23. package/src/llm.ts +17 -2
  24. package/src/programmers/llm/LlmApplicationProgrammer.ts +6 -4
  25. package/src/programmers/llm/LlmModelPredicator.ts +127 -0
  26. package/src/programmers/llm/LlmParametersProgrammer.ts +5 -1
  27. package/src/programmers/llm/LlmSchemaProgrammer.ts +5 -1
  28. package/src/transformers/features/llm/LlmApplicationTransformer.ts +12 -46
  29. package/src/transformers/features/llm/LlmParametersTransformer.ts +12 -46
  30. package/src/transformers/features/llm/LlmSchemaTransformer.ts +12 -46
package/lib/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/functional.ts","../src/http.ts","../src/llm.ts","../src/json.ts","../src/misc.ts","../src/notations.ts","../src/protobuf.ts","../src/reflect.ts","../src/TypeGuardError.ts","../src/module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["halt","application"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/functional.ts","../src/http.ts","../src/llm.ts","../src/json.ts","../src/misc.ts","../src/notations.ts","../src/protobuf.ts","../src/reflect.ts","../src/TypeGuardError.ts","../src/module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["halt","application"],"mappings":"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"}
package/lib/llm.d.ts CHANGED
@@ -33,6 +33,7 @@ import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
33
33
  *
34
34
  * @template App Target class or interface type collecting the functions to call
35
35
  * @template Model LLM schema model
36
+ * @template Config Configuration of LLM schema composition
36
37
  * @param options Options for the LLM application construction
37
38
  * @returns Application of LLM function calling schemas
38
39
  * @reference https://platform.openai.com/docs/guides/function-calling
@@ -71,12 +72,13 @@ export declare function application(options?: Partial<Pick<ILlmApplication.IOpti
71
72
  *
72
73
  * @template App Target class or interface type collecting the functions to call
73
74
  * @template Model LLM schema model
75
+ * @template Config Configuration of LLM schema composition
74
76
  * @param options Options for the LLM application construction
75
77
  * @returns Application of LLM function calling schemas
76
78
  * @reference https://platform.openai.com/docs/guides/function-calling
77
79
  * @author Jeongho Nam - https://github.com/samchon
78
80
  */
79
- export declare function application<App extends object, Model extends ILlmSchema.Model>(options?: Partial<Pick<ILlmApplication.IOptions<Model>, "separate">>): ILlmApplication<Model>;
81
+ export declare function application<App extends object, Model extends ILlmSchema.Model, Config extends Partial<ILlmSchema.ModelConfig[Model]> = {}>(options?: Partial<Pick<ILlmApplication.IOptions<Model>, "separate">>): ILlmApplication<Model>;
80
82
  /**
81
83
  * > You must configure the generic argument `Parameters`.
82
84
  *
@@ -99,6 +101,7 @@ export declare function application<App extends object, Model extends ILlmSchema
99
101
  *
100
102
  * @template Parameters Target parameters type
101
103
  * @template Model LLM schema model
104
+ * @template Config Configuration of LLM schema composition
102
105
  * @returns LLM parameters schema
103
106
  * @reference https://platform.openai.com/docs/guides/function-calling
104
107
  * @reference https://platform.openai.com/docs/guides/structured-outputs
@@ -124,11 +127,12 @@ export declare function parameters(): never;
124
127
  *
125
128
  * @template Parameters Target parameters type
126
129
  * @template Model LLM schema model
130
+ * @template Config Configuration of LLM schema composition
127
131
  * @returns LLM parameters schema
128
132
  * @reference https://platform.openai.com/docs/guides/function-calling
129
133
  * @reference https://platform.openai.com/docs/guides/structured-outputs
130
134
  */
131
- export declare function parameters<Parameters extends object, Model extends ILlmSchema.Model>(): ILlmSchema.ModelParameters[Model];
135
+ export declare function parameters<Parameters extends object, Model extends ILlmSchema.Model, Config extends Partial<ILlmSchema.ModelConfig[Model]> = {}>(): ILlmSchema.ModelParameters[Model];
132
136
  /**
133
137
  * > You must configure the generic argument `T`.
134
138
  *
@@ -162,6 +166,7 @@ export declare function parameters<Parameters extends object, Model extends ILlm
162
166
  *
163
167
  * @template T Target type
164
168
  * @template Model LLM schema model
169
+ * @template Config Configuration of LLM schema composition
165
170
  * @returns LLM schema
166
171
  * @reference https://platform.openai.com/docs/guides/function-calling
167
172
  * @reference https://platform.openai.com/docs/guides/structured-outputs
@@ -199,11 +204,12 @@ export declare function schema(): never;
199
204
  *
200
205
  * @template T Target type
201
206
  * @template Model LLM schema model
207
+ * @template Config Configuration of LLM schema composition
202
208
  * @param $defs Definitions of named schemas if the model is `chatgpt`
203
209
  * @returns LLM schema
204
210
  * @reference https://platform.openai.com/docs/guides/function-calling
205
211
  * @author Jeongho Nam - https://github.com/samchon
206
212
  */
207
- export declare function schema<T, Model extends ILlmSchema.Model>(...$defs: Extract<ILlmSchema.ModelSchema[Model], {
213
+ export declare function schema<T, Model extends ILlmSchema.Model, Config extends Partial<ILlmSchema.ModelConfig[Model]> = {}>(...$defs: Extract<ILlmSchema.ModelSchema[Model], {
208
214
  $ref: string;
209
215
  }> extends never ? [] : [Record<string, ILlmSchema.ModelSchema[Model]>]): ILlmSchema.ModelSchema[Model];
package/lib/llm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"llm.js","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":";;AAyFA,kCAEC;AA8DD,gCAEC;AA0FD,wBAEC;AAjKD;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,CAAC,aAAa,CAAC,CAAC;AACtB,CAAC;AA2DD;;GAEG;AACH,SAAgB,UAAU;IACxB,IAAI,CAAC,YAAY,CAAC,CAAC;AACrB,CAAC;AAuFD;;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"}
1
+ {"version":3,"file":"llm.js","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":";;AA+FA,kCAEC;AAiED,gCAEC;AAgGD,wBAEC;AA1KD;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,CAAC,aAAa,CAAC,CAAC;AACtB,CAAC;AA8DD;;GAEG;AACH,SAAgB,UAAU;IACxB,IAAI,CAAC,YAAY,CAAC,CAAC;AACrB,CAAC;AA6FD;;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"}
@@ -6,5 +6,6 @@ export declare namespace LlmApplicationProgrammer {
6
6
  const write: <Model extends ILlmSchema.Model>(props: {
7
7
  model: Model;
8
8
  metadata: Metadata;
9
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
9
10
  }) => ILlmApplication<Model>;
10
11
  }
@@ -78,12 +78,12 @@ var LlmApplicationProgrammer;
78
78
  });
79
79
  return {
80
80
  model: props.model,
81
+ options: Object.assign(Object.assign(Object.assign({}, LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model)), props.config), { separate: null }),
81
82
  functions: application.functions.map((func) => writeFunction({
82
83
  model: props.model,
83
84
  components: application.components,
84
85
  function: func,
85
86
  })),
86
- options: Object.assign(Object.assign({}, LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model)), { separate: null }),
87
87
  };
88
88
  };
89
89
  const writeFunction = (props) => {
@@ -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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"}
@@ -0,0 +1,16 @@
1
+ import { ILlmSchema } from "@samchon/openapi";
2
+ import ts from "typescript";
3
+ import { ITypiaContext } from "../../transformers/ITypiaContext";
4
+ export declare namespace LlmModelPredicator {
5
+ const getConfig: (props: {
6
+ context: ITypiaContext;
7
+ method: string;
8
+ model: ILlmSchema.Model;
9
+ node: ts.TypeNode | undefined;
10
+ }) => Partial<ILlmSchema.ModelConfig[ILlmSchema.Model]> | undefined;
11
+ const getModel: (props: {
12
+ checker: ts.TypeChecker;
13
+ method: string;
14
+ node: ts.TypeNode | undefined;
15
+ }) => ILlmSchema.Model;
16
+ }
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LlmModelPredicator = void 0;
7
+ const LlmSchemaConverter_1 = require("@samchon/openapi/lib/converters/LlmSchemaConverter");
8
+ const typescript_1 = __importDefault(require("typescript"));
9
+ const MetadataCollection_1 = require("../../factories/MetadataCollection");
10
+ const MetadataFactory_1 = require("../../factories/MetadataFactory");
11
+ const TransformerError_1 = require("../../transformers/TransformerError");
12
+ var LlmModelPredicator;
13
+ (function (LlmModelPredicator) {
14
+ LlmModelPredicator.getConfig = (props) => {
15
+ if (props.node === undefined)
16
+ return undefined;
17
+ const type = props.context.checker.getTypeFromTypeNode(props.node);
18
+ const collection = new MetadataCollection_1.MetadataCollection();
19
+ const result = MetadataFactory_1.MetadataFactory.analyze({
20
+ checker: props.context.checker,
21
+ transformer: props.context.transformer,
22
+ options: {
23
+ escape: false,
24
+ constant: true,
25
+ absorb: false,
26
+ functional: false,
27
+ },
28
+ collection,
29
+ type,
30
+ });
31
+ if (result.success === false)
32
+ throw new TransformerError_1.TransformerError({
33
+ code: `typia.llm.${props.method}`,
34
+ message: `Failed to analyze generic argument "Config".`,
35
+ });
36
+ const meta = result.data;
37
+ if (meta.size() !== 1 ||
38
+ meta.objects.length !== 1 ||
39
+ meta.nullable === true ||
40
+ meta.isRequired() === false)
41
+ throw new TransformerError_1.TransformerError({
42
+ code: `typia.llm.${props.method}`,
43
+ message: `Invalid generic argument "Config". It must be a literal object type.`,
44
+ });
45
+ const obj = meta.objects[0];
46
+ if (obj.type.properties.some((p) => p.key.isSoleLiteral() === false))
47
+ throw new TransformerError_1.TransformerError({
48
+ code: `typia.llm.${props.method}`,
49
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow dynamic properties.`,
50
+ });
51
+ else if (obj.type.properties.some((p) => p.value.size() !== 1 ||
52
+ p.value.constants.length !== 1 ||
53
+ p.value.nullable === true ||
54
+ p.value.isRequired() === false))
55
+ throw new TransformerError_1.TransformerError({
56
+ code: `typia.llm.${props.method}`,
57
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow variable type.`,
58
+ });
59
+ const config = {};
60
+ for (const prop of obj.type.properties) {
61
+ const key = prop.key.getSoleLiteral();
62
+ const value = prop.value.constants[0].values[0].value;
63
+ if (typeof value === "bigint")
64
+ throw new TransformerError_1.TransformerError({
65
+ code: `typia.llm.${props.method}`,
66
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow bigint.`,
67
+ });
68
+ config[key] = value;
69
+ }
70
+ return config;
71
+ };
72
+ LlmModelPredicator.getModel = (props) => {
73
+ if (props.node === undefined)
74
+ throw new TransformerError_1.TransformerError({
75
+ code: `typia.llm.${props.method}`,
76
+ message: `generic argument "Model" must be specified.`,
77
+ });
78
+ // CHECK LITERAL TYPE
79
+ const type = props.checker.getTypeFromTypeNode(props.node);
80
+ if (!type.isLiteral() &&
81
+ (type.getFlags() & typescript_1.default.TypeFlags.BooleanLiteral) === 0)
82
+ throw new TransformerError_1.TransformerError({
83
+ code: `typia.llm.${props.method}`,
84
+ message: `generic argument "Model" must be constant.`,
85
+ });
86
+ // GET VALUE AND VALIDATE IT
87
+ const value = type.isLiteral()
88
+ ? type.value
89
+ : props.checker.typeToString(type);
90
+ if (typeof value !== "string" ||
91
+ LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(value) === undefined)
92
+ throw new TransformerError_1.TransformerError({
93
+ code: "typia.llm.schema",
94
+ message: `invalid value on generic argument "Model".`,
95
+ });
96
+ return value;
97
+ };
98
+ })(LlmModelPredicator || (exports.LlmModelPredicator = LlmModelPredicator = {}));
99
+ //# sourceMappingURL=LlmModelPredicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LlmModelPredicator.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmModelPredicator.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export declare namespace LlmParametersProgrammer {
5
5
  const write: <Model extends ILlmSchema.Model>(props: {
6
6
  model: Model;
7
7
  metadata: Metadata;
8
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
8
9
  }) => ILlmSchema.ModelParameters[Model];
9
10
  const validate: (model: ILlmSchema.Model) => (metadata: Metadata, explore: MetadataFactory.IExplore) => string[];
10
11
  }
@@ -25,7 +25,7 @@ var LlmParametersProgrammer;
25
25
  throw new Error("Unreachable code. Failed to find the object schema.");
26
26
  })();
27
27
  const parameters = LlmSchemaConverter_1.LlmSchemaConverter.parameters(props.model)({
28
- config: LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model),
28
+ config: Object.assign(Object.assign({}, LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model)), props.config),
29
29
  components: collection.components,
30
30
  schema,
31
31
  });
@@ -1 +1 @@
1
- {"version":3,"file":"LlmParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmParametersProgrammer.ts"],"names":[],"mappings":";;;AAAA,8CAA2E;AAC3E,2FAAwF;AAOxF,yEAAsE;AACtE,+DAA4D;AAE5D,IAAiB,uBAAuB,CAmDvC;AAnDD,WAAiB,uBAAuB;IACzB,6BAAK,GAAG,CAAiC,KAGrD,EAAqC,EAAE;QACtC,MAAM,UAAU,GACd,6CAAqB,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;SAC5B,CAAC,CAAC;QACL,MAAM,MAAM,GAAgC,CAAC,GAAG,EAAE;;YAChD,MAAM,MAAM,GAAwB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;YAC3D,IAAI,4BAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC;iBAClD,IAAI,4BAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,GACR,MAAA,UAAU,CAAC,UAAU,CAAC,OAAO,0CAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC;gBACjE,IAAI,IAAI,IAAI,4BAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;YAC7D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,UAAU,GACd,uCAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,EAAE,uCAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAQ;YAC5D,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,MAAM;SACP,CAA6C,CAAC;QACjD,IAAI,UAAU,KAAK,IAAI;YACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEW,gCAAQ,GACnB,CAAC,KAAuB,EAAE,EAAE,CAC5B,CAAC,QAAkB,EAAE,OAAiC,EAAY,EAAE;QAClE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;iBAClD,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;iBACzD,CAAC;gBACJ,IAAI,QAAQ,CAAC,QAAQ;oBACnB,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;qBAC/D,IAAI,QAAQ,CAAC,UAAU,EAAE,KAAK,KAAK;oBACtC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,yCAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACN,CAAC,EAnDgB,uBAAuB,uCAAvB,uBAAuB,QAmDvC"}
1
+ {"version":3,"file":"LlmParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmParametersProgrammer.ts"],"names":[],"mappings":";;;AAAA,8CAA2E;AAC3E,2FAAwF;AAOxF,yEAAsE;AACtE,+DAA4D;AAE5D,IAAiB,uBAAuB,CAuDvC;AAvDD,WAAiB,uBAAuB;IACzB,6BAAK,GAAG,CAAiC,KAIrD,EAAqC,EAAE;QACtC,MAAM,UAAU,GACd,6CAAqB,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;SAC5B,CAAC,CAAC;QACL,MAAM,MAAM,GAAgC,CAAC,GAAG,EAAE;;YAChD,MAAM,MAAM,GAAwB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;YAC3D,IAAI,4BAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC;iBAClD,IAAI,4BAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,GACR,MAAA,UAAU,CAAC,UAAU,CAAC,OAAO,0CAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC;gBACjE,IAAI,IAAI,IAAI,4BAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;YAC7D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,UAAU,GACd,uCAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,EAAE,gCACH,uCAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,GAC7C,KAAK,CAAC,MAAM,CACT;YACR,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,MAAM;SACP,CAA6C,CAAC;QACjD,IAAI,UAAU,KAAK,IAAI;YACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEW,gCAAQ,GACnB,CAAC,KAAuB,EAAE,EAAE,CAC5B,CAAC,QAAkB,EAAE,OAAiC,EAAY,EAAE;QAClE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;iBAClD,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;iBACzD,CAAC;gBACJ,IAAI,QAAQ,CAAC,QAAQ;oBACnB,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;qBAC/D,IAAI,QAAQ,CAAC,UAAU,EAAE,KAAK,KAAK;oBACtC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,yCAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACN,CAAC,EAvDgB,uBAAuB,uCAAvB,uBAAuB,QAuDvC"}
@@ -9,6 +9,7 @@ export declare namespace LlmSchemaProgrammer {
9
9
  const write: <Model extends ILlmSchema.Model>(props: {
10
10
  model: Model;
11
11
  metadata: Metadata;
12
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
12
13
  }) => IOutput<Model>;
13
14
  const validate: (model: ILlmSchema.Model) => (metadata: Metadata) => string[];
14
15
  }
@@ -18,7 +18,7 @@ var LlmSchemaProgrammer;
18
18
  });
19
19
  const $defs = {};
20
20
  const schema = LlmSchemaConverter_1.LlmSchemaConverter.schema(props.model)({
21
- config: LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model),
21
+ config: Object.assign(Object.assign({}, LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(props.model)), props.config),
22
22
  components: collection.components,
23
23
  schema: collection.schemas[0],
24
24
  $defs: $defs,
@@ -1 +1 @@
1
- {"version":3,"file":"LlmSchemaProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmSchemaProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmSchemaProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/llm/LlmSchemaProgrammer.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.LlmApplicationTransformer = void 0;
7
- const LlmSchemaConverter_1 = require("@samchon/openapi/lib/converters/LlmSchemaConverter");
8
7
  const typescript_1 = __importDefault(require("typescript"));
9
8
  const ExpressionFactory_1 = require("../../../factories/ExpressionFactory");
10
9
  const LiteralFactory_1 = require("../../../factories/LiteralFactory");
@@ -12,6 +11,7 @@ const MetadataCollection_1 = require("../../../factories/MetadataCollection");
12
11
  const MetadataFactory_1 = require("../../../factories/MetadataFactory");
13
12
  const StatementFactory_1 = require("../../../factories/StatementFactory");
14
13
  const LlmApplicationProgrammer_1 = require("../../../programmers/llm/LlmApplicationProgrammer");
14
+ const LlmModelPredicator_1 = require("../../../programmers/llm/LlmModelPredicator");
15
15
  const TransformerError_1 = require("../../TransformerError");
16
16
  var LlmApplicationTransformer;
17
17
  (function (LlmApplicationTransformer) {
@@ -26,16 +26,12 @@ var LlmApplicationTransformer;
26
26
  const top = props.expression.typeArguments[0];
27
27
  if (typescript_1.default.isTypeNode(top) === false)
28
28
  return props.expression;
29
- // GET MODEL
30
- const model = getTemplateArgument({
31
- checker: props.context.checker,
32
- name: "Model",
33
- is: (value) => LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(value) !==
34
- undefined,
35
- cast: (value) => value,
36
- default: () => "3.1",
37
- })(props.expression.typeArguments[1]);
38
29
  // GET TYPE
30
+ const model = LlmModelPredicator_1.LlmModelPredicator.getModel({
31
+ checker: props.context.checker,
32
+ method: "application",
33
+ node: props.expression.typeArguments[1],
34
+ });
39
35
  const type = props.context.checker.getTypeFromTypeNode(top);
40
36
  const collection = new MetadataCollection_1.MetadataCollection({
41
37
  replace: MetadataCollection_1.MetadataCollection.replace,
@@ -62,6 +58,12 @@ var LlmApplicationTransformer;
62
58
  const schema = LlmApplicationProgrammer_1.LlmApplicationProgrammer.write({
63
59
  model,
64
60
  metadata: result.data,
61
+ config: LlmModelPredicator_1.LlmModelPredicator.getConfig({
62
+ context: props.context,
63
+ method: "application",
64
+ model,
65
+ node: props.expression.typeArguments[2],
66
+ }),
65
67
  });
66
68
  const literal = typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(schema), typescript_1.default.factory.createTypeReferenceNode(props.context.importer.instance({
67
69
  name: "ILlmApplication",
@@ -87,27 +89,5 @@ var LlmApplicationTransformer;
87
89
  typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("app")),
88
90
  ], true));
89
91
  };
90
- const getTemplateArgument = (props) => (node) => {
91
- if (!node)
92
- return props.default();
93
- // CHECK LITERAL TYPE
94
- const type = props.checker.getTypeFromTypeNode(node);
95
- if (!type.isLiteral() &&
96
- (type.getFlags() & typescript_1.default.TypeFlags.BooleanLiteral) === 0)
97
- throw new TransformerError_1.TransformerError({
98
- code: "typia.llm.application",
99
- message: `generic argument "${props.name}" must be constant.`,
100
- });
101
- // GET VALUE AND VALIDATE IT
102
- const value = type.isLiteral()
103
- ? type.value
104
- : props.checker.typeToString(type);
105
- if (typeof value !== "string" || props.is(value) === false)
106
- throw new TransformerError_1.TransformerError({
107
- code: "typia.llm.application",
108
- message: `invalid value on generic argument "${props.name}".`,
109
- });
110
- return props.cast(value);
111
- };
112
92
  })(LlmApplicationTransformer || (exports.LlmApplicationTransformer = LlmApplicationTransformer = {}));
113
93
  //# sourceMappingURL=LlmApplicationTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.LlmParametersTransformer = void 0;
7
- const LlmSchemaConverter_1 = require("@samchon/openapi/lib/converters/LlmSchemaConverter");
8
7
  const typescript_1 = __importDefault(require("typescript"));
9
8
  const LiteralFactory_1 = require("../../../factories/LiteralFactory");
10
9
  const MetadataCollection_1 = require("../../../factories/MetadataCollection");
11
10
  const MetadataFactory_1 = require("../../../factories/MetadataFactory");
11
+ const LlmModelPredicator_1 = require("../../../programmers/llm/LlmModelPredicator");
12
12
  const LlmParametersProgrammer_1 = require("../../../programmers/llm/LlmParametersProgrammer");
13
13
  const LlmSchemaProgrammer_1 = require("../../../programmers/llm/LlmSchemaProgrammer");
14
14
  const TransformerError_1 = require("../../TransformerError");
@@ -25,16 +25,12 @@ var LlmParametersTransformer;
25
25
  const top = props.expression.typeArguments[0];
26
26
  if (typescript_1.default.isTypeNode(top) === false)
27
27
  return props.expression;
28
- // GET MODEL
29
- const model = getTemplateArgument({
30
- checker: props.context.checker,
31
- name: "Model",
32
- is: (value) => LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(value) !==
33
- undefined,
34
- cast: (value) => value,
35
- default: () => "3.1",
36
- })(props.expression.typeArguments[1]);
37
28
  // GET TYPE
29
+ const model = LlmModelPredicator_1.LlmModelPredicator.getModel({
30
+ checker: props.context.checker,
31
+ method: "parameters",
32
+ node: props.expression.typeArguments[1],
33
+ });
38
34
  const type = props.context.checker.getTypeFromTypeNode(top);
39
35
  const collection = new MetadataCollection_1.MetadataCollection({
40
36
  replace: MetadataCollection_1.MetadataCollection.replace,
@@ -60,6 +56,12 @@ var LlmParametersTransformer;
60
56
  const out = LlmParametersProgrammer_1.LlmParametersProgrammer.write({
61
57
  model,
62
58
  metadata: result.data,
59
+ config: LlmModelPredicator_1.LlmModelPredicator.getConfig({
60
+ context: props.context,
61
+ method: "parameters",
62
+ model,
63
+ node: props.expression.typeArguments[2],
64
+ }),
63
65
  });
64
66
  return typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(out), typescript_1.default.factory.createTypeReferenceNode(props.context.importer.instance({
65
67
  name: "ILlmSchema",
@@ -70,27 +72,5 @@ var LlmParametersTransformer;
70
72
  typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral(model)),
71
73
  ]));
72
74
  };
73
- const getTemplateArgument = (props) => (node) => {
74
- if (!node)
75
- return props.default();
76
- // CHECK LITERAL TYPE
77
- const type = props.checker.getTypeFromTypeNode(node);
78
- if (!type.isLiteral() &&
79
- (type.getFlags() & typescript_1.default.TypeFlags.BooleanLiteral) === 0)
80
- throw new TransformerError_1.TransformerError({
81
- code: "typia.llm.parameters",
82
- message: `generic argument "${props.name}" must be constant.`,
83
- });
84
- // GET VALUE AND VALIDATE IT
85
- const value = type.isLiteral()
86
- ? type.value
87
- : props.checker.typeToString(type);
88
- if (typeof value !== "string" || props.is(value) === false)
89
- throw new TransformerError_1.TransformerError({
90
- code: "typia.llm.parameters",
91
- message: `invalid value on generic argument "${props.name}".`,
92
- });
93
- return props.cast(value);
94
- };
95
75
  })(LlmParametersTransformer || (exports.LlmParametersTransformer = LlmParametersTransformer = {}));
96
76
  //# sourceMappingURL=LlmParametersTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.LlmSchemaTransformer = void 0;
7
- const LlmSchemaConverter_1 = require("@samchon/openapi/lib/converters/LlmSchemaConverter");
8
7
  const typescript_1 = __importDefault(require("typescript"));
9
8
  const IdentifierFactory_1 = require("../../../factories/IdentifierFactory");
10
9
  const LiteralFactory_1 = require("../../../factories/LiteralFactory");
11
10
  const MetadataCollection_1 = require("../../../factories/MetadataCollection");
12
11
  const MetadataFactory_1 = require("../../../factories/MetadataFactory");
12
+ const LlmModelPredicator_1 = require("../../../programmers/llm/LlmModelPredicator");
13
13
  const LlmSchemaProgrammer_1 = require("../../../programmers/llm/LlmSchemaProgrammer");
14
14
  const TransformerError_1 = require("../../TransformerError");
15
15
  var LlmSchemaTransformer;
@@ -25,16 +25,12 @@ var LlmSchemaTransformer;
25
25
  const top = props.expression.typeArguments[0];
26
26
  if (typescript_1.default.isTypeNode(top) === false)
27
27
  return props.expression;
28
- // GET MODEL
29
- const model = getTemplateArgument({
30
- checker: props.context.checker,
31
- name: "Model",
32
- is: (value) => LlmSchemaConverter_1.LlmSchemaConverter.defaultConfig(value) !==
33
- undefined,
34
- cast: (value) => value,
35
- default: () => "3.1",
36
- })(props.expression.typeArguments[1]);
37
28
  // GET TYPE
29
+ const model = LlmModelPredicator_1.LlmModelPredicator.getModel({
30
+ checker: props.context.checker,
31
+ method: "schema",
32
+ node: props.expression.typeArguments[1],
33
+ });
38
34
  const type = props.context.checker.getTypeFromTypeNode(top);
39
35
  const collection = new MetadataCollection_1.MetadataCollection({
40
36
  replace: MetadataCollection_1.MetadataCollection.replace,
@@ -60,6 +56,12 @@ var LlmSchemaTransformer;
60
56
  const out = LlmSchemaProgrammer_1.LlmSchemaProgrammer.write({
61
57
  model,
62
58
  metadata: result.data,
59
+ config: LlmModelPredicator_1.LlmModelPredicator.getConfig({
60
+ context: props.context,
61
+ method: "schema",
62
+ model,
63
+ node: props.expression.typeArguments[2],
64
+ }),
63
65
  });
64
66
  const schemaTypeNode = typescript_1.default.factory.createTypeReferenceNode(props.context.importer.instance({
65
67
  name: "ILlmSchema",
@@ -86,27 +88,5 @@ var LlmSchemaTransformer;
86
88
  typescript_1.default.factory.createReturnStatement(literal),
87
89
  ], true)), undefined, [props.expression.arguments[0]]);
88
90
  };
89
- const getTemplateArgument = (props) => (node) => {
90
- if (!node)
91
- return props.default();
92
- // CHECK LITERAL TYPE
93
- const type = props.checker.getTypeFromTypeNode(node);
94
- if (!type.isLiteral() &&
95
- (type.getFlags() & typescript_1.default.TypeFlags.BooleanLiteral) === 0)
96
- throw new TransformerError_1.TransformerError({
97
- code: "typia.llm.schema",
98
- message: `generic argument "${props.name}" must be constant.`,
99
- });
100
- // GET VALUE AND VALIDATE IT
101
- const value = type.isLiteral()
102
- ? type.value
103
- : props.checker.typeToString(type);
104
- if (typeof value !== "string" || props.is(value) === false)
105
- throw new TransformerError_1.TransformerError({
106
- code: "typia.llm.schema",
107
- message: `invalid value on generic argument "${props.name}".`,
108
- });
109
- return props.cast(value);
110
- };
111
91
  })(LlmSchemaTransformer || (exports.LlmSchemaTransformer = LlmSchemaTransformer = {}));
112
92
  //# sourceMappingURL=LlmSchemaTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":"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"}
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.20241127-4",
3
+ "version": "7.0.0-dev.20241127-5",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
package/src/llm.ts CHANGED
@@ -34,6 +34,7 @@ import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
34
34
  *
35
35
  * @template App Target class or interface type collecting the functions to call
36
36
  * @template Model LLM schema model
37
+ * @template Config Configuration of LLM schema composition
37
38
  * @param options Options for the LLM application construction
38
39
  * @returns Application of LLM function calling schemas
39
40
  * @reference https://platform.openai.com/docs/guides/function-calling
@@ -75,12 +76,17 @@ export function application(
75
76
  *
76
77
  * @template App Target class or interface type collecting the functions to call
77
78
  * @template Model LLM schema model
79
+ * @template Config Configuration of LLM schema composition
78
80
  * @param options Options for the LLM application construction
79
81
  * @returns Application of LLM function calling schemas
80
82
  * @reference https://platform.openai.com/docs/guides/function-calling
81
83
  * @author Jeongho Nam - https://github.com/samchon
82
84
  */
83
- export function application<App extends object, Model extends ILlmSchema.Model>(
85
+ export function application<
86
+ App extends object,
87
+ Model extends ILlmSchema.Model,
88
+ Config extends Partial<ILlmSchema.ModelConfig[Model]> = {},
89
+ >(
84
90
  options?: Partial<Pick<ILlmApplication.IOptions<Model>, "separate">>,
85
91
  ): ILlmApplication<Model>;
86
92
 
@@ -113,6 +119,7 @@ export function application(): never {
113
119
  *
114
120
  * @template Parameters Target parameters type
115
121
  * @template Model LLM schema model
122
+ * @template Config Configuration of LLM schema composition
116
123
  * @returns LLM parameters schema
117
124
  * @reference https://platform.openai.com/docs/guides/function-calling
118
125
  * @reference https://platform.openai.com/docs/guides/structured-outputs
@@ -139,6 +146,7 @@ export function parameters(): never;
139
146
  *
140
147
  * @template Parameters Target parameters type
141
148
  * @template Model LLM schema model
149
+ * @template Config Configuration of LLM schema composition
142
150
  * @returns LLM parameters schema
143
151
  * @reference https://platform.openai.com/docs/guides/function-calling
144
152
  * @reference https://platform.openai.com/docs/guides/structured-outputs
@@ -146,6 +154,7 @@ export function parameters(): never;
146
154
  export function parameters<
147
155
  Parameters extends object,
148
156
  Model extends ILlmSchema.Model,
157
+ Config extends Partial<ILlmSchema.ModelConfig[Model]> = {},
149
158
  >(): ILlmSchema.ModelParameters[Model];
150
159
 
151
160
  /**
@@ -188,6 +197,7 @@ export function parameters(): never {
188
197
  *
189
198
  * @template T Target type
190
199
  * @template Model LLM schema model
200
+ * @template Config Configuration of LLM schema composition
191
201
  * @returns LLM schema
192
202
  * @reference https://platform.openai.com/docs/guides/function-calling
193
203
  * @reference https://platform.openai.com/docs/guides/structured-outputs
@@ -226,12 +236,17 @@ export function schema(): never;
226
236
  *
227
237
  * @template T Target type
228
238
  * @template Model LLM schema model
239
+ * @template Config Configuration of LLM schema composition
229
240
  * @param $defs Definitions of named schemas if the model is `chatgpt`
230
241
  * @returns LLM schema
231
242
  * @reference https://platform.openai.com/docs/guides/function-calling
232
243
  * @author Jeongho Nam - https://github.com/samchon
233
244
  */
234
- export function schema<T, Model extends ILlmSchema.Model>(
245
+ export function schema<
246
+ T,
247
+ Model extends ILlmSchema.Model,
248
+ Config extends Partial<ILlmSchema.ModelConfig[Model]> = {},
249
+ >(
235
250
  ...$defs: Extract<
236
251
  ILlmSchema.ModelSchema[Model],
237
252
  { $ref: string }
@@ -89,6 +89,7 @@ export namespace LlmApplicationProgrammer {
89
89
  export const write = <Model extends ILlmSchema.Model>(props: {
90
90
  model: Model;
91
91
  metadata: Metadata;
92
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
92
93
  }): ILlmApplication<Model> => {
93
94
  const errors: string[] = validate(props.model)(props.metadata, {
94
95
  top: true,
@@ -110,6 +111,11 @@ export namespace LlmApplicationProgrammer {
110
111
  });
111
112
  return {
112
113
  model: props.model,
114
+ options: {
115
+ ...LlmSchemaConverter.defaultConfig(props.model),
116
+ ...props.config,
117
+ separate: null,
118
+ },
113
119
  functions: application.functions.map((func) =>
114
120
  writeFunction({
115
121
  model: props.model,
@@ -117,10 +123,6 @@ export namespace LlmApplicationProgrammer {
117
123
  function: func,
118
124
  }),
119
125
  ),
120
- options: {
121
- ...LlmSchemaConverter.defaultConfig(props.model),
122
- separate: null,
123
- },
124
126
  };
125
127
  };
126
128
 
@@ -0,0 +1,127 @@
1
+ import { ILlmSchema } from "@samchon/openapi";
2
+ import { LlmSchemaConverter } from "@samchon/openapi/lib/converters/LlmSchemaConverter";
3
+ import ts from "typescript";
4
+
5
+ import { MetadataCollection } from "../../factories/MetadataCollection";
6
+ import { MetadataFactory } from "../../factories/MetadataFactory";
7
+
8
+ import { Metadata } from "../../schemas/metadata/Metadata";
9
+ import { MetadataObject } from "../../schemas/metadata/MetadataObject";
10
+
11
+ import { ITypiaContext } from "../../transformers/ITypiaContext";
12
+ import { TransformerError } from "../../transformers/TransformerError";
13
+
14
+ import { ValidationPipe } from "../../typings/ValidationPipe";
15
+
16
+ export namespace LlmModelPredicator {
17
+ export const getConfig = (props: {
18
+ context: ITypiaContext;
19
+ method: string;
20
+ model: ILlmSchema.Model;
21
+ node: ts.TypeNode | undefined;
22
+ }): Partial<ILlmSchema.ModelConfig[ILlmSchema.Model]> | undefined => {
23
+ if (props.node === undefined) return undefined;
24
+ const type: ts.Type = props.context.checker.getTypeFromTypeNode(props.node);
25
+ const collection: MetadataCollection = new MetadataCollection();
26
+ const result: ValidationPipe<Metadata, MetadataFactory.IError> =
27
+ MetadataFactory.analyze({
28
+ checker: props.context.checker,
29
+ transformer: props.context.transformer,
30
+ options: {
31
+ escape: false,
32
+ constant: true,
33
+ absorb: false,
34
+ functional: false,
35
+ },
36
+ collection,
37
+ type,
38
+ });
39
+ if (result.success === false)
40
+ throw new TransformerError({
41
+ code: `typia.llm.${props.method}`,
42
+ message: `Failed to analyze generic argument "Config".`,
43
+ });
44
+
45
+ const meta: Metadata = result.data;
46
+ if (
47
+ meta.size() !== 1 ||
48
+ meta.objects.length !== 1 ||
49
+ meta.nullable === true ||
50
+ meta.isRequired() === false
51
+ )
52
+ throw new TransformerError({
53
+ code: `typia.llm.${props.method}`,
54
+ message: `Invalid generic argument "Config". It must be a literal object type.`,
55
+ });
56
+
57
+ const obj: MetadataObject = meta.objects[0]!;
58
+ if (obj.type.properties.some((p) => p.key.isSoleLiteral() === false))
59
+ throw new TransformerError({
60
+ code: `typia.llm.${props.method}`,
61
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow dynamic properties.`,
62
+ });
63
+ else if (
64
+ obj.type.properties.some(
65
+ (p) =>
66
+ p.value.size() !== 1 ||
67
+ p.value.constants.length !== 1 ||
68
+ p.value.nullable === true ||
69
+ p.value.isRequired() === false,
70
+ )
71
+ )
72
+ throw new TransformerError({
73
+ code: `typia.llm.${props.method}`,
74
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow variable type.`,
75
+ });
76
+ const config: Partial<ILlmSchema.ModelConfig[ILlmSchema.Model]> = {};
77
+ for (const prop of obj.type.properties) {
78
+ const key: string = prop.key.getSoleLiteral()!;
79
+ const value: boolean | bigint | number | string =
80
+ prop.value.constants[0]!.values[0]!.value;
81
+ if (typeof value === "bigint")
82
+ throw new TransformerError({
83
+ code: `typia.llm.${props.method}`,
84
+ message: `Invalid generic argument "Config". It must be a literal object type. Do not allow bigint.`,
85
+ });
86
+ (config as any)[key] = value;
87
+ }
88
+ return config;
89
+ };
90
+
91
+ export const getModel = (props: {
92
+ checker: ts.TypeChecker;
93
+ method: string;
94
+ node: ts.TypeNode | undefined;
95
+ }): ILlmSchema.Model => {
96
+ if (props.node === undefined)
97
+ throw new TransformerError({
98
+ code: `typia.llm.${props.method}`,
99
+ message: `generic argument "Model" must be specified.`,
100
+ });
101
+
102
+ // CHECK LITERAL TYPE
103
+ const type: ts.Type = props.checker.getTypeFromTypeNode(props.node);
104
+ if (
105
+ !type.isLiteral() &&
106
+ (type.getFlags() & ts.TypeFlags.BooleanLiteral) === 0
107
+ )
108
+ throw new TransformerError({
109
+ code: `typia.llm.${props.method}`,
110
+ message: `generic argument "Model" must be constant.`,
111
+ });
112
+
113
+ // GET VALUE AND VALIDATE IT
114
+ const value = type.isLiteral()
115
+ ? type.value
116
+ : props.checker.typeToString(type);
117
+ if (
118
+ typeof value !== "string" ||
119
+ LlmSchemaConverter.defaultConfig(value as "3.0") === undefined
120
+ )
121
+ throw new TransformerError({
122
+ code: "typia.llm.schema",
123
+ message: `invalid value on generic argument "Model".`,
124
+ });
125
+ return value as ILlmSchema.Model;
126
+ };
127
+ }
@@ -13,6 +13,7 @@ export namespace LlmParametersProgrammer {
13
13
  export const write = <Model extends ILlmSchema.Model>(props: {
14
14
  model: Model;
15
15
  metadata: Metadata;
16
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
16
17
  }): ILlmSchema.ModelParameters[Model] => {
17
18
  const collection: IJsonSchemaCollection<"3.1"> =
18
19
  JsonSchemasProgrammer.write({
@@ -32,7 +33,10 @@ export namespace LlmParametersProgrammer {
32
33
 
33
34
  const parameters: ILlmSchema.ModelParameters[Model] | null =
34
35
  LlmSchemaConverter.parameters(props.model)({
35
- config: LlmSchemaConverter.defaultConfig(props.model) as any,
36
+ config: {
37
+ ...LlmSchemaConverter.defaultConfig(props.model),
38
+ ...props.config,
39
+ } as any,
36
40
  components: collection.components,
37
41
  schema,
38
42
  }) as ILlmSchema.ModelParameters[Model] | null;
@@ -22,6 +22,7 @@ export namespace LlmSchemaProgrammer {
22
22
  export const write = <Model extends ILlmSchema.Model>(props: {
23
23
  model: Model;
24
24
  metadata: Metadata;
25
+ config?: Partial<ILlmSchema.ModelConfig[Model]>;
25
26
  }): IOutput<Model> => {
26
27
  const collection: IJsonSchemaCollection<"3.1"> =
27
28
  JsonSchemasProgrammer.write({
@@ -32,7 +33,10 @@ export namespace LlmSchemaProgrammer {
32
33
  const $defs: Record<string, ILlmSchema.ModelSchema[Model]> = {};
33
34
  const schema: ILlmSchema.ModelSchema[Model] | null =
34
35
  LlmSchemaConverter.schema(props.model)({
35
- config: LlmSchemaConverter.defaultConfig(props.model) as any,
36
+ config: {
37
+ ...LlmSchemaConverter.defaultConfig(props.model),
38
+ ...props.config,
39
+ } as any,
36
40
  components: collection.components,
37
41
  schema: collection.schemas[0]!,
38
42
  $defs: $defs as any,
@@ -1,5 +1,4 @@
1
1
  import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
2
- import { LlmSchemaConverter } from "@samchon/openapi/lib/converters/LlmSchemaConverter";
3
2
  import ts from "typescript";
4
3
 
5
4
  import { ExpressionFactory } from "../../../factories/ExpressionFactory";
@@ -11,6 +10,7 @@ import { StatementFactory } from "../../../factories/StatementFactory";
11
10
  import { Metadata } from "../../../schemas/metadata/Metadata";
12
11
 
13
12
  import { LlmApplicationProgrammer } from "../../../programmers/llm/LlmApplicationProgrammer";
13
+ import { LlmModelPredicator } from "../../../programmers/llm/LlmModelPredicator";
14
14
 
15
15
  import { ValidationPipe } from "../../../typings/ValidationPipe";
16
16
 
@@ -29,18 +29,12 @@ export namespace LlmApplicationTransformer {
29
29
  const top: ts.Node = props.expression.typeArguments[0]!;
30
30
  if (ts.isTypeNode(top) === false) return props.expression;
31
31
 
32
- // GET MODEL
33
- const model: ILlmSchema.Model = getTemplateArgument<ILlmSchema.Model>({
34
- checker: props.context.checker,
35
- name: "Model",
36
- is: (value) =>
37
- LlmSchemaConverter.defaultConfig(value as ILlmSchema.Model) !==
38
- undefined,
39
- cast: (value) => value as ILlmSchema.Model,
40
- default: () => "3.1",
41
- })(props.expression.typeArguments[1]);
42
-
43
32
  // GET TYPE
33
+ const model: ILlmSchema.Model = LlmModelPredicator.getModel({
34
+ checker: props.context.checker,
35
+ method: "application",
36
+ node: props.expression.typeArguments[1],
37
+ });
44
38
  const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
45
39
  const collection: MetadataCollection = new MetadataCollection({
46
40
  replace: MetadataCollection.replace,
@@ -70,6 +64,12 @@ export namespace LlmApplicationTransformer {
70
64
  LlmApplicationProgrammer.write({
71
65
  model,
72
66
  metadata: result.data,
67
+ config: LlmModelPredicator.getConfig({
68
+ context: props.context,
69
+ method: "application",
70
+ model,
71
+ node: props.expression.typeArguments[2],
72
+ }),
73
73
  });
74
74
  const literal: ts.Expression = ts.factory.createAsExpression(
75
75
  LiteralFactory.write(schema),
@@ -114,38 +114,4 @@ export namespace LlmApplicationTransformer {
114
114
  ),
115
115
  );
116
116
  };
117
-
118
- const getTemplateArgument =
119
- <Value>(props: {
120
- checker: ts.TypeChecker;
121
- name: string;
122
- is: (value: string) => boolean;
123
- cast: (value: string) => Value;
124
- default: () => Value;
125
- }) =>
126
- (node: ts.TypeNode | undefined): Value => {
127
- if (!node) return props.default();
128
-
129
- // CHECK LITERAL TYPE
130
- const type: ts.Type = props.checker.getTypeFromTypeNode(node);
131
- if (
132
- !type.isLiteral() &&
133
- (type.getFlags() & ts.TypeFlags.BooleanLiteral) === 0
134
- )
135
- throw new TransformerError({
136
- code: "typia.llm.application",
137
- message: `generic argument "${props.name}" must be constant.`,
138
- });
139
-
140
- // GET VALUE AND VALIDATE IT
141
- const value = type.isLiteral()
142
- ? type.value
143
- : props.checker.typeToString(type);
144
- if (typeof value !== "string" || props.is(value) === false)
145
- throw new TransformerError({
146
- code: "typia.llm.application",
147
- message: `invalid value on generic argument "${props.name}".`,
148
- });
149
- return props.cast(value);
150
- };
151
117
  }
@@ -1,5 +1,4 @@
1
1
  import { ILlmSchema } from "@samchon/openapi";
2
- import { LlmSchemaConverter } from "@samchon/openapi/lib/converters/LlmSchemaConverter";
3
2
  import { ILlmFunction } from "@samchon/openapi/lib/structures/ILlmFunction";
4
3
  import ts from "typescript";
5
4
 
@@ -9,6 +8,7 @@ import { MetadataFactory } from "../../../factories/MetadataFactory";
9
8
 
10
9
  import { Metadata } from "../../../schemas/metadata/Metadata";
11
10
 
11
+ import { LlmModelPredicator } from "../../../programmers/llm/LlmModelPredicator";
12
12
  import { LlmParametersProgrammer } from "../../../programmers/llm/LlmParametersProgrammer";
13
13
  import { LlmSchemaProgrammer } from "../../../programmers/llm/LlmSchemaProgrammer";
14
14
 
@@ -31,18 +31,12 @@ export namespace LlmParametersTransformer {
31
31
  const top: ts.Node = props.expression.typeArguments[0]!;
32
32
  if (ts.isTypeNode(top) === false) return props.expression;
33
33
 
34
- // GET MODEL
35
- const model: ILlmSchema.Model = getTemplateArgument<ILlmSchema.Model>({
36
- checker: props.context.checker,
37
- name: "Model",
38
- is: (value) =>
39
- LlmSchemaConverter.defaultConfig(value as ILlmSchema.Model) !==
40
- undefined,
41
- cast: (value) => value as ILlmSchema.Model,
42
- default: () => "3.1",
43
- })(props.expression.typeArguments[1]);
44
-
45
34
  // GET TYPE
35
+ const model: ILlmSchema.Model = LlmModelPredicator.getModel({
36
+ checker: props.context.checker,
37
+ method: "parameters",
38
+ node: props.expression.typeArguments[1],
39
+ });
46
40
  const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
47
41
  const collection: MetadataCollection = new MetadataCollection({
48
42
  replace: MetadataCollection.replace,
@@ -70,6 +64,12 @@ export namespace LlmParametersTransformer {
70
64
  const out: ILlmFunction<any>["parameters"] = LlmParametersProgrammer.write({
71
65
  model,
72
66
  metadata: result.data,
67
+ config: LlmModelPredicator.getConfig({
68
+ context: props.context,
69
+ method: "parameters",
70
+ model,
71
+ node: props.expression.typeArguments[2],
72
+ }),
73
73
  });
74
74
  return ts.factory.createAsExpression(
75
75
  LiteralFactory.write(out),
@@ -88,38 +88,4 @@ export namespace LlmParametersTransformer {
88
88
  ),
89
89
  );
90
90
  };
91
-
92
- const getTemplateArgument =
93
- <Value>(props: {
94
- checker: ts.TypeChecker;
95
- name: string;
96
- is: (value: string) => boolean;
97
- cast: (value: string) => Value;
98
- default: () => Value;
99
- }) =>
100
- (node: ts.TypeNode | undefined): Value => {
101
- if (!node) return props.default();
102
-
103
- // CHECK LITERAL TYPE
104
- const type: ts.Type = props.checker.getTypeFromTypeNode(node);
105
- if (
106
- !type.isLiteral() &&
107
- (type.getFlags() & ts.TypeFlags.BooleanLiteral) === 0
108
- )
109
- throw new TransformerError({
110
- code: "typia.llm.parameters",
111
- message: `generic argument "${props.name}" must be constant.`,
112
- });
113
-
114
- // GET VALUE AND VALIDATE IT
115
- const value = type.isLiteral()
116
- ? type.value
117
- : props.checker.typeToString(type);
118
- if (typeof value !== "string" || props.is(value) === false)
119
- throw new TransformerError({
120
- code: "typia.llm.parameters",
121
- message: `invalid value on generic argument "${props.name}".`,
122
- });
123
- return props.cast(value);
124
- };
125
91
  }
@@ -1,5 +1,4 @@
1
1
  import { ILlmSchema } from "@samchon/openapi";
2
- import { LlmSchemaConverter } from "@samchon/openapi/lib/converters/LlmSchemaConverter";
3
2
  import ts from "typescript";
4
3
 
5
4
  import { IdentifierFactory } from "../../../factories/IdentifierFactory";
@@ -9,6 +8,7 @@ import { MetadataFactory } from "../../../factories/MetadataFactory";
9
8
 
10
9
  import { Metadata } from "../../../schemas/metadata/Metadata";
11
10
 
11
+ import { LlmModelPredicator } from "../../../programmers/llm/LlmModelPredicator";
12
12
  import { LlmSchemaProgrammer } from "../../../programmers/llm/LlmSchemaProgrammer";
13
13
 
14
14
  import { ValidationPipe } from "../../../typings/ValidationPipe";
@@ -30,18 +30,12 @@ export namespace LlmSchemaTransformer {
30
30
  const top: ts.Node = props.expression.typeArguments[0]!;
31
31
  if (ts.isTypeNode(top) === false) return props.expression;
32
32
 
33
- // GET MODEL
34
- const model: ILlmSchema.Model = getTemplateArgument<ILlmSchema.Model>({
35
- checker: props.context.checker,
36
- name: "Model",
37
- is: (value) =>
38
- LlmSchemaConverter.defaultConfig(value as ILlmSchema.Model) !==
39
- undefined,
40
- cast: (value) => value as ILlmSchema.Model,
41
- default: () => "3.1",
42
- })(props.expression.typeArguments[1]);
43
-
44
33
  // GET TYPE
34
+ const model: ILlmSchema.Model = LlmModelPredicator.getModel({
35
+ checker: props.context.checker,
36
+ method: "schema",
37
+ node: props.expression.typeArguments[1],
38
+ });
45
39
  const type: ts.Type = props.context.checker.getTypeFromTypeNode(top);
46
40
  const collection: MetadataCollection = new MetadataCollection({
47
41
  replace: MetadataCollection.replace,
@@ -69,6 +63,12 @@ export namespace LlmSchemaTransformer {
69
63
  const out: LlmSchemaProgrammer.IOutput<any> = LlmSchemaProgrammer.write({
70
64
  model,
71
65
  metadata: result.data,
66
+ config: LlmModelPredicator.getConfig({
67
+ context: props.context,
68
+ method: "schema",
69
+ model,
70
+ node: props.expression.typeArguments[2],
71
+ }),
72
72
  });
73
73
  const schemaTypeNode = ts.factory.createTypeReferenceNode(
74
74
  props.context.importer.instance({
@@ -129,38 +129,4 @@ export namespace LlmSchemaTransformer {
129
129
  [props.expression.arguments[0]!],
130
130
  );
131
131
  };
132
-
133
- const getTemplateArgument =
134
- <Value>(props: {
135
- checker: ts.TypeChecker;
136
- name: string;
137
- is: (value: string) => boolean;
138
- cast: (value: string) => Value;
139
- default: () => Value;
140
- }) =>
141
- (node: ts.TypeNode | undefined): Value => {
142
- if (!node) return props.default();
143
-
144
- // CHECK LITERAL TYPE
145
- const type: ts.Type = props.checker.getTypeFromTypeNode(node);
146
- if (
147
- !type.isLiteral() &&
148
- (type.getFlags() & ts.TypeFlags.BooleanLiteral) === 0
149
- )
150
- throw new TransformerError({
151
- code: "typia.llm.schema",
152
- message: `generic argument "${props.name}" must be constant.`,
153
- });
154
-
155
- // GET VALUE AND VALIDATE IT
156
- const value = type.isLiteral()
157
- ? type.value
158
- : props.checker.typeToString(type);
159
- if (typeof value !== "string" || props.is(value) === false)
160
- throw new TransformerError({
161
- code: "typia.llm.schema",
162
- message: `invalid value on generic argument "${props.name}".`,
163
- });
164
- return props.cast(value);
165
- };
166
132
  }