@tensorcost/sdk 0.3.1 → 0.6.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/CHANGELOG.md +74 -0
- package/README.md +65 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +22 -0
- package/dist/config.js.map +1 -1
- package/dist/errors.d.ts +20 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +22 -0
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/anthropic.d.ts +2 -1
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +104 -12
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/bedrock.d.ts +48 -0
- package/dist/providers/bedrock.d.ts.map +1 -0
- package/dist/providers/bedrock.js +293 -0
- package/dist/providers/bedrock.js.map +1 -0
- package/dist/providers/detect.d.ts +9 -3
- package/dist/providers/detect.d.ts.map +1 -1
- package/dist/providers/detect.js +39 -6
- package/dist/providers/detect.js.map +1 -1
- package/dist/providers/index.d.ts +2 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +2 -0
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/openai.d.ts +2 -1
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +158 -14
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/vertex.d.ts +14 -0
- package/dist/providers/vertex.d.ts.map +1 -0
- package/dist/providers/vertex.js +167 -0
- package/dist/providers/vertex.js.map +1 -0
- package/dist/proxy-client.d.ts +24 -0
- package/dist/proxy-client.d.ts.map +1 -1
- package/dist/proxy-client.js +66 -1
- package/dist/proxy-client.js.map +1 -1
- package/dist/transport.d.ts +3 -0
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +9 -2
- package/dist/transport.js.map +1 -1
- package/dist/types.d.ts +108 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/wrap.d.ts +8 -0
- package/dist/wrap.d.ts.map +1 -1
- package/dist/wrap.js +38 -3
- package/dist/wrap.js.map +1 -1
- package/package.json +17 -2
package/dist/providers/openai.js
CHANGED
|
@@ -15,11 +15,12 @@
|
|
|
15
15
|
* call falls back to the customer's direct provider path.
|
|
16
16
|
*/
|
|
17
17
|
import { randomUUID } from "node:crypto";
|
|
18
|
-
import { proxyRequest } from "../proxy-client.js";
|
|
18
|
+
import { proxyRequest, shouldFallBackToProvider } from "../proxy-client.js";
|
|
19
19
|
import { TensorCostProxyError } from "../errors.js";
|
|
20
20
|
import { emitEvent } from "../telemetry.js";
|
|
21
|
-
const SDK_VERSION = "tensorcost-node/0.
|
|
21
|
+
const SDK_VERSION = "tensorcost-node/0.6.0";
|
|
22
22
|
const MARKER = "__tensorcost_wrapped__";
|
|
23
|
+
const WITH_META_MARKER = "__tensorcost_with_meta__";
|
|
23
24
|
function nowIso() {
|
|
24
25
|
return new Date().toISOString();
|
|
25
26
|
}
|
|
@@ -61,6 +62,24 @@ function readClientApiKey(client) {
|
|
|
61
62
|
const raw = client["apiKey"];
|
|
62
63
|
return typeof raw === "string" && raw.length > 0 ? raw : null;
|
|
63
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Build the metadata bag to attach to an observation. Merges the wrap-time
|
|
67
|
+
* defaults (deployment + promptTemplateId) with any per-call overrides
|
|
68
|
+
* supplied via withMeta(). Returns undefined when nothing is configured so
|
|
69
|
+
* the field is absent from the envelope and the wire is not polluted by an
|
|
70
|
+
* empty object.
|
|
71
|
+
*/
|
|
72
|
+
function buildMetadata(deployment, promptTemplateId, perCallMeta) {
|
|
73
|
+
const base = {};
|
|
74
|
+
if (deployment !== null)
|
|
75
|
+
base.deployment = deployment;
|
|
76
|
+
if (promptTemplateId !== null)
|
|
77
|
+
base.prompt_template_id = promptTemplateId;
|
|
78
|
+
// Per-call meta wins over wrap-time defaults for overlapping keys.
|
|
79
|
+
if (perCallMeta)
|
|
80
|
+
Object.assign(base, perCallMeta);
|
|
81
|
+
return Object.keys(base).length > 0 ? base : undefined;
|
|
82
|
+
}
|
|
64
83
|
function wrapMethod(bound, opts) {
|
|
65
84
|
const wrapped = async function (...args) {
|
|
66
85
|
const requestAt = nowIso();
|
|
@@ -68,6 +87,14 @@ function wrapMethod(bound, opts) {
|
|
|
68
87
|
const model = (firstArg && typeof firstArg === "object" && firstArg.model) ||
|
|
69
88
|
"unknown";
|
|
70
89
|
const correlationId = randomUUID();
|
|
90
|
+
// Build metadata once per call. Per-call overrides beat wrap-time defaults.
|
|
91
|
+
const meta = buildMetadata(opts.deployment, opts.promptTemplateId, opts.perCallMeta);
|
|
92
|
+
const metaSpread = meta !== undefined ? { metadata: meta } : {};
|
|
93
|
+
// Per-agent-run attribution. Dedicated top-level fields (NOT the
|
|
94
|
+
// metadata bag — see Observation.agent_id doc in types.ts). Per-call
|
|
95
|
+
// withMeta() override beats the wrap-time default.
|
|
96
|
+
const resolvedAgentId = opts.perCallAgentId ?? opts.agentId ?? undefined;
|
|
97
|
+
const resolvedWorkflowId = opts.perCallWorkflowId ?? opts.workflowId ?? undefined;
|
|
71
98
|
// Applied-mode path: route through proxy-client with full hardening.
|
|
72
99
|
if (opts.hardening.appliedMode &&
|
|
73
100
|
opts.hardening.proxyUrl &&
|
|
@@ -104,6 +131,8 @@ function wrapMethod(bound, opts) {
|
|
|
104
131
|
operation: String(opts.operation),
|
|
105
132
|
correlationId,
|
|
106
133
|
environment: opts.environment,
|
|
134
|
+
agentId: resolvedAgentId,
|
|
135
|
+
workflowId: resolvedWorkflowId,
|
|
107
136
|
retry: opts.hardening.retry,
|
|
108
137
|
timeoutMs: opts.hardening.timeoutMs,
|
|
109
138
|
onLifecycleEvent: opts.hardening.onLifecycleEvent,
|
|
@@ -111,6 +140,12 @@ function wrapMethod(bound, opts) {
|
|
|
111
140
|
});
|
|
112
141
|
}
|
|
113
142
|
catch (proxyErr) {
|
|
143
|
+
// A run-budget refusal is a decision, not a failure. Rethrow it
|
|
144
|
+
// immediately so it never reaches the fail-open fallback below —
|
|
145
|
+
// otherwise the cap would be enforced by the proxy and then
|
|
146
|
+
// silently bypassed by us calling OpenAI directly.
|
|
147
|
+
if (!shouldFallBackToProvider(proxyErr))
|
|
148
|
+
throw proxyErr;
|
|
114
149
|
proxyFailed = true;
|
|
115
150
|
proxyFailureError = proxyErr;
|
|
116
151
|
}
|
|
@@ -139,9 +174,11 @@ function wrapMethod(bound, opts) {
|
|
|
139
174
|
status: "error",
|
|
140
175
|
error_message: `${tcErr.name}: ${tcErr.message}`,
|
|
141
176
|
correlation_id: correlationId,
|
|
142
|
-
tenant_id: opts.tenantId,
|
|
143
177
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
144
178
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
179
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
180
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
181
|
+
...metaSpread,
|
|
145
182
|
};
|
|
146
183
|
try {
|
|
147
184
|
opts.transport.post(obs);
|
|
@@ -175,9 +212,11 @@ function wrapMethod(bound, opts) {
|
|
|
175
212
|
status: "success",
|
|
176
213
|
error_message: null,
|
|
177
214
|
correlation_id: correlationId,
|
|
178
|
-
tenant_id: opts.tenantId,
|
|
179
215
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
180
216
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
217
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
218
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
219
|
+
...metaSpread,
|
|
181
220
|
};
|
|
182
221
|
try {
|
|
183
222
|
opts.transport.post(obs);
|
|
@@ -199,9 +238,11 @@ function wrapMethod(bound, opts) {
|
|
|
199
238
|
status: "error",
|
|
200
239
|
error_message: `${directErr.name}: ${directErr.message}`,
|
|
201
240
|
correlation_id: correlationId,
|
|
202
|
-
tenant_id: opts.tenantId,
|
|
203
241
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
204
242
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
243
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
244
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
245
|
+
...metaSpread,
|
|
205
246
|
};
|
|
206
247
|
try {
|
|
207
248
|
opts.transport.post(obs);
|
|
@@ -228,9 +269,11 @@ function wrapMethod(bound, opts) {
|
|
|
228
269
|
status: "success",
|
|
229
270
|
error_message: null,
|
|
230
271
|
correlation_id: correlationId,
|
|
231
|
-
tenant_id: opts.tenantId,
|
|
232
272
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
233
273
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
274
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
275
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
276
|
+
...metaSpread,
|
|
234
277
|
};
|
|
235
278
|
try {
|
|
236
279
|
opts.transport.post(obs);
|
|
@@ -255,9 +298,11 @@ function wrapMethod(bound, opts) {
|
|
|
255
298
|
status: "success",
|
|
256
299
|
error_message: null,
|
|
257
300
|
correlation_id: correlationId,
|
|
258
|
-
tenant_id: opts.tenantId,
|
|
259
301
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
260
302
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
303
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
304
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
305
|
+
...metaSpread,
|
|
261
306
|
};
|
|
262
307
|
try {
|
|
263
308
|
opts.transport.post(obs);
|
|
@@ -279,9 +324,11 @@ function wrapMethod(bound, opts) {
|
|
|
279
324
|
status: "error",
|
|
280
325
|
error_message: `${err.name}: ${err.message}`,
|
|
281
326
|
correlation_id: correlationId,
|
|
282
|
-
tenant_id: opts.tenantId,
|
|
283
327
|
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
284
328
|
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
329
|
+
...(resolvedAgentId !== undefined ? { agent_id: resolvedAgentId } : {}),
|
|
330
|
+
...(resolvedWorkflowId !== undefined ? { workflow_id: resolvedWorkflowId } : {}),
|
|
331
|
+
...metaSpread,
|
|
285
332
|
};
|
|
286
333
|
try {
|
|
287
334
|
opts.transport.post(obs);
|
|
@@ -293,42 +340,139 @@ function wrapMethod(bound, opts) {
|
|
|
293
340
|
Object.defineProperty(wrapped, MARKER, { value: true, enumerable: false });
|
|
294
341
|
return wrapped;
|
|
295
342
|
}
|
|
296
|
-
export function install(client, transport, tenantId, environment, connectionId, hardening) {
|
|
343
|
+
export function install(client, transport, tenantId, environment, connectionId, hardening, deployment = null, promptTemplateId = null, agentId = null, workflowId = null) {
|
|
297
344
|
if (!client || typeof client !== "object")
|
|
298
345
|
return;
|
|
299
346
|
const c = client;
|
|
300
347
|
const chat = c.chat;
|
|
301
348
|
const chatCompletions = chat && typeof chat === "object" ? chat.completions : undefined;
|
|
349
|
+
// Capture the original (pre-wrap) bound functions so withMeta() can build
|
|
350
|
+
// fresh wrappers from the real provider method — not from an already-wrapped
|
|
351
|
+
// one that would post a second observation.
|
|
352
|
+
let originalChatBound;
|
|
353
|
+
let originalLegacyBound;
|
|
302
354
|
if (chatCompletions &&
|
|
303
355
|
typeof chatCompletions.create === "function" &&
|
|
304
356
|
!chatCompletions.create[MARKER]) {
|
|
305
|
-
|
|
306
|
-
chatCompletions.create = wrapMethod(
|
|
357
|
+
originalChatBound = chatCompletions.create.bind(chatCompletions);
|
|
358
|
+
chatCompletions.create = wrapMethod(originalChatBound, {
|
|
307
359
|
operation: "chat.completions",
|
|
308
360
|
transport,
|
|
309
361
|
tenantId,
|
|
310
362
|
environment,
|
|
311
363
|
connectionId,
|
|
312
364
|
hardening,
|
|
365
|
+
deployment,
|
|
366
|
+
promptTemplateId,
|
|
367
|
+
agentId,
|
|
368
|
+
workflowId,
|
|
313
369
|
clientRef: client,
|
|
314
370
|
});
|
|
315
371
|
}
|
|
372
|
+
else if (chatCompletions && chatCompletions.create?.[MARKER]) {
|
|
373
|
+
// Already wrapped — store the underlying original for withMeta.
|
|
374
|
+
// We can't easily unwrap; withMeta on a double-wrapped client is a no-op
|
|
375
|
+
// for the double-post concern (the original is not recoverable without
|
|
376
|
+
// a stronger bookkeeping mechanism). This is an edge case (wrap called
|
|
377
|
+
// twice); the MARKER guard below prevents the second wrap anyway.
|
|
378
|
+
originalChatBound = chatCompletions.create;
|
|
379
|
+
}
|
|
316
380
|
const legacy = c.completions;
|
|
317
381
|
if (legacy &&
|
|
318
382
|
typeof legacy === "object" &&
|
|
319
383
|
typeof legacy.create === "function" &&
|
|
320
384
|
!legacy.create[MARKER]) {
|
|
321
|
-
|
|
322
|
-
legacy.create = wrapMethod(
|
|
385
|
+
originalLegacyBound = legacy.create.bind(legacy);
|
|
386
|
+
legacy.create = wrapMethod(originalLegacyBound, {
|
|
323
387
|
operation: "completions",
|
|
324
388
|
transport,
|
|
325
389
|
tenantId,
|
|
326
390
|
environment,
|
|
327
391
|
connectionId,
|
|
328
392
|
hardening: { ...hardening, appliedMode: false }, // legacy completions not proxied
|
|
393
|
+
deployment,
|
|
394
|
+
promptTemplateId,
|
|
395
|
+
agentId,
|
|
396
|
+
workflowId,
|
|
329
397
|
clientRef: client,
|
|
330
398
|
});
|
|
331
399
|
}
|
|
400
|
+
// withMeta() — returns a shallow proxy of the client with per-call metadata
|
|
401
|
+
// overrides. Builds fresh wrapMethod() calls against the ORIGINAL (pre-wrap)
|
|
402
|
+
// bound function so exactly one observation is emitted per call.
|
|
403
|
+
//
|
|
404
|
+
// Usage:
|
|
405
|
+
// (client as any).withMeta({ promptTemplateId: 'rerank-v3' })
|
|
406
|
+
// .chat.completions.create({ model: 'gpt-4o', messages })
|
|
407
|
+
if (typeof c[WITH_META_MARKER] === "undefined" && originalChatBound !== undefined) {
|
|
408
|
+
c[WITH_META_MARKER] = true; // mark so we don't add it twice
|
|
409
|
+
client["withMeta"] = function (callMeta) {
|
|
410
|
+
const perCallMeta = {};
|
|
411
|
+
if (callMeta.deployment !== undefined)
|
|
412
|
+
perCallMeta.deployment = callMeta.deployment;
|
|
413
|
+
if (callMeta.promptTemplateId !== undefined)
|
|
414
|
+
perCallMeta.prompt_template_id = callMeta.promptTemplateId;
|
|
415
|
+
// Any extra caller-supplied keys also land in the metadata bag.
|
|
416
|
+
// agentId / workflowId are extracted separately below (they are
|
|
417
|
+
// dedicated envelope fields, not metadata bag members) so they are
|
|
418
|
+
// excluded from this freeform pass-through.
|
|
419
|
+
for (const [k, v] of Object.entries(callMeta)) {
|
|
420
|
+
if (k !== "deployment" &&
|
|
421
|
+
k !== "promptTemplateId" &&
|
|
422
|
+
k !== "agentId" &&
|
|
423
|
+
k !== "workflowId") {
|
|
424
|
+
perCallMeta[k] = v;
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
const perCallAgentId = callMeta.agentId;
|
|
428
|
+
const perCallWorkflowId = callMeta.workflowId;
|
|
429
|
+
const proxyChat = originalChatBound !== undefined
|
|
430
|
+
? wrapMethod(originalChatBound, {
|
|
431
|
+
operation: "chat.completions",
|
|
432
|
+
transport,
|
|
433
|
+
tenantId,
|
|
434
|
+
environment,
|
|
435
|
+
connectionId,
|
|
436
|
+
hardening,
|
|
437
|
+
deployment,
|
|
438
|
+
promptTemplateId,
|
|
439
|
+
agentId,
|
|
440
|
+
workflowId,
|
|
441
|
+
perCallAgentId,
|
|
442
|
+
perCallWorkflowId,
|
|
443
|
+
perCallMeta,
|
|
444
|
+
clientRef: client,
|
|
445
|
+
})
|
|
446
|
+
: undefined;
|
|
447
|
+
const proxyLegacy = originalLegacyBound !== undefined
|
|
448
|
+
? wrapMethod(originalLegacyBound, {
|
|
449
|
+
operation: "completions",
|
|
450
|
+
transport,
|
|
451
|
+
tenantId,
|
|
452
|
+
environment,
|
|
453
|
+
connectionId,
|
|
454
|
+
hardening: { ...hardening, appliedMode: false },
|
|
455
|
+
deployment,
|
|
456
|
+
promptTemplateId,
|
|
457
|
+
agentId,
|
|
458
|
+
workflowId,
|
|
459
|
+
perCallAgentId,
|
|
460
|
+
perCallWorkflowId,
|
|
461
|
+
perCallMeta,
|
|
462
|
+
clientRef: client,
|
|
463
|
+
})
|
|
464
|
+
: undefined;
|
|
465
|
+
return {
|
|
466
|
+
...c,
|
|
467
|
+
chat: chatCompletions !== undefined && proxyChat !== undefined
|
|
468
|
+
? { ...chat, completions: { ...chatCompletions, create: proxyChat } }
|
|
469
|
+
: chat,
|
|
470
|
+
completions: legacy !== undefined && proxyLegacy !== undefined
|
|
471
|
+
? { ...legacy, create: proxyLegacy }
|
|
472
|
+
: legacy,
|
|
473
|
+
};
|
|
474
|
+
};
|
|
475
|
+
}
|
|
332
476
|
}
|
|
333
|
-
export const __test__ = { MARKER };
|
|
477
|
+
export const __test__ = { MARKER, WITH_META_MARKER };
|
|
334
478
|
//# sourceMappingURL=openai.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAC5C,MAAM,MAAM,GAAG,wBAAwB,CAAC;AAYxC,SAAS,MAAM;IACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,YAAY,CACnB,QAAiB;IAEjB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,KAAK,GAAI,QAAgC,CAAC,KAAK,CAAC;IACtD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,MAAM,GACV,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,MAAe;IACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,2BAA2B,CAAC;IAC9E,MAAM,GAAG,GAAI,MAAkC,CAAC,SAAS,CAAC,CAAC;IAC3D,qEAAqE;IACrE,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,EAAE,GAAI,MAAkC,CAAC,gBAAgB,CAAC,CAAC;IACjE,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,IAAI,GAAI,EAA6B,CAAC,mBAAmB,CAAC,CAAC;QACjE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,2BAA2B,CAAC;AACrE,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAe;IACvC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,GAAG,GAAI,MAAkC,CAAC,QAAQ,CAAC,CAAC;IAC1D,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAChE,CAAC;AAED,SAAS,UAAU,CACjB,KAA8B,EAC9B,IAWC;IAED,MAAM,OAAO,GAAG,KAAK,WAA0B,GAAG,IAAW;QAC3D,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,KAAK,GACT,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC;YAC5D,SAAS,CAAC;QACZ,MAAM,aAAa,GAAG,UAAU,EAAE,CAAC;QAEnC,qEAAqE;QACrE,IACE,IAAI,CAAC,SAAS,CAAC,WAAW;YAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ;YACvB,IAAI,CAAC,SAAS,KAAK,kBAAkB,EACrC,CAAC;YACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,qEAAqE;YACrE,qEAAqE;YACrE,gDAAgD;YAChD,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;gBAC7D,CAAC,CAAG,IAAI,CAAC,SAAqC,CAAC,gBAAgB,CAAwC;gBACvG,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,YAAY,GAAG,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;YAEtD,MAAM,IAAI,GAA4B;gBACpC,GAAG,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;aACrB,CAAC;YAEF,oEAAoE;YACpE,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAE7D,IAAI,WAAoB,CAAC;YACzB,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,iBAAiB,GAAiB,IAAI,CAAC;YAE3C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAE,IAAI,CAAC,SAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC7E,MAAM,WAAW,GAAG,MAAM,QAAQ,EAAE,CAAC;oBACrC,WAAW,GAAG,MAAM,YAAY,CAAC;wBAC/B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;wBACjC,WAAW;wBACX,WAAW;wBACX,YAAY;wBACZ,IAAI;wBACJ,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;wBACpB,QAAQ,EAAE,QAAQ;wBAClB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;wBACjC,aAAa;wBACb,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK;wBAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;wBACnC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB;wBACjD,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO;qBAChC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,QAAQ,EAAE,CAAC;oBAClB,WAAW,GAAG,IAAI,CAAC;oBACnB,iBAAiB,GAAG,QAAiB,CAAC;gBACxC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;YAED,mEAAmE;YACnE,qCAAqC;YACrC,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;oBACpC,0DAA0D;oBAC1D,MAAM,KAAK,GACT,iBAAiB,YAAY,oBAAoB;wBAC/C,CAAC,CAAC,iBAAiB;wBACnB,CAAC,CAAC,IAAI,oBAAoB,CACtB,iBAAiB,EAAE,OAAO,IAAI,mBAAmB,EACjD,EAAE,KAAK,EAAE,iBAAiB,IAAI,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,CACtD,CAAC;oBACR,MAAM,GAAG,GAAgB;wBACvB,WAAW,EAAE,WAAW;wBACxB,QAAQ,EAAE,QAAQ;wBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;wBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,UAAU,EAAE,SAAS;wBACrB,WAAW,EAAE,MAAM,EAAE;wBACrB,YAAY,EAAE,IAAI;wBAClB,aAAa,EAAE,IAAI;wBACnB,cAAc,EAAE,IAAI;wBACpB,MAAM,EAAE,OAAO;wBACf,aAAa,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE;wBAChD,cAAc,EAAE,aAAa;wBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;wBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC5E,CAAC;oBACF,IAAI,CAAC;wBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;oBACrE,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,sDAAsD;gBACtD,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;oBACzC,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,QAAQ;oBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;oBACpB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;oBACjC,aAAa,EAAE,CAAC;oBAChB,SAAS,EAAE,CAAC;oBACZ,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ;iBACrD,CAAC,CAAC;gBAEH,IAAI,CAAC;oBACH,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACrD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;oBACvD,MAAM,GAAG,GAAgB;wBACvB,WAAW,EAAE,WAAW;wBACxB,QAAQ,EAAE,QAAQ;wBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;wBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,UAAU,EAAE,SAAS;wBACrB,WAAW,EAAE,MAAM,EAAE;wBACrB,YAAY,EAAE,KAAK;wBACnB,aAAa,EAAE,MAAM;wBACrB,cAAc,EAAE,IAAI;wBACpB,MAAM,EAAE,SAAS;wBACjB,aAAa,EAAE,IAAI;wBACnB,cAAc,EAAE,aAAa;wBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;wBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC5E,CAAC;oBACF,IAAI,CAAC;wBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;oBACrE,OAAO,cAAc,CAAC;gBACxB,CAAC;gBAAC,OAAO,SAAS,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAgB;wBACvB,WAAW,EAAE,WAAW;wBACxB,QAAQ,EAAE,QAAQ;wBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;wBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,UAAU,EAAE,SAAS;wBACrB,WAAW,EAAE,MAAM,EAAE;wBACrB,YAAY,EAAE,IAAI;wBAClB,aAAa,EAAE,IAAI;wBACnB,cAAc,EAAE,IAAI;wBACpB,MAAM,EAAE,OAAO;wBACf,aAAa,EAAE,GAAI,SAAmB,CAAC,IAAI,KAAM,SAAmB,CAAC,OAAO,EAAE;wBAC9E,cAAc,EAAE,aAAa;wBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;wBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC5E,CAAC;oBACF,IAAI,CAAC;wBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;oBACrE,MAAM,SAAS,CAAC;gBAClB,CAAC;YACH,CAAC;YAED,wBAAwB;YACxB,MAAM,QAAQ,GAAG,WAAsC,CAAC;YACxD,MAAM,QAAQ,GAAG,QAAQ,EAAE,KAA4C,CAAC;YACxE,MAAM,KAAK,GACT,OAAO,QAAQ,EAAE,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,MAAM,MAAM,GACV,OAAO,QAAQ,EAAE,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YACtF,MAAM,GAAG,GAAgB;gBACvB,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM,EAAE;gBACrB,YAAY,EAAE,KAAK;gBACnB,aAAa,EAAE,MAAM;gBACrB,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,SAAS;gBACjB,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,aAAa;gBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;YACF,IAAI,CAAC;gBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;YACrE,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,sEAAsE;QACtE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,GAAG,GAAgB;gBACvB,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM,EAAE;gBACrB,YAAY,EAAE,KAAK;gBACnB,aAAa,EAAE,MAAM;gBACrB,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,SAAS;gBACjB,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,aAAa;gBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;YACF,IAAI,CAAC;gBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;YACrE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAgB;gBACvB,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM,EAAE;gBACrB,YAAY,EAAE,IAAI;gBAClB,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,OAAO;gBACf,aAAa,EAAE,GAAI,GAAa,CAAC,IAAI,KAAM,GAAa,CAAC,OAAO,EAAE;gBAClE,cAAc,EAAE,aAAa;gBAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;YACF,IAAI,CAAC;gBAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;YACrE,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,MAAe,EACf,SAA+B,EAC/B,QAAuB,EACvB,WAA0B,EAC1B,YAA2B,EAC3B,SAAmC;IAEnC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO;IAClD,MAAM,CAAC,GAAG,MAA6B,CAAC;IAExC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;IACpB,MAAM,eAAe,GACnB,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,IACE,eAAe;QACf,OAAO,eAAe,CAAC,MAAM,KAAK,UAAU;QAC5C,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAC/B,CAAC;QACD,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC3D,eAAe,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE;YACzC,SAAS,EAAE,kBAAkB;YAC7B,SAAS;YACT,QAAQ;YACR,WAAW;YACX,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC;IAC7B,IACE,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU;QACnC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EACtB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE;YAChC,SAAS,EAAE,aAAa;YACxB,SAAS;YACT,QAAQ;YACR,WAAW;YACX,YAAY;YACZ,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,iCAAiC;YAClF,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Vertex AI (google-genai Client, vertexai=true) — observe-only.
|
|
3
|
+
*
|
|
4
|
+
* Patches `client.models.generate_content` and `generate_content_stream`
|
|
5
|
+
* on the unified `@google/genai` Client when constructed in Vertex mode.
|
|
6
|
+
* Mirrors the Python `_vertex.py` provider and the Bedrock observe-only
|
|
7
|
+
* contract: no applied mode, fail-open transport, streaming placeholders.
|
|
8
|
+
*/
|
|
9
|
+
import type { ObservationTransport } from "../transport.js";
|
|
10
|
+
export declare function install(client: unknown, transport: ObservationTransport, tenantId: string | null, environment: string | null, connectionId: string | null, deployment?: string | null, promptTemplateId?: string | null, agentId?: string | null, workflowId?: string | null): void;
|
|
11
|
+
export declare const __test__: {
|
|
12
|
+
MARKER: string;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=vertex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../src/providers/vertex.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AA0J5D,wBAAgB,OAAO,CACrB,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,oBAAoB,EAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,UAAU,GAAE,MAAM,GAAG,IAAW,EAChC,gBAAgB,GAAE,MAAM,GAAG,IAAW,EACtC,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,UAAU,GAAE,MAAM,GAAG,IAAW,GAC/B,IAAI,CA0BN;AAED,eAAO,MAAM,QAAQ;;CAAa,CAAC"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Vertex AI (google-genai Client, vertexai=true) — observe-only.
|
|
3
|
+
*
|
|
4
|
+
* Patches `client.models.generate_content` and `generate_content_stream`
|
|
5
|
+
* on the unified `@google/genai` Client when constructed in Vertex mode.
|
|
6
|
+
* Mirrors the Python `_vertex.py` provider and the Bedrock observe-only
|
|
7
|
+
* contract: no applied mode, fail-open transport, streaming placeholders.
|
|
8
|
+
*/
|
|
9
|
+
import { randomUUID } from "node:crypto";
|
|
10
|
+
const SDK_VERSION = "tensorcost-node/0.6.0";
|
|
11
|
+
const MARKER = "__tensorcost_wrapped__";
|
|
12
|
+
function nowIso() {
|
|
13
|
+
return new Date().toISOString();
|
|
14
|
+
}
|
|
15
|
+
function resolveModel(args) {
|
|
16
|
+
if (args.length === 0)
|
|
17
|
+
return "unknown";
|
|
18
|
+
const first = args[0];
|
|
19
|
+
if (typeof first === "string")
|
|
20
|
+
return first;
|
|
21
|
+
if (first && typeof first === "object") {
|
|
22
|
+
const model = first.model;
|
|
23
|
+
if (typeof model === "string")
|
|
24
|
+
return model;
|
|
25
|
+
}
|
|
26
|
+
return "unknown";
|
|
27
|
+
}
|
|
28
|
+
function extractUsage(response) {
|
|
29
|
+
if (!response || typeof response !== "object") {
|
|
30
|
+
return { input: null, output: null };
|
|
31
|
+
}
|
|
32
|
+
const usage = response.usageMetadata
|
|
33
|
+
?? response.usage_metadata;
|
|
34
|
+
if (!usage || typeof usage !== "object") {
|
|
35
|
+
return { input: null, output: null };
|
|
36
|
+
}
|
|
37
|
+
const u = usage;
|
|
38
|
+
const inputRaw = u.promptTokenCount ?? u.prompt_token_count;
|
|
39
|
+
const outputRaw = u.candidatesTokenCount ?? u.candidates_token_count;
|
|
40
|
+
return {
|
|
41
|
+
input: typeof inputRaw === "number" ? inputRaw : null,
|
|
42
|
+
output: typeof outputRaw === "number" ? outputRaw : null,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
const METHODS = [
|
|
46
|
+
{ name: "generateContent", operation: "vertex.generate_content", streaming: false },
|
|
47
|
+
{
|
|
48
|
+
name: "generateContentStream",
|
|
49
|
+
operation: "vertex.generate_content_stream",
|
|
50
|
+
streaming: true,
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
function wrapMethod(bound, opts) {
|
|
54
|
+
const wrapped = async (...args) => {
|
|
55
|
+
const model = resolveModel(args);
|
|
56
|
+
const requestAt = nowIso();
|
|
57
|
+
const correlationId = randomUUID();
|
|
58
|
+
const meta = {};
|
|
59
|
+
if (opts.deployment !== null)
|
|
60
|
+
meta.deployment = opts.deployment;
|
|
61
|
+
if (opts.promptTemplateId !== null)
|
|
62
|
+
meta.prompt_template_id = opts.promptTemplateId;
|
|
63
|
+
const metaSpread = Object.keys(meta).length > 0 ? { metadata: meta } : {};
|
|
64
|
+
const commonFields = {
|
|
65
|
+
sdk_version: SDK_VERSION,
|
|
66
|
+
provider: "vertex",
|
|
67
|
+
model,
|
|
68
|
+
operation: opts.operation,
|
|
69
|
+
request_at: requestAt,
|
|
70
|
+
correlation_id: correlationId,
|
|
71
|
+
...(opts.environment !== null ? { environment: opts.environment } : {}),
|
|
72
|
+
...(opts.connectionId !== null ? { connection_id: opts.connectionId } : {}),
|
|
73
|
+
...(opts.agentId !== null ? { agent_id: opts.agentId } : {}),
|
|
74
|
+
...(opts.workflowId !== null ? { workflow_id: opts.workflowId } : {}),
|
|
75
|
+
...metaSpread,
|
|
76
|
+
};
|
|
77
|
+
try {
|
|
78
|
+
const response = await bound(...args);
|
|
79
|
+
if (opts.streaming) {
|
|
80
|
+
const obs = {
|
|
81
|
+
...commonFields,
|
|
82
|
+
response_at: nowIso(),
|
|
83
|
+
input_tokens: null,
|
|
84
|
+
output_tokens: null,
|
|
85
|
+
cost_usd_cents: null,
|
|
86
|
+
status: "success",
|
|
87
|
+
error_message: "streaming: per-chunk token accounting not yet implemented",
|
|
88
|
+
};
|
|
89
|
+
try {
|
|
90
|
+
opts.transport.post(obs);
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
/* fail-open */
|
|
94
|
+
}
|
|
95
|
+
return response;
|
|
96
|
+
}
|
|
97
|
+
const { input, output } = extractUsage(response);
|
|
98
|
+
const obs = {
|
|
99
|
+
...commonFields,
|
|
100
|
+
response_at: nowIso(),
|
|
101
|
+
input_tokens: input,
|
|
102
|
+
output_tokens: output,
|
|
103
|
+
cost_usd_cents: null,
|
|
104
|
+
status: "success",
|
|
105
|
+
error_message: null,
|
|
106
|
+
};
|
|
107
|
+
try {
|
|
108
|
+
opts.transport.post(obs);
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
/* fail-open */
|
|
112
|
+
}
|
|
113
|
+
return response;
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
const obs = {
|
|
117
|
+
...commonFields,
|
|
118
|
+
response_at: nowIso(),
|
|
119
|
+
input_tokens: null,
|
|
120
|
+
output_tokens: null,
|
|
121
|
+
cost_usd_cents: null,
|
|
122
|
+
status: "error",
|
|
123
|
+
error_message: `${err.name}: ${err.message}`,
|
|
124
|
+
};
|
|
125
|
+
try {
|
|
126
|
+
opts.transport.post(obs);
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
/* fail-open */
|
|
130
|
+
}
|
|
131
|
+
throw err;
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
wrapped[MARKER] = true;
|
|
135
|
+
return wrapped;
|
|
136
|
+
}
|
|
137
|
+
export function install(client, transport, tenantId, environment, connectionId, deployment = null, promptTemplateId = null, agentId = null, workflowId = null) {
|
|
138
|
+
void tenantId;
|
|
139
|
+
if (!client || typeof client !== "object")
|
|
140
|
+
return;
|
|
141
|
+
const c = client;
|
|
142
|
+
const models = c.models;
|
|
143
|
+
if (!models || typeof models !== "object")
|
|
144
|
+
return;
|
|
145
|
+
const m = models;
|
|
146
|
+
for (const spec of METHODS) {
|
|
147
|
+
const original = m[spec.name];
|
|
148
|
+
if (typeof original !== "function")
|
|
149
|
+
continue;
|
|
150
|
+
const fn = original;
|
|
151
|
+
if (fn[MARKER])
|
|
152
|
+
continue;
|
|
153
|
+
m[spec.name] = wrapMethod(fn.bind(models), {
|
|
154
|
+
operation: spec.operation,
|
|
155
|
+
streaming: spec.streaming,
|
|
156
|
+
transport,
|
|
157
|
+
environment,
|
|
158
|
+
connectionId,
|
|
159
|
+
deployment,
|
|
160
|
+
promptTemplateId,
|
|
161
|
+
agentId,
|
|
162
|
+
workflowId,
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
export const __test__ = { MARKER };
|
|
167
|
+
//# sourceMappingURL=vertex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vertex.js","sourceRoot":"","sources":["../../src/providers/vertex.ts"],"names":[],"mappings":"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"}
|
package/dist/proxy-client.d.ts
CHANGED
|
@@ -45,6 +45,14 @@ export interface ProxyRequestOptions {
|
|
|
45
45
|
operation: string;
|
|
46
46
|
correlationId: string;
|
|
47
47
|
environment: string | null;
|
|
48
|
+
/**
|
|
49
|
+
* Per-agent-run attribution, forwarded as `x-tc-agent-id` /
|
|
50
|
+
* `x-tc-workflow-id`. These are what let the proxy scope a spend cap to
|
|
51
|
+
* a run; without the workflow id it has no run to cap. Same values the
|
|
52
|
+
* observation envelope carries as `agent_id` / `workflow_id`.
|
|
53
|
+
*/
|
|
54
|
+
agentId?: string | undefined;
|
|
55
|
+
workflowId?: string | undefined;
|
|
48
56
|
retry?: RetryConfig;
|
|
49
57
|
timeoutMs?: number;
|
|
50
58
|
onLifecycleEvent?: LifecycleEventCallback;
|
|
@@ -60,5 +68,21 @@ export interface ProxyRequestOptions {
|
|
|
60
68
|
* Returns the parsed JSON body on success.
|
|
61
69
|
*/
|
|
62
70
|
export declare function proxyRequest(opts: ProxyRequestOptions): Promise<unknown>;
|
|
71
|
+
/**
|
|
72
|
+
* Should a failed proxy attempt fall back to calling the provider
|
|
73
|
+
* directly?
|
|
74
|
+
*
|
|
75
|
+
* The applied-mode fail-open contract exists so that TensorCost being
|
|
76
|
+
* down never takes the customer's inference down with it. Every transport
|
|
77
|
+
* failure — timeout, network error, 5xx, open circuit — is therefore a
|
|
78
|
+
* "go around us" signal and returns true.
|
|
79
|
+
*
|
|
80
|
+
* A run-budget refusal is the one case where the proxy is healthy and the
|
|
81
|
+
* refusal IS the product. Falling back there would issue the provider call
|
|
82
|
+
* anyway and turn a hard cap into a log line, which is precisely the
|
|
83
|
+
* failure mode the cap was built to eliminate. So it returns false and the
|
|
84
|
+
* error propagates to the caller.
|
|
85
|
+
*/
|
|
86
|
+
export declare function shouldFallBackToProvider(err: unknown): boolean;
|
|
63
87
|
export { TensorCostError };
|
|
64
88
|
//# sourceMappingURL=proxy-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-client.d.ts","sourceRoot":"","sources":["../src/proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EACL,eAAe,
|
|
1
|
+
{"version":3,"file":"proxy-client.d.ts","sourceRoot":"","sources":["../src/proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EACL,eAAe,EAOhB,MAAM,aAAa,CAAC;AAQrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,OAAO,EAAE,cAAc,CAAC;IAExB,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAID;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,OAAO,CAAC,CAwTlB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAE9D;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
|