@mate-academy/llm-gateway 7.7.0 → 7.8.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/README.md +39 -27
- package/dist/LLMGateway.d.ts +30 -0
- package/dist/LLMGateway.js +56 -0
- package/dist/LLMGateway.js.map +1 -0
- package/dist/LLMGateway.typedefs.d.ts +5 -0
- package/dist/{initLLMGateway.typedefs.js → LLMGateway.typedefs.js} +1 -1
- package/dist/LLMGateway.typedefs.js.map +1 -0
- package/dist/LLMService.typedefs.d.ts +9 -6
- package/dist/LLMService.typedefs.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js +39 -10
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js +39 -9
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js +19 -4
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js.map +1 -1
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js +39 -10
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js +39 -10
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js.map +1 -1
- package/dist/providers/OpenAICompatible/OpenAICompatibleSpeechToText.service.js +19 -4
- package/dist/providers/OpenAICompatible/OpenAICompatibleSpeechToText.service.js.map +1 -1
- package/dist/services/LLMBaseService.abstract.d.ts +12 -8
- package/dist/services/LLMBaseService.abstract.js +29 -14
- package/dist/services/LLMBaseService.abstract.js.map +1 -1
- package/dist/utilities/llmTracing/index.d.ts +2 -3
- package/dist/utilities/llmTracing/index.js +2 -6
- package/dist/utilities/llmTracing/index.js.map +1 -1
- package/dist/utilities/llmTracing/llmTracing.constants.d.ts +6 -0
- package/dist/utilities/llmTracing/llmTracing.constants.js +10 -0
- package/dist/utilities/llmTracing/llmTracing.constants.js.map +1 -0
- package/dist/utilities/llmTracing/llmTracing.typedefs.d.ts +48 -0
- package/dist/utilities/llmTracing/noopLLMTracing.d.ts +3 -0
- package/dist/utilities/llmTracing/noopLLMTracing.js +30 -0
- package/dist/utilities/llmTracing/noopLLMTracing.js.map +1 -0
- package/package.json +1 -2
- package/dist/initLLMGateway.d.ts +0 -15
- package/dist/initLLMGateway.js +0 -21
- package/dist/initLLMGateway.js.map +0 -1
- package/dist/initLLMGateway.typedefs.d.ts +0 -9
- package/dist/initLLMGateway.typedefs.js.map +0 -1
- package/dist/utilities/llmTracing/activeLLMTracer.d.ts +0 -12
- package/dist/utilities/llmTracing/activeLLMTracer.js +0 -37
- package/dist/utilities/llmTracing/activeLLMTracer.js.map +0 -1
- package/dist/utilities/llmTracing/fallbackMetric.d.ts +0 -21
- package/dist/utilities/llmTracing/fallbackMetric.js +0 -24
- package/dist/utilities/llmTracing/fallbackMetric.js.map +0 -1
- package/dist/utilities/llmTracing/withLLMTrace.d.ts +0 -12
- package/dist/utilities/llmTracing/withLLMTrace.js +0 -21
- package/dist/utilities/llmTracing/withLLMTrace.js.map +0 -1
package/README.md
CHANGED
|
@@ -59,7 +59,7 @@ npm install @mate-academy/llm-gateway
|
|
|
59
59
|
## Features
|
|
60
60
|
|
|
61
61
|
- Support for multiple LLM providers (OpenAI, Google Generative AI)
|
|
62
|
-
- **Tracing port**: The gateway defines an `LLMGatewayTracer` port and captures generations, tool observations, usage, and cost automatically at every LLM call; fire-and-forget so a tracing failure never blocks or fails one. `@mate-academy/llm-tracer` provides the Langfuse-backed implementation; the gateway itself carries no tracing SDK.
|
|
62
|
+
- **Tracing port**: The gateway defines an `LLMGatewayTracer` port and captures generations, tool observations, usage, and cost automatically at every LLM call; fire-and-forget so a tracing failure never blocks or fails one. `@mate-academy/llm-tracer` provides the Langfuse-backed implementation; the gateway itself carries no tracing SDK. Tracing is opt-in per `LLMGateway` instance — `LLMServiceFactory` keeps working untraced.
|
|
63
63
|
- **Structured Output**: Type-safe JSON responses with schema validation
|
|
64
64
|
- **Extensible Schema Architecture**: Driver pattern with provider-specific adapters
|
|
65
65
|
- **LLM Metrics & Reporting**: Comprehensive metrics collection with automatic cost calculation
|
|
@@ -82,64 +82,76 @@ npm install @mate-academy/llm-gateway
|
|
|
82
82
|
|
|
83
83
|
### Tracing
|
|
84
84
|
|
|
85
|
-
The gateway defines the tracer port (`LLMGatewayTracer`)
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
85
|
+
The gateway defines the tracer port (`LLMGatewayTracer`) but carries no tracing
|
|
86
|
+
SDK of its own. `@mate-academy/llm-tracer` provides `createLangfuseTracer`, the
|
|
87
|
+
Langfuse-backed implementation of that port. Build an `LLMGateway` with it at
|
|
88
|
+
the composition root (the consumer's DI container / serverless core) and take
|
|
89
|
+
every traced service from that instance — feature code never touches Langfuse
|
|
90
|
+
credentials, and the package installs no process-wide state:
|
|
91
91
|
|
|
92
92
|
```typescript
|
|
93
|
-
import {
|
|
93
|
+
import { LLMGateway } from '@mate-academy/llm-gateway';
|
|
94
94
|
import { createLangfuseTracer } from '@mate-academy/llm-tracer';
|
|
95
95
|
|
|
96
|
-
// Once per process, at the composition root:
|
|
97
96
|
const tracer = createLangfuseTracer({
|
|
98
97
|
baseUrl: process.env.LANGFUSE_BASE_URL,
|
|
99
98
|
publicKey: process.env.LANGFUSE_PUBLIC_KEY,
|
|
100
99
|
secretKey: process.env.LANGFUSE_SECRET_KEY,
|
|
101
|
-
environment: process.env.
|
|
100
|
+
environment: process.env.APP_ENV,
|
|
102
101
|
// 'batched' for long-running processes, 'immediate' for Lambda
|
|
103
102
|
exportMode: 'batched',
|
|
104
103
|
});
|
|
105
104
|
|
|
106
|
-
|
|
105
|
+
const llmGateway = new LLMGateway({ tracer });
|
|
106
|
+
|
|
107
|
+
const completionService = llmGateway.getCompletionService({
|
|
108
|
+
provider: LLMProviders.OpenAI,
|
|
109
|
+
logger,
|
|
110
|
+
reporter,
|
|
111
|
+
});
|
|
107
112
|
```
|
|
108
113
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
114
|
+
`LLMServiceFactory`'s static methods stay available and stay untraced, so call
|
|
115
|
+
sites that know nothing about tracing keep working unchanged. Building
|
|
116
|
+
`new LLMGateway()` without a tracer is equally valid — it hands out services
|
|
117
|
+
wired to the no-op tracer, so nothing breaks before rollout.
|
|
118
|
+
`createLangfuseTracer` likewise falls back to a no-op when credentials are
|
|
119
|
+
missing.
|
|
112
120
|
|
|
113
|
-
|
|
121
|
+
Every completion / assistance call made through a gateway-built service emits a
|
|
114
122
|
`generation` observation (full prompt/completion content, model, params, usage,
|
|
115
123
|
cost) at the same success/error points the metrics reporter already wraps;
|
|
116
124
|
assistance tool loops emit a child `tool` observation per tool call. All of this
|
|
117
125
|
is fire-and-forget — a tracing failure never blocks or fails an LLM call.
|
|
118
126
|
|
|
119
|
-
|
|
120
|
-
|
|
127
|
+
To group several calls under one trace, wrap the work so nested gateway calls
|
|
128
|
+
attach to it automatically:
|
|
121
129
|
|
|
122
130
|
```typescript
|
|
123
|
-
await
|
|
124
|
-
|
|
125
|
-
}
|
|
131
|
+
await llmGateway.withTrace(
|
|
132
|
+
'my-operation',
|
|
133
|
+
{ metadata: { feature: 'city-prediction' } },
|
|
134
|
+
async () => {
|
|
135
|
+
// gateway calls here nest under the trace
|
|
136
|
+
},
|
|
137
|
+
);
|
|
126
138
|
```
|
|
127
139
|
|
|
128
140
|
Short-lived processes (Lambdas, scripts) must flush before exit, since buffered
|
|
129
141
|
events are lost otherwise:
|
|
130
142
|
|
|
131
143
|
```typescript
|
|
132
|
-
await
|
|
144
|
+
await llmGateway.flush(); // safe no-op when tracing is disabled
|
|
133
145
|
```
|
|
134
146
|
|
|
135
147
|
The CloudWatch fallback-serving metric (`LangfuseFallbackServed`, namespace
|
|
136
|
-
`LLMGateway`) is
|
|
137
|
-
|
|
138
|
-
the package carries no AWS dependency).
|
|
148
|
+
`LLMGateway`) is emitted through `llmGateway.emitFallbackServed(...)`; pass a
|
|
149
|
+
real emitter as `fallbackMetricEmitter` when building the gateway (it defaults
|
|
150
|
+
to a no-op so the package carries no AWS dependency).
|
|
139
151
|
|
|
140
|
-
To assert emitted observations in tests,
|
|
141
|
-
`LLMGatewayTracer`
|
|
142
|
-
|
|
152
|
+
To assert emitted observations in tests, build the gateway with a test double
|
|
153
|
+
implementing `LLMGatewayTracer` and assert what it captured (see
|
|
154
|
+
`@mate-academy/llm-tracer`'s README for asserting real Langfuse spans).
|
|
143
155
|
|
|
144
156
|
### Logger Interface
|
|
145
157
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type LLMProviders, type LLMPurposes, type LLMServiceByPurpose, type LLMServiceOptions } from './LLMService.typedefs';
|
|
2
|
+
import { type LLMGatewayOptions } from './LLMGateway.typedefs';
|
|
3
|
+
import { type LLMReporterInterface } from './utilities/reporter';
|
|
4
|
+
import { type LangfuseFallbackMetricDimensions, type LLMGatewayTracer, type LLMTraceContext } from './utilities/llmTracing';
|
|
5
|
+
/**
|
|
6
|
+
* An explicitly constructed gateway: every service it hands out is wired to the
|
|
7
|
+
* tracer this instance was built with. `LLMServiceFactory` stays available for
|
|
8
|
+
* call sites that want no tracing, so nothing depends on process-wide state.
|
|
9
|
+
*/
|
|
10
|
+
export declare class LLMGateway {
|
|
11
|
+
private readonly tracer;
|
|
12
|
+
private readonly fallbackMetricEmitter;
|
|
13
|
+
constructor(options?: LLMGatewayOptions);
|
|
14
|
+
getCompletionService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined = undefined>(options: LLMServiceOptions<Provider, Reporter>): LLMServiceByPurpose<Provider, Reporter>[LLMPurposes.Completion];
|
|
15
|
+
getAssistanceService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined>(options: LLMServiceOptions<Provider, Reporter>): LLMServiceByPurpose<Provider, Reporter>[LLMPurposes.Assistance];
|
|
16
|
+
getSpeechToTextService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined>(options: LLMServiceOptions<Provider, Reporter>): LLMServiceByPurpose<Provider, Reporter>[LLMPurposes.SpeechToText];
|
|
17
|
+
getTextToSpeechService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined>(options: LLMServiceOptions<Provider, Reporter>): LLMServiceByPurpose<Provider, Reporter>[LLMPurposes.TextToSpeech];
|
|
18
|
+
getTracer(): LLMGatewayTracer;
|
|
19
|
+
/**
|
|
20
|
+
* Starts a trace around `fn`; every gateway call inside nests into it.
|
|
21
|
+
*/
|
|
22
|
+
withTrace<Result>(name: string, context: LLMTraceContext, fn: () => Promise<Result>): Promise<Result>;
|
|
23
|
+
/**
|
|
24
|
+
* Flushes buffered traces. Serverless handlers call this on completion; the
|
|
25
|
+
* long-running API calls it from its shutdown hook only.
|
|
26
|
+
*/
|
|
27
|
+
flush(): Promise<void>;
|
|
28
|
+
emitFallbackServed(dimensions: LangfuseFallbackMetricDimensions): void;
|
|
29
|
+
private traced;
|
|
30
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMGateway = void 0;
|
|
4
|
+
const LLMService_factory_1 = require("./LLMService.factory");
|
|
5
|
+
const llmTracing_1 = require("./utilities/llmTracing");
|
|
6
|
+
/**
|
|
7
|
+
* An explicitly constructed gateway: every service it hands out is wired to the
|
|
8
|
+
* tracer this instance was built with. `LLMServiceFactory` stays available for
|
|
9
|
+
* call sites that want no tracing, so nothing depends on process-wide state.
|
|
10
|
+
*/
|
|
11
|
+
class LLMGateway {
|
|
12
|
+
tracer;
|
|
13
|
+
fallbackMetricEmitter;
|
|
14
|
+
constructor(options = {}) {
|
|
15
|
+
this.tracer = options.tracer ?? llmTracing_1.noopLLMGatewayTracer;
|
|
16
|
+
this.fallbackMetricEmitter
|
|
17
|
+
= options.fallbackMetricEmitter ?? llmTracing_1.noopFallbackMetricEmitter;
|
|
18
|
+
}
|
|
19
|
+
getCompletionService(options) {
|
|
20
|
+
return this.traced(LLMService_factory_1.LLMServiceFactory.getCompletionService(options));
|
|
21
|
+
}
|
|
22
|
+
getAssistanceService(options) {
|
|
23
|
+
return this.traced(LLMService_factory_1.LLMServiceFactory.getAssistanceService(options));
|
|
24
|
+
}
|
|
25
|
+
getSpeechToTextService(options) {
|
|
26
|
+
return this.traced(LLMService_factory_1.LLMServiceFactory.getSpeechToTextService(options));
|
|
27
|
+
}
|
|
28
|
+
getTextToSpeechService(options) {
|
|
29
|
+
return this.traced(LLMService_factory_1.LLMServiceFactory.getTextToSpeechService(options));
|
|
30
|
+
}
|
|
31
|
+
getTracer() {
|
|
32
|
+
return this.tracer;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Starts a trace around `fn`; every gateway call inside nests into it.
|
|
36
|
+
*/
|
|
37
|
+
withTrace(name, context, fn) {
|
|
38
|
+
return this.tracer.withTrace(name, context, fn);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Flushes buffered traces. Serverless handlers call this on completion; the
|
|
42
|
+
* long-running API calls it from its shutdown hook only.
|
|
43
|
+
*/
|
|
44
|
+
flush() {
|
|
45
|
+
return this.tracer.flush();
|
|
46
|
+
}
|
|
47
|
+
emitFallbackServed(dimensions) {
|
|
48
|
+
this.fallbackMetricEmitter(dimensions);
|
|
49
|
+
}
|
|
50
|
+
traced(service) {
|
|
51
|
+
service.initTracer(this.tracer);
|
|
52
|
+
return service;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.LLMGateway = LLMGateway;
|
|
56
|
+
//# sourceMappingURL=LLMGateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMGateway.js","sourceRoot":"","sources":["../src/LLMGateway.ts"],"names":[],"mappings":";;;AAMA,6DAAyD;AAGzD,uDAOgC;AAMhC;;;;GAIG;AACH,MAAa,UAAU;IACJ,MAAM,CAAmB;IAEzB,qBAAqB,CAAgC;IAEtE,YAAY,UAA6B,EAAE;QACzC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,iCAAoB,CAAC;QACrD,IAAI,CAAC,qBAAqB;cACtB,OAAO,CAAC,qBAAqB,IAAI,sCAAyB,CAAC;IACjE,CAAC;IAED,oBAAoB,CAIlB,OAA8C;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,sCAAiB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,oBAAoB,CAIlB,OAA8C;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,sCAAiB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,sBAAsB,CAIpB,OAA8C;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,sCAAiB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,sBAAsB,CAIpB,OAA8C;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,sCAAiB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,SAAS,CACP,IAAY,EACZ,OAAwB,EACxB,EAAyB;QAEzB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,kBAAkB,CAAC,UAA4C;QAC7D,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAEO,MAAM,CAAmC,OAAgB;QAC/D,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEhC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AA/ED,gCA+EC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMGateway.typedefs.js","sourceRoot":"","sources":["../src/LLMGateway.typedefs.ts"],"names":[],"mappings":""}
|
|
@@ -5,6 +5,7 @@ import type { LLMCompletionService, LLMAssistanceService, LLMSpeechToTextService
|
|
|
5
5
|
import type { LLMLoggerInterface } from './utilities/logger';
|
|
6
6
|
import type { LLMReporterInterface } from './utilities/reporter';
|
|
7
7
|
import type { LLMSchemaInterface, InferSchema } from './utilities/schema';
|
|
8
|
+
import type { LLMTracedPrompt } from './utilities/llmTracing/llmTracing.typedefs';
|
|
8
9
|
/**
|
|
9
10
|
* Enum of supported LLM providers.
|
|
10
11
|
*/
|
|
@@ -271,10 +272,6 @@ export type LLMCompletionResult = LLMRequestResult<{
|
|
|
271
272
|
*/
|
|
272
273
|
export type LLMMethodBaseOptions<Reporter extends LLMReporterInterface<any> | undefined> = {
|
|
273
274
|
abortSignal?: AbortSignal;
|
|
274
|
-
/**
|
|
275
|
-
* Per-call Langfuse trace context. The prompt name (PR2) names the generation
|
|
276
|
-
* observation; absent it, the base service falls back to `<service>/<method>`.
|
|
277
|
-
*/
|
|
278
275
|
traceContext?: LLMCallTraceContext;
|
|
279
276
|
} & (Reporter extends LLMReporterInterface<infer R> ? R extends undefined ? {
|
|
280
277
|
reporterContext?: never;
|
|
@@ -284,10 +281,16 @@ export type LLMMethodBaseOptions<Reporter extends LLMReporterInterface<any> | un
|
|
|
284
281
|
reporterContext?: never;
|
|
285
282
|
});
|
|
286
283
|
/**
|
|
287
|
-
* Per-call trace context threaded into a single gateway call.
|
|
288
|
-
*
|
|
284
|
+
* Per-call trace context threaded into a single gateway call. When a prompt is
|
|
285
|
+
* present it names the observation instead of `<service>/<method>` and links
|
|
286
|
+
* the observation to its managed prompt version.
|
|
289
287
|
*/
|
|
290
288
|
export type LLMCallTraceContext = {
|
|
289
|
+
prompt?: LLMTracedPrompt;
|
|
290
|
+
/**
|
|
291
|
+
* @deprecated Use `prompt`. Kept on 7.8 for compatibility; still names the
|
|
292
|
+
* observation when `prompt` is absent.
|
|
293
|
+
*/
|
|
291
294
|
promptName?: string;
|
|
292
295
|
metadata?: Record<string, string | number | boolean>;
|
|
293
296
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LLMService.typedefs.js","sourceRoot":"","sources":["../src/LLMService.typedefs.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"LLMService.typedefs.js","sourceRoot":"","sources":["../src/LLMService.typedefs.ts"],"names":[],"mappings":";;;AAmCA;;GAEG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,yDAAyC,CAAA;IACzC,iCAAiB,CAAA;AACnB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAoBD;;GAEG;AACH,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,wCAAyB,CAAA;IACzB,8CAA+B,CAAA;IAC/B,8CAA+B,CAAA;AACjC,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAiLD;;GAEG;AACH,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAED;;GAEG;AACH,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,sCAAa,CAAA;IACb,gDAAuB,CAAA;IACvB,kDAAyB,CAAA;AAC3B,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAgLD;;GAEG;AACH,IAAY,sBAeX;AAfD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,yDAA+B,CAAA;IAC/B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,oDAA0B,CAAA;IAC1B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;AACzB,CAAC,EAfW,sBAAsB,sCAAtB,sBAAsB,QAejC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ export * from './LLMError';
|
|
|
2
2
|
export * from './LLMService.constants';
|
|
3
3
|
export * from './LLMService.factory';
|
|
4
4
|
export * from './LLMService.typedefs';
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
5
|
+
export * from './LLMGateway';
|
|
6
|
+
export * from './LLMGateway.typedefs';
|
|
7
7
|
export * from './providers';
|
|
8
8
|
export * from './services';
|
|
9
9
|
export * from './utilities';
|
package/dist/index.js
CHANGED
|
@@ -18,8 +18,8 @@ __exportStar(require("./LLMError"), exports);
|
|
|
18
18
|
__exportStar(require("./LLMService.constants"), exports);
|
|
19
19
|
__exportStar(require("./LLMService.factory"), exports);
|
|
20
20
|
__exportStar(require("./LLMService.typedefs"), exports);
|
|
21
|
-
__exportStar(require("./
|
|
22
|
-
__exportStar(require("./
|
|
21
|
+
__exportStar(require("./LLMGateway"), exports);
|
|
22
|
+
__exportStar(require("./LLMGateway.typedefs"), exports);
|
|
23
23
|
__exportStar(require("./providers"), exports);
|
|
24
24
|
__exportStar(require("./services"), exports);
|
|
25
25
|
__exportStar(require("./utilities"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC,+CAA6B;AAC7B,wDAAsC;AACtC,8CAA4B;AAC5B,6CAA2B;AAC3B,8CAA4B"}
|
|
@@ -5,7 +5,6 @@ const uuid_1 = require("uuid");
|
|
|
5
5
|
const genai_1 = require("@google/genai");
|
|
6
6
|
const LLMService_typedefs_1 = require("../../../LLMService.typedefs");
|
|
7
7
|
const serializeError_1 = require("../../../utilities/serializeError");
|
|
8
|
-
const llmTracing_1 = require("../../../utilities/llmTracing");
|
|
9
8
|
const tools_1 = require("../../../utilities/tools");
|
|
10
9
|
const services_1 = require("../../../services");
|
|
11
10
|
const GoogleGenerativeAI_typedefs_1 = require("../../../providers/GoogleGenerativeAI/GoogleGenerativeAI.typedefs");
|
|
@@ -270,8 +269,9 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
270
269
|
return GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity.getFileDataParts(uncachedFiles);
|
|
271
270
|
}
|
|
272
271
|
async assistInChatText(options) {
|
|
273
|
-
const { model, reporterContext, abortSignal, } = options;
|
|
272
|
+
const { model, reporterContext, abortSignal, traceContext, } = options;
|
|
274
273
|
const writeMetrics = this.reporter?.initWriter(reporterContext);
|
|
274
|
+
const method = this.getMethodName(this.assistInChatText);
|
|
275
275
|
try {
|
|
276
276
|
const { chatSession, messageParts, sendMessageConfig, } = await this.prepareChatMessage({
|
|
277
277
|
chatId: options.chatId,
|
|
@@ -299,7 +299,7 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
299
299
|
const { totalUsage } = toolLoopResult;
|
|
300
300
|
const regularInputTokens = totalUsage.promptTokens - totalUsage.cachedTokens;
|
|
301
301
|
await this.writeSuccessMetrics({
|
|
302
|
-
method
|
|
302
|
+
method,
|
|
303
303
|
model,
|
|
304
304
|
usage: {
|
|
305
305
|
inputTextTokens: regularInputTokens,
|
|
@@ -307,6 +307,13 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
307
307
|
outputTextTokens: totalUsage.candidatesTokens,
|
|
308
308
|
},
|
|
309
309
|
writeMetrics,
|
|
310
|
+
generationTrace: this.buildGenerationTrace({
|
|
311
|
+
method,
|
|
312
|
+
traceContext,
|
|
313
|
+
input: options.message,
|
|
314
|
+
output: responseText,
|
|
315
|
+
modelParameters: model.config,
|
|
316
|
+
}),
|
|
310
317
|
});
|
|
311
318
|
return {
|
|
312
319
|
text: responseText,
|
|
@@ -318,13 +325,20 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
318
325
|
}
|
|
319
326
|
catch (error) {
|
|
320
327
|
await this.writeErrorMetrics({
|
|
321
|
-
method
|
|
328
|
+
method,
|
|
322
329
|
model,
|
|
323
330
|
isAborted: abortSignal?.aborted,
|
|
324
331
|
writeMetrics,
|
|
332
|
+
error,
|
|
333
|
+
generationTrace: this.buildGenerationTrace({
|
|
334
|
+
method,
|
|
335
|
+
traceContext,
|
|
336
|
+
input: options.message,
|
|
337
|
+
modelParameters: model.config,
|
|
338
|
+
}),
|
|
325
339
|
});
|
|
326
340
|
this.logRequestFailure({
|
|
327
|
-
method
|
|
341
|
+
method,
|
|
328
342
|
message: 'Error assisting in chat',
|
|
329
343
|
error,
|
|
330
344
|
isAborted: abortSignal?.aborted,
|
|
@@ -334,8 +348,9 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
334
348
|
}
|
|
335
349
|
}
|
|
336
350
|
async assistInChatStructured(options) {
|
|
337
|
-
const { model, abortSignal, schema, reporterContext, } = options;
|
|
351
|
+
const { model, abortSignal, schema, reporterContext, traceContext, } = options;
|
|
338
352
|
const writeMetrics = this.reporter?.initWriter(reporterContext);
|
|
353
|
+
const method = this.getMethodName(this.assistInChatStructured);
|
|
339
354
|
try {
|
|
340
355
|
const googleSchema = schema._toProviderSchema(LLMService_typedefs_1.LLMProviders.GoogleGenerativeAI);
|
|
341
356
|
const { chatSession, messageParts, sendMessageConfig, } = await this.prepareChatMessage({
|
|
@@ -394,7 +409,7 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
394
409
|
const regularInputTokens = totalUsage.promptTokens
|
|
395
410
|
- totalUsage.cachedTokens;
|
|
396
411
|
await this.writeSuccessMetrics({
|
|
397
|
-
method
|
|
412
|
+
method,
|
|
398
413
|
model,
|
|
399
414
|
usage: {
|
|
400
415
|
inputTextTokens: regularInputTokens,
|
|
@@ -402,6 +417,13 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
402
417
|
outputTextTokens: totalUsage.candidatesTokens,
|
|
403
418
|
},
|
|
404
419
|
writeMetrics,
|
|
420
|
+
generationTrace: this.buildGenerationTrace({
|
|
421
|
+
method,
|
|
422
|
+
traceContext,
|
|
423
|
+
input: options.message,
|
|
424
|
+
output: finalResponseText,
|
|
425
|
+
modelParameters: model.config,
|
|
426
|
+
}),
|
|
405
427
|
});
|
|
406
428
|
const structuredFollowUpRoundTrips = options.tools?.length ? 1 : 0;
|
|
407
429
|
return {
|
|
@@ -427,13 +449,20 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
427
449
|
}
|
|
428
450
|
catch (error) {
|
|
429
451
|
await this.writeErrorMetrics({
|
|
430
|
-
method
|
|
452
|
+
method,
|
|
431
453
|
model,
|
|
432
454
|
isAborted: abortSignal?.aborted,
|
|
433
455
|
writeMetrics,
|
|
456
|
+
error,
|
|
457
|
+
generationTrace: this.buildGenerationTrace({
|
|
458
|
+
method,
|
|
459
|
+
traceContext,
|
|
460
|
+
input: options.message,
|
|
461
|
+
modelParameters: model.config,
|
|
462
|
+
}),
|
|
434
463
|
});
|
|
435
464
|
this.logRequestFailure({
|
|
436
|
-
method
|
|
465
|
+
method,
|
|
437
466
|
message: 'Error assisting in chat with structured output',
|
|
438
467
|
error,
|
|
439
468
|
isAborted: abortSignal?.aborted,
|
|
@@ -601,7 +630,7 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
|
|
|
601
630
|
};
|
|
602
631
|
}
|
|
603
632
|
try {
|
|
604
|
-
const rawResult = await
|
|
633
|
+
const rawResult = await this.getTracer().withToolObservation(`${this.serviceName}/tool:${call.name}`, call.args, () => Promise.resolve(matchingTool.execute(call.args)));
|
|
605
634
|
return {
|
|
606
635
|
name: call.name,
|
|
607
636
|
result: (0, tools_1.normalizeToolResult)(rawResult),
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":"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"}
|