@propio-ai/providers 0.3.0 → 0.4.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 +18 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/internal/baseProvider.d.ts +1 -1
- package/dist/internal/baseProvider.d.ts.map +1 -1
- package/dist/internal/baseProvider.js +2 -1
- package/dist/internal/baseProvider.js.map +1 -1
- package/dist/internal/openAiCompatibleProvider.d.ts +1 -1
- package/dist/internal/openAiCompatibleProvider.d.ts.map +1 -1
- package/dist/internal/openAiCompatibleProvider.js +2 -1
- package/dist/internal/openAiCompatibleProvider.js.map +1 -1
- package/dist/internal/openAiResponsesProvider.d.ts +4 -0
- package/dist/internal/openAiResponsesProvider.d.ts.map +1 -1
- package/dist/internal/openAiResponsesProvider.js +60 -17
- package/dist/internal/openAiResponsesProvider.js.map +1 -1
- package/dist/internal/openAiStream.d.ts +6 -1
- package/dist/internal/openAiStream.d.ts.map +1 -1
- package/dist/internal/openAiStream.js +14 -2
- package/dist/internal/openAiStream.js.map +1 -1
- package/dist/internal/providerMeasurements.d.ts +73 -0
- package/dist/internal/providerMeasurements.d.ts.map +1 -0
- package/dist/internal/providerMeasurements.js +92 -0
- package/dist/internal/providerMeasurements.js.map +1 -0
- package/dist/internal/shared.d.ts +1 -0
- package/dist/internal/shared.d.ts.map +1 -1
- package/dist/internal/shared.js +1 -0
- package/dist/internal/shared.js.map +1 -1
- package/dist/internal/withRetry.d.ts +7 -1
- package/dist/internal/withRetry.d.ts.map +1 -1
- package/dist/internal/withRetry.js +10 -3
- package/dist/internal/withRetry.js.map +1 -1
- package/dist/providers/anthropic.d.ts +5 -0
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +54 -2
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/bedrock.d.ts +1 -0
- package/dist/providers/bedrock.d.ts.map +1 -1
- package/dist/providers/bedrock.js +35 -2
- package/dist/providers/bedrock.js.map +1 -1
- package/dist/providers/cloudflare.d.ts.map +1 -1
- package/dist/providers/cloudflare.js +6 -2
- package/dist/providers/cloudflare.js.map +1 -1
- package/dist/providers/gemini.d.ts +1 -0
- package/dist/providers/gemini.d.ts.map +1 -1
- package/dist/providers/gemini.js +31 -2
- package/dist/providers/gemini.js.map +1 -1
- package/dist/providers/ollama.d.ts +1 -0
- package/dist/providers/ollama.d.ts.map +1 -1
- package/dist/providers/ollama.js +27 -1
- package/dist/providers/ollama.js.map +1 -1
- package/dist/providers/openrouter.d.ts.map +1 -1
- package/dist/providers/openrouter.js +20 -2
- package/dist/providers/openrouter.js.map +1 -1
- package/dist/providers/xai.d.ts +7 -4
- package/dist/providers/xai.d.ts.map +1 -1
- package/dist/providers/xai.js +149 -58
- package/dist/providers/xai.js.map +1 -1
- package/dist/trace.d.ts +64 -11
- package/dist/trace.d.ts.map +1 -1
- package/dist/trace.js +218 -61
- package/dist/trace.js.map +1 -1
- package/package.json +1 -1
package/dist/trace.js
CHANGED
|
@@ -29,7 +29,15 @@ export function createProviderAttemptTraceHooks(options) {
|
|
|
29
29
|
attemptId = randomUUID();
|
|
30
30
|
attemptIds.set(attempt, attemptId);
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
const attemptNumber = attempt + 1;
|
|
33
|
+
const endpointClass = typeof options.endpointClass === "function"
|
|
34
|
+
? options.endpointClass(attemptNumber)
|
|
35
|
+
: options.endpointClass;
|
|
36
|
+
return {
|
|
37
|
+
attemptId,
|
|
38
|
+
attemptNumber,
|
|
39
|
+
...(endpointClass ? { endpointClass } : {}),
|
|
40
|
+
};
|
|
33
41
|
};
|
|
34
42
|
return {
|
|
35
43
|
onAttemptStart: ({ attempt }) => {
|
|
@@ -76,6 +84,41 @@ export function createProviderAttemptTraceHooks(options) {
|
|
|
76
84
|
},
|
|
77
85
|
};
|
|
78
86
|
}
|
|
87
|
+
export function emitProviderResponseMetadata(options) {
|
|
88
|
+
if (!options.upstreamRequestId &&
|
|
89
|
+
!options.actualModel &&
|
|
90
|
+
!options.endpointClass) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const fields = eventBase(options.provider, options.request);
|
|
94
|
+
if (!fields)
|
|
95
|
+
return;
|
|
96
|
+
emitSafely(options.request.onTraceEvent, {
|
|
97
|
+
...fields,
|
|
98
|
+
type: "provider_response_metadata",
|
|
99
|
+
...(options.upstreamRequestId
|
|
100
|
+
? { upstreamRequestId: options.upstreamRequestId }
|
|
101
|
+
: {}),
|
|
102
|
+
...(options.actualModel ? { actualModel: options.actualModel } : {}),
|
|
103
|
+
...(options.endpointClass ? { endpointClass: options.endpointClass } : {}),
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
export function emitProviderUsage(options) {
|
|
107
|
+
const fields = eventBase(options.provider, options.request);
|
|
108
|
+
if (!fields)
|
|
109
|
+
return;
|
|
110
|
+
emitSafely(options.request.onTraceEvent, {
|
|
111
|
+
...fields,
|
|
112
|
+
type: "provider_usage_reported",
|
|
113
|
+
availability: options.availability,
|
|
114
|
+
reportKind: options.reportKind,
|
|
115
|
+
usage: options.usage,
|
|
116
|
+
...(options.providerReportedCost
|
|
117
|
+
? { providerReportedCost: options.providerReportedCost }
|
|
118
|
+
: {}),
|
|
119
|
+
...(options.endpointClass ? { endpointClass: options.endpointClass } : {}),
|
|
120
|
+
});
|
|
121
|
+
}
|
|
79
122
|
export function emitProviderRequestMutation(options) {
|
|
80
123
|
const fields = eventBase(options.provider, options.request);
|
|
81
124
|
if (!fields)
|
|
@@ -103,78 +146,192 @@ class TracedProvider {
|
|
|
103
146
|
getCapabilities() {
|
|
104
147
|
return this.provider.getCapabilities();
|
|
105
148
|
}
|
|
106
|
-
|
|
107
|
-
const
|
|
108
|
-
|
|
149
|
+
async *streamChat(request) {
|
|
150
|
+
const traceState = new ProviderRequestTraceState(this.name, request);
|
|
151
|
+
try {
|
|
152
|
+
for await (const event of this.provider.streamChat(traceState.request)) {
|
|
153
|
+
traceState.observeStreamEvent(event);
|
|
154
|
+
yield event;
|
|
155
|
+
}
|
|
156
|
+
traceState.complete();
|
|
157
|
+
}
|
|
158
|
+
catch (error) {
|
|
159
|
+
traceState.fail(error);
|
|
160
|
+
throw error;
|
|
161
|
+
}
|
|
162
|
+
finally {
|
|
163
|
+
traceState.closeInterrupted();
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
class ProviderRequestTraceState {
|
|
168
|
+
constructor(provider, originalRequest) {
|
|
169
|
+
this.provider = provider;
|
|
170
|
+
this.originalRequest = originalRequest;
|
|
171
|
+
this.startedAt = performance.now();
|
|
172
|
+
this.currentAttemptStartedAt = this.startedAt;
|
|
173
|
+
this.usageObserved = false;
|
|
174
|
+
this.firstOutputObserved = false;
|
|
175
|
+
this.outcomeRecorded = false;
|
|
176
|
+
this.failedAttemptIds = new Set();
|
|
177
|
+
this.emitStarted();
|
|
178
|
+
this.request = {
|
|
179
|
+
...originalRequest,
|
|
180
|
+
onTraceEvent: (event) => this.observeProviderEvent(event),
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
observeStreamEvent(event) {
|
|
184
|
+
this.captureFirstOutput(event);
|
|
185
|
+
if ("type" in event && event.type === "terminal") {
|
|
186
|
+
this.terminal = {
|
|
187
|
+
stopReason: event.stopReason,
|
|
188
|
+
rawProviderReason: event.rawProviderReason,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
complete() {
|
|
193
|
+
this.emitAttemptCompleted();
|
|
194
|
+
this.emitUnavailableUsage();
|
|
195
|
+
this.emitRequestOutcome("provider_request_completed");
|
|
196
|
+
this.outcomeRecorded = true;
|
|
197
|
+
}
|
|
198
|
+
fail(error) {
|
|
199
|
+
this.emitAttemptFailure(error);
|
|
200
|
+
this.emitUnavailableUsage();
|
|
201
|
+
this.emitRequestOutcome("provider_request_failed", error);
|
|
202
|
+
this.outcomeRecorded = true;
|
|
203
|
+
}
|
|
204
|
+
closeInterrupted() {
|
|
205
|
+
if (this.outcomeRecorded)
|
|
109
206
|
return;
|
|
110
|
-
|
|
111
|
-
|
|
207
|
+
if (this.terminal) {
|
|
208
|
+
this.emitAttemptCompleted();
|
|
209
|
+
this.emitUnavailableUsage();
|
|
210
|
+
this.emitRequestOutcome("provider_request_completed");
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
const error = new Error("Provider stream consumption cancelled");
|
|
214
|
+
error.name = "AbortError";
|
|
215
|
+
this.emitAttemptFailure(error);
|
|
216
|
+
this.emitUnavailableUsage();
|
|
217
|
+
this.emitRequestOutcome("provider_request_failed", error);
|
|
218
|
+
}
|
|
219
|
+
observeProviderEvent(event) {
|
|
220
|
+
this.captureAttempt(event);
|
|
221
|
+
if (event.type === "provider_usage_reported")
|
|
222
|
+
this.usageObserved = true;
|
|
223
|
+
if (event.type === "provider_attempt_failed") {
|
|
224
|
+
this.failedAttemptIds.add(event.attemptId);
|
|
225
|
+
}
|
|
226
|
+
emitSafely(this.originalRequest.onTraceEvent, this.attributeAttempt(event));
|
|
227
|
+
}
|
|
228
|
+
captureAttempt(event) {
|
|
229
|
+
if (event.type !== "provider_attempt_started" &&
|
|
230
|
+
event.type !== "provider_attempt_connected") {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
if (event.type === "provider_attempt_started") {
|
|
234
|
+
this.currentAttemptStartedAt = performance.now();
|
|
235
|
+
}
|
|
236
|
+
this.currentAttempt = {
|
|
237
|
+
attemptId: event.attemptId,
|
|
238
|
+
attemptNumber: event.attemptNumber,
|
|
239
|
+
...(event.endpointClass ? { endpointClass: event.endpointClass } : {}),
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
attributeAttempt(event) {
|
|
243
|
+
if ((event.type !== "provider_response_metadata" &&
|
|
244
|
+
event.type !== "provider_usage_reported") ||
|
|
245
|
+
!this.currentAttempt ||
|
|
246
|
+
event.attemptId !== undefined) {
|
|
247
|
+
return event;
|
|
248
|
+
}
|
|
249
|
+
return { ...event, ...this.currentAttempt };
|
|
250
|
+
}
|
|
251
|
+
captureFirstOutput(event) {
|
|
252
|
+
if (this.firstOutputObserved || !("type" in event))
|
|
253
|
+
return;
|
|
254
|
+
const outputType = providerOutputType(event.type);
|
|
255
|
+
if (!outputType || !this.currentAttempt)
|
|
256
|
+
return;
|
|
257
|
+
this.firstOutputObserved = true;
|
|
258
|
+
this.emit({
|
|
259
|
+
type: "provider_attempt_first_output",
|
|
260
|
+
...this.currentAttempt,
|
|
261
|
+
durationMs: performance.now() - this.currentAttemptStartedAt,
|
|
262
|
+
outputType,
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
emitStarted() {
|
|
266
|
+
this.emit({
|
|
112
267
|
type: "provider_request_started",
|
|
113
|
-
messageCount:
|
|
114
|
-
toolCount:
|
|
268
|
+
messageCount: this.originalRequest.messages.length,
|
|
269
|
+
toolCount: this.originalRequest.tools?.length ?? 0,
|
|
115
270
|
});
|
|
116
271
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
if (!base)
|
|
272
|
+
emitAttemptCompleted() {
|
|
273
|
+
if (!this.currentAttempt)
|
|
120
274
|
return;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
durationMs: performance.now() -
|
|
125
|
-
...terminal,
|
|
275
|
+
this.emit({
|
|
276
|
+
type: "provider_attempt_completed",
|
|
277
|
+
...this.currentAttempt,
|
|
278
|
+
durationMs: performance.now() - this.currentAttemptStartedAt,
|
|
279
|
+
...this.terminal,
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
emitAttemptFailure(error) {
|
|
283
|
+
if (!this.currentAttempt ||
|
|
284
|
+
this.failedAttemptIds.has(this.currentAttempt.attemptId)) {
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
287
|
+
this.emit({
|
|
288
|
+
type: "provider_attempt_failed",
|
|
289
|
+
...this.currentAttempt,
|
|
290
|
+
durationMs: performance.now() - this.currentAttemptStartedAt,
|
|
291
|
+
...errorFields(error),
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
emitUnavailableUsage() {
|
|
295
|
+
if (this.usageObserved)
|
|
296
|
+
return;
|
|
297
|
+
this.emit({
|
|
298
|
+
type: "provider_usage_reported",
|
|
299
|
+
availability: "unavailable",
|
|
300
|
+
...this.currentAttempt,
|
|
126
301
|
});
|
|
302
|
+
this.usageObserved = true;
|
|
127
303
|
}
|
|
128
|
-
|
|
129
|
-
|
|
304
|
+
emitRequestOutcome(type, error) {
|
|
305
|
+
this.emit({
|
|
306
|
+
type,
|
|
307
|
+
durationMs: performance.now() - this.startedAt,
|
|
308
|
+
...(type === "provider_request_completed"
|
|
309
|
+
? this.terminal
|
|
310
|
+
: errorFields(error)),
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
emit(event) {
|
|
314
|
+
const base = eventBase(this.provider, this.originalRequest);
|
|
130
315
|
if (!base)
|
|
131
316
|
return;
|
|
132
|
-
emitSafely(
|
|
317
|
+
emitSafely(this.originalRequest.onTraceEvent, {
|
|
133
318
|
...base,
|
|
134
|
-
|
|
135
|
-
durationMs: performance.now() - startedAt,
|
|
136
|
-
errorName: error instanceof Error ? error.name : "Error",
|
|
137
|
-
message: error instanceof Error ? error.message : String(error),
|
|
319
|
+
...event,
|
|
138
320
|
});
|
|
139
321
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
const startedAt = performance.now();
|
|
147
|
-
this.emitStarted(request);
|
|
148
|
-
let terminal;
|
|
149
|
-
let outcomeRecorded = false;
|
|
150
|
-
try {
|
|
151
|
-
for await (const event of this.provider.streamChat(request)) {
|
|
152
|
-
if ("type" in event && event.type === "terminal") {
|
|
153
|
-
terminal = {
|
|
154
|
-
stopReason: event.stopReason,
|
|
155
|
-
rawProviderReason: event.rawProviderReason,
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
yield event;
|
|
159
|
-
}
|
|
160
|
-
this.emitCompleted(request, startedAt, terminal);
|
|
161
|
-
outcomeRecorded = true;
|
|
162
|
-
}
|
|
163
|
-
catch (error) {
|
|
164
|
-
this.emitFailed(request, startedAt, error);
|
|
165
|
-
outcomeRecorded = true;
|
|
166
|
-
throw error;
|
|
167
|
-
}
|
|
168
|
-
finally {
|
|
169
|
-
if (!outcomeRecorded) {
|
|
170
|
-
if (terminal) {
|
|
171
|
-
this.emitCompleted(request, startedAt, terminal);
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
this.emitCancelled(request, startedAt);
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
322
|
+
}
|
|
323
|
+
function providerOutputType(type) {
|
|
324
|
+
if (type === "assistant_text")
|
|
325
|
+
return "assistant_text";
|
|
326
|
+
if (type === "thinking_delta" || type === "reasoning_summary") {
|
|
327
|
+
return "thinking";
|
|
178
328
|
}
|
|
329
|
+
return type === "tool_calls" ? "tool_call" : undefined;
|
|
330
|
+
}
|
|
331
|
+
function errorFields(error) {
|
|
332
|
+
return {
|
|
333
|
+
errorName: error instanceof Error ? error.name : "Error",
|
|
334
|
+
message: error instanceof Error ? error.message : String(error),
|
|
335
|
+
};
|
|
179
336
|
}
|
|
180
337
|
//# sourceMappingURL=trace.js.map
|
package/dist/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@propio-ai/providers",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Provider adapters for LLM APIs (Anthropic, Bedrock, Ollama, OpenRouter, OpenAI, Meta, Gemini, xAI, Cloudflare) with a unified streaming chat interface",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|