@arizeai/openinference-instrumentation-openai 0.6.0 → 1.1.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.
@@ -1,11 +1,29 @@
1
1
  import * as openai from "openai";
2
2
  import { InstrumentationBase, InstrumentationConfig, InstrumentationModuleDefinition } from "@opentelemetry/instrumentation";
3
+ import { TraceConfigOptions } from "@arizeai/openinference-core";
3
4
  /**
4
5
  * function to check if instrumentation is enabled / disabled
5
6
  */
6
7
  export declare function isPatched(): boolean;
8
+ /**
9
+ * An auto instrumentation class for OpenAI that creates {@link https://github.com/Arize-ai/openinference/blob/main/spec/semantic_conventions.md|OpenInference} Compliant spans for the OpenAI API
10
+ * @param instrumentationConfig The config for the instrumentation @see {@link InstrumentationConfig}
11
+ * @param traceConfig The OpenInference trace configuration. Can be used to mask or redact sensitive information on spans. @see {@link TraceConfigOptions}
12
+ */
7
13
  export declare class OpenAIInstrumentation extends InstrumentationBase<typeof openai> {
8
- constructor(config?: InstrumentationConfig);
14
+ private oiTracer;
15
+ constructor({ instrumentationConfig, traceConfig, }?: {
16
+ /**
17
+ * The config for the instrumentation
18
+ * @see {@link InstrumentationConfig}
19
+ */
20
+ instrumentationConfig?: InstrumentationConfig;
21
+ /**
22
+ * The OpenInference trace configuration. Can be used to mask or redact sensitive information on spans.
23
+ * @see {@link TraceConfigOptions}
24
+ */
25
+ traceConfig?: TraceConfigOptions;
26
+ });
9
27
  protected init(): InstrumentationModuleDefinition<typeof openai>;
10
28
  /**
11
29
  * Manually instruments the OpenAI module. This is needed when the module is not loaded via require (commonjs)
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,+BAA+B,EAGhC,MAAM,gCAAgC,CAAC;AA6CxC;;GAEG;AACH,wBAAgB,SAAS,YAExB;AAmBD,qBAAa,qBAAsB,SAAQ,mBAAmB,CAAC,OAAO,MAAM,CAAC;gBAC/D,MAAM,CAAC,EAAE,qBAAqB;IAQ1C,SAAS,CAAC,IAAI,IAAI,+BAA+B,CAAC,OAAO,MAAM,CAAC;IAUhE;;;OAGG;IACH,kBAAkB,CAAC,MAAM,EAAE,OAAO,MAAM;IAKxC;;OAEG;IACH,OAAO,CAAC,KAAK;IAqPb;;OAEG;IACH,OAAO,CAAC,OAAO;CAiBhB"}
1
+ {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,+BAA+B,EAGhC,MAAM,gCAAgC,CAAC;AAmCxC,OAAO,EAGL,kBAAkB,EACnB,MAAM,6BAA6B,CAAC;AAUrC;;GAEG;AACH,wBAAgB,SAAS,YAExB;AAmBD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB,CAAC,OAAO,MAAM,CAAC;IAC3E,OAAO,CAAC,QAAQ,CAAW;gBACf,EACV,qBAAqB,EACrB,WAAW,GACZ,GAAE;QACD;;;WAGG;QACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;QAC9C;;;WAGG;QACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;KAC7B;IASN,SAAS,CAAC,IAAI,IAAI,+BAA+B,CAAC,OAAO,MAAM,CAAC;IAUhE;;;OAGG;IACH,kBAAkB,CAAC,MAAM,EAAE,OAAO,MAAM;IAKxC;;OAEG;IACH,OAAO,CAAC,KAAK;IAuPb;;OAEG;IACH,OAAO,CAAC,OAAO;CAiBhB"}
@@ -111,7 +111,7 @@ import { VERSION } from "./version";
111
111
  import { SemanticConventions, OpenInferenceSpanKind, MimeType, LLMSystem, LLMProvider, } from "@arizeai/openinference-semantic-conventions";
112
112
  import { assertUnreachable, isString } from "./typeUtils";
113
113
  import { isTracingSuppressed } from "@opentelemetry/core";
114
- import { safelyJSONStringify } from "@arizeai/openinference-core";
114
+ import { OITracer, safelyJSONStringify, } from "@arizeai/openinference-core";
115
115
  var MODULE_NAME = "openai";
116
116
  /**
117
117
  * Flag to check if the openai module has been patched
@@ -141,10 +141,18 @@ function getExecContext(span) {
141
141
  }
142
142
  return execContext;
143
143
  }
144
+ /**
145
+ * An auto instrumentation class for OpenAI that creates {@link https://github.com/Arize-ai/openinference/blob/main/spec/semantic_conventions.md|OpenInference} Compliant spans for the OpenAI API
146
+ * @param instrumentationConfig The config for the instrumentation @see {@link InstrumentationConfig}
147
+ * @param traceConfig The OpenInference trace configuration. Can be used to mask or redact sensitive information on spans. @see {@link TraceConfigOptions}
148
+ */
144
149
  var OpenAIInstrumentation = /** @class */ (function (_super) {
145
150
  __extends(OpenAIInstrumentation, _super);
146
- function OpenAIInstrumentation(config) {
147
- return _super.call(this, "@arizeai/openinference-instrumentation-openai", VERSION, Object.assign({}, config)) || this;
151
+ function OpenAIInstrumentation(_a) {
152
+ var _b = _a === void 0 ? {} : _a, instrumentationConfig = _b.instrumentationConfig, traceConfig = _b.traceConfig;
153
+ var _this = _super.call(this, "@arizeai/openinference-instrumentation-openai", VERSION, Object.assign({}, instrumentationConfig)) || this;
154
+ _this.oiTracer = new OITracer({ tracer: _this.tracer, traceConfig: traceConfig });
155
+ return _this;
148
156
  }
149
157
  OpenAIInstrumentation.prototype.init = function () {
150
158
  var module = new InstrumentationNodeModuleDefinition("openai", ["^4.0.0"], this.patch.bind(this), this.unpatch.bind(this));
@@ -181,13 +189,13 @@ var OpenAIInstrumentation = /** @class */ (function (_super) {
181
189
  }
182
190
  var body = args[0];
183
191
  var _messages = body.messages, invocationParameters = __rest(body, ["messages"]);
184
- var span = instrumentation.tracer.startSpan("OpenAI Chat Completions", {
192
+ var span = instrumentation.oiTracer.startSpan("OpenAI Chat Completions", {
185
193
  kind: SpanKind.INTERNAL,
186
194
  attributes: __assign(__assign((_a = {}, _a[SemanticConventions.OPENINFERENCE_SPAN_KIND] = OpenInferenceSpanKind.LLM, _a[SemanticConventions.LLM_MODEL_NAME] = body.model, _a[SemanticConventions.INPUT_VALUE] = JSON.stringify(body), _a[SemanticConventions.INPUT_MIME_TYPE] = MimeType.JSON, _a[SemanticConventions.LLM_INVOCATION_PARAMETERS] = JSON.stringify(invocationParameters), _a[SemanticConventions.LLM_SYSTEM] = LLMSystem.OPENAI, _a[SemanticConventions.LLM_PROVIDER] = LLMProvider.OPENAI, _a), getLLMInputMessagesAttributes(body)), getLLMToolsJSONSchema(body)),
187
195
  });
188
196
  var execContext = getExecContext(span);
189
197
  var execPromise = safeExecuteInTheMiddle(function () {
190
- return context.with(execContext, function () {
198
+ return context.with(trace.setSpan(execContext, span), function () {
191
199
  return original.apply(_this, args);
192
200
  });
193
201
  }, function (error) {
@@ -234,13 +242,13 @@ var OpenAIInstrumentation = /** @class */ (function (_super) {
234
242
  }
235
243
  var body = args[0];
236
244
  var _prompt = body.prompt, invocationParameters = __rest(body, ["prompt"]);
237
- var span = instrumentation.tracer.startSpan("OpenAI Completions", {
245
+ var span = instrumentation.oiTracer.startSpan("OpenAI Completions", {
238
246
  kind: SpanKind.INTERNAL,
239
247
  attributes: __assign((_a = {}, _a[SemanticConventions.OPENINFERENCE_SPAN_KIND] = OpenInferenceSpanKind.LLM, _a[SemanticConventions.LLM_MODEL_NAME] = body.model, _a[SemanticConventions.LLM_INVOCATION_PARAMETERS] = JSON.stringify(invocationParameters), _a[SemanticConventions.LLM_SYSTEM] = LLMSystem.OPENAI, _a[SemanticConventions.LLM_PROVIDER] = LLMProvider.OPENAI, _a), getCompletionInputValueAndMimeType(body)),
240
248
  });
241
249
  var execContext = getExecContext(span);
242
250
  var execPromise = safeExecuteInTheMiddle(function () {
243
- return context.with(execContext, function () {
251
+ return context.with(trace.setSpan(execContext, span), function () {
244
252
  return original.apply(_this, args);
245
253
  });
246
254
  }, function (error) {
@@ -280,7 +288,7 @@ var OpenAIInstrumentation = /** @class */ (function (_super) {
280
288
  var body = args[0];
281
289
  var input = body.input;
282
290
  var isStringInput = typeof input === "string";
283
- var span = instrumentation.tracer.startSpan("OpenAI Embeddings", {
291
+ var span = instrumentation.oiTracer.startSpan("OpenAI Embeddings", {
284
292
  kind: SpanKind.INTERNAL,
285
293
  attributes: __assign((_a = {}, _a[SemanticConventions.OPENINFERENCE_SPAN_KIND] = OpenInferenceSpanKind.EMBEDDING, _a[SemanticConventions.EMBEDDING_MODEL_NAME] = body.model, _a[SemanticConventions.INPUT_VALUE] = isStringInput
286
294
  ? input
@@ -290,7 +298,7 @@ var OpenAIInstrumentation = /** @class */ (function (_super) {
290
298
  });
291
299
  var execContext = getExecContext(span);
292
300
  var execPromise = safeExecuteInTheMiddle(function () {
293
- return context.with(execContext, function () {
301
+ return context.with(trace.setSpan(execContext, span), function () {
294
302
  return original.apply(_this, args);
295
303
  });
296
304
  }, function (error) {
@@ -322,7 +330,7 @@ var OpenAIInstrumentation = /** @class */ (function (_super) {
322
330
  module.openInferencePatched = true;
323
331
  }
324
332
  catch (e) {
325
- diag.warn("Failed to set ".concat(MODULE_NAME, " patched flag on the module"), e);
333
+ diag.debug("Failed to set ".concat(MODULE_NAME, " patched flag on the module"), e);
326
334
  }
327
335
  return module;
328
336
  };
@@ -436,12 +444,15 @@ function getChatCompletionInputMessageAttributes(message) {
436
444
  case "assistant":
437
445
  if (message.tool_calls) {
438
446
  message.tool_calls.forEach(function (toolCall, index) {
447
+ var toolCallIndexPrefix = "".concat(SemanticConventions.MESSAGE_TOOL_CALLS, ".").concat(index, ".");
448
+ // Add the tool call id if it exists
449
+ if (toolCall.id) {
450
+ attributes["".concat(toolCallIndexPrefix).concat(SemanticConventions.TOOL_CALL_ID)] = toolCall.id;
451
+ }
439
452
  // Make sure the tool call has a function
440
453
  if (toolCall.function) {
441
- var toolCallIndexPrefix = "".concat(SemanticConventions.MESSAGE_TOOL_CALLS, ".").concat(index, ".");
442
- attributes[toolCallIndexPrefix + SemanticConventions.TOOL_CALL_FUNCTION_NAME] = toolCall.function.name;
443
- attributes[toolCallIndexPrefix +
444
- SemanticConventions.TOOL_CALL_FUNCTION_ARGUMENTS_JSON] = toolCall.function.arguments;
454
+ attributes["".concat(toolCallIndexPrefix).concat(SemanticConventions.TOOL_CALL_FUNCTION_NAME)] = toolCall.function.name;
455
+ attributes["".concat(toolCallIndexPrefix).concat(SemanticConventions.TOOL_CALL_FUNCTION_ARGUMENTS_JSON)] = toolCall.function.arguments;
445
456
  }
446
457
  });
447
458
  }
@@ -450,8 +461,10 @@ function getChatCompletionInputMessageAttributes(message) {
450
461
  attributes[SemanticConventions.MESSAGE_FUNCTION_CALL_NAME] = message.name;
451
462
  break;
452
463
  case "tool":
453
- // There's nothing to add for the tool. There is a tool_id, but there are no
454
- // semantic conventions for it
464
+ if (message.tool_call_id) {
465
+ attributes["".concat(SemanticConventions.MESSAGE_TOOL_CALL_ID)] =
466
+ message.tool_call_id;
467
+ }
455
468
  break;
456
469
  case "system":
457
470
  // There's nothing to add for the system. Content is captured above
@@ -542,6 +555,10 @@ function getChatCompletionOutputMessageAttributes(message) {
542
555
  if (message.tool_calls) {
543
556
  message.tool_calls.forEach(function (toolCall, index) {
544
557
  var toolCallIndexPrefix = "".concat(SemanticConventions.MESSAGE_TOOL_CALLS, ".").concat(index, ".");
558
+ // Add the tool call id if it exists
559
+ if (toolCall.id) {
560
+ attributes["".concat(toolCallIndexPrefix).concat(SemanticConventions.TOOL_CALL_ID)] = toolCall.id;
561
+ }
545
562
  // Double check that the tool call has a function
546
563
  // NB: OpenAI only supports tool calls with functions right now but this may change
547
564
  if (toolCall.function) {
@@ -720,6 +737,10 @@ function getToolAndFunctionCallAttributesFromStreamChunk(chunk) {
720
737
  if (choice.delta.tool_calls) {
721
738
  choice.delta.tool_calls.forEach(function (toolCall, index) {
722
739
  var toolCallIndexPrefix = "".concat(SemanticConventions.MESSAGE_TOOL_CALLS, ".").concat(index, ".");
740
+ // Add the tool call id if it exists
741
+ if (toolCall.id) {
742
+ attributes["".concat(toolCallIndexPrefix).concat(SemanticConventions.TOOL_CALL_ID)] = toolCall.id;
743
+ }
723
744
  // Double check that the tool call has a function
724
745
  // NB: OpenAI only supports tool calls with functions right now but this may change
725
746
  if (toolCall.function) {
@@ -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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"}