@drax/ai-back 3.51.0 → 3.52.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.
- package/dist/controllers/AILogController.js +2 -2
- package/dist/models/AILogModel.js +1 -0
- package/dist/providers/ai/AbstractAiProvider.js +90 -0
- package/dist/providers/ai/DeepSeekAiProvider.js +1 -7
- package/dist/providers/ai/GoogleAiProvider.js +3 -80
- package/dist/providers/ai/OllamaAiProvider.js +3 -80
- package/dist/providers/ai/OpenAiProvider.js +4 -81
- package/dist/repository/sqlite/AILogSqliteRepository.js +1 -0
- package/dist/routes/AILogRoutes.js +5 -5
- package/dist/schemas/AILogSchema.js +4 -1
- package/package.json +3 -3
- package/src/controllers/AILogController.ts +2 -2
- package/src/models/AILogModel.ts +1 -0
- package/src/providers/ai/AbstractAiProvider.ts +129 -0
- package/src/providers/ai/DeepSeekAiProvider.ts +1 -20
- package/src/providers/ai/GoogleAiProvider.ts +4 -116
- package/src/providers/ai/OllamaAiProvider.ts +4 -116
- package/src/providers/ai/OpenAiProvider.ts +5 -117
- package/src/repository/sqlite/AILogSqliteRepository.ts +1 -1
- package/src/routes/AILogRoutes.ts +14 -14
- package/src/schemas/AILogSchema.ts +4 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/types/models/AILogModel.d.ts.map +1 -1
- package/types/providers/ai/AbstractAiProvider.d.ts +29 -0
- package/types/providers/ai/AbstractAiProvider.d.ts.map +1 -0
- package/types/providers/ai/DeepSeekAiProvider.d.ts +0 -14
- package/types/providers/ai/DeepSeekAiProvider.d.ts.map +1 -1
- package/types/providers/ai/GoogleAiProvider.d.ts +3 -31
- package/types/providers/ai/GoogleAiProvider.d.ts.map +1 -1
- package/types/providers/ai/OllamaAiProvider.d.ts +3 -31
- package/types/providers/ai/OllamaAiProvider.d.ts.map +1 -1
- package/types/providers/ai/OpenAiProvider.d.ts +4 -32
- package/types/providers/ai/OpenAiProvider.d.ts.map +1 -1
- package/types/repository/sqlite/AILogSqliteRepository.d.ts.map +1 -1
- package/types/schemas/AILogSchema.d.ts +4 -0
- package/types/schemas/AILogSchema.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AILogModel.d.ts","sourceRoot":"","sources":["../../src/models/AILogModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAI3C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAE1C,QAAA,MAAM,WAAW;;;;;;;;
|
|
1
|
+
{"version":3,"file":"AILogModel.d.ts","sourceRoot":"","sources":["../../src/models/AILogModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAI3C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAE1C,QAAA,MAAM,WAAW;;;;;;;;EAmCK,CAAC;AAgBvB,QAAA,MAAM,UAAU,wCAAyF,CAAC;AAE1G,OAAO,EACH,WAAW,EACX,UAAU,EACb,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { IAILogBase } from "@drax/ai-share";
|
|
2
|
+
import type { IAIProvider, IPromptParams, IPromptResponse } from "../../interfaces/IAIProvider.js";
|
|
3
|
+
import type { AILogService } from "../../services/AILogService.js";
|
|
4
|
+
type PromptLogParams = {
|
|
5
|
+
model: string;
|
|
6
|
+
systemPrompt: string;
|
|
7
|
+
startedAt: Date;
|
|
8
|
+
endedAt?: Date;
|
|
9
|
+
inputTokens?: number;
|
|
10
|
+
outputTokens?: number;
|
|
11
|
+
tokens?: number;
|
|
12
|
+
output?: unknown;
|
|
13
|
+
success: boolean;
|
|
14
|
+
errorMessage?: string;
|
|
15
|
+
};
|
|
16
|
+
declare abstract class AbstractAiProvider implements IAIProvider {
|
|
17
|
+
protected readonly providerName: string;
|
|
18
|
+
protected _aiLogService?: AILogService;
|
|
19
|
+
protected constructor(providerName: string, aiLogService?: AILogService);
|
|
20
|
+
abstract prompt(input: IPromptParams): Promise<IPromptResponse>;
|
|
21
|
+
protected hasImageInput(input: IPromptParams): boolean;
|
|
22
|
+
protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
|
|
23
|
+
protected serializePromptOutput(output: unknown): string;
|
|
24
|
+
protected buildLogPayload(input: IPromptParams, params: PromptLogParams): IAILogBase;
|
|
25
|
+
protected registerPromptLog(input: IPromptParams, params: PromptLogParams): Promise<void>;
|
|
26
|
+
}
|
|
27
|
+
export default AbstractAiProvider;
|
|
28
|
+
export { AbstractAiProvider };
|
|
29
|
+
//# sourceMappingURL=AbstractAiProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/AbstractAiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EACR,WAAW,EACX,aAAa,EACb,eAAe,EAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAEjE,KAAK,eAAe,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAA;AAED,uBAAe,kBAAmB,YAAW,WAAW;IACpD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IACvC,SAAS,CAAC,aAAa,CAAC,EAAE,YAAY,CAAA;IAEtC,SAAS,aAAa,YAAY,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAKvE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAE/D,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa;IAc5C,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM;IAgBzE,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO;IAY/C,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,GAAG,UAAU;cAoCpE,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe;CAelF;AAED,eAAe,kBAAkB,CAAA;AACjC,OAAO,EAAC,kBAAkB,EAAC,CAAA"}
|
|
@@ -1,23 +1,9 @@
|
|
|
1
|
-
import type { IAILogBase } from "@drax/ai-share";
|
|
2
|
-
import type { IPromptParams } from "../../interfaces/IAIProvider.js";
|
|
3
1
|
import type { AILogService } from "../../services/AILogService.js";
|
|
4
2
|
import OpenAiProvider from "./OpenAiProvider.js";
|
|
5
3
|
declare class DeepSeekAiProvider extends OpenAiProvider {
|
|
6
4
|
protected _baseUrl: string;
|
|
7
5
|
constructor(apiKey: string, model: string, baseUrl?: string, visionModel?: string, aiLogService?: AILogService);
|
|
8
6
|
get client(): any;
|
|
9
|
-
protected buildLogPayload(input: IPromptParams, params: {
|
|
10
|
-
model: string;
|
|
11
|
-
systemPrompt: string;
|
|
12
|
-
startedAt: Date;
|
|
13
|
-
endedAt?: Date;
|
|
14
|
-
inputTokens?: number;
|
|
15
|
-
outputTokens?: number;
|
|
16
|
-
tokens?: number;
|
|
17
|
-
output?: unknown;
|
|
18
|
-
success: boolean;
|
|
19
|
-
errorMessage?: string;
|
|
20
|
-
}): IAILogBase;
|
|
21
7
|
}
|
|
22
8
|
export default DeepSeekAiProvider;
|
|
23
9
|
export { DeepSeekAiProvider };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeepSeekAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/DeepSeekAiProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,
|
|
1
|
+
{"version":3,"file":"DeepSeekAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/DeepSeekAiProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,cAAM,kBAAmB,SAAQ,cAAc;IAC3C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;gBAEd,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAmC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAiB1I,IAAI,MAAM,QAST;CAEJ;AAED,eAAe,kBAAkB,CAAA;AACjC,OAAO,EAAC,kBAAkB,EAAC,CAAA"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { GoogleGenAI } from "@google/genai";
|
|
2
2
|
import type { Content, FunctionCall, FunctionDeclaration, GenerateContentConfig, Part } from "@google/genai";
|
|
3
|
-
import type {
|
|
3
|
+
import type { IPromptContentPart, IPromptMessage, IPromptParams, IPromptResponse, IPromptTool } from "../../interfaces/IAIProvider.js";
|
|
4
4
|
import type { AILogService } from "../../services/AILogService.js";
|
|
5
|
-
import
|
|
6
|
-
declare class GoogleAiProvider
|
|
5
|
+
import AbstractAiProvider from "./AbstractAiProvider.js";
|
|
6
|
+
declare class GoogleAiProvider extends AbstractAiProvider {
|
|
7
7
|
protected _apiKey: string;
|
|
8
8
|
protected _model: any;
|
|
9
9
|
protected _visionModel?: string;
|
|
10
10
|
protected _client: GoogleGenAI | undefined;
|
|
11
|
-
protected _aiLogService?: AILogService;
|
|
12
11
|
constructor(apiKey: string, model: string, visionModel?: string, aiLogService?: AILogService);
|
|
13
12
|
get model(): any;
|
|
14
13
|
get client(): GoogleGenAI;
|
|
@@ -18,33 +17,6 @@ declare class GoogleAiProvider implements IAIProvider {
|
|
|
18
17
|
protected mapImageUrl(url: string): Part;
|
|
19
18
|
protected inferImageMimeType(url: string): "image/png" | "image/webp" | "image/gif" | "image/bmp" | "image/heic" | "image/heif" | "image/jpeg";
|
|
20
19
|
protected mapHistory(history?: IPromptMessage[]): Content[];
|
|
21
|
-
protected hasImageInput(input: IPromptParams): boolean;
|
|
22
|
-
protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
|
|
23
|
-
protected serializePromptOutput(output: unknown): string;
|
|
24
|
-
protected buildLogPayload(input: IPromptParams, params: {
|
|
25
|
-
model: string;
|
|
26
|
-
systemPrompt: string;
|
|
27
|
-
startedAt: Date;
|
|
28
|
-
endedAt?: Date;
|
|
29
|
-
inputTokens?: number;
|
|
30
|
-
outputTokens?: number;
|
|
31
|
-
tokens?: number;
|
|
32
|
-
output?: unknown;
|
|
33
|
-
success: boolean;
|
|
34
|
-
errorMessage?: string;
|
|
35
|
-
}): IAILogBase;
|
|
36
|
-
protected registerPromptLog(input: IPromptParams, params: {
|
|
37
|
-
model: string;
|
|
38
|
-
systemPrompt: string;
|
|
39
|
-
startedAt: Date;
|
|
40
|
-
endedAt?: Date;
|
|
41
|
-
inputTokens?: number;
|
|
42
|
-
outputTokens?: number;
|
|
43
|
-
tokens?: number;
|
|
44
|
-
output?: unknown;
|
|
45
|
-
success: boolean;
|
|
46
|
-
errorMessage?: string;
|
|
47
|
-
}): Promise<void>;
|
|
48
20
|
generateEmbedding({ text, model }: {
|
|
49
21
|
text: string;
|
|
50
22
|
model?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/GoogleAiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EACR,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,IAAI,EACP,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EACR,
|
|
1
|
+
{"version":3,"file":"GoogleAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/GoogleAiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EACR,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,IAAI,EACP,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EACR,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAEjE,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD,cAAM,gBAAiB,SAAQ,kBAAkB;IAC7C,SAAS,CAAC,OAAO,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,MAAM,EAAE,GAAG,CAAA;IACrB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC/B,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,CAAA;gBAE9B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAgB5F,IAAI,KAAK,QAKR;IAED,IAAI,MAAM,gBAQT;IAED,SAAS,KAAK,WAAW,WAExB;IAED,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,EAAE;IAoBxD,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,EAAE;IAYhE,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAoBxC,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM;IAyBxC,SAAS,CAAC,UAAU,CAAC,OAAO,GAAE,cAAc,EAAO,GAAG,OAAO,EAAE;IA8BzD,iBAAiB,CAAC,EAAC,IAAI,EAAE,KAA0B,EAAC,EAAE;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,KAAK,CAAC,EAAC,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ5G,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAE,WAAW,EAAO,GAAG,KAAK,CAAC;QAAC,oBAAoB,EAAE,mBAAmB,EAAE,CAAA;KAAC,CAAC;IAkBnG,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,qBAAqB;IAmBhG,SAAS,CAAC,2BAA2B,CAAC,KAAK,EAAE,aAAa;cAoB1C,sBAAsB,CAAC,aAAa,GAAE,YAAY,EAAO,EAAE,KAAK,GAAE,WAAW,EAAO;IA2BpG,SAAS,CAAC,6BAA6B,CAAC,aAAa,GAAE,YAAY,EAAO,GAAG,OAAO;IAS9E,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;CAwG/D;AAGD,eAAe,gBAAgB,CAAA;AAC/B,OAAO,EAAC,gBAAgB,EAAC,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { IPromptContentPart, IPromptMessage, IPromptParams, IPromptResponse, IPromptTool } from "../../interfaces/IAIProvider.js";
|
|
2
2
|
import type { AILogService } from "../../services/AILogService.js";
|
|
3
|
-
import
|
|
3
|
+
import AbstractAiProvider from "./AbstractAiProvider.js";
|
|
4
4
|
type OllamaMessage = {
|
|
5
5
|
role: "system" | "user" | "assistant" | "tool";
|
|
6
6
|
content: string;
|
|
@@ -13,12 +13,11 @@ type OllamaToolCall = {
|
|
|
13
13
|
arguments?: string | object;
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
|
-
declare class OllamaAiProvider
|
|
16
|
+
declare class OllamaAiProvider extends AbstractAiProvider {
|
|
17
17
|
protected _baseUrl: string;
|
|
18
18
|
protected _model: string;
|
|
19
19
|
protected _visionModel?: string;
|
|
20
20
|
protected _embeddingModel?: string;
|
|
21
|
-
protected _aiLogService?: AILogService;
|
|
22
21
|
constructor(baseUrl: string, model: string, visionModel?: string, embeddingModel?: string, aiLogService?: AILogService);
|
|
23
22
|
get model(): string;
|
|
24
23
|
protected get visionModel(): string;
|
|
@@ -28,33 +27,6 @@ declare class OllamaAiProvider implements IAIProvider {
|
|
|
28
27
|
protected mapContentPartsToMessage(content: IPromptContentPart[], role?: "user" | "assistant" | "system"): Promise<OllamaMessage>;
|
|
29
28
|
protected imageUrlToBase64(url: string): Promise<string>;
|
|
30
29
|
protected mapHistory(history?: IPromptMessage[]): Promise<OllamaMessage[]>;
|
|
31
|
-
protected hasImageInput(input: IPromptParams): boolean;
|
|
32
|
-
protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
|
|
33
|
-
protected serializePromptOutput(output: unknown): string;
|
|
34
|
-
protected buildLogPayload(input: IPromptParams, params: {
|
|
35
|
-
model: string;
|
|
36
|
-
systemPrompt: string;
|
|
37
|
-
startedAt: Date;
|
|
38
|
-
endedAt?: Date;
|
|
39
|
-
inputTokens?: number;
|
|
40
|
-
outputTokens?: number;
|
|
41
|
-
tokens?: number;
|
|
42
|
-
output?: unknown;
|
|
43
|
-
success: boolean;
|
|
44
|
-
errorMessage?: string;
|
|
45
|
-
}): IAILogBase;
|
|
46
|
-
protected registerPromptLog(input: IPromptParams, params: {
|
|
47
|
-
model: string;
|
|
48
|
-
systemPrompt: string;
|
|
49
|
-
startedAt: Date;
|
|
50
|
-
endedAt?: Date;
|
|
51
|
-
inputTokens?: number;
|
|
52
|
-
outputTokens?: number;
|
|
53
|
-
tokens?: number;
|
|
54
|
-
output?: unknown;
|
|
55
|
-
success: boolean;
|
|
56
|
-
errorMessage?: string;
|
|
57
|
-
}): Promise<void>;
|
|
58
30
|
generateEmbedding({ text, model }: {
|
|
59
31
|
text: string;
|
|
60
32
|
model?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OllamaAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OllamaAiProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,
|
|
1
|
+
{"version":3,"file":"OllamaAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OllamaAiProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAEjE,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD,KAAK,aAAa,GAAG;IACjB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAA;AAED,KAAK,cAAc,GAAG;IAClB,QAAQ,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KAC/B,CAAA;CACJ,CAAA;AAED,cAAM,gBAAiB,SAAQ,kBAAkB;IAC7C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC/B,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;gBAEtB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAiBtH,IAAI,KAAK,WAKR;IAED,SAAS,KAAK,WAAW,WAExB;IAED,SAAS,KAAK,cAAc,WAE3B;cAEe,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;cAiB/C,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;cAmB9D,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,IAAI,GAAE,MAAM,GAAG,WAAW,GAAG,QAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;cAoB/H,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;cAiB9C,UAAU,CAAC,OAAO,GAAE,cAAc,EAAO,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAkB9E,iBAAiB,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE;QAAC,IAAI,EAAC,MAAM,CAAC;QAAC,KAAK,CAAC,EAAC,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IASxF,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAE,WAAW,EAAO;;;;;;;;IAe5C,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,aAAa;IAoBtD,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAgB9D,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO;cAY7B,iBAAiB,CAAC,SAAS,GAAE,cAAc,EAAO,EAAE,KAAK,GAAE,WAAW,EAAO;IAwBvF,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;CAwG/D;AAGD,eAAe,gBAAgB,CAAA;AAC/B,OAAO,EAAC,gBAAgB,EAAC,CAAA"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { IPromptContentPart, IPromptMessage, IPromptParams, IPromptResponse, IPromptTool } from "../../interfaces/IAIProvider.js";
|
|
2
2
|
import type { AILogService } from "../../services/AILogService.js";
|
|
3
|
-
import
|
|
4
|
-
declare class OpenAiProvider
|
|
3
|
+
import AbstractAiProvider from "./AbstractAiProvider.js";
|
|
4
|
+
declare class OpenAiProvider extends AbstractAiProvider {
|
|
5
5
|
protected _apiKey: string;
|
|
6
6
|
protected _model: any;
|
|
7
7
|
protected _visionModel?: string;
|
|
8
8
|
protected _client: any;
|
|
9
|
-
|
|
10
|
-
constructor(apiKey: string, model: string, visionModel?: string, aiLogService?: AILogService);
|
|
9
|
+
constructor(apiKey: string, model: string, visionModel?: string, aiLogService?: AILogService, providerName?: string);
|
|
11
10
|
get model(): any;
|
|
12
11
|
get client(): any;
|
|
13
12
|
protected get visionModel(): string;
|
|
@@ -48,33 +47,6 @@ declare class OpenAiProvider implements IAIProvider {
|
|
|
48
47
|
text?: undefined;
|
|
49
48
|
})[];
|
|
50
49
|
}[];
|
|
51
|
-
protected hasImageInput(input: IPromptParams): boolean;
|
|
52
|
-
protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
|
|
53
|
-
protected serializePromptOutput(output: unknown): string;
|
|
54
|
-
protected buildLogPayload(input: IPromptParams, params: {
|
|
55
|
-
model: string;
|
|
56
|
-
systemPrompt: string;
|
|
57
|
-
startedAt: Date;
|
|
58
|
-
endedAt?: Date;
|
|
59
|
-
inputTokens?: number;
|
|
60
|
-
outputTokens?: number;
|
|
61
|
-
tokens?: number;
|
|
62
|
-
output?: unknown;
|
|
63
|
-
success: boolean;
|
|
64
|
-
errorMessage?: string;
|
|
65
|
-
}): IAILogBase;
|
|
66
|
-
protected registerPromptLog(input: IPromptParams, params: {
|
|
67
|
-
model: string;
|
|
68
|
-
systemPrompt: string;
|
|
69
|
-
startedAt: Date;
|
|
70
|
-
endedAt?: Date;
|
|
71
|
-
inputTokens?: number;
|
|
72
|
-
outputTokens?: number;
|
|
73
|
-
tokens?: number;
|
|
74
|
-
output?: unknown;
|
|
75
|
-
success: boolean;
|
|
76
|
-
errorMessage?: string;
|
|
77
|
-
}): Promise<void>;
|
|
78
50
|
generateEmbedding({ text, model }: {
|
|
79
51
|
text: string;
|
|
80
52
|
model: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OpenAiProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,
|
|
1
|
+
{"version":3,"file":"OpenAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OpenAiProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAEjE,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD,cAAM,cAAe,SAAQ,kBAAkB;IAC3C,SAAS,CAAC,OAAO,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,MAAM,EAAE,GAAG,CAAA;IACrB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC/B,SAAS,CAAC,OAAO,EAAE,GAAG,CAAA;gBAEV,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,EAAE,YAAY,GAAE,MAAiB;IAgB7H,IAAI,KAAK,QAKR;IAED,IAAI,MAAM,QAQT;IAED,SAAS,KAAK,WAAW,WAExB;IAED,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG;QAAC,IAAI,EAAE,WAAW,CAAC;QAAC,SAAS,EAAE;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAA;SAAC,CAAA;KAAC,CAAC;IA0BhL,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,kBAAkB,EAAE;;;;;;;;;;;;IAmBvD,SAAS,CAAC,UAAU,CAAC,OAAO,GAAE,cAAc,EAAO;;;;;;;;;;;;;;;IAS7C,iBAAiB,CAAC,EAAC,IAAI,EAAE,KAA8B,EAAC,EAAE;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,KAAK,EAAC,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ/G,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAE,WAAW,EAAO;;;;;;;;IAe5C,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IAYrD,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO;cAY7B,iBAAiB,CAAC,SAAS,GAAE,GAAG,EAAO,EAAE,KAAK,GAAE,WAAW,EAAO;IAwB5E,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;CA0G/D;AAGD,eAAe,cAAc,CAAA;AAC7B,OAAO,EAAC,cAAc,EAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AILogSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/AILogSqliteRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,wBAAwB,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,cAAM,qBAAsB,SAAQ,wBAAwB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAE,YAAW,gBAAgB;IAEpH,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC;IAClB,SAAS,CAAC,SAAS,EAAE,MAAM,CAAW;IACtC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAmH;IACnJ,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,CAAe;IAChD,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAiC;IAC/D,SAAS,CAAC,UAAU,EAAE,MAAM,CAAS;IACrC,SAAS,CAAC,cAAc;;;;QAGvB;IACD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAS;IACnC,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"AILogSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/AILogSqliteRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,wBAAwB,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,cAAM,qBAAsB,SAAQ,wBAAwB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAE,YAAW,gBAAgB;IAEpH,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC;IAClB,SAAS,CAAC,SAAS,EAAE,MAAM,CAAW;IACtC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAmH;IACnJ,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,CAAe;IAChD,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAiC;IAC/D,SAAS,CAAC,UAAU,EAAE,MAAM,CAAS;IACrC,SAAS,CAAC,cAAc;;;;QAGvB;IACD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAS;IACnC,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,CA2BxC;CAEJ;AAED,eAAe,qBAAqB,CAAA;AACpC,OAAO,EAAC,qBAAqB,EAAC,CAAA"}
|
|
@@ -27,6 +27,7 @@ declare const AILogBaseSchema: z.ZodObject<{
|
|
|
27
27
|
startedAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
28
28
|
endedAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
29
29
|
responseTime: z.ZodOptional<z.ZodString>;
|
|
30
|
+
responseTimeMS: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
30
31
|
output: z.ZodOptional<z.ZodString>;
|
|
31
32
|
success: z.ZodOptional<z.ZodBoolean>;
|
|
32
33
|
statusCode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
@@ -62,6 +63,7 @@ declare const AILogSchema: z.ZodObject<{
|
|
|
62
63
|
startedAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
63
64
|
endedAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
64
65
|
responseTime: z.ZodOptional<z.ZodString>;
|
|
66
|
+
responseTimeMS: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
65
67
|
output: z.ZodOptional<z.ZodString>;
|
|
66
68
|
success: z.ZodOptional<z.ZodBoolean>;
|
|
67
69
|
statusCode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
@@ -75,6 +77,8 @@ declare const AILogSchema: z.ZodObject<{
|
|
|
75
77
|
_id: z.ZodCoercedString<unknown>;
|
|
76
78
|
username: z.ZodString;
|
|
77
79
|
}, z.core.$strip>>>;
|
|
80
|
+
createdAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
81
|
+
updatedAt: z.ZodOptional<z.ZodNullable<z.ZodCoercedDate<unknown>>>;
|
|
78
82
|
}, z.core.$strip>;
|
|
79
83
|
export default AILogSchema;
|
|
80
84
|
export { AILogSchema, AILogBaseSchema };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AILogSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/AILogSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,QAAA,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"AILogSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/AILogSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuCnB,CAAC;AAEH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOX,CAAA;AAEN,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAC,WAAW,EAAE,eAAe,EAAC,CAAA"}
|