@revenium/openai 1.0.14 → 1.0.16
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 +48 -0
- package/README.md +32 -0
- package/dist/cjs/core/middleware/index.js +5 -1
- package/dist/cjs/core/middleware/index.js.map +1 -1
- package/dist/cjs/core/middleware/interfaces.js +94 -1
- package/dist/cjs/core/middleware/interfaces.js.map +1 -1
- package/dist/cjs/core/middleware/revenium-client.js +10 -0
- package/dist/cjs/core/middleware/revenium-client.js.map +1 -1
- package/dist/cjs/core/tracking/api-client.js +8 -2
- package/dist/cjs/core/tracking/api-client.js.map +1 -1
- package/dist/cjs/core/tracking/index.js +5 -1
- package/dist/cjs/core/tracking/index.js.map +1 -1
- package/dist/cjs/core/tracking/payload-builder.js +150 -1
- package/dist/cjs/core/tracking/payload-builder.js.map +1 -1
- package/dist/cjs/core/tracking/usage-tracker.js +91 -2
- package/dist/cjs/core/tracking/usage-tracker.js.map +1 -1
- package/dist/cjs/index.js +7 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/trace-fields.js +115 -0
- package/dist/cjs/utils/trace-fields.js.map +1 -0
- package/dist/esm/core/middleware/index.js +2 -2
- package/dist/esm/core/middleware/index.js.map +1 -1
- package/dist/esm/core/middleware/interfaces.js +90 -1
- package/dist/esm/core/middleware/interfaces.js.map +1 -1
- package/dist/esm/core/middleware/revenium-client.js +11 -1
- package/dist/esm/core/middleware/revenium-client.js.map +1 -1
- package/dist/esm/core/tracking/api-client.js +8 -2
- package/dist/esm/core/tracking/api-client.js.map +1 -1
- package/dist/esm/core/tracking/index.js +4 -4
- package/dist/esm/core/tracking/index.js.map +1 -1
- package/dist/esm/core/tracking/payload-builder.js +148 -1
- package/dist/esm/core/tracking/payload-builder.js.map +1 -1
- package/dist/esm/core/tracking/usage-tracker.js +56 -2
- package/dist/esm/core/tracking/usage-tracker.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/trace-fields.js +100 -0
- package/dist/esm/utils/trace-fields.js.map +1 -0
- package/dist/types/core/middleware/index.d.ts +2 -2
- package/dist/types/core/middleware/index.d.ts.map +1 -1
- package/dist/types/core/middleware/interfaces.d.ts +30 -0
- package/dist/types/core/middleware/interfaces.d.ts.map +1 -1
- package/dist/types/core/middleware/revenium-client.d.ts +7 -1
- package/dist/types/core/middleware/revenium-client.d.ts.map +1 -1
- package/dist/types/core/tracking/api-client.d.ts.map +1 -1
- package/dist/types/core/tracking/index.d.ts +4 -4
- package/dist/types/core/tracking/index.d.ts.map +1 -1
- package/dist/types/core/tracking/payload-builder.d.ts +3 -1
- package/dist/types/core/tracking/payload-builder.d.ts.map +1 -1
- package/dist/types/core/tracking/usage-tracker.d.ts +2 -0
- package/dist/types/core/tracking/usage-tracker.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/function-parameters.d.ts +89 -0
- package/dist/types/types/function-parameters.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +52 -4
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/utils/trace-fields.d.ts +11 -0
- package/dist/types/utils/trace-fields.d.ts.map +1 -0
- package/package.json +4 -1
|
@@ -9,6 +9,7 @@ import { getLogger } from "../config";
|
|
|
9
9
|
import { mapStopReason } from "../../utils/stop-reason-mapper.js";
|
|
10
10
|
import { buildMetadataFields } from "../../utils/metadata-builder.js";
|
|
11
11
|
import { getProviderMetadata } from "../providers";
|
|
12
|
+
import { getEnvironment, getRegion, getCredentialAlias, getTraceType, getTraceName, getParentTransactionId, getTransactionName, getRetryNumber, detectOperationSubtype, } from "../../utils/trace-fields.js";
|
|
12
13
|
// Global logger
|
|
13
14
|
const logger = getLogger();
|
|
14
15
|
/**
|
|
@@ -25,7 +26,7 @@ const logger = getLogger();
|
|
|
25
26
|
* @param providerInfo - Provider information for Azure support
|
|
26
27
|
* @returns Constructed payload for Revenium API
|
|
27
28
|
*/
|
|
28
|
-
export function buildPayload(operationType, response, request, startTime, duration, providerInfo) {
|
|
29
|
+
export async function buildPayload(operationType, response, request, startTime, duration, providerInfo) {
|
|
29
30
|
const now = new Date().toISOString();
|
|
30
31
|
const requestTime = new Date(startTime).toISOString();
|
|
31
32
|
const usage = response.usage;
|
|
@@ -38,6 +39,16 @@ export function buildPayload(operationType, response, request, startTime, durati
|
|
|
38
39
|
: { provider: "OpenAI", modelSource: "OPENAI" };
|
|
39
40
|
// Build metadata fields using utility (eliminates repetitive spreading)
|
|
40
41
|
const metadataFields = buildMetadataFields(request.usageMetadata);
|
|
42
|
+
// Get trace fields
|
|
43
|
+
const environment = getEnvironment();
|
|
44
|
+
const region = await getRegion();
|
|
45
|
+
const credentialAlias = getCredentialAlias();
|
|
46
|
+
const traceType = getTraceType();
|
|
47
|
+
const traceName = getTraceName();
|
|
48
|
+
const parentTransactionId = getParentTransactionId();
|
|
49
|
+
const transactionName = getTransactionName();
|
|
50
|
+
const retryNumber = getRetryNumber();
|
|
51
|
+
const operationSubtype = detectOperationSubtype(request);
|
|
41
52
|
// Common fields for all operations
|
|
42
53
|
const commonPayload = {
|
|
43
54
|
costType: "AI",
|
|
@@ -53,6 +64,16 @@ export function buildPayload(operationType, response, request, startTime, durati
|
|
|
53
64
|
totalTokenCount: usage.total_tokens,
|
|
54
65
|
// Metadata fields (processed by utility)
|
|
55
66
|
...metadataFields,
|
|
67
|
+
// Trace fields
|
|
68
|
+
environment: environment || undefined,
|
|
69
|
+
region: region || undefined,
|
|
70
|
+
credentialAlias: credentialAlias || undefined,
|
|
71
|
+
traceType: traceType || undefined,
|
|
72
|
+
traceName: traceName || undefined,
|
|
73
|
+
parentTransactionId: parentTransactionId || undefined,
|
|
74
|
+
transactionName: transactionName || undefined,
|
|
75
|
+
retryNumber: retryNumber !== undefined ? retryNumber : undefined,
|
|
76
|
+
operationSubtype: operationSubtype || undefined,
|
|
56
77
|
// Fixed middleware source identifier (spec format: revenium-{provider}-{language})
|
|
57
78
|
middlewareSource: "revenium-openai-node",
|
|
58
79
|
// Backend calculates costs
|
|
@@ -96,4 +117,130 @@ export function buildPayload(operationType, response, request, startTime, durati
|
|
|
96
117
|
timeToFirstToken: undefined,
|
|
97
118
|
};
|
|
98
119
|
}
|
|
120
|
+
export function buildImagePayload(operationSubtype, response, request, startTime, duration, providerInfo, usageMetadata) {
|
|
121
|
+
const now = new Date().toISOString();
|
|
122
|
+
const requestTime = new Date(startTime).toISOString();
|
|
123
|
+
const providerMetadata = providerInfo
|
|
124
|
+
? getProviderMetadata(providerInfo)
|
|
125
|
+
: { provider: "OpenAI", modelSource: "OPENAI" };
|
|
126
|
+
const metadataFields = buildMetadataFields(usageMetadata);
|
|
127
|
+
const attributes = {
|
|
128
|
+
billing_unit: "per_image",
|
|
129
|
+
operationSubtype,
|
|
130
|
+
actual_image_count: response.data?.length || 0,
|
|
131
|
+
};
|
|
132
|
+
if (operationSubtype === "generation") {
|
|
133
|
+
attributes.requested_image_count = request.n || 1;
|
|
134
|
+
attributes.resolution = request.size || "1024x1024";
|
|
135
|
+
attributes.quality = request.quality;
|
|
136
|
+
attributes.style = request.style;
|
|
137
|
+
attributes.response_format = request.response_format || "url";
|
|
138
|
+
attributes.revised_prompt_provided =
|
|
139
|
+
response.data?.[0]?.revised_prompt !== undefined;
|
|
140
|
+
}
|
|
141
|
+
else if (operationSubtype === "edit") {
|
|
142
|
+
attributes.requested_image_count = request.n || 1;
|
|
143
|
+
attributes.resolution = request.size || "1024x1024";
|
|
144
|
+
attributes.response_format = request.response_format || "url";
|
|
145
|
+
attributes.has_mask = request.mask !== undefined;
|
|
146
|
+
}
|
|
147
|
+
else if (operationSubtype === "variation") {
|
|
148
|
+
attributes.requested_image_count = request.n || 1;
|
|
149
|
+
attributes.resolution = request.size || "1024x1024";
|
|
150
|
+
attributes.response_format = request.response_format || "url";
|
|
151
|
+
}
|
|
152
|
+
return {
|
|
153
|
+
transactionId: `image-${operationSubtype}-${randomUUID()}`,
|
|
154
|
+
operationType: "IMAGE",
|
|
155
|
+
costType: "AI",
|
|
156
|
+
model: request.model || "dall-e-2",
|
|
157
|
+
provider: providerMetadata.provider,
|
|
158
|
+
modelSource: providerMetadata.modelSource,
|
|
159
|
+
middlewareSource: "revenium-openai-node",
|
|
160
|
+
requestTime,
|
|
161
|
+
responseTime: now,
|
|
162
|
+
requestDuration: duration,
|
|
163
|
+
completionStartTime: now,
|
|
164
|
+
inputTokenCount: null,
|
|
165
|
+
outputTokenCount: null,
|
|
166
|
+
totalTokenCount: null,
|
|
167
|
+
reasoningTokenCount: undefined,
|
|
168
|
+
cacheCreationTokenCount: undefined,
|
|
169
|
+
cacheReadTokenCount: undefined,
|
|
170
|
+
stopReason: "END",
|
|
171
|
+
isStreamed: false,
|
|
172
|
+
timeToFirstToken: undefined,
|
|
173
|
+
inputTokenCost: undefined,
|
|
174
|
+
outputTokenCost: undefined,
|
|
175
|
+
totalCost: undefined,
|
|
176
|
+
...metadataFields,
|
|
177
|
+
requestedImageCount: request.n || 1,
|
|
178
|
+
actualImageCount: response.data?.length || 0,
|
|
179
|
+
attributes,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
export function buildAudioPayload(operationSubtype, response, request, startTime, duration, providerInfo, usageMetadata) {
|
|
183
|
+
const now = new Date().toISOString();
|
|
184
|
+
const requestTime = new Date(startTime).toISOString();
|
|
185
|
+
const providerMetadata = providerInfo
|
|
186
|
+
? getProviderMetadata(providerInfo)
|
|
187
|
+
: { provider: "OpenAI", modelSource: "OPENAI" };
|
|
188
|
+
const metadataFields = buildMetadataFields(usageMetadata);
|
|
189
|
+
const attributes = {
|
|
190
|
+
operationSubtype,
|
|
191
|
+
};
|
|
192
|
+
let durationSeconds;
|
|
193
|
+
let characterCount;
|
|
194
|
+
if (operationSubtype === "speech_synthesis") {
|
|
195
|
+
attributes.billing_unit = "per_character";
|
|
196
|
+
attributes.requested_character_count = request.input?.length || 0;
|
|
197
|
+
attributes.voice = request.voice;
|
|
198
|
+
attributes.speed = request.speed;
|
|
199
|
+
attributes.response_format = request.response_format || "mp3";
|
|
200
|
+
characterCount = request.input?.length || 0;
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
attributes.billing_unit = "per_minute";
|
|
204
|
+
attributes.actual_duration_seconds = response.duration || 0;
|
|
205
|
+
attributes.language = request.language || response.language;
|
|
206
|
+
attributes.response_format = request.response_format || "json";
|
|
207
|
+
attributes.temperature = request.temperature;
|
|
208
|
+
durationSeconds = response.duration || 0;
|
|
209
|
+
if (operationSubtype === "translation") {
|
|
210
|
+
attributes.target_language = "en";
|
|
211
|
+
}
|
|
212
|
+
if (request.timestamp_granularities) {
|
|
213
|
+
attributes.timestamp_granularities = request.timestamp_granularities;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
return {
|
|
217
|
+
transactionId: `audio-${operationSubtype}-${randomUUID()}`,
|
|
218
|
+
operationType: "AUDIO",
|
|
219
|
+
costType: "AI",
|
|
220
|
+
model: request.model || "whisper-1",
|
|
221
|
+
provider: providerMetadata.provider,
|
|
222
|
+
modelSource: providerMetadata.modelSource,
|
|
223
|
+
middlewareSource: "revenium-openai-node",
|
|
224
|
+
requestTime,
|
|
225
|
+
responseTime: now,
|
|
226
|
+
requestDuration: duration,
|
|
227
|
+
completionStartTime: now,
|
|
228
|
+
inputTokenCount: null,
|
|
229
|
+
outputTokenCount: null,
|
|
230
|
+
totalTokenCount: null,
|
|
231
|
+
reasoningTokenCount: undefined,
|
|
232
|
+
cacheCreationTokenCount: undefined,
|
|
233
|
+
cacheReadTokenCount: undefined,
|
|
234
|
+
stopReason: "END",
|
|
235
|
+
isStreamed: false,
|
|
236
|
+
timeToFirstToken: undefined,
|
|
237
|
+
inputTokenCost: undefined,
|
|
238
|
+
outputTokenCost: undefined,
|
|
239
|
+
totalCost: undefined,
|
|
240
|
+
...metadataFields,
|
|
241
|
+
durationSeconds,
|
|
242
|
+
characterCount,
|
|
243
|
+
attributes,
|
|
244
|
+
};
|
|
245
|
+
}
|
|
99
246
|
//# sourceMappingURL=payload-builder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload-builder.js","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAQpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"payload-builder.js","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ const logger = getLogger();
|
|
|
15
15
|
*/
|
|
16
16
|
export async function sendReveniumMetrics(response, request, startTime, duration, providerInfo) {
|
|
17
17
|
await safeAsyncOperation(async () => {
|
|
18
|
-
const payload = buildPayload("CHAT", response, request, startTime, duration, providerInfo);
|
|
18
|
+
const payload = await buildPayload("CHAT", response, request, startTime, duration, providerInfo);
|
|
19
19
|
await sendToRevenium(payload);
|
|
20
20
|
}, "Chat completion tracking", {
|
|
21
21
|
logError: true,
|
|
@@ -28,7 +28,7 @@ export async function sendReveniumMetrics(response, request, startTime, duration
|
|
|
28
28
|
*/
|
|
29
29
|
export async function sendReveniumEmbeddingsMetrics(response, request, startTime, duration, providerInfo) {
|
|
30
30
|
await safeAsyncOperation(async () => {
|
|
31
|
-
const payload = buildPayload("EMBED", response, request, startTime, duration, providerInfo);
|
|
31
|
+
const payload = await buildPayload("EMBED", response, request, startTime, duration, providerInfo);
|
|
32
32
|
await sendToRevenium(payload);
|
|
33
33
|
}, "Embeddings tracking", {
|
|
34
34
|
logError: true,
|
|
@@ -115,4 +115,58 @@ export function trackEmbeddingsUsageAsync(trackingData) {
|
|
|
115
115
|
});
|
|
116
116
|
});
|
|
117
117
|
}
|
|
118
|
+
export async function trackImageUsageAsync(operationSubtype, response, request, startTime, duration, config, providerInfo, metadata) {
|
|
119
|
+
const trackingData = {
|
|
120
|
+
transactionId: `image-${operationSubtype}-${Date.now()}`,
|
|
121
|
+
operationSubtype,
|
|
122
|
+
model: request.model || "dall-e-2",
|
|
123
|
+
startTime,
|
|
124
|
+
duration,
|
|
125
|
+
};
|
|
126
|
+
logger.debug("Starting image tracking", trackingData);
|
|
127
|
+
Promise.resolve()
|
|
128
|
+
.then(async () => {
|
|
129
|
+
const { buildImagePayload } = await import("./payload-builder.js");
|
|
130
|
+
const payload = buildImagePayload(operationSubtype, response, request, startTime, duration, providerInfo, metadata);
|
|
131
|
+
await sendToRevenium(payload);
|
|
132
|
+
})
|
|
133
|
+
.then(() => {
|
|
134
|
+
logger.debug("Image tracking completed successfully", {
|
|
135
|
+
transactionId: trackingData.transactionId,
|
|
136
|
+
});
|
|
137
|
+
})
|
|
138
|
+
.catch((error) => {
|
|
139
|
+
logger.warn("Image tracking failed", {
|
|
140
|
+
error: error instanceof Error ? error.message : String(error),
|
|
141
|
+
transactionId: trackingData.transactionId,
|
|
142
|
+
});
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
export async function trackAudioUsageAsync(operationSubtype, response, request, startTime, duration, config, providerInfo, metadata) {
|
|
146
|
+
const trackingData = {
|
|
147
|
+
transactionId: `audio-${operationSubtype}-${Date.now()}`,
|
|
148
|
+
operationSubtype,
|
|
149
|
+
model: request.model || "whisper-1",
|
|
150
|
+
startTime,
|
|
151
|
+
duration,
|
|
152
|
+
};
|
|
153
|
+
logger.debug("Starting audio tracking", trackingData);
|
|
154
|
+
Promise.resolve()
|
|
155
|
+
.then(async () => {
|
|
156
|
+
const { buildAudioPayload } = await import("./payload-builder.js");
|
|
157
|
+
const payload = buildAudioPayload(operationSubtype, response, request, startTime, duration, providerInfo, metadata);
|
|
158
|
+
await sendToRevenium(payload);
|
|
159
|
+
})
|
|
160
|
+
.then(() => {
|
|
161
|
+
logger.debug("Audio tracking completed successfully", {
|
|
162
|
+
transactionId: trackingData.transactionId,
|
|
163
|
+
});
|
|
164
|
+
})
|
|
165
|
+
.catch((error) => {
|
|
166
|
+
logger.warn("Audio tracking failed", {
|
|
167
|
+
error: error instanceof Error ? error.message : String(error),
|
|
168
|
+
transactionId: trackingData.transactionId,
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
}
|
|
118
172
|
//# sourceMappingURL=usage-tracker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-tracker.js","sourceRoot":"","sources":["../../../../src/core/tracking/usage-tracker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,gBAAgB;AAChB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;AAE3B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA4B,EAC5B,OAA0B,EAC1B,SAAiB,EACjB,QAAgB,EAChB,YAA2B;IAE3B,MAAM,kBAAkB,CACtB,KAAK,IAAI,EAAE;QACT,MAAM,OAAO,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"usage-tracker.js","sourceRoot":"","sources":["../../../../src/core/tracking/usage-tracker.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -15,11 +15,11 @@ export { Initialize, GetClient, IsInitialized, Reset, Configure, } from "./core/
|
|
|
15
15
|
/**
|
|
16
16
|
* Middleware classes
|
|
17
17
|
*/
|
|
18
|
-
export { ReveniumOpenAI, ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, } from "./core/middleware";
|
|
18
|
+
export { ReveniumOpenAI, ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, ImagesInterface, AudioTranscriptionsInterface, AudioTranslationsInterface, AudioSpeechInterface, } from "./core/middleware";
|
|
19
19
|
/**
|
|
20
20
|
* Tracking functions (for advanced use cases)
|
|
21
21
|
*/
|
|
22
|
-
export { trackUsageAsync, trackEmbeddingsUsageAsync } from "./core/tracking";
|
|
22
|
+
export { trackUsageAsync, trackEmbeddingsUsageAsync, trackImageUsageAsync, trackAudioUsageAsync, } from "./core/tracking";
|
|
23
23
|
/**
|
|
24
24
|
* Provider detection functions
|
|
25
25
|
*/
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sEAAsE;AACtE,OAAO,gCAAgC,CAAC;AA8DxC,oGAAoG;AACpG,mGAAmG;AACnG,oFAAoF;AAEpF;;GAEG;AACH,OAAO,EACL,UAAU,EACV,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sEAAsE;AACtE,OAAO,gCAAgC,CAAC;AA8DxC,oGAAoG;AACpG,mGAAmG;AACnG,oFAAoF;AAEpF;;GAEG;AACH,OAAO,EACL,UAAU,EACV,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { getLogger } from "../core/config";
|
|
2
|
+
import axios from "axios";
|
|
3
|
+
const logger = getLogger();
|
|
4
|
+
let cachedRegion = null;
|
|
5
|
+
let regionCached = false;
|
|
6
|
+
export function resetRegionCache() {
|
|
7
|
+
cachedRegion = null;
|
|
8
|
+
regionCached = false;
|
|
9
|
+
}
|
|
10
|
+
export function getEnvironment() {
|
|
11
|
+
const env = process.env.REVENIUM_ENVIRONMENT ||
|
|
12
|
+
process.env.NODE_ENV ||
|
|
13
|
+
process.env.DEPLOYMENT_ENV ||
|
|
14
|
+
null;
|
|
15
|
+
if (env && env.length > 255) {
|
|
16
|
+
logger.warn(`environment exceeds max length of 255 characters. Truncating.`);
|
|
17
|
+
return env.substring(0, 255).trim();
|
|
18
|
+
}
|
|
19
|
+
return env ? env.trim() : null;
|
|
20
|
+
}
|
|
21
|
+
export async function getRegion() {
|
|
22
|
+
if (regionCached) {
|
|
23
|
+
return cachedRegion;
|
|
24
|
+
}
|
|
25
|
+
const envRegion = process.env.AWS_REGION ||
|
|
26
|
+
process.env.AZURE_REGION ||
|
|
27
|
+
process.env.GCP_REGION ||
|
|
28
|
+
process.env.REVENIUM_REGION;
|
|
29
|
+
if (envRegion) {
|
|
30
|
+
cachedRegion = envRegion.trim();
|
|
31
|
+
regionCached = true;
|
|
32
|
+
return cachedRegion;
|
|
33
|
+
}
|
|
34
|
+
try {
|
|
35
|
+
const response = await axios.get("http://169.254.169.254/latest/meta-data/placement/region", { timeout: 1000 });
|
|
36
|
+
cachedRegion = response.data.trim();
|
|
37
|
+
regionCached = true;
|
|
38
|
+
return cachedRegion;
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
cachedRegion = null;
|
|
42
|
+
regionCached = true;
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export function getCredentialAlias() {
|
|
47
|
+
const alias = process.env.REVENIUM_CREDENTIAL_ALIAS || null;
|
|
48
|
+
if (alias && alias.length > 255) {
|
|
49
|
+
logger.warn(`credentialAlias exceeds max length of 255 characters. Truncating.`);
|
|
50
|
+
return alias.substring(0, 255).trim();
|
|
51
|
+
}
|
|
52
|
+
return alias ? alias.trim() : null;
|
|
53
|
+
}
|
|
54
|
+
export function getTraceType() {
|
|
55
|
+
const traceType = process.env.REVENIUM_TRACE_TYPE;
|
|
56
|
+
if (!traceType) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
if (!/^[a-zA-Z0-9_-]+$/.test(traceType)) {
|
|
60
|
+
logger.warn(`Invalid trace_type format: ${traceType}. Must be alphanumeric with hyphens/underscores only.`);
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
if (traceType.length > 128) {
|
|
64
|
+
logger.warn(`trace_type exceeds max length of 128 characters: ${traceType}. Truncating.`);
|
|
65
|
+
return traceType.substring(0, 128);
|
|
66
|
+
}
|
|
67
|
+
return traceType;
|
|
68
|
+
}
|
|
69
|
+
export function getTraceName() {
|
|
70
|
+
const traceName = process.env.REVENIUM_TRACE_NAME;
|
|
71
|
+
if (!traceName) {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
if (traceName.length > 256) {
|
|
75
|
+
logger.warn(`trace_name exceeds max length of 256 characters. Truncating.`);
|
|
76
|
+
return traceName.substring(0, 256);
|
|
77
|
+
}
|
|
78
|
+
return traceName;
|
|
79
|
+
}
|
|
80
|
+
export function detectOperationSubtype(requestBody) {
|
|
81
|
+
if (requestBody && (requestBody.tools || requestBody.functions)) {
|
|
82
|
+
return "function_call";
|
|
83
|
+
}
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
export function getParentTransactionId() {
|
|
87
|
+
return process.env.REVENIUM_PARENT_TRANSACTION_ID || null;
|
|
88
|
+
}
|
|
89
|
+
export function getTransactionName() {
|
|
90
|
+
return process.env.REVENIUM_TRANSACTION_NAME || null;
|
|
91
|
+
}
|
|
92
|
+
export function getRetryNumber() {
|
|
93
|
+
const retryNum = process.env.REVENIUM_RETRY_NUMBER;
|
|
94
|
+
if (retryNum) {
|
|
95
|
+
const parsed = parseInt(retryNum, 10);
|
|
96
|
+
return isNaN(parsed) ? 0 : parsed;
|
|
97
|
+
}
|
|
98
|
+
return 0;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=trace-fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-fields.js","sourceRoot":"","sources":["../../../src/utils/trace-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;AAE3B,IAAI,YAAY,GAAkB,IAAI,CAAC;AACvC,IAAI,YAAY,GAAG,KAAK,CAAC;AAEzB,MAAM,UAAU,gBAAgB;IAC9B,YAAY,GAAG,IAAI,CAAC;IACpB,YAAY,GAAG,KAAK,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAChC,OAAO,CAAC,GAAG,CAAC,QAAQ;QACpB,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,IAAI,CAAC;IAEP,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CACT,+DAA+D,CAChE,CAAC;QACF,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,OAAO,CAAC,GAAG,CAAC,YAAY;QACxB,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAE9B,IAAI,SAAS,EAAE,CAAC;QACd,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAChC,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,0DAA0D,EAC1D,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QACF,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACpC,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,YAAY,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,YAAY,GAAG,IAAI,CAAC;QACpB,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,IAAI,CAAC;IAE5D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CACT,mEAAmE,CACpE,CAAC;QACF,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IAED,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAElD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CACT,8BAA8B,SAAS,uDAAuD,CAC/F,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CACT,oDAAoD,SAAS,eAAe,CAC7E,CAAC;QACF,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAElD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QAC5E,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAAiB;IACtD,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,IAAI,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,IAAI,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACnD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Exports all middleware components.
|
|
5
5
|
*/
|
|
6
|
-
export { ReveniumOpenAI } from
|
|
7
|
-
export { ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, } from
|
|
6
|
+
export { ReveniumOpenAI } from "./revenium-client.js";
|
|
7
|
+
export { ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, ImagesInterface, AudioTranscriptionsInterface, AudioTranslationsInterface, AudioSpeechInterface, } from "./interfaces.js";
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,iBAAiB,CAAC"}
|
|
@@ -71,4 +71,34 @@ export declare class ResponsesInterface {
|
|
|
71
71
|
create(params: ResponsesCreateParams, metadata?: UsageMetadata): Promise<ResponsesResponse>;
|
|
72
72
|
createStreaming(params: ResponsesCreateParams, metadata?: UsageMetadata): Promise<AsyncIterable<any>>;
|
|
73
73
|
}
|
|
74
|
+
export declare class ImagesInterface {
|
|
75
|
+
private originalImages;
|
|
76
|
+
private config;
|
|
77
|
+
private providerInfo;
|
|
78
|
+
constructor(originalImages: OpenAI.Images, config: Config, providerInfo: ProviderInfo);
|
|
79
|
+
generate(params: OpenAI.ImageGenerateParams): Promise<any>;
|
|
80
|
+
edit(params: OpenAI.ImageEditParams): Promise<any>;
|
|
81
|
+
createVariation(params: OpenAI.ImageCreateVariationParams): Promise<any>;
|
|
82
|
+
}
|
|
83
|
+
export declare class AudioTranscriptionsInterface {
|
|
84
|
+
private originalTranscriptions;
|
|
85
|
+
private config;
|
|
86
|
+
private providerInfo;
|
|
87
|
+
constructor(originalTranscriptions: OpenAI.Audio.Transcriptions, config: Config, providerInfo: ProviderInfo);
|
|
88
|
+
create(params: OpenAI.Audio.TranscriptionCreateParams): Promise<any>;
|
|
89
|
+
}
|
|
90
|
+
export declare class AudioTranslationsInterface {
|
|
91
|
+
private originalTranslations;
|
|
92
|
+
private config;
|
|
93
|
+
private providerInfo;
|
|
94
|
+
constructor(originalTranslations: OpenAI.Audio.Translations, config: Config, providerInfo: ProviderInfo);
|
|
95
|
+
create(params: OpenAI.Audio.TranslationCreateParams): Promise<any>;
|
|
96
|
+
}
|
|
97
|
+
export declare class AudioSpeechInterface {
|
|
98
|
+
private originalSpeech;
|
|
99
|
+
private config;
|
|
100
|
+
private providerInfo;
|
|
101
|
+
constructor(originalSpeech: OpenAI.Audio.Speech, config: Config, providerInfo: ProviderInfo);
|
|
102
|
+
create(params: OpenAI.Audio.SpeechCreateParams): Promise<any>;
|
|
103
|
+
}
|
|
74
104
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/interfaces.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import OpenAI, { AzureOpenAI } from "openai";
|
|
7
7
|
import { Config, Provider, ProviderInfo } from "../../types";
|
|
8
|
-
import { ChatInterface, EmbeddingsInterface, ResponsesInterface } from "./interfaces.js";
|
|
8
|
+
import { ChatInterface, EmbeddingsInterface, ResponsesInterface, ImagesInterface, AudioTranscriptionsInterface, AudioTranslationsInterface, AudioSpeechInterface } from "./interfaces.js";
|
|
9
9
|
/**
|
|
10
10
|
* ReveniumOpenAI - Main client class
|
|
11
11
|
*
|
|
@@ -34,6 +34,12 @@ export declare class ReveniumOpenAI {
|
|
|
34
34
|
* @returns ResponsesInterface for Responses API
|
|
35
35
|
*/
|
|
36
36
|
responses(): ResponsesInterface;
|
|
37
|
+
images(): ImagesInterface;
|
|
38
|
+
audio(): {
|
|
39
|
+
transcriptions: AudioTranscriptionsInterface;
|
|
40
|
+
translations: AudioTranslationsInterface;
|
|
41
|
+
speech: AudioSpeechInterface;
|
|
42
|
+
};
|
|
37
43
|
/**
|
|
38
44
|
* Get the underlying OpenAI client
|
|
39
45
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revenium-client.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/revenium-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"revenium-client.d.ts","sourceRoot":"","sources":["../../../../src/core/middleware/revenium-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAIzB;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAe;gBAEvB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IA8C9C;;;;OAIG;IACH,IAAI,IAAI,aAAa;IAIrB;;;;OAIG;IACH,UAAU,IAAI,mBAAmB;IAIjC;;;;OAIG;IACH,SAAS,IAAI,kBAAkB;IAI/B,MAAM,IAAI,eAAe;IAQzB,KAAK;;;;;IAoBL;;;;;;;OAOG;IACH,mBAAmB,IAAI,MAAM,GAAG,WAAW;IAI3C;;;OAGG;IACH,eAAe,IAAI,YAAY;IAI/B;;;;OAIG;IACH,SAAS,IAAI,MAAM;CAGpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/api-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAQ9C;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/api-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAQ9C;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D5E"}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* This module provides a clean interface for usage tracking,
|
|
5
5
|
* separating concerns into focused sub-modules.
|
|
6
6
|
*/
|
|
7
|
-
export { sendToRevenium } from
|
|
8
|
-
export { buildPayload } from
|
|
9
|
-
export { sendReveniumMetrics, sendReveniumEmbeddingsMetrics, trackUsageAsync, trackEmbeddingsUsageAsync, } from
|
|
10
|
-
export { mapStopReason } from
|
|
7
|
+
export { sendToRevenium } from "./api-client.js";
|
|
8
|
+
export { buildPayload, buildImagePayload, buildAudioPayload, } from "./payload-builder.js";
|
|
9
|
+
export { sendReveniumMetrics, sendReveniumEmbeddingsMetrics, trackUsageAsync, trackEmbeddingsUsageAsync, trackImageUsageAsync, trackAudioUsageAsync, } from "./usage-tracker.js";
|
|
10
|
+
export { mapStopReason } from "../../utils/stop-reason-mapper.js";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAC7B,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -20,5 +20,7 @@ import { OpenAIChatResponse, OpenAIEmbeddingResponse, OpenAIChatRequest, OpenAIE
|
|
|
20
20
|
* @param providerInfo - Provider information for Azure support
|
|
21
21
|
* @returns Constructed payload for Revenium API
|
|
22
22
|
*/
|
|
23
|
-
export declare function buildPayload(operationType: "CHAT" | "EMBED", response: OpenAIChatResponse | OpenAIEmbeddingResponse, request: OpenAIChatRequest | OpenAIEmbeddingRequest, startTime: number, duration: number, providerInfo?: ProviderInfo): ReveniumPayload
|
|
23
|
+
export declare function buildPayload(operationType: "CHAT" | "EMBED", response: OpenAIChatResponse | OpenAIEmbeddingResponse, request: OpenAIChatRequest | OpenAIEmbeddingRequest, startTime: number, duration: number, providerInfo?: ProviderInfo): Promise<ReveniumPayload>;
|
|
24
|
+
export declare function buildImagePayload(operationSubtype: "generation" | "edit" | "variation", response: any, request: any, startTime: number, duration: number, providerInfo?: ProviderInfo, usageMetadata?: any): ReveniumPayload;
|
|
25
|
+
export declare function buildAudioPayload(operationSubtype: "transcription" | "translation" | "speech_synthesis", response: any, request: any, startTime: number, duration: number, providerInfo?: ProviderInfo, usageMetadata?: any): ReveniumPayload;
|
|
24
26
|
//# sourceMappingURL=payload-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload-builder.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"payload-builder.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAoB5C;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAChC,aAAa,EAAE,MAAM,GAAG,OAAO,EAC/B,QAAQ,EAAE,kBAAkB,GAAG,uBAAuB,EACtD,OAAO,EAAE,iBAAiB,GAAG,sBAAsB,EACnD,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,eAAe,CAAC,CAuG1B;AAED,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,YAAY,GAAG,MAAM,GAAG,WAAW,EACrD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,GAAG,GAClB,eAAe,CAgEjB;AAED,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,eAAe,GAAG,aAAa,GAAG,kBAAkB,EACtE,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,GAAG,GAClB,eAAe,CAsEjB"}
|
|
@@ -45,4 +45,6 @@ export declare function trackEmbeddingsUsageAsync(trackingData: {
|
|
|
45
45
|
requestStartTime: number;
|
|
46
46
|
providerInfo?: ProviderInfo;
|
|
47
47
|
}): void;
|
|
48
|
+
export declare function trackImageUsageAsync(operationSubtype: "generation" | "edit" | "variation", response: any, request: any, startTime: number, duration: number, config: any, providerInfo: ProviderInfo, metadata?: UsageMetadata): Promise<void>;
|
|
49
|
+
export declare function trackAudioUsageAsync(operationSubtype: "transcription" | "translation" | "speech_synthesis", response: any, request: any, startTime: number, duration: number, config: any, providerInfo: ProviderInfo, metadata?: UsageMetadata): Promise<void>;
|
|
48
50
|
//# sourceMappingURL=usage-tracker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-tracker.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/usage-tracker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAS5C;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CACjD,QAAQ,EAAE,uBAAuB,EACjC,OAAO,EAAE,sBAAsB,EAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,IAAI,CAqDP;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE;IACtD,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,IAAI,CAmCP"}
|
|
1
|
+
{"version":3,"file":"usage-tracker.d.ts","sourceRoot":"","sources":["../../../../src/core/tracking/usage-tracker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAS5C;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CACjD,QAAQ,EAAE,uBAAuB,EACjC,OAAO,EAAE,sBAAsB,EAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,IAAI,CAqDP;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE;IACtD,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,IAAI,CAmCP;AAED,wBAAsB,oBAAoB,CACxC,gBAAgB,EAAE,YAAY,GAAG,MAAM,GAAG,WAAW,EACrD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,EACX,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,aAAa,GACvB,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED,wBAAsB,oBAAoB,CACxC,gBAAgB,EAAE,eAAe,GAAG,aAAa,GAAG,kBAAkB,EACtE,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,EACX,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,aAAa,GACvB,OAAO,CAAC,IAAI,CAAC,CAoCf"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -64,11 +64,11 @@ export { Initialize, GetClient, IsInitialized, Reset, Configure, } from "./core/
|
|
|
64
64
|
/**
|
|
65
65
|
* Middleware classes
|
|
66
66
|
*/
|
|
67
|
-
export { ReveniumOpenAI, ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, } from "./core/middleware";
|
|
67
|
+
export { ReveniumOpenAI, ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper, ImagesInterface, AudioTranscriptionsInterface, AudioTranslationsInterface, AudioSpeechInterface, } from "./core/middleware";
|
|
68
68
|
/**
|
|
69
69
|
* Tracking functions (for advanced use cases)
|
|
70
70
|
*/
|
|
71
|
-
export { trackUsageAsync, trackEmbeddingsUsageAsync } from "./core/tracking";
|
|
71
|
+
export { trackUsageAsync, trackEmbeddingsUsageAsync, trackImageUsageAsync, trackAudioUsageAsync, } from "./core/tracking";
|
|
72
72
|
/**
|
|
73
73
|
* Provider detection functions
|
|
74
74
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,gCAAgC,CAAC;AAExC;;;;;;;GAOG;AACH,YAAY;AACV;;;;;GAKG;AACH,cAAc;AAEd;;;;;;GAMG;AACH,aAAa;AAEb;;;;;;GAMG;AACH,MAAM;AAEN;;;;;GAKG;AACH,WAAW;AAEX;;;;;GAKG;AACH,QAAQ;AAER;;;;;GAKG;AACH,YAAY,GACb,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,OAAO,EACL,UAAU,EACV,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,gCAAgC,CAAC;AAExC;;;;;;;GAOG;AACH,YAAY;AACV;;;;;GAKG;AACH,cAAc;AAEd;;;;;;GAMG;AACH,aAAa;AAEb;;;;;;GAMG;AACH,MAAM;AAEN;;;;;GAKG;AACH,WAAW;AAEX;;;;;GAKG;AACH,QAAQ;AAER;;;;;GAKG;AACH,YAAY,GACb,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,OAAO,EACL,UAAU,EACV,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,OAAO,EACL,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC"}
|