@futdevpro/nts-dynamo 1.15.3 → 1.15.6
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/.cursor/rules/__main.mdc +3 -1
- package/.cursor/rules/default-command.mdc +324 -88
- package/_specifications/BACKLOG.md +15 -0
- package/_specifications/TODO.md +15 -0
- package/build/_modules/ai/_models/ai-test-generation-result.interface.d.ts +17 -0
- package/build/_modules/ai/_models/ai-test-generation-result.interface.d.ts.map +1 -0
- package/build/_modules/ai/_models/ai-test-generation-result.interface.js +3 -0
- package/build/_modules/ai/_models/ai-test-generation-result.interface.js.map +1 -0
- package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.d.ts +36 -0
- package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.d.ts.map +1 -0
- package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.js +118 -0
- package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.js.map +1 -0
- package/build/_modules/ai/_modules/anthropic/index.d.ts +3 -0
- package/build/_modules/ai/_modules/anthropic/index.d.ts.map +1 -0
- package/build/_modules/ai/_modules/anthropic/index.js +8 -0
- package/build/_modules/ai/_modules/anthropic/index.js.map +1 -0
- package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.d.ts +35 -0
- package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.d.ts.map +1 -0
- package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.js +129 -0
- package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.js.map +1 -0
- package/build/_modules/ai/_modules/fdp-ai/index.d.ts +3 -0
- package/build/_modules/ai/_modules/fdp-ai/index.d.ts.map +1 -0
- package/build/_modules/ai/_modules/fdp-ai/index.js +8 -0
- package/build/_modules/ai/_modules/fdp-ai/index.js.map +1 -0
- package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.d.ts +40 -0
- package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.d.ts.map +1 -0
- package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.js +111 -0
- package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.js.map +1 -0
- package/build/_modules/ai/_modules/open-ai/index.d.ts +1 -0
- package/build/_modules/ai/_modules/open-ai/index.d.ts.map +1 -1
- package/build/_modules/ai/_modules/open-ai/index.js +1 -0
- package/build/_modules/ai/_modules/open-ai/index.js.map +1 -1
- package/build/_modules/ai/_services/ai-user-key.service-base.d.ts +45 -0
- package/build/_modules/ai/_services/ai-user-key.service-base.d.ts.map +1 -0
- package/build/_modules/ai/_services/ai-user-key.service-base.js +15 -0
- package/build/_modules/ai/_services/ai-user-key.service-base.js.map +1 -0
- package/build/_modules/ai/index.d.ts +2 -0
- package/build/_modules/ai/index.d.ts.map +1 -1
- package/build/_modules/ai/index.js +2 -0
- package/build/_modules/ai/index.js.map +1 -1
- package/build/_modules/socket/_services/socket-client.service.d.ts.map +1 -1
- package/build/_modules/socket/_services/socket-client.service.js +2 -1
- package/build/_modules/socket/_services/socket-client.service.js.map +1 -1
- package/build/_modules/socket/app-extended.server.js +1 -1
- package/build/_modules/socket/app-extended.server.js.map +1 -1
- package/build/_services/base/data.service.d.ts +1 -1
- package/build/_services/base/data.service.js +1 -1
- package/build/_services/base/db.service.d.ts +1 -1
- package/build/_services/base/db.service.js +1 -1
- package/build/_services/core/auth.service.d.ts +2 -2
- package/build/_services/core/auth.service.js +1 -1
- package/build/_services/core/email.service.js +1 -1
- package/build/_services/core/email.service.js.map +1 -1
- package/build/_services/core/global.service.d.ts +1 -1
- package/build/_services/core/global.service.js +2 -2
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +11 -1
- package/build/_services/server/app.server.js.map +1 -1
- package/package.json +17 -4
- package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +16 -0
- package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +138 -0
- package/src/_modules/ai/_modules/anthropic/index.ts +5 -0
- package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +189 -0
- package/src/_modules/ai/_modules/fdp-ai/index.ts +5 -0
- package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +157 -0
- package/src/_modules/ai/_modules/open-ai/index.ts +1 -0
- package/src/_modules/ai/_services/ai-user-key.service-base.ts +59 -0
- package/src/_modules/ai/index.ts +2 -0
- package/src/_modules/socket/_services/socket-client.service.ts +2 -1
- package/src/_modules/socket/app-extended.server.ts +1 -1
- package/src/_services/base/data.service.ts +1 -1
- package/src/_services/base/db.service.ts +1 -1
- package/src/_services/core/auth.service.ts +2 -2
- package/src/_services/core/email.service.ts +1 -1
- package/src/_services/core/global.service.ts +2 -2
- package/src/_services/route/controller.service.ts +1 -1
- package/src/_services/server/app.server.ts +17 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { DyFM_AI_Provider, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
|
|
2
|
+
import { DyFM_AI_UserProviderConfig } from '@futdevpro/fsm-dynamo/ai';
|
|
3
|
+
import { DyNTS_AI_UserKey_ServiceBase } from '../../../_services/ai-user-key.service-base';
|
|
4
|
+
import { DyNTS_AI_TestGeneration_Result } from '../../../_models/ai-test-generation-result.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Anthropic-specifikus user API key kezelo service
|
|
7
|
+
*
|
|
8
|
+
* A visszafejtett API kulcsbol Anthropic-specifikus konfigot allit ossze,
|
|
9
|
+
* es teszteli a kapcsolatot az Anthropic API-val.
|
|
10
|
+
*/
|
|
11
|
+
export declare class DyNTS_AAI_UserKey_ControlService extends DyNTS_AI_UserKey_ServiceBase {
|
|
12
|
+
static getInstance(): DyNTS_AAI_UserKey_ControlService;
|
|
13
|
+
readonly aiProvider: DyFM_AI_Provider;
|
|
14
|
+
/**
|
|
15
|
+
* Anthropic config osszeallitasa a visszafejtett kulcsbol
|
|
16
|
+
*/
|
|
17
|
+
resolveConfig(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): DyFM_AI_Config;
|
|
18
|
+
/**
|
|
19
|
+
* Anthropic kapcsolat tesztelese egy minimal messages.create() hivassal
|
|
20
|
+
*/
|
|
21
|
+
testConnection(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Elerheto Anthropic modellek lekerdezese
|
|
24
|
+
* Az Anthropic API nem ad model list endpoint-ot, ezert a DyFM_AAI_Model enum-bol szolgalja ki
|
|
25
|
+
*/
|
|
26
|
+
listAvailableModels(_userProviderConfig: DyFM_AI_UserProviderConfig, _decryptedApiKey: string): Promise<string[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Teszt generalas az Anthropic API-val
|
|
29
|
+
*/
|
|
30
|
+
testGeneration(set: {
|
|
31
|
+
userProviderConfig: DyFM_AI_UserProviderConfig;
|
|
32
|
+
decryptedApiKey: string;
|
|
33
|
+
model: string;
|
|
34
|
+
}): Promise<DyNTS_AI_TestGeneration_Result>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=aai-user-key.control-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aai-user-key.control-service.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAItE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,sDAAsD,CAAC;AAEtG;;;;;GAKG;AACH,qBAAa,gCAAiC,SAAQ,4BAA4B;IAEhF,MAAM,CAAC,WAAW,IAAI,gCAAgC;IAItD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAA8B;IAEnE;;OAEG;IACH,aAAa,CACX,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,cAAc;IAUjB;;OAEG;IACG,cAAc,CAClB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;IA6BnB;;;OAGG;IACG,mBAAmB,CACvB,mBAAmB,EAAE,0BAA0B,EAC/C,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,EAAE,CAAC;IAIpB;;OAEG;IACG,cAAc,CAAC,GAAG,EAAE;QACxB,kBAAkB,EAAE,0BAA0B,CAAC;QAC/C,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,8BAA8B,CAAC;CA8C5C"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.DyNTS_AAI_UserKey_ControlService = void 0;
|
|
27
|
+
const ai_1 = require("@futdevpro/fsm-dynamo/ai");
|
|
28
|
+
const anthropic_1 = require("@futdevpro/fsm-dynamo/ai/anthropic");
|
|
29
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
30
|
+
const ai_user_key_service_base_1 = require("../../../_services/ai-user-key.service-base");
|
|
31
|
+
/**
|
|
32
|
+
* Anthropic-specifikus user API key kezelo service
|
|
33
|
+
*
|
|
34
|
+
* A visszafejtett API kulcsbol Anthropic-specifikus konfigot allit ossze,
|
|
35
|
+
* es teszteli a kapcsolatot az Anthropic API-val.
|
|
36
|
+
*/
|
|
37
|
+
class DyNTS_AAI_UserKey_ControlService extends ai_user_key_service_base_1.DyNTS_AI_UserKey_ServiceBase {
|
|
38
|
+
static getInstance() {
|
|
39
|
+
return DyNTS_AAI_UserKey_ControlService.getSingletonInstance();
|
|
40
|
+
}
|
|
41
|
+
aiProvider = ai_1.DyFM_AI_Provider.Anthropic;
|
|
42
|
+
/**
|
|
43
|
+
* Anthropic config osszeallitasa a visszafejtett kulcsbol
|
|
44
|
+
*/
|
|
45
|
+
resolveConfig(userProviderConfig, decryptedApiKey) {
|
|
46
|
+
const aaiConfig = userProviderConfig;
|
|
47
|
+
return {
|
|
48
|
+
apiKey: decryptedApiKey,
|
|
49
|
+
baseURL: aaiConfig.baseURL,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Anthropic kapcsolat tesztelese egy minimal messages.create() hivassal
|
|
54
|
+
*/
|
|
55
|
+
async testConnection(userProviderConfig, decryptedApiKey) {
|
|
56
|
+
try {
|
|
57
|
+
const Anthropic = await Promise.resolve().then(() => __importStar(require('@anthropic-ai/sdk')));
|
|
58
|
+
const config = this.resolveConfig(userProviderConfig, decryptedApiKey);
|
|
59
|
+
const client = new Anthropic.default({
|
|
60
|
+
apiKey: config.apiKey,
|
|
61
|
+
baseURL: config.baseURL || undefined,
|
|
62
|
+
});
|
|
63
|
+
await client.messages.create({
|
|
64
|
+
model: anthropic_1.DyFM_AAI_Model.claude_3_haiku_latest,
|
|
65
|
+
max_tokens: 5,
|
|
66
|
+
messages: [{ role: 'user', content: 'test' }],
|
|
67
|
+
});
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_AAI_UserKey_ControlService', 'testConnection', 'Anthropic connection test failed', { error: error });
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Elerheto Anthropic modellek lekerdezese
|
|
77
|
+
* Az Anthropic API nem ad model list endpoint-ot, ezert a DyFM_AAI_Model enum-bol szolgalja ki
|
|
78
|
+
*/
|
|
79
|
+
async listAvailableModels(_userProviderConfig, _decryptedApiKey) {
|
|
80
|
+
return Object.values(anthropic_1.DyFM_AAI_Model);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Teszt generalas az Anthropic API-val
|
|
84
|
+
*/
|
|
85
|
+
async testGeneration(set) {
|
|
86
|
+
const startTime = Date.now();
|
|
87
|
+
try {
|
|
88
|
+
const Anthropic = await Promise.resolve().then(() => __importStar(require('@anthropic-ai/sdk')));
|
|
89
|
+
const config = this.resolveConfig(set.userProviderConfig, set.decryptedApiKey);
|
|
90
|
+
const client = new Anthropic.default({
|
|
91
|
+
apiKey: config.apiKey,
|
|
92
|
+
baseURL: config.baseURL || undefined,
|
|
93
|
+
});
|
|
94
|
+
const response = await client.messages.create({
|
|
95
|
+
model: set.model,
|
|
96
|
+
max_tokens: 10,
|
|
97
|
+
messages: [{ role: 'user', content: 'Hello, this is a test. Reply with "OK".' }],
|
|
98
|
+
});
|
|
99
|
+
const textContent = response.content.find((block) => block.type === 'text');
|
|
100
|
+
return {
|
|
101
|
+
success: true,
|
|
102
|
+
response: textContent?.text,
|
|
103
|
+
model: set.model,
|
|
104
|
+
latencyMs: Date.now() - startTime,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_AAI_UserKey_ControlService', 'testGeneration', 'Anthropic test generation failed', { error: error });
|
|
109
|
+
return {
|
|
110
|
+
success: false,
|
|
111
|
+
model: set.model,
|
|
112
|
+
latencyMs: Date.now() - startTime,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.DyNTS_AAI_UserKey_ControlService = DyNTS_AAI_UserKey_ControlService;
|
|
118
|
+
//# sourceMappingURL=aai-user-key.control-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aai-user-key.control-service.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/anthropic/index.ts"],"names":[],"mappings":"AACA,cAAc,oCAAoC,CAAC;AAGnD,cAAc,0CAA0C,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Re-export from FSM
|
|
5
|
+
tslib_1.__exportStar(require("@futdevpro/fsm-dynamo/ai/anthropic"), exports);
|
|
6
|
+
// SERVICES
|
|
7
|
+
tslib_1.__exportStar(require("./_services/aai-user-key.control-service"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/anthropic/index.ts"],"names":[],"mappings":";;;AAAA,qBAAqB;AACrB,6EAAmD;AAEnD,WAAW;AACX,mFAAyD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { DyFM_AI_Provider, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
|
|
2
|
+
import { DyFM_AI_UserProviderConfig } from '@futdevpro/fsm-dynamo/ai';
|
|
3
|
+
import { DyNTS_AI_UserKey_ServiceBase } from '../../../_services/ai-user-key.service-base';
|
|
4
|
+
import { DyNTS_AI_TestGeneration_Result } from '../../../_models/ai-test-generation-result.interface';
|
|
5
|
+
/**
|
|
6
|
+
* FDP-AI-specifikus user API key kezelo service
|
|
7
|
+
*
|
|
8
|
+
* A visszafejtett API kulcsbol FDP-AI-specifikus konfigot allit ossze,
|
|
9
|
+
* es teszteli a kapcsolatot az FDP-AI endpoint-tal.
|
|
10
|
+
*/
|
|
11
|
+
export declare class DyNTS_FdpAI_UserKey_ControlService extends DyNTS_AI_UserKey_ServiceBase {
|
|
12
|
+
static getInstance(): DyNTS_FdpAI_UserKey_ControlService;
|
|
13
|
+
readonly aiProvider: DyFM_AI_Provider;
|
|
14
|
+
/**
|
|
15
|
+
* FDP-AI config osszeallitasa a visszafejtett kulcsbol
|
|
16
|
+
*/
|
|
17
|
+
resolveConfig(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): DyFM_AI_Config;
|
|
18
|
+
/**
|
|
19
|
+
* FDP-AI kapcsolat tesztelese a health endpoint hivassal
|
|
20
|
+
*/
|
|
21
|
+
testConnection(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Elerheto FDP-AI modellek lekerdezese a /models endpoint-rol
|
|
24
|
+
*/
|
|
25
|
+
listAvailableModels(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<string[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Teszt generalas az FDP-AI endpoint-on
|
|
28
|
+
*/
|
|
29
|
+
testGeneration(set: {
|
|
30
|
+
userProviderConfig: DyFM_AI_UserProviderConfig;
|
|
31
|
+
decryptedApiKey: string;
|
|
32
|
+
model: string;
|
|
33
|
+
}): Promise<DyNTS_AI_TestGeneration_Result>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=fdpai-user-key.control-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fdpai-user-key.control-service.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAItE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,sDAAsD,CAAC;AAEtG;;;;;GAKG;AACH,qBAAa,kCAAmC,SAAQ,4BAA4B;IAElF,MAAM,CAAC,WAAW,IAAI,kCAAkC;IAIxD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAA0B;IAE/D;;OAEG;IACH,aAAa,CACX,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,cAAc;IAUjB;;OAEG;IACG,cAAc,CAClB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;IAkCnB;;OAEG;IACG,mBAAmB,CACvB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,EAAE,CAAC;IAkCpB;;OAEG;IACG,cAAc,CAAC,GAAG,EAAE;QACxB,kBAAkB,EAAE,0BAA0B,CAAC;QAC/C,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,8BAA8B,CAAC;CA+D5C"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyNTS_FdpAI_UserKey_ControlService = void 0;
|
|
4
|
+
const ai_1 = require("@futdevpro/fsm-dynamo/ai");
|
|
5
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
6
|
+
const ai_user_key_service_base_1 = require("../../../_services/ai-user-key.service-base");
|
|
7
|
+
/**
|
|
8
|
+
* FDP-AI-specifikus user API key kezelo service
|
|
9
|
+
*
|
|
10
|
+
* A visszafejtett API kulcsbol FDP-AI-specifikus konfigot allit ossze,
|
|
11
|
+
* es teszteli a kapcsolatot az FDP-AI endpoint-tal.
|
|
12
|
+
*/
|
|
13
|
+
class DyNTS_FdpAI_UserKey_ControlService extends ai_user_key_service_base_1.DyNTS_AI_UserKey_ServiceBase {
|
|
14
|
+
static getInstance() {
|
|
15
|
+
return DyNTS_FdpAI_UserKey_ControlService.getSingletonInstance();
|
|
16
|
+
}
|
|
17
|
+
aiProvider = ai_1.DyFM_AI_Provider.FdpAI;
|
|
18
|
+
/**
|
|
19
|
+
* FDP-AI config osszeallitasa a visszafejtett kulcsbol
|
|
20
|
+
*/
|
|
21
|
+
resolveConfig(userProviderConfig, decryptedApiKey) {
|
|
22
|
+
const fdpAiConfig = userProviderConfig;
|
|
23
|
+
return {
|
|
24
|
+
apiKey: decryptedApiKey,
|
|
25
|
+
baseURL: fdpAiConfig.baseURL,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* FDP-AI kapcsolat tesztelese a health endpoint hivassal
|
|
30
|
+
*/
|
|
31
|
+
async testConnection(userProviderConfig, decryptedApiKey) {
|
|
32
|
+
try {
|
|
33
|
+
const config = this.resolveConfig(userProviderConfig, decryptedApiKey);
|
|
34
|
+
if (!config.baseURL) {
|
|
35
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_FdpAI_UserKey_ControlService', 'testConnection', 'FDP-AI baseURL is required');
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
const response = await fetch(`${config.baseURL}/health`, {
|
|
39
|
+
method: 'GET',
|
|
40
|
+
headers: {
|
|
41
|
+
'Authorization': `Bearer ${config.apiKey}`,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
return response.ok;
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_FdpAI_UserKey_ControlService', 'testConnection', 'FDP-AI connection test failed', { error: error });
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Elerheto FDP-AI modellek lekerdezese a /models endpoint-rol
|
|
53
|
+
*/
|
|
54
|
+
async listAvailableModels(userProviderConfig, decryptedApiKey) {
|
|
55
|
+
try {
|
|
56
|
+
const config = this.resolveConfig(userProviderConfig, decryptedApiKey);
|
|
57
|
+
if (!config.baseURL) {
|
|
58
|
+
return [];
|
|
59
|
+
}
|
|
60
|
+
const response = await fetch(`${config.baseURL}/models`, {
|
|
61
|
+
method: 'GET',
|
|
62
|
+
headers: {
|
|
63
|
+
'Authorization': `Bearer ${config.apiKey}`,
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
if (!response.ok) {
|
|
67
|
+
return [];
|
|
68
|
+
}
|
|
69
|
+
const data = await response.json();
|
|
70
|
+
return data.models ?? [];
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_FdpAI_UserKey_ControlService', 'listAvailableModels', 'FDP-AI model list failed', { error: error });
|
|
74
|
+
return [];
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Teszt generalas az FDP-AI endpoint-on
|
|
79
|
+
*/
|
|
80
|
+
async testGeneration(set) {
|
|
81
|
+
const startTime = Date.now();
|
|
82
|
+
try {
|
|
83
|
+
const config = this.resolveConfig(set.userProviderConfig, set.decryptedApiKey);
|
|
84
|
+
if (!config.baseURL) {
|
|
85
|
+
return {
|
|
86
|
+
success: false,
|
|
87
|
+
model: set.model,
|
|
88
|
+
latencyMs: Date.now() - startTime,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
const response = await fetch(`${config.baseURL}/chat/completions`, {
|
|
92
|
+
method: 'POST',
|
|
93
|
+
headers: {
|
|
94
|
+
'Authorization': `Bearer ${config.apiKey}`,
|
|
95
|
+
'Content-Type': 'application/json',
|
|
96
|
+
},
|
|
97
|
+
body: JSON.stringify({
|
|
98
|
+
model: set.model,
|
|
99
|
+
messages: [{ role: 'user', content: 'Hello, this is a test. Reply with "OK".' }],
|
|
100
|
+
max_tokens: 10,
|
|
101
|
+
}),
|
|
102
|
+
});
|
|
103
|
+
if (!response.ok) {
|
|
104
|
+
return {
|
|
105
|
+
success: false,
|
|
106
|
+
model: set.model,
|
|
107
|
+
latencyMs: Date.now() - startTime,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
const data = await response.json();
|
|
111
|
+
return {
|
|
112
|
+
success: true,
|
|
113
|
+
response: data?.choices?.[0]?.message?.content,
|
|
114
|
+
model: set.model,
|
|
115
|
+
latencyMs: Date.now() - startTime,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_FdpAI_UserKey_ControlService', 'testGeneration', 'FDP-AI test generation failed', { error: error });
|
|
120
|
+
return {
|
|
121
|
+
success: false,
|
|
122
|
+
model: set.model,
|
|
123
|
+
latencyMs: Date.now() - startTime,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.DyNTS_FdpAI_UserKey_ControlService = DyNTS_FdpAI_UserKey_ControlService;
|
|
129
|
+
//# sourceMappingURL=fdpai-user-key.control-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fdpai-user-key.control-service.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/fdp-ai/index.ts"],"names":[],"mappings":"AACA,cAAc,iCAAiC,CAAC;AAGhD,cAAc,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Re-export from FSM
|
|
5
|
+
tslib_1.__exportStar(require("@futdevpro/fsm-dynamo/ai/fdp-ai"), exports);
|
|
6
|
+
// SERVICES
|
|
7
|
+
tslib_1.__exportStar(require("./_services/fdpai-user-key.control-service"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/fdp-ai/index.ts"],"names":[],"mappings":";;;AAAA,qBAAqB;AACrB,0EAAgD;AAEhD,WAAW;AACX,qFAA2D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { DyFM_AI_Provider, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
|
|
2
|
+
import { DyFM_AI_UserProviderConfig } from '@futdevpro/fsm-dynamo/ai';
|
|
3
|
+
import { DyNTS_AI_UserKey_ServiceBase } from '../../../_services/ai-user-key.service-base';
|
|
4
|
+
import { DyNTS_AI_TestGeneration_Result } from '../../../_models/ai-test-generation-result.interface';
|
|
5
|
+
/**
|
|
6
|
+
* OpenAI-specifikus user API key kezelo service
|
|
7
|
+
*
|
|
8
|
+
* A visszafejtett API kulcsbol OpenAI-specifikus konfigot allit ossze,
|
|
9
|
+
* es teszteli a kapcsolatot az OpenAI API-val.
|
|
10
|
+
*/
|
|
11
|
+
export declare class DyNTS_OAI_UserKey_ControlService extends DyNTS_AI_UserKey_ServiceBase {
|
|
12
|
+
static getInstance(): DyNTS_OAI_UserKey_ControlService;
|
|
13
|
+
readonly aiProvider: DyFM_AI_Provider;
|
|
14
|
+
/**
|
|
15
|
+
* OpenAI config osszeallitasa a visszafejtett kulcsbol
|
|
16
|
+
*/
|
|
17
|
+
resolveConfig(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): DyFM_AI_Config;
|
|
18
|
+
/**
|
|
19
|
+
* OpenAI kapcsolat tesztelese a models.list() hivassal
|
|
20
|
+
*/
|
|
21
|
+
testConnection(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Elerheto OpenAI modellek lekerdezese
|
|
24
|
+
* Szuri a chat/LLM modelleket (nem embedding, nem whisper stb.)
|
|
25
|
+
*/
|
|
26
|
+
listAvailableModels(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<string[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Teszt generalas az OpenAI API-val
|
|
29
|
+
*/
|
|
30
|
+
testGeneration(set: {
|
|
31
|
+
userProviderConfig: DyFM_AI_UserProviderConfig;
|
|
32
|
+
decryptedApiKey: string;
|
|
33
|
+
model: string;
|
|
34
|
+
}): Promise<DyNTS_AI_TestGeneration_Result>;
|
|
35
|
+
/**
|
|
36
|
+
* LLM/Chat modell szures -- kiszuri az embedding, whisper, tts stb. modelleket
|
|
37
|
+
*/
|
|
38
|
+
private isLLMModel;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=oai-user-key.control-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oai-user-key.control-service.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAItE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,sDAAsD,CAAC;AAEtG;;;;;GAKG;AACH,qBAAa,gCAAiC,SAAQ,4BAA4B;IAEhF,MAAM,CAAC,WAAW,IAAI,gCAAgC;IAItD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAA2B;IAEhE;;OAEG;IACH,aAAa,CACX,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,cAAc;IAWjB;;OAEG;IACG,cAAc,CAClB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;IAwBnB;;;OAGG;IACG,mBAAmB,CACvB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBpB;;OAEG;IACG,cAAc,CAAC,GAAG,EAAE;QACxB,kBAAkB,EAAE,0BAA0B,CAAC;QAC/C,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,8BAA8B,CAAC;IA0C3C;;OAEG;IACH,OAAO,CAAC,UAAU;CAUnB"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyNTS_OAI_UserKey_ControlService = void 0;
|
|
4
|
+
const openai_1 = require("openai");
|
|
5
|
+
const ai_1 = require("@futdevpro/fsm-dynamo/ai");
|
|
6
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
7
|
+
const ai_user_key_service_base_1 = require("../../../_services/ai-user-key.service-base");
|
|
8
|
+
/**
|
|
9
|
+
* OpenAI-specifikus user API key kezelo service
|
|
10
|
+
*
|
|
11
|
+
* A visszafejtett API kulcsbol OpenAI-specifikus konfigot allit ossze,
|
|
12
|
+
* es teszteli a kapcsolatot az OpenAI API-val.
|
|
13
|
+
*/
|
|
14
|
+
class DyNTS_OAI_UserKey_ControlService extends ai_user_key_service_base_1.DyNTS_AI_UserKey_ServiceBase {
|
|
15
|
+
static getInstance() {
|
|
16
|
+
return DyNTS_OAI_UserKey_ControlService.getSingletonInstance();
|
|
17
|
+
}
|
|
18
|
+
aiProvider = ai_1.DyFM_AI_Provider.OpenAI;
|
|
19
|
+
/**
|
|
20
|
+
* OpenAI config osszeallitasa a visszafejtett kulcsbol
|
|
21
|
+
*/
|
|
22
|
+
resolveConfig(userProviderConfig, decryptedApiKey) {
|
|
23
|
+
const oaiConfig = userProviderConfig;
|
|
24
|
+
return {
|
|
25
|
+
apiKey: decryptedApiKey,
|
|
26
|
+
organization: oaiConfig.organization,
|
|
27
|
+
project: oaiConfig.project,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* OpenAI kapcsolat tesztelese a models.list() hivassal
|
|
32
|
+
*/
|
|
33
|
+
async testConnection(userProviderConfig, decryptedApiKey) {
|
|
34
|
+
try {
|
|
35
|
+
const config = this.resolveConfig(userProviderConfig, decryptedApiKey);
|
|
36
|
+
const openai = new openai_1.OpenAI({
|
|
37
|
+
apiKey: config.apiKey,
|
|
38
|
+
organization: config.organization,
|
|
39
|
+
project: config.project,
|
|
40
|
+
});
|
|
41
|
+
await openai.models.list();
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_OAI_UserKey_ControlService', 'testConnection', 'OpenAI connection test failed', { error: error });
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Elerheto OpenAI modellek lekerdezese
|
|
51
|
+
* Szuri a chat/LLM modelleket (nem embedding, nem whisper stb.)
|
|
52
|
+
*/
|
|
53
|
+
async listAvailableModels(userProviderConfig, decryptedApiKey) {
|
|
54
|
+
const config = this.resolveConfig(userProviderConfig, decryptedApiKey);
|
|
55
|
+
const openai = new openai_1.OpenAI({
|
|
56
|
+
apiKey: config.apiKey,
|
|
57
|
+
organization: config.organization,
|
|
58
|
+
project: config.project,
|
|
59
|
+
});
|
|
60
|
+
const models = await openai.models.list();
|
|
61
|
+
return models.data
|
|
62
|
+
.map((m) => m.id)
|
|
63
|
+
.filter((id) => this.isLLMModel(id))
|
|
64
|
+
.sort();
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Teszt generalas az OpenAI API-val
|
|
68
|
+
*/
|
|
69
|
+
async testGeneration(set) {
|
|
70
|
+
const startTime = Date.now();
|
|
71
|
+
try {
|
|
72
|
+
const config = this.resolveConfig(set.userProviderConfig, set.decryptedApiKey);
|
|
73
|
+
const openai = new openai_1.OpenAI({
|
|
74
|
+
apiKey: config.apiKey,
|
|
75
|
+
organization: config.organization,
|
|
76
|
+
project: config.project,
|
|
77
|
+
});
|
|
78
|
+
const response = await openai.chat.completions.create({
|
|
79
|
+
model: set.model,
|
|
80
|
+
messages: [{ role: 'user', content: 'Hello, this is a test. Reply with "OK".' }],
|
|
81
|
+
max_tokens: 10,
|
|
82
|
+
});
|
|
83
|
+
return {
|
|
84
|
+
success: true,
|
|
85
|
+
response: response.choices[0]?.message?.content,
|
|
86
|
+
model: set.model,
|
|
87
|
+
latencyMs: Date.now() - startTime,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
fsm_dynamo_1.DyFM_Log.error('DyNTS_OAI_UserKey_ControlService', 'testGeneration', 'OpenAI test generation failed', { error: error });
|
|
92
|
+
return {
|
|
93
|
+
success: false,
|
|
94
|
+
model: set.model,
|
|
95
|
+
latencyMs: Date.now() - startTime,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* LLM/Chat modell szures -- kiszuri az embedding, whisper, tts stb. modelleket
|
|
101
|
+
*/
|
|
102
|
+
isLLMModel(modelId) {
|
|
103
|
+
const excludePatterns = [
|
|
104
|
+
'embedding', 'whisper', 'tts', 'dall-e',
|
|
105
|
+
'moderation', 'davinci', 'babbage', 'ada',
|
|
106
|
+
];
|
|
107
|
+
return !excludePatterns.some((pattern) => modelId.includes(pattern));
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
exports.DyNTS_OAI_UserKey_ControlService = DyNTS_OAI_UserKey_ControlService;
|
|
111
|
+
//# sourceMappingURL=oai-user-key.control-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oai-user-key.control-service.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export * from './_models/interfaces/oai-llm-predefined-requests.interface';
|
|
|
7
7
|
export * from './_services/oai-embedding.control-service';
|
|
8
8
|
export * from './_services/oai-llm-chat.service-base';
|
|
9
9
|
export * from './_services/oai-llm.service-base';
|
|
10
|
+
export * from './_services/oai-user-key.control-service';
|
|
10
11
|
export * from './_services/data-services/oai-doc-chunk-data.service';
|
|
11
12
|
export * from './_services/data-services/oai-doc-page.data-service';
|
|
12
13
|
export * from './_services/data-services/oai-document.data-service';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":"AAyBA,cAAc,kCAAkC,CAAC;AASjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kDAAkD,CAAC;AACjE,cAAc,qDAAqD,CAAC;AAepE,cAAc,oDAAoD,CAAC;AAEnE,cAAc,4DAA4D,CAAC;AAW3E,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":"AAyBA,cAAc,kCAAkC,CAAC;AASjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kDAAkD,CAAC;AACjE,cAAc,qDAAqD,CAAC;AAepE,cAAc,oDAAoD,CAAC;AAEnE,cAAc,4DAA4D,CAAC;AAW3E,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,sDAAsD,CAAC;AACrE,cAAc,qDAAqD,CAAC;AACpE,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC"}
|
|
@@ -46,6 +46,7 @@ export * from './_services/oai-embedding.service'; */
|
|
|
46
46
|
tslib_1.__exportStar(require("./_services/oai-embedding.control-service"), exports);
|
|
47
47
|
tslib_1.__exportStar(require("./_services/oai-llm-chat.service-base"), exports);
|
|
48
48
|
tslib_1.__exportStar(require("./_services/oai-llm.service-base"), exports);
|
|
49
|
+
tslib_1.__exportStar(require("./_services/oai-user-key.control-service"), exports);
|
|
49
50
|
// services/DATA-SERVICES
|
|
50
51
|
tslib_1.__exportStar(require("./_services/data-services/oai-doc-chunk-data.service"), exports);
|
|
51
52
|
tslib_1.__exportStar(require("./_services/data-services/oai-doc-page.data-service"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":";AAQA;;;;;;IAMI;;;AAEJ,EAAE;AACF,gBAAgB;AAChB,EAAE;AACF,6DAA6D;AAC7D,+DAA+D;AAC/D,EAAE;AAGF,qBAAqB;AACrB,2EAAiD;AAEjD,6BAA6B;AAC7B,iDAAiD;AAGjD,cAAc;AACd;oDACoD;AACpD,mFAAyD;AACzD,2FAAiE;AACjE,8FAAoE;AAGpE,QAAQ;AACR,wDAAwD;AACxD,yDAAyD;AAGzD,SAAS;AACT,sEAAsE;AAEtE,oBAAoB;AACpB;2FAC2F;AAC3F,oFAAoF;AACpF,6FAAmE;AACnE,qEAAqE;AACrE,qGAA2E;AAC3E,8FAA8F;AAG9F,iCAAiC;AACjC;;qDAEqD;AACrD,wDAAwD;AAExD,WAAW;AACX,oFAA0D;AAC1D,gFAAsD;AACtD,2EAAiD;AACjD,yBAAyB;AACzB,+FAAqE;AACrE,8FAAoE;AACpE,8FAAoE;AACpE,4FAAkE;AAClE,6DAA6D"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":";AAQA;;;;;;IAMI;;;AAEJ,EAAE;AACF,gBAAgB;AAChB,EAAE;AACF,6DAA6D;AAC7D,+DAA+D;AAC/D,EAAE;AAGF,qBAAqB;AACrB,2EAAiD;AAEjD,6BAA6B;AAC7B,iDAAiD;AAGjD,cAAc;AACd;oDACoD;AACpD,mFAAyD;AACzD,2FAAiE;AACjE,8FAAoE;AAGpE,QAAQ;AACR,wDAAwD;AACxD,yDAAyD;AAGzD,SAAS;AACT,sEAAsE;AAEtE,oBAAoB;AACpB;2FAC2F;AAC3F,oFAAoF;AACpF,6FAAmE;AACnE,qEAAqE;AACrE,qGAA2E;AAC3E,8FAA8F;AAG9F,iCAAiC;AACjC;;qDAEqD;AACrD,wDAAwD;AAExD,WAAW;AACX,oFAA0D;AAC1D,gFAAsD;AACtD,2EAAiD;AACjD,mFAAyD;AACzD,yBAAyB;AACzB,+FAAqE;AACrE,8FAAoE;AACpE,8FAAoE;AACpE,4FAAkE;AAClE,6DAA6D"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { DyFM_AI_Provider, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
|
|
2
|
+
import { DyFM_AI_UserProviderConfig } from '@futdevpro/fsm-dynamo/ai';
|
|
3
|
+
import { DyNTS_SingletonService } from '../../../_services/base/singleton.service';
|
|
4
|
+
import { DyNTS_AI_TestGeneration_Result } from '../_models/ai-test-generation-result.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Absztrakt bazis osztaly a user AI provider kulcs kezeleshez
|
|
7
|
+
*
|
|
8
|
+
* A titkositas/visszafejtes NEM itt tortenik -- azt az fdp-auth-service Auth_ControlService-e vegzi.
|
|
9
|
+
* Ezek a service-ek a mar visszafejtett config-ot es API kulcsot kapjak,
|
|
10
|
+
* es abbol allitjak ossze a provider-specifikus konfigot.
|
|
11
|
+
*/
|
|
12
|
+
export declare abstract class DyNTS_AI_UserKey_ServiceBase extends DyNTS_SingletonService {
|
|
13
|
+
/** melyik provider-hez tartozik ez a service */
|
|
14
|
+
abstract readonly aiProvider: DyFM_AI_Provider;
|
|
15
|
+
/**
|
|
16
|
+
* Visszafejtett user config + kulcs -> provider-specifikus AI config osszeallitas
|
|
17
|
+
* @param userProviderConfig - a user provider konfiguracioja
|
|
18
|
+
* @param decryptedApiKey - a mar visszafejtett API kulcs
|
|
19
|
+
*/
|
|
20
|
+
abstract resolveConfig(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): DyFM_AI_Config;
|
|
21
|
+
/**
|
|
22
|
+
* Kapcsolat tesztelese a provider-rel a visszafejtett kulccsal
|
|
23
|
+
* @param userProviderConfig - a user provider konfiguracioja
|
|
24
|
+
* @param decryptedApiKey - a mar visszafejtett API kulcs
|
|
25
|
+
*/
|
|
26
|
+
abstract testConnection(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<boolean>;
|
|
27
|
+
/**
|
|
28
|
+
* Elerheto modellek lekerdezese a provider API-rol
|
|
29
|
+
* @param userProviderConfig - a user provider konfiguracioja
|
|
30
|
+
* @param decryptedApiKey - a mar visszafejtett API kulcs
|
|
31
|
+
*/
|
|
32
|
+
abstract listAvailableModels(userProviderConfig: DyFM_AI_UserProviderConfig, decryptedApiKey: string): Promise<string[]>;
|
|
33
|
+
/**
|
|
34
|
+
* Teszt generalas a provider-rel
|
|
35
|
+
* @param set.userProviderConfig - a user provider konfiguracioja
|
|
36
|
+
* @param set.decryptedApiKey - a mar visszafejtett API kulcs
|
|
37
|
+
* @param set.model - a hasznalando modell
|
|
38
|
+
*/
|
|
39
|
+
abstract testGeneration(set: {
|
|
40
|
+
userProviderConfig: DyFM_AI_UserProviderConfig;
|
|
41
|
+
decryptedApiKey: string;
|
|
42
|
+
model: string;
|
|
43
|
+
}): Promise<DyNTS_AI_TestGeneration_Result>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=ai-user-key.service-base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-user-key.service-base.d.ts","sourceRoot":"","sources":["../../../../src/_modules/ai/_services/ai-user-key.service-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAEhG;;;;;;GAMG;AACH,8BAAsB,4BAA6B,SAAQ,sBAAsB;IAC/E,gDAAgD;IAChD,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAE/C;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CACpB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,cAAc;IAEjB;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CACrB,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;IAEnB;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAC1B,kBAAkB,EAAE,0BAA0B,EAC9C,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,EAAE,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE;QAC3B,kBAAkB,EAAE,0BAA0B,CAAC;QAC/C,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,8BAA8B,CAAC;CAC5C"}
|