@traceai/cohere 0.1.0 → 0.1.1

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.
Files changed (76) hide show
  1. package/README.md +78 -369
  2. package/dist/esm/attributes.d.ts +11 -0
  3. package/dist/esm/attributes.d.ts.map +1 -0
  4. package/dist/esm/attributes.js +240 -0
  5. package/dist/esm/attributes.js.map +1 -0
  6. package/dist/esm/instrumentation.d.ts +11 -20
  7. package/dist/esm/instrumentation.d.ts.map +1 -1
  8. package/dist/esm/instrumentation.js +175 -344
  9. package/dist/esm/instrumentation.js.map +1 -1
  10. package/dist/esm/stream.d.ts +6 -0
  11. package/dist/esm/stream.d.ts.map +1 -0
  12. package/dist/esm/stream.js +215 -0
  13. package/dist/esm/stream.js.map +1 -0
  14. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  15. package/dist/esm/version.d.ts +1 -1
  16. package/dist/esm/version.js +1 -1
  17. package/dist/esm/version.js.map +1 -1
  18. package/dist/esnext/attributes.d.ts +11 -0
  19. package/dist/esnext/attributes.d.ts.map +1 -0
  20. package/dist/esnext/attributes.js +248 -0
  21. package/dist/esnext/attributes.js.map +1 -0
  22. package/dist/esnext/instrumentation.d.ts +11 -20
  23. package/dist/esnext/instrumentation.d.ts.map +1 -1
  24. package/dist/esnext/instrumentation.js +178 -331
  25. package/dist/esnext/instrumentation.js.map +1 -1
  26. package/dist/esnext/stream.d.ts +6 -0
  27. package/dist/esnext/stream.d.ts.map +1 -0
  28. package/dist/esnext/stream.js +203 -0
  29. package/dist/esnext/stream.js.map +1 -0
  30. package/dist/esnext/tsconfig.esnext.tsbuildinfo +1 -1
  31. package/dist/esnext/version.d.ts +1 -1
  32. package/dist/esnext/version.js +1 -1
  33. package/dist/esnext/version.js.map +1 -1
  34. package/dist/src/__tests__/attributes.test.d.ts +2 -0
  35. package/dist/src/__tests__/attributes.test.d.ts.map +1 -0
  36. package/dist/src/__tests__/attributes.test.js +50 -0
  37. package/dist/src/__tests__/attributes.test.js.map +1 -0
  38. package/dist/src/__tests__/auto.test.d.ts +2 -0
  39. package/dist/src/__tests__/auto.test.d.ts.map +1 -0
  40. package/dist/src/__tests__/auto.test.js +70 -0
  41. package/dist/src/__tests__/auto.test.js.map +1 -0
  42. package/dist/src/__tests__/instrumentation.test.js +1 -1
  43. package/dist/src/__tests__/instrumentation.test.js.map +1 -1
  44. package/dist/src/__tests__/lifecycle.test.d.ts +2 -0
  45. package/dist/src/__tests__/lifecycle.test.d.ts.map +1 -0
  46. package/dist/src/__tests__/lifecycle.test.js +232 -0
  47. package/dist/src/__tests__/lifecycle.test.js.map +1 -0
  48. package/dist/src/__tests__/metadata.test.d.ts +2 -0
  49. package/dist/src/__tests__/metadata.test.d.ts.map +1 -0
  50. package/dist/src/__tests__/metadata.test.js +320 -0
  51. package/dist/src/__tests__/metadata.test.js.map +1 -0
  52. package/dist/src/__tests__/sdk.test.d.ts +2 -0
  53. package/dist/src/__tests__/sdk.test.d.ts.map +1 -0
  54. package/dist/src/__tests__/sdk.test.js +883 -0
  55. package/dist/src/__tests__/sdk.test.js.map +1 -0
  56. package/dist/src/__tests__/timing.test.d.ts +2 -0
  57. package/dist/src/__tests__/timing.test.d.ts.map +1 -0
  58. package/dist/src/__tests__/timing.test.js +158 -0
  59. package/dist/src/__tests__/timing.test.js.map +1 -0
  60. package/dist/src/attributes.d.ts +11 -0
  61. package/dist/src/attributes.d.ts.map +1 -0
  62. package/dist/src/attributes.js +257 -0
  63. package/dist/src/attributes.js.map +1 -0
  64. package/dist/src/instrumentation.d.ts +11 -20
  65. package/dist/src/instrumentation.d.ts.map +1 -1
  66. package/dist/src/instrumentation.js +176 -329
  67. package/dist/src/instrumentation.js.map +1 -1
  68. package/dist/src/stream.d.ts +6 -0
  69. package/dist/src/stream.d.ts.map +1 -0
  70. package/dist/src/stream.js +215 -0
  71. package/dist/src/stream.js.map +1 -0
  72. package/dist/src/version.d.ts +1 -1
  73. package/dist/src/version.js +1 -1
  74. package/dist/src/version.js.map +1 -1
  75. package/dist/tsconfig.tsbuildinfo +1 -1
  76. package/package.json +18 -11
@@ -1,359 +1,206 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import { InstrumentationBase, InstrumentationNodeModuleDefinition, safeExecuteInTheMiddle, } from "@opentelemetry/instrumentation";
13
- import { diag, context, trace, SpanKind, SpanStatusCode, } from "@opentelemetry/api";
14
- import { VERSION } from "./version";
15
- import { SemanticConventions, FISpanKind, MimeType, LLMProvider, } from "@traceai/fi-semantic-conventions";
1
+ import { InstrumentationBase, InstrumentationNodeModuleDefinition } from "@opentelemetry/instrumentation";
2
+ import { context, createContextKey, diag, trace, SpanKind, SpanStatusCode } from "@opentelemetry/api";
16
3
  import { isTracingSuppressed } from "@opentelemetry/core";
17
- import { FITracer, safelyJSONStringify, } from "@traceai/fi-core";
18
- const MODULE_NAME = "cohere-ai";
19
- /**
20
- * Flag to check if the Cohere module has been patched
21
- */
22
- let _isFIPatched = false;
23
- /**
24
- * Function to check if instrumentation is enabled / disabled
25
- */
26
- export function isPatched() {
27
- return _isFIPatched;
28
- }
29
- /**
30
- * Resolves the execution context for the current span
31
- */
32
- function getExecContext(span) {
33
- const activeContext = context.active();
34
- const suppressTracing = isTracingSuppressed(activeContext);
35
- const execContext = suppressTracing
36
- ? trace.setSpan(context.active(), span)
37
- : activeContext;
38
- if (suppressTracing) {
39
- trace.deleteSpan(activeContext);
40
- }
41
- return execContext;
42
- }
43
- /**
44
- * @param instrumentationConfig The config for the instrumentation
45
- * @param traceConfig The FI trace configuration for masking sensitive information
46
- */
4
+ import { performance } from "node:perf_hooks";
5
+ import { FITracer, generateTraceConfig } from "@traceai/fi-core";
6
+ import { VERSION } from "./version";
7
+ import { object, inputAttributes, outputAttributes, hideOutput } from "./attributes";
8
+ import { wrapStream } from "./stream";
9
+ const OPERATIONS = ["chat", "chatStream", "embed", "rerank"];
10
+ const IN_COHERE_CALL = createContextKey("traceai.cohere.call");
11
+ const owners = new WeakMap();
12
+ let patchCount = 0;
13
+ /** True when at least one SDK method is instrumented, across module copies. */
14
+ export function isPatched() { return patchCount > 0; }
15
+ /** Cohere v1/v2 instrumentation. Install before constructing SDK clients. */
47
16
  export class CohereInstrumentation extends InstrumentationBase {
48
- constructor({ instrumentationConfig, traceConfig, } = {}) {
17
+ constructor({ instrumentationConfig, traceConfig } = {}) {
49
18
  super("@traceai/cohere", VERSION, Object.assign({}, instrumentationConfig));
50
19
  this.instrumentationName = "@traceai/cohere";
51
20
  this._traceConfig = traceConfig;
52
21
  }
22
+ init() {
23
+ return new InstrumentationNodeModuleDefinition("cohere-ai", [">=7.0.0 <9"], this.patch.bind(this), this.unpatch.bind(this));
24
+ }
53
25
  enable() {
26
+ var _a;
54
27
  super.enable();
55
- this.fiTracer = new FITracer({ tracer: this.tracer, traceConfig: this._traceConfig });
28
+ for (const module of (_a = this.manualModules) !== null && _a !== void 0 ? _a : [])
29
+ this.patch(module);
56
30
  }
57
- init() {
58
- const module = new InstrumentationNodeModuleDefinition("cohere-ai", [">=7.0.0"], this.patch.bind(this), this.unpatch.bind(this));
59
- return module;
31
+ disable() {
32
+ super.disable();
33
+ this.restorePatches();
60
34
  }
61
- /**
62
- * Manually instruments the Cohere module
63
- */
64
35
  manuallyInstrument(module) {
65
- this.patch(module);
36
+ var _a;
37
+ ((_a = this.manualModules) !== null && _a !== void 0 ? _a : (this.manualModules = new Set())).add(module);
38
+ if (this.isEnabled())
39
+ this.patch(module);
66
40
  }
67
- /**
68
- * Patches the Cohere module
69
- */
70
- patch(module, moduleVersion) {
41
+ patch(module) {
71
42
  var _a, _b;
72
- if ((module === null || module === void 0 ? void 0 : module.fiPatched) || _isFIPatched) {
73
- return module;
74
- }
75
- const instrumentation = this;
76
- // Ensure fiTracer uses the most up-to-date tracer
77
- if (!((_a = instrumentation.fiTracer) === null || _a === void 0 ? void 0 : _a.tracer) ||
78
- ((_b = instrumentation.fiTracer) === null || _b === void 0 ? void 0 : _b.tracer) !== instrumentation.tracer) {
79
- instrumentation.fiTracer = new FITracer({
80
- tracer: instrumentation.tracer,
81
- traceConfig: instrumentation._traceConfig
82
- });
83
- }
84
- // Patch CohereClient class
85
- const CohereClient = module.CohereClient;
86
- if (CohereClient === null || CohereClient === void 0 ? void 0 : CohereClient.prototype) {
87
- // Patch chat method
88
- if (typeof CohereClient.prototype.chat === 'function') {
89
- this._wrap(CohereClient.prototype, "chat",
90
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
91
- (original) => {
92
- return function patchedChat(...args) {
93
- var _a;
94
- const request = args[0];
95
- const modelName = request.model || 'command';
96
- const { message, chat_history, preamble } = request, invocationParameters = __rest(request, ["message", "chat_history", "preamble"]);
97
- const span = instrumentation.fiTracer.startSpan(`Cohere Chat`, {
98
- kind: SpanKind.INTERNAL,
99
- attributes: Object.assign(Object.assign(Object.assign({ [SemanticConventions.FI_SPAN_KIND]: FISpanKind.LLM, [SemanticConventions.LLM_MODEL_NAME]: modelName, [SemanticConventions.INPUT_VALUE]: request.message, [SemanticConventions.INPUT_MIME_TYPE]: MimeType.TEXT, [SemanticConventions.LLM_INVOCATION_PARAMETERS]: JSON.stringify(invocationParameters), [SemanticConventions.LLM_PROVIDER]: LLMProvider.COHERE, [SemanticConventions.GEN_AI_OPERATION_NAME]: "chat" }, getChatInputMessagesAttributes(request)), getChatToolsAttributes(request)), { [SemanticConventions.RAW_INPUT]: (_a = safelyJSONStringify(request)) !== null && _a !== void 0 ? _a : "" }),
100
- });
101
- const execContext = getExecContext(span);
102
- const execPromise = safeExecuteInTheMiddle(() => {
103
- return context.with(trace.setSpan(execContext, span), () => {
104
- return original.apply(this, args);
105
- });
106
- }, (error) => {
107
- if (error) {
108
- span.recordException(error);
109
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
110
- span.end();
111
- }
112
- });
113
- const wrappedPromise = execPromise.then((result) => {
114
- var _a;
115
- span.setAttributes(Object.assign(Object.assign(Object.assign({ [SemanticConventions.OUTPUT_VALUE]: result.text, [SemanticConventions.OUTPUT_MIME_TYPE]: MimeType.TEXT }, getChatOutputMessagesAttributes(result)), getChatUsageAttributes(result)), { [SemanticConventions.RAW_OUTPUT]: (_a = safelyJSONStringify(result)) !== null && _a !== void 0 ? _a : "" }));
116
- span.setStatus({ code: SpanStatusCode.OK });
117
- span.end();
118
- return result;
119
- }).catch((error) => {
120
- span.recordException(error);
121
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
122
- span.end();
123
- throw error;
124
- });
125
- return context.bind(execContext, wrappedPromise);
126
- };
127
- });
128
- }
129
- // Patch embed method
130
- if (typeof CohereClient.prototype.embed === 'function') {
131
- this._wrap(CohereClient.prototype, "embed",
132
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
133
- (original) => {
134
- return function patchedEmbed(...args) {
135
- var _a;
136
- const request = args[0];
137
- const modelName = request.model || 'embed-english-v3.0';
138
- const span = instrumentation.fiTracer.startSpan(`Cohere Embed`, {
139
- kind: SpanKind.INTERNAL,
140
- attributes: Object.assign(Object.assign({ [SemanticConventions.FI_SPAN_KIND]: FISpanKind.EMBEDDING, [SemanticConventions.EMBEDDING_MODEL_NAME]: modelName, [SemanticConventions.INPUT_VALUE]: JSON.stringify(request.texts), [SemanticConventions.INPUT_MIME_TYPE]: MimeType.JSON, [SemanticConventions.LLM_PROVIDER]: LLMProvider.COHERE, [SemanticConventions.GEN_AI_OPERATION_NAME]: "embeddings" }, getEmbedTextAttributes(request)), { [SemanticConventions.RAW_INPUT]: (_a = safelyJSONStringify(request)) !== null && _a !== void 0 ? _a : "" }),
141
- });
142
- const execContext = getExecContext(span);
143
- const execPromise = safeExecuteInTheMiddle(() => {
144
- return context.with(trace.setSpan(execContext, span), () => {
145
- return original.apply(this, args);
146
- });
147
- }, (error) => {
148
- if (error) {
149
- span.recordException(error);
150
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
151
- span.end();
152
- }
153
- });
154
- const wrappedPromise = execPromise.then((result) => {
155
- var _a;
156
- span.setAttributes(Object.assign(Object.assign({}, getEmbedVectorAttributes(result)), { [SemanticConventions.RAW_OUTPUT]: (_a = safelyJSONStringify(result)) !== null && _a !== void 0 ? _a : "" }));
157
- span.setStatus({ code: SpanStatusCode.OK });
158
- span.end();
159
- return result;
160
- }).catch((error) => {
161
- span.recordException(error);
162
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
163
- span.end();
164
- throw error;
165
- });
166
- return context.bind(execContext, wrappedPromise);
167
- };
168
- });
43
+ const Client = module.CohereClient;
44
+ const targets = [Client === null || Client === void 0 ? void 0 : Client.prototype];
45
+ // V2Client is not exported at the module root. The public client.v2 getter
46
+ // exposes the same generated class used by CohereClientV2's bound methods.
47
+ // Construction performs no I/O; an explicit inert token avoids env lookup.
48
+ if (typeof Client === "function" && Client.prototype && "v2" in Client.prototype) {
49
+ try {
50
+ const v2 = new Client({ token: "traceai-instrumentation-placeholder" }).v2;
51
+ if (v2)
52
+ targets.push(Object.getPrototypeOf(v2));
169
53
  }
170
- // Patch rerank method
171
- if (typeof CohereClient.prototype.rerank === 'function') {
172
- this._wrap(CohereClient.prototype, "rerank",
173
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
174
- (original) => {
175
- return function patchedRerank(...args) {
176
- var _a;
177
- const request = args[0];
178
- const modelName = request.model || 'rerank-english-v3.0';
179
- const span = instrumentation.fiTracer.startSpan(`Cohere Rerank`, {
180
- kind: SpanKind.INTERNAL,
181
- attributes: {
182
- [SemanticConventions.FI_SPAN_KIND]: FISpanKind.LLM,
183
- [SemanticConventions.LLM_MODEL_NAME]: modelName,
184
- [SemanticConventions.INPUT_VALUE]: request.query,
185
- [SemanticConventions.INPUT_MIME_TYPE]: MimeType.TEXT,
186
- [SemanticConventions.LLM_PROVIDER]: LLMProvider.COHERE,
187
- [SemanticConventions.GEN_AI_OPERATION_NAME]: "rerank",
188
- "cohere.rerank.query": request.query,
189
- "cohere.rerank.documents_count": request.documents.length,
190
- "cohere.rerank.top_n": request.top_n,
191
- [SemanticConventions.RAW_INPUT]: (_a = safelyJSONStringify(request)) !== null && _a !== void 0 ? _a : "",
192
- },
193
- });
194
- const execContext = getExecContext(span);
195
- const execPromise = safeExecuteInTheMiddle(() => {
196
- return context.with(trace.setSpan(execContext, span), () => {
197
- return original.apply(this, args);
198
- });
199
- }, (error) => {
200
- if (error) {
201
- span.recordException(error);
202
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
203
- span.end();
204
- }
205
- });
206
- const wrappedPromise = execPromise.then((result) => {
207
- var _a;
208
- span.setAttributes(Object.assign(Object.assign({ "cohere.rerank.results_count": result.results.length }, getRerankResultsAttributes(result)), { [SemanticConventions.RAW_OUTPUT]: (_a = safelyJSONStringify(result)) !== null && _a !== void 0 ? _a : "" }));
209
- span.setStatus({ code: SpanStatusCode.OK });
210
- span.end();
211
- return result;
212
- }).catch((error) => {
213
- span.recordException(error);
214
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
215
- span.end();
216
- throw error;
217
- });
218
- return context.bind(execContext, wrappedPromise);
219
- };
220
- });
54
+ catch (_c) {
55
+ // Telemetry must not prevent module loading; v1 remains usable.
56
+ diag.warn("Cohere instrumentation could not discover the v2 client");
221
57
  }
222
58
  }
223
- _isFIPatched = true;
224
- try {
225
- module.fiPatched = true;
226
- }
227
- catch (e) {
228
- diag.warn(`Failed to set fiPatched flag on module '${MODULE_NAME}'. Error: ${e}`);
59
+ for (const target of targets) {
60
+ if (!target)
61
+ continue;
62
+ for (const method of OPERATIONS) {
63
+ if (typeof target[method] !== "function" || ((_a = owners.get(target)) === null || _a === void 0 ? void 0 : _a.has(method)))
64
+ continue;
65
+ const hadOwn = Object.prototype.hasOwnProperty.call(target, method);
66
+ this._wrap(target, method, (original) => this.wrapMethod(method, original));
67
+ const wrapped = target[method];
68
+ ((_b = this.patches) !== null && _b !== void 0 ? _b : (this.patches = [])).push({ target, method, wrapped, hadOwn });
69
+ if (!owners.has(target))
70
+ owners.set(target, new Map());
71
+ owners.get(target).set(method, this);
72
+ patchCount++;
73
+ }
229
74
  }
230
75
  return module;
231
76
  }
232
- /**
233
- * Un-patches the Cohere module
234
- */
235
- unpatch(moduleExports, moduleVersion) {
236
- const CohereClient = moduleExports.CohereClient;
237
- if (CohereClient === null || CohereClient === void 0 ? void 0 : CohereClient.prototype) {
238
- if (CohereClient.prototype.chat) {
239
- this._unwrap(CohereClient.prototype, "chat");
240
- }
241
- if (CohereClient.prototype.embed) {
242
- this._unwrap(CohereClient.prototype, "embed");
243
- }
244
- if (CohereClient.prototype.rerank) {
245
- this._unwrap(CohereClient.prototype, "rerank");
77
+ unpatch() { this.restorePatches(); }
78
+ restorePatches() {
79
+ var _a, _b;
80
+ for (const { target, method, wrapped, hadOwn } of (_a = this.patches) !== null && _a !== void 0 ? _a : []) {
81
+ if (target[method] === wrapped) {
82
+ this._unwrap(target, method);
83
+ if (!hadOwn)
84
+ delete target[method];
246
85
  }
86
+ (_b = owners.get(target)) === null || _b === void 0 ? void 0 : _b.delete(method);
87
+ patchCount--;
247
88
  }
248
- _isFIPatched = false;
249
- try {
250
- moduleExports.fiPatched = false;
251
- }
252
- catch (e) {
253
- diag.warn(`Failed to unset fiPatched flag on module '${MODULE_NAME}'. Error: ${e}`);
254
- }
89
+ this.patches = [];
255
90
  }
256
- }
257
- /**
258
- * Converts the chat request to LLM input messages
259
- */
260
- function getChatInputMessagesAttributes(request) {
261
- var _a;
262
- const messages = [];
263
- if (request.preamble) {
264
- messages.push({ role: 'system', content: request.preamble });
265
- }
266
- if (request.chat_history) {
267
- request.chat_history.forEach((msg) => {
268
- messages.push({ role: msg.role, content: msg.message });
269
- });
270
- }
271
- messages.push({ role: 'user', content: request.message });
272
- return { [SemanticConventions.LLM_INPUT_MESSAGES]: (_a = safelyJSONStringify(messages)) !== null && _a !== void 0 ? _a : "[]" };
273
- }
274
- /**
275
- * Gets chat tools attributes
276
- */
277
- function getChatToolsAttributes(request) {
278
- var _a;
279
- if (!request.tools) {
280
- return {};
281
- }
282
- return { [SemanticConventions.LLM_TOOLS]: (_a = safelyJSONStringify(request.tools)) !== null && _a !== void 0 ? _a : "[]" };
283
- }
284
- /**
285
- * Gets chat output messages attributes
286
- */
287
- function getChatOutputMessagesAttributes(response) {
288
- var _a;
289
- const msg = { role: 'assistant', content: response.text };
290
- if (response.tool_calls) {
291
- msg.tool_calls = response.tool_calls.map((tc) => ({
292
- function: { name: tc.name, arguments: JSON.stringify(tc.parameters) },
293
- }));
294
- }
295
- return { [SemanticConventions.LLM_OUTPUT_MESSAGES]: (_a = safelyJSONStringify([msg])) !== null && _a !== void 0 ? _a : "[]" };
296
- }
297
- /**
298
- * Gets chat usage attributes
299
- */
300
- function getChatUsageAttributes(response) {
301
- const meta = response.meta;
302
- if (!meta) {
303
- return {};
304
- }
305
- const billedUnits = meta.billed_units;
306
- const tokens = meta.tokens;
307
- if (billedUnits) {
308
- return {
309
- [SemanticConventions.LLM_TOKEN_COUNT_PROMPT]: billedUnits.input_tokens,
310
- [SemanticConventions.LLM_TOKEN_COUNT_COMPLETION]: billedUnits.output_tokens,
311
- [SemanticConventions.LLM_TOKEN_COUNT_TOTAL]: (billedUnits.input_tokens || 0) + (billedUnits.output_tokens || 0),
312
- };
313
- }
314
- if (tokens) {
315
- return {
316
- [SemanticConventions.LLM_TOKEN_COUNT_PROMPT]: tokens.input_tokens,
317
- [SemanticConventions.LLM_TOKEN_COUNT_COMPLETION]: tokens.output_tokens,
318
- [SemanticConventions.LLM_TOKEN_COUNT_TOTAL]: (tokens.input_tokens || 0) + (tokens.output_tokens || 0),
91
+ wrapMethod(operation, original) {
92
+ const instrumentation = this;
93
+ return function (...args) {
94
+ const parent = context.active();
95
+ // Bound v2 methods can outlive unpatch. Respect disable even for those.
96
+ if (!instrumentation.isEnabled() || isTracingSuppressed(parent) || parent.getValue(IN_COHERE_CALL)) {
97
+ return original.apply(this, args);
98
+ }
99
+ const config = generateTraceConfig(instrumentation._traceConfig);
100
+ let span;
101
+ try {
102
+ const tracer = new FITracer({ tracer: instrumentation.tracer, traceConfig: config });
103
+ const name = operation === "chatStream" ? "Chat Stream" : operation[0].toUpperCase() + operation.slice(1);
104
+ span = tracer.startSpan(`Cohere ${name}`, { kind: SpanKind.INTERNAL, attributes: inputAttributes(operation, object(args[0]), config) }, parent);
105
+ }
106
+ catch (_a) {
107
+ diag.warn("Cohere instrumentation could not start span");
108
+ return original.apply(this, args);
109
+ }
110
+ const execContext = trace.setSpan(parent, span).setValue(IN_COHERE_CALL, true);
111
+ let ended = false;
112
+ const finish = (response, error, cancelled = false, timeToFirstTokenMs) => {
113
+ var _a;
114
+ if (ended)
115
+ return;
116
+ ended = true;
117
+ try {
118
+ // Resolved HTTP-200 chat responses can still signal failure or user
119
+ // cancellation. Use the same classification for both chat paths,
120
+ // independent of content capture and without rejecting SDK results.
121
+ if ((operation === "chat" || operation === "chatStream") && error === undefined && !cancelled) {
122
+ const reason = (_a = response.finishReason) !== null && _a !== void 0 ? _a : response.finish_reason;
123
+ switch (reason) {
124
+ case "ERROR":
125
+ case "ERROR_TOXIC":
126
+ case "ERROR_LIMIT":
127
+ case "TIMEOUT":
128
+ error = new Error(`Cohere generation failed (${reason})`);
129
+ break;
130
+ case "USER_CANCEL":
131
+ cancelled = true;
132
+ break;
133
+ }
134
+ }
135
+ span.setAttributes(outputAttributes(operation, response, config));
136
+ if (timeToFirstTokenMs !== undefined)
137
+ span.setAttribute("cohere.stream.time_to_first_token_ms", timeToFirstTokenMs);
138
+ if (error !== undefined) {
139
+ span.recordException(error instanceof Error ? error : new Error(String(error)));
140
+ span.setStatus({ code: SpanStatusCode.ERROR, message: error instanceof Error ? error.message : String(error) });
141
+ }
142
+ else if (cancelled) {
143
+ span.setAttribute(operation === "chatStream" ? "cohere.stream.cancelled" : "cohere.request.cancelled", true);
144
+ }
145
+ else {
146
+ span.setStatus({ code: SpanStatusCode.OK });
147
+ }
148
+ }
149
+ catch (_b) {
150
+ diag.warn("Cohere instrumentation could not record response");
151
+ }
152
+ finally {
153
+ span.end();
154
+ }
155
+ };
156
+ const streams = new WeakMap();
157
+ const resolved = (result) => {
158
+ if (operation === "chatStream" && result && typeof result[Symbol.asyncIterator] === "function") {
159
+ if (!streams.has(result))
160
+ streams.set(result, wrapStream(result, execContext, !hideOutput(config), finish, requestStart));
161
+ return streams.get(result);
162
+ }
163
+ finish(object(result));
164
+ return result;
165
+ };
166
+ const rejected = (error) => {
167
+ finish({}, error !== null && error !== void 0 ? error : new Error("Cohere request failed"));
168
+ throw error;
169
+ };
170
+ let pending;
171
+ const requestStart = performance.now();
172
+ try {
173
+ pending = context.with(execContext, () => original.apply(this, args));
174
+ }
175
+ catch (error) {
176
+ return rejected(error);
177
+ }
178
+ return observePromise(pending, resolved, rejected);
319
179
  };
320
180
  }
321
- return {};
322
- }
323
- /**
324
- * Gets embed text attributes
325
- */
326
- function getEmbedTextAttributes(request) {
327
- return request.texts.reduce((acc, text, index) => {
328
- acc[`${SemanticConventions.EMBEDDING_EMBEDDINGS}.${index}.${SemanticConventions.EMBEDDING_TEXT}`] = text;
329
- return acc;
330
- }, {});
331
181
  }
332
- /**
333
- * Gets embed vector attributes
334
- */
335
- function getEmbedVectorAttributes(response) {
336
- var _a;
337
- const embeddings = Array.isArray(response.embeddings)
338
- ? response.embeddings
339
- : ((_a = response.embeddings) === null || _a === void 0 ? void 0 : _a.float) || [];
340
- return embeddings.reduce((acc, embedding, index) => {
341
- acc[`${SemanticConventions.EMBEDDING_EMBEDDINGS}.${index}.${SemanticConventions.EMBEDDING_VECTOR}`] = embedding;
342
- return acc;
343
- }, {});
344
- }
345
- /**
346
- * Gets rerank results attributes
347
- */
348
- function getRerankResultsAttributes(response) {
349
- const attributes = {};
350
- response.results.forEach((result, index) => {
351
- attributes[`cohere.rerank.results.${index}.index`] = result.index;
352
- attributes[`cohere.rerank.results.${index}.relevance_score`] = result.relevance_score;
353
- if (result.document) {
354
- attributes[`cohere.rerank.results.${index}.document`] = result.document.text;
355
- }
182
+ /** Keep SDK promise helpers (notably HttpResponsePromise.withRawResponse). */
183
+ function observePromise(pending, resolved, rejected) {
184
+ const promise = pending;
185
+ const observed = promise.then(resolved, rejected);
186
+ if (typeof promise.withRawResponse !== "function")
187
+ return observed;
188
+ // A caller may exclusively use withRawResponse. Do not leave an unobserved
189
+ // rejected branch merely because telemetry also observes the normal promise.
190
+ void observed.catch(() => { });
191
+ return new Proxy(promise, {
192
+ get(target, key) {
193
+ if (key === "then")
194
+ return observed.then.bind(observed);
195
+ if (key === "catch")
196
+ return observed.catch.bind(observed);
197
+ if (key === "finally")
198
+ return observed.finally.bind(observed);
199
+ if (key === "withRawResponse")
200
+ return () => target.withRawResponse().then((raw) => (Object.assign(Object.assign({}, raw), { data: resolved(raw.data) })), rejected);
201
+ const value = Reflect.get(target, key, target);
202
+ return typeof value === "function" ? value.bind(target) : value;
203
+ },
356
204
  });
357
- return attributes;
358
205
  }
359
206
  //# sourceMappingURL=instrumentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Context } from "@opentelemetry/api";
2
+ import { Data } from "./attributes";
3
+ type Finish = (response: Data, error?: unknown, cancelled?: boolean, timeToFirstTokenMs?: number) => void;
4
+ export declare function wrapStream<T extends object>(stream: T, execContext: Context, captureContent: boolean, finish: Finish, requestStart: number): T;
5
+ export {};
6
+ //# sourceMappingURL=stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,IAAI,EAAgB,MAAM,cAAc,CAAC;AAElD,KAAK,MAAM,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAuI1G,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,CA+D9I"}