@nx-ddd/common 17.9.0 → 17.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ import 'reflect-metadata';
1
2
  import { Dayjs } from 'dayjs';
2
3
  export type Type<E> = {
3
4
  new (): E;
package/domain/models.js CHANGED
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TransformToDayjs = exports.Entity = exports.getModelName = exports.getProps = exports.getDomainProps = exports.getAnnotations = exports.getLangMap = exports.Domain = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ require("reflect-metadata");
5
6
  const to_object_1 = require("../utilities/to-object");
6
7
  const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
7
8
  const flat_1 = require("flat");
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../../packages/@nx-ddd/common/src/domain/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../../packages/@nx-ddd/common/src/domain/models.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx-ddd/common",
3
- "version": "17.9.0",
3
+ "version": "17.11.0",
4
4
  "main": "./src/index.js",
5
5
  "types": "./index.d.ts",
6
6
  "homepage": "https://github.com/xx-machina/plaform/tree/main/packages/@nx-ddd/common",
@@ -1,69 +0,0 @@
1
- import { OpenAiServiceImpl } from '../openai/open-ai.service.impl';
2
- import { ChatCompletionMessageParam, FunctionParameters } from "openai/resources";
3
- import { FunctionTool } from "openai/resources/beta/assistants";
4
- import { ChatCompletionCreateParamsBase } from "openai/resources/chat/completions";
5
- export declare function addTool(obj: object, tool: object): object;
6
- export declare function getTools(obj: object): any[];
7
- export declare function buildToolFromSchema(name: string, description: string, schema: Function): FunctionTool;
8
- export declare function AiFunction(params?: {
9
- description?: string;
10
- }): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
11
- export interface AiSystemConfig {
12
- model?: ChatCompletionCreateParamsBase['model'];
13
- instructions?: string;
14
- shots?: {
15
- input: string;
16
- output: string;
17
- }[];
18
- }
19
- export declare function setAiSystemConfig(obj: object, config: AiSystemConfig): object;
20
- export declare function getAiSystemConfig(obj: object): AiSystemConfig;
21
- export declare function AiSystem({ model, instructions, shots, }: AiSystemConfig): (target: any) => any;
22
- export declare class AiToolsAgent {
23
- protected openai: OpenAiServiceImpl;
24
- constructor(openai: OpenAiServiceImpl);
25
- messages: ChatCompletionMessageParam[];
26
- results: any[];
27
- get tools(): any[];
28
- get config(): AiSystemConfig;
29
- completion(tools?: any[]): Promise<void>;
30
- execute<T = any>(message: string, options?: {
31
- tools?: any[];
32
- }): Promise<T>;
33
- }
34
- export interface CallOptions<I, O, S extends {
35
- input: I;
36
- output: O;
37
- } = {
38
- input: I;
39
- output: O;
40
- }> {
41
- instructions?: string;
42
- model?: string;
43
- specs?: S[];
44
- embeddings?: false | ((spec: S) => string);
45
- sample?: number;
46
- temperature?: number;
47
- maxRetry?: number;
48
- }
49
- export declare class AnyFunction {
50
- private openai;
51
- constructor(openai: OpenAiServiceImpl);
52
- jsonSchema(_input: any, jsonSchema: FunctionParameters, { instructions, model, specs, embeddings, sample, temperature, maxRetry, }?: CallOptions<any, any>): Promise<any>;
53
- call<I, O>(_input: I, args: {
54
- new (): O;
55
- }, { instructions, model, specs, embeddings, sample, temperature, maxRetry, }?: CallOptions<I, O>): Promise<O>;
56
- protected complete<I, O>(_input: any, jsonSchema: FunctionParameters, messages: ChatCompletionMessageParam[], { model, temperature, }?: CallOptions<I, O> & {
57
- functionOutput?: object;
58
- }): Promise<import("openai/resources").ChatCompletionMessage>;
59
- protected buildChatMessages(specs: {
60
- input: any;
61
- output: any;
62
- }[]): {
63
- role: 'assistant' | 'user';
64
- content: string;
65
- }[];
66
- sort<T>(items: T[], accessor: (item: T) => string, target: string): Promise<T[]>;
67
- private parseInput;
68
- }
69
- export declare function injectAnyFunction(): AnyFunction;
@@ -1,279 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectAnyFunction = exports.AnyFunction = exports.AiToolsAgent = exports.AiSystem = exports.getAiSystemConfig = exports.setAiSystemConfig = exports.AiFunction = exports.buildToolFromSchema = exports.getTools = exports.addTool = void 0;
4
- const tslib_1 = require("tslib");
5
- const openai_1 = require("../openai");
6
- const json_schema_1 = require("./json-schema");
7
- const rxjs_1 = require("rxjs");
8
- const json_schema_library_1 = require("json-schema-library");
9
- const AI_TOOLS = '[ai-tools]';
10
- const AI_SYSTEM = '[ai-system]';
11
- function addTool(obj, tool) {
12
- var _a;
13
- obj[AI_TOOLS] = (_a = obj[AI_TOOLS]) !== null && _a !== void 0 ? _a : [];
14
- obj[AI_TOOLS].push(tool);
15
- return obj;
16
- }
17
- exports.addTool = addTool;
18
- function getTools(obj) {
19
- var _a;
20
- return (_a = obj[AI_TOOLS]) !== null && _a !== void 0 ? _a : [];
21
- }
22
- exports.getTools = getTools;
23
- function buildFunctionTool(params) {
24
- return {
25
- type: 'function',
26
- function: {
27
- name: params.name,
28
- description: params.description,
29
- parameters: params.parameters,
30
- },
31
- };
32
- }
33
- function buildToolFromSchema(name, description, schema) {
34
- const parameters = (0, json_schema_1.targetConstructorToSchema)(schema);
35
- return buildFunctionTool({ name, description, parameters });
36
- }
37
- exports.buildToolFromSchema = buildToolFromSchema;
38
- function AiFunction(params) {
39
- return function (target, propertyKey, descriptor) {
40
- var _a;
41
- // 引数の型を取得
42
- const args = Reflect.getMetadata('design:paramtypes', target, propertyKey);
43
- const tool = buildToolFromSchema(propertyKey, (_a = params === null || params === void 0 ? void 0 : params.description) !== null && _a !== void 0 ? _a : '', args[0]);
44
- addTool(target, tool);
45
- return descriptor;
46
- };
47
- }
48
- exports.AiFunction = AiFunction;
49
- function setAiSystemConfig(obj, config) {
50
- obj[AI_SYSTEM] = config;
51
- return obj;
52
- }
53
- exports.setAiSystemConfig = setAiSystemConfig;
54
- function getAiSystemConfig(obj) {
55
- return obj[AI_SYSTEM];
56
- }
57
- exports.getAiSystemConfig = getAiSystemConfig;
58
- function AiSystem({ model = 'gpt-4-1106-preview', instructions = ``, shots = [], }) {
59
- return function (target) {
60
- setAiSystemConfig(target, { model, instructions, shots });
61
- return target;
62
- };
63
- }
64
- exports.AiSystem = AiSystem;
65
- class AiToolsAgent {
66
- constructor(openai) {
67
- this.openai = openai;
68
- this.messages = [
69
- { role: 'system', content: '' },
70
- ];
71
- this.results = [];
72
- }
73
- get tools() {
74
- return getTools(this.constructor);
75
- }
76
- get config() {
77
- return getAiSystemConfig(this.constructor);
78
- }
79
- completion(tools = this.tools) {
80
- var _a, _b, _c, _d, _e;
81
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
82
- const message = yield this.openai.chat.completions.create({
83
- model: this.config.model,
84
- messages: this.messages,
85
- tools,
86
- });
87
- for (const call of (_d = (_c = (_b = (_a = message.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.tool_calls) !== null && _d !== void 0 ? _d : []) {
88
- if (call.type === 'function') {
89
- const result = (_e = this[call.function.name]) === null || _e === void 0 ? void 0 : _e.call(this, JSON.parse(call.function.arguments));
90
- this.results.push(result);
91
- }
92
- }
93
- });
94
- }
95
- execute(message, options = {}) {
96
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
97
- this.messages.push({ role: 'user', content: message });
98
- yield this.completion(options.tools);
99
- return this.results.at(-1);
100
- });
101
- }
102
- }
103
- exports.AiToolsAgent = AiToolsAgent;
104
- const PRICE_TABLE = {
105
- 'gpt-3.5-turbo-0125': {
106
- input: 0.5 / 1000000,
107
- output: 1.5 / 1000000,
108
- },
109
- 'gpt-4o': {
110
- input: 5 / 1000000,
111
- output: 15 / 1000000,
112
- }
113
- };
114
- function debugPrice(model, usage) {
115
- // 価格を計算
116
- const price = PRICE_TABLE[model];
117
- const inputPrice = usage.prompt_tokens * price.input;
118
- const outputPrice = usage.completion_tokens * price.output;
119
- // k桁で丸める
120
- const round = (num, k) => Math.round(num * Math.pow(10, k)) / Math.pow(10, k);
121
- console.table([
122
- {
123
- name: 'input',
124
- 'price(us)': `$${round(inputPrice, 4)}`,
125
- 'price(jp)': `¥${round(inputPrice * 150, 4)}`,
126
- token: usage.prompt_tokens
127
- },
128
- {
129
- name: 'output',
130
- 'price(us)': `$${round(outputPrice, 4)}`,
131
- 'price(jp)': `¥${round(outputPrice * 150, 4)}`,
132
- token: usage.completion_tokens,
133
- },
134
- {
135
- name: 'total',
136
- 'price(us)': `$${round((inputPrice + outputPrice), 4)}`,
137
- 'price(jp)': `¥${round((inputPrice + outputPrice) * 150, 4)}`,
138
- token: usage.total_tokens,
139
- },
140
- ]);
141
- }
142
- class AnyFunction {
143
- constructor(openai) {
144
- this.openai = openai;
145
- }
146
- jsonSchema(_input, jsonSchema, { instructions = '', model = 'gpt-4o', specs = [], embeddings = false, sample = 3, temperature = 0, maxRetry = 3, } = {}) {
147
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
148
- const validator = new json_schema_library_1.Draft07(jsonSchema);
149
- for (const spec of specs) {
150
- const errors = validator.validate(spec.output);
151
- if (errors.length > 0) {
152
- throw new Error(JSON.stringify(errors, null, 2));
153
- }
154
- }
155
- const sortedSpecs = embeddings ? yield this.sort(specs, embeddings, _input) : specs;
156
- const messages = [
157
- { role: 'system', content: instructions },
158
- ...(this.buildChatMessages(sortedSpecs.slice(0, sample).reverse())),
159
- { role: 'user', content: this.parseInput(_input) },
160
- ];
161
- return (0, rxjs_1.lastValueFrom)((0, rxjs_1.of)(null).pipe((0, rxjs_1.map)(() => messages), (0, rxjs_1.switchMap)(() => this.complete(_input, jsonSchema, messages, {
162
- model,
163
- sample,
164
- temperature,
165
- })), (0, rxjs_1.tap)(message => messages.push(message)), (0, rxjs_1.map)((message) => {
166
- const output = JSON.parse(message.tool_calls[0].function.arguments);
167
- const errors = new json_schema_library_1.Draft07(jsonSchema).validate(output);
168
- if (errors.length > 0) {
169
- messages.push({
170
- role: 'tool',
171
- content: JSON.stringify(errors),
172
- tool_call_id: message.tool_calls[0].id,
173
- });
174
- console.debug('messages', JSON.stringify(messages, null, 2));
175
- throw new Error(JSON.stringify(errors, null, 2));
176
- }
177
- else {
178
- messages.push({
179
- role: 'tool',
180
- content: JSON.stringify(output),
181
- tool_call_id: message.tool_calls[0].id,
182
- });
183
- console.debug('messages', JSON.stringify(messages, null, 2));
184
- }
185
- return output;
186
- }), (0, rxjs_1.catchError)((error) => {
187
- console.error(error);
188
- throw error;
189
- }), (0, rxjs_1.retry)(maxRetry)));
190
- // debugPrice(model, res.usage);
191
- });
192
- }
193
- call(_input, args, { instructions = '', model = 'gpt-4o', specs = [], embeddings = false, sample = 3, temperature = 0, maxRetry = 3, } = {}) {
194
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
195
- return this.jsonSchema(_input, (0, json_schema_1.targetConstructorToSchema)(args), {
196
- instructions,
197
- model,
198
- specs,
199
- embeddings,
200
- sample,
201
- temperature,
202
- maxRetry,
203
- });
204
- });
205
- }
206
- complete(_input, jsonSchema, messages, { model = 'gpt-4o', temperature = 0, } = {}) {
207
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
208
- const tool = buildFunctionTool({ name: 'function', description: '', parameters: jsonSchema });
209
- const res = yield this.openai.chat.completions.create({
210
- model,
211
- messages,
212
- tools: [tool],
213
- tool_choice: {
214
- type: 'function',
215
- function: { name: 'function' }
216
- },
217
- temperature,
218
- });
219
- return res.choices[0].message;
220
- });
221
- }
222
- buildChatMessages(specs) {
223
- return specs.map(({ input, output }) => {
224
- return [
225
- { role: 'user', content: this.parseInput(input) },
226
- {
227
- role: 'assistant',
228
- content: null,
229
- tool_calls: [
230
- {
231
- id: 'call-example',
232
- type: 'function',
233
- function: {
234
- name: 'function',
235
- arguments: JSON.stringify(output),
236
- }
237
- }
238
- ],
239
- },
240
- { role: 'tool', content: 'success', tool_call_id: 'call-example' },
241
- ];
242
- }).flat();
243
- }
244
- sort(items, accessor, target) {
245
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
246
- const getEmbeddings = (item) => {
247
- return this.openai.embeddings.create({
248
- model: 'text-embedding-3-small',
249
- input: accessor(item),
250
- }).then(res => res.data[0].embedding);
251
- };
252
- const dist = (a, b) => Math.sqrt(a.reduce((acc, v, i) => acc + Math.pow((v - b[i]), 2), 0));
253
- const targetEmbeddings = yield this.openai.embeddings.create({
254
- model: 'text-embedding-3-small',
255
- input: target,
256
- }).then(res => res.data[0].embedding);
257
- const embeddings = yield Promise.all(items.map(getEmbeddings));
258
- const items_ = items.map((item, i) => ({
259
- item,
260
- embedding: embeddings[i],
261
- distance: dist(embeddings[i], targetEmbeddings),
262
- }));
263
- const sorted = items_.sort((a, b) => a.distance - b.distance);
264
- // console.debug('target:', target);
265
- // console.debug('sorted:', sorted.map(({item, distance}) => `${distance}: ${accessor(item)}`));
266
- return sorted.map(({ item }) => item);
267
- });
268
- }
269
- parseInput(input) {
270
- return typeof input === 'string' ? input : JSON.stringify(input);
271
- }
272
- }
273
- exports.AnyFunction = AnyFunction;
274
- function injectAnyFunction() {
275
- const openai = (0, openai_1.injectOpenAiService)();
276
- return new AnyFunction(openai);
277
- }
278
- exports.injectAnyFunction = injectAnyFunction;
279
- //# sourceMappingURL=agent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../../../../../packages/@nx-ddd/common/src/infrastructure/externals/agent/agent.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './agent';
2
- export * from './json-schema';
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./agent"), exports);
5
- tslib_1.__exportStar(require("./json-schema"), exports);
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/@nx-ddd/common/src/infrastructure/externals/agent/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,wDAA8B"}
@@ -1,2 +0,0 @@
1
- import { IOptions } from "class-validator-jsonschema/build/options";
2
- export declare function targetConstructorToSchema(target: Function, options?: Partial<IOptions>): import("openapi3-ts").SchemaObject;
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.targetConstructorToSchema = void 0;
4
- const class_validator_1 = require("class-validator");
5
- const class_validator_jsonschema_1 = require("class-validator-jsonschema");
6
- const { defaultMetadataStorage } = require('class-transformer/cjs/storage');
7
- function getPropType(target, property) {
8
- return Reflect.getMetadata('design:type', target, property);
9
- }
10
- function targetToSchema(type, options) {
11
- if (typeof type === 'function') {
12
- if (type.prototype === String.prototype ||
13
- type.prototype === Symbol.prototype) {
14
- return { type: 'string' };
15
- }
16
- else if (type.prototype === Number.prototype) {
17
- return { type: 'number' };
18
- }
19
- else if (type.prototype === Boolean.prototype) {
20
- return { type: 'boolean' };
21
- }
22
- return targetConstructorToSchema(type, options);
23
- }
24
- }
25
- const additionalConverters = {
26
- [class_validator_1.ValidationTypes.NESTED_VALIDATION]: (meta, options) => {
27
- if (typeof meta.target === 'function') {
28
- const typeMeta = options.classTransformerMetadataStorage
29
- ? options.classTransformerMetadataStorage.findTypeMetadata(meta.target, meta.propertyName)
30
- : null;
31
- const childType = typeMeta
32
- ? typeMeta.typeFunction()
33
- : getPropType(meta.target.prototype, meta.propertyName);
34
- return targetToSchema(childType, options);
35
- }
36
- },
37
- };
38
- function targetConstructorToSchema(target, options = {}) {
39
- return (0, class_validator_jsonschema_1.targetConstructorToSchema)(target, Object.assign(Object.assign({}, options), { additionalConverters, classTransformerMetadataStorage: defaultMetadataStorage }));
40
- }
41
- exports.targetConstructorToSchema = targetConstructorToSchema;
42
- //# sourceMappingURL=json-schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../../../../../../packages/@nx-ddd/common/src/infrastructure/externals/agent/json-schema.ts"],"names":[],"mappings":";;;AAAA,qDAAiD;AACjD,2EAAoG;AAGpG,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAE5E,SAAS,WAAW,CAAC,MAAc,EAAE,QAAgB;IACnD,OAAO,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;AAC7D,CAAC;AAED,SAAS,cAAc,CACrB,IAAS,EACT,OAAY;IAEZ,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;QAC9B,IACE,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;YACnC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EACnC;YACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;SAC1B;aAAM,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EAAE;YAC9C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;SAC1B;aAAM,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,EAAE;YAC/C,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;SAC3B;QAED,OAAO,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KAChD;AACH,CAAC;AAED,MAAM,oBAAoB,GAAE;IAC1B,CAAC,iCAAe,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;QACrD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,+BAA+B;gBACtD,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,gBAAgB,CACtD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,YAAY,CAClB;gBACH,CAAC,CAAC,IAAI,CAAA;YACR,MAAM,SAAS,GAAG,QAAQ;gBACxB,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE;gBACzB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;YACzD,OAAO,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;SAC1C;IACH,CAAC;CACF,CAAC;AAEF,SAAgB,yBAAyB,CAAC,MAAgB,EAAE,UAA6B,EAAE;IACzF,OAAO,IAAA,sDAA0B,EAAC,MAAM,kCACnC,OAAO,KACV,oBAAoB,EACpB,+BAA+B,EAAE,sBAAsB,IACvD,CAAC;AACL,CAAC;AAND,8DAMC"}