@arizeai/openinference-instrumentation-beeai 1.1.1 → 1.2.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.
Files changed (35) hide show
  1. package/dist/esm/helpers/getSerializedObjectSafe.d.ts.map +1 -1
  2. package/dist/esm/helpers/getSerializedObjectSafe.js +171 -164
  3. package/dist/esm/helpers/getSerializedObjectSafe.js.map +1 -1
  4. package/dist/esm/middleware.d.ts.map +1 -1
  5. package/dist/esm/middleware.js +113 -81
  6. package/dist/esm/middleware.js.map +1 -1
  7. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  8. package/dist/esnext/helpers/getSerializedObjectSafe.d.ts.map +1 -1
  9. package/dist/esnext/helpers/getSerializedObjectSafe.js +128 -121
  10. package/dist/esnext/helpers/getSerializedObjectSafe.js.map +1 -1
  11. package/dist/esnext/middleware.d.ts.map +1 -1
  12. package/dist/esnext/middleware.js +103 -71
  13. package/dist/esnext/middleware.js.map +1 -1
  14. package/dist/esnext/tsconfig.esnext.tsbuildinfo +1 -1
  15. package/dist/examples/run-react-agent.d.ts +2 -0
  16. package/dist/examples/run-react-agent.d.ts.map +1 -0
  17. package/dist/examples/{run-agent.js → run-react-agent.js} +1 -1
  18. package/dist/examples/run-react-agent.js.map +1 -0
  19. package/dist/examples/run-toolcalling-agent.d.ts +2 -0
  20. package/dist/examples/run-toolcalling-agent.d.ts.map +1 -0
  21. package/dist/examples/run-toolcalling-agent.js +36 -0
  22. package/dist/examples/run-toolcalling-agent.js.map +1 -0
  23. package/dist/src/helpers/getSerializedObjectSafe.d.ts.map +1 -1
  24. package/dist/src/helpers/getSerializedObjectSafe.js +128 -121
  25. package/dist/src/helpers/getSerializedObjectSafe.js.map +1 -1
  26. package/dist/src/middleware.d.ts.map +1 -1
  27. package/dist/src/middleware.js +103 -71
  28. package/dist/src/middleware.js.map +1 -1
  29. package/dist/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +3 -3
  31. package/src/helpers/getSerializedObjectSafe.ts +222 -210
  32. package/src/middleware.ts +140 -98
  33. package/dist/examples/run-agent.d.ts +0 -2
  34. package/dist/examples/run-agent.d.ts.map +0 -1
  35. package/dist/examples/run-agent.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ import "./instrumentation";
2
+ //# sourceMappingURL=run-react-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-react-agent.d.ts","sourceRoot":"","sources":["../../examples/run-react-agent.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC"}
@@ -32,4 +32,4 @@ function main() {
32
32
  }
33
33
  // eslint-disable-next-line no-console
34
34
  main().catch(console.error);
35
- //# sourceMappingURL=run-agent.js.map
35
+ //# sourceMappingURL=run-react-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-react-agent.js","sourceRoot":"","sources":["../../examples/run-react-agent.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,6BAA2B;AAC3B,8DAAgE;AAChE,uEAA+E;AAC/E,oEAAiE;AACjE,oFAAqF;AACrF,uEAAwE;AAExE,MAAM,GAAG,GAAG,IAAI,sBAAe,CAAC,UAAU,CAAC,CAAC,CAAC,+DAA+D;AAC5G,MAAM,KAAK,GAAG,IAAI,kBAAU,CAAC;IAC3B,GAAG,EAAE,8CAA8C;IACnD,MAAM,EAAE,IAAI,yBAAW,EAAE,EAAE,4CAA4C;IACvE,KAAK,EAAE,CAAC,IAAI,uCAAoB,EAAE,EAAE,IAAI,yBAAa,EAAE,CAAC,EAAE,2CAA2C;CACtG,CAAC,CAAC;AAEH,SAAe,IAAI;;QACjB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC;YAC/B,MAAM,EAAE,0CAA0C;SACnD,CAAC,CAAC;QACH,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;CAAA;AAED,sCAAsC;AACtC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import "./instrumentation";
2
+ //# sourceMappingURL=run-toolcalling-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-toolcalling-agent.d.ts","sourceRoot":"","sources":["../../examples/run-toolcalling-agent.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ require("./instrumentation");
13
+ const tokenMemory_1 = require("beeai-framework/memory/tokenMemory");
14
+ const openMeteo_1 = require("beeai-framework/tools/weather/openMeteo");
15
+ const chat_1 = require("beeai-framework/adapters/ollama/backend/chat");
16
+ const agent_1 = require("beeai-framework/agents/toolCalling/agent");
17
+ const duckDuckGoSearch_1 = require("beeai-framework/tools/search/duckDuckGoSearch");
18
+ const llm = new chat_1.OllamaChatModel("llama3.1");
19
+ const agent = new agent_1.ToolCallingAgent({
20
+ llm,
21
+ memory: new tokenMemory_1.TokenMemory(),
22
+ tools: [
23
+ new duckDuckGoSearch_1.DuckDuckGoSearchTool(),
24
+ new openMeteo_1.OpenMeteoTool(), // weather tool
25
+ ],
26
+ });
27
+ function main() {
28
+ return __awaiter(this, void 0, void 0, function* () {
29
+ const response = yield agent.run({ prompt: "How are you?" });
30
+ // eslint-disable-next-line no-console
31
+ console.log(`Agent 🤖 : `, response.result.text);
32
+ });
33
+ }
34
+ // eslint-disable-next-line no-console
35
+ main().catch(console.error);
36
+ //# sourceMappingURL=run-toolcalling-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-toolcalling-agent.js","sourceRoot":"","sources":["../../examples/run-toolcalling-agent.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,6BAA2B;AAC3B,oEAAiE;AACjE,uEAAwE;AACxE,uEAA+E;AAC/E,oEAA4E;AAC5E,oFAAqF;AAErF,MAAM,GAAG,GAAG,IAAI,sBAAe,CAAC,UAAU,CAAC,CAAC;AAC5C,MAAM,KAAK,GAAG,IAAI,wBAAgB,CAAC;IACjC,GAAG;IACH,MAAM,EAAE,IAAI,yBAAW,EAAE;IACzB,KAAK,EAAE;QACL,IAAI,uCAAoB,EAAE;QAC1B,IAAI,yBAAa,EAAE,EAAE,eAAe;KACrC;CACF,CAAC,CAAC;AAEH,SAAe,IAAI;;QACjB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QAC7D,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;CAAA;AAED,sCAAsC;AACtC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSerializedObjectSafe.d.ts","sourceRoot":"","sources":["../../../src/helpers/getSerializedObjectSafe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,SAAS,EAAsB,MAAM,+BAA+B,CAAC;AAyE9E,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,OAoOzB"}
1
+ {"version":3,"file":"getSerializedObjectSafe.d.ts","sourceRoot":"","sources":["../../../src/helpers/getSerializedObjectSafe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,SAAS,EAAsB,MAAM,+BAA+B,CAAC;AAyE9E,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,OAgPzB"}
@@ -37,132 +37,139 @@ function parseLLMOutputMessages(messages) {
37
37
  .join("") })), {});
38
38
  }
39
39
  function getSerializedObjectSafe(dataObject, meta) {
40
- var _a, _b, _c, _d, _e, _f;
41
- // agent events
42
- if ([config_1.startEventName, config_1.successEventName, config_1.errorEventName, config_1.retryEventName].includes(meta.name) &&
43
- meta.creator instanceof base_1.BaseAgent) {
44
- const { meta, tools, memory, error, data } = dataObject;
45
- return Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.AGENT, iteration: meta.iteration }, ((tools === null || tools === void 0 ? void 0 : tools.length) > 0 && {
46
- [openinference_semantic_conventions_1.SemanticConventions.LLM_TOOLS]: tools.map((tool) => ({
47
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: tool.name,
48
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_DESCRIPTION]: tool.description,
49
- "tool.options": tool.options,
50
- })),
51
- })), (memory.messages.length > 0 && {
52
- [openinference_semantic_conventions_1.SemanticConventions.INPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
53
- [openinference_semantic_conventions_1.SemanticConventions.INPUT_VALUE]: JSON.stringify(memory.messages),
54
- })), (error && {
55
- "exception.message": error.message,
56
- "exception.stacktrace": error.stack,
57
- "exception.type": error.name,
58
- })), (data && {
59
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
60
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(data),
61
- }));
62
- }
63
- // update events
64
- if ([config_1.updateEventName, config_1.partialUpdateEventName].includes(meta.name)) {
65
- const { data } = dataObject;
66
- const output = data.final_answer || data.tool_output;
67
- return Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.AGENT, thought: data.thought }, (data.tool_name && {
68
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: data.tool_name,
69
- })), (data.tool_input && {
70
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(data.tool_input),
71
- })), (output && {
72
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
73
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: output,
74
- }));
75
- }
76
- // tool events (from agent)
77
- if ([config_1.toolErrorEventName, config_1.toolStartEventName, config_1.toolSuccessEventName].includes(meta.name)) {
78
- const { data } = dataObject;
79
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
80
- const output = data.result && data.result.createSnapshot();
81
- return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL, thought: data.iteration.thought }, (data.input
82
- ? { [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(data.input) }
83
- : {})), (data.tool.description && {
84
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_DESCRIPTION]: data.tool.description,
85
- })), (data.tool.name && {
86
- [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: data.tool.name,
87
- })), (data.error && {
88
- "exception.message": data.error.message,
89
- "exception.stacktrace": data.error.stack,
90
- "exception.type": data.error.name,
91
- })), (output && {
92
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(output),
93
- }));
94
- }
95
- // tool events native
96
- if ([
97
- config_1.startToolEventName,
98
- config_1.successToolEventName,
99
- config_1.finishToolEventName,
100
- config_1.errorToolEventName,
101
- config_1.retryToolEventName,
102
- ].includes(meta.name) &&
103
- meta.creator instanceof base_2.Tool) {
104
- if (!dataObject) {
40
+ var _a, _b, _c, _d, _e, _f, _g;
41
+ try {
42
+ // agent events
43
+ if ([
44
+ config_1.startEventName,
45
+ config_1.successEventName,
46
+ config_1.errorEventName,
47
+ config_1.retryEventName,
48
+ ].includes(meta.name) &&
49
+ meta.creator instanceof base_1.BaseAgent) {
50
+ const { meta, tools, memory, error, data } = dataObject;
51
+ return Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.AGENT, iteration: meta === null || meta === void 0 ? void 0 : meta.iteration }, ((tools === null || tools === void 0 ? void 0 : tools.length) > 0 && {
52
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_TOOLS]: tools.map((tool) => ({
53
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: tool.name,
54
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_DESCRIPTION]: tool.description,
55
+ "tool.options": tool.options,
56
+ })),
57
+ })), ((memory === null || memory === void 0 ? void 0 : memory.messages.length) > 0 && {
58
+ [openinference_semantic_conventions_1.SemanticConventions.INPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
59
+ [openinference_semantic_conventions_1.SemanticConventions.INPUT_VALUE]: JSON.stringify(memory.messages),
60
+ })), (error && {
61
+ "exception.message": error.message,
62
+ "exception.stacktrace": error.stack,
63
+ "exception.type": error.name,
64
+ })), (data && {
65
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
66
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(data),
67
+ }));
68
+ }
69
+ // update events
70
+ if ([config_1.updateEventName, config_1.partialUpdateEventName].includes(meta.name)) {
71
+ const { data } = dataObject;
72
+ const output = (data === null || data === void 0 ? void 0 : data.final_answer) || (data === null || data === void 0 ? void 0 : data.tool_output);
73
+ return Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.AGENT, thought: data.thought }, ((data === null || data === void 0 ? void 0 : data.tool_name) && {
74
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: data.tool_name,
75
+ })), ((data === null || data === void 0 ? void 0 : data.tool_input) && {
76
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(data.tool_input),
77
+ })), (output && {
78
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON,
79
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: output,
80
+ }));
81
+ }
82
+ // tool events (from agent)
83
+ if ([config_1.toolErrorEventName, config_1.toolStartEventName, config_1.toolSuccessEventName].includes(meta.name)) {
84
+ const { data } = dataObject;
85
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
86
+ const output = (data === null || data === void 0 ? void 0 : data.result) && data.result.createSnapshot();
87
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL, thought: (_a = data === null || data === void 0 ? void 0 : data.iteration) === null || _a === void 0 ? void 0 : _a.thought }, ((data === null || data === void 0 ? void 0 : data.input)
88
+ ? {
89
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(data.input),
90
+ }
91
+ : {})), ((data === null || data === void 0 ? void 0 : data.tool.description) && {
92
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_DESCRIPTION]: data.tool.description,
93
+ })), ((data === null || data === void 0 ? void 0 : data.tool.name) && {
94
+ [openinference_semantic_conventions_1.SemanticConventions.TOOL_NAME]: data.tool.name,
95
+ })), ((data === null || data === void 0 ? void 0 : data.error) && {
96
+ "exception.message": data.error.message,
97
+ "exception.stacktrace": data.error.stack,
98
+ "exception.type": data.error.name,
99
+ })), (output && {
100
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(output),
101
+ }));
102
+ }
103
+ // tool events native
104
+ if ([
105
+ config_1.startToolEventName,
106
+ config_1.successToolEventName,
107
+ config_1.finishToolEventName,
108
+ config_1.errorToolEventName,
109
+ config_1.retryToolEventName,
110
+ ].includes(meta.name) &&
111
+ meta.creator instanceof base_2.Tool) {
112
+ if (!dataObject) {
113
+ return {
114
+ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL,
115
+ };
116
+ }
117
+ const { input, output, error } = dataObject;
118
+ return Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL }, (input
119
+ ? { [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(input) }
120
+ : {})), (output && {
121
+ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(output),
122
+ })), (error && {
123
+ "exception.message": error.message,
124
+ "exception.stacktrace": error.stack,
125
+ "exception.type": error.name,
126
+ }));
127
+ }
128
+ // llm events
129
+ if ([
130
+ config_1.successLLMEventName,
131
+ config_1.startLLMEventName,
132
+ config_1.errorLLMEventName,
133
+ config_1.newTokenLLMEventName,
134
+ ].includes(meta.name) &&
135
+ meta.creator instanceof chat_1.ChatModel) {
136
+ const { value, input, error } = dataObject;
137
+ const creator = meta.creator.createSnapshot();
138
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.LLM }, (((_b = value === null || value === void 0 ? void 0 : value.usage) === null || _b === void 0 ? void 0 : _b.completionTokens) && {
139
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_COMPLETION]: (_c = value === null || value === void 0 ? void 0 : value.usage) === null || _c === void 0 ? void 0 : _c.completionTokens,
140
+ })), (((_d = value === null || value === void 0 ? void 0 : value.usage) === null || _d === void 0 ? void 0 : _d.promptTokens) && {
141
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_PROMPT]: (_e = value === null || value === void 0 ? void 0 : value.usage) === null || _e === void 0 ? void 0 : _e.promptTokens,
142
+ })), (((_f = value === null || value === void 0 ? void 0 : value.usage) === null || _f === void 0 ? void 0 : _f.totalTokens) && {
143
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_TOTAL]: (_g = value === null || value === void 0 ? void 0 : value.usage) === null || _g === void 0 ? void 0 : _g.totalTokens,
144
+ })), ((input === null || input === void 0 ? void 0 : input.messages.length) > 0 && Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.INPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON, [openinference_semantic_conventions_1.SemanticConventions.INPUT_VALUE]: JSON.stringify(input.messages) }, parserLLMInputMessages(input.messages)))), ((value === null || value === void 0 ? void 0 : value.messages.length) > 0 && Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON, [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(value.messages) }, parseLLMOutputMessages(value.messages)))), (error && {
145
+ "exception.message": error.message,
146
+ "exception.stacktrace": error.stack,
147
+ "exception.type": error.name,
148
+ })), ("providerId" in creator && {
149
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_PROVIDER]: creator.providerId,
150
+ [`${openinference_semantic_conventions_1.SemanticAttributePrefixes.metadata}.${openinference_semantic_conventions_1.LLMAttributePostfixes.provider}`]: creator.providerId,
151
+ })), ("modelId" in creator && {
152
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_MODEL_NAME]: creator.modelId,
153
+ [`${openinference_semantic_conventions_1.SemanticAttributePrefixes.metadata}.${openinference_semantic_conventions_1.LLMAttributePostfixes.model_name}`]: creator.modelId,
154
+ })), ((creator === null || creator === void 0 ? void 0 : creator.parameters) && {
155
+ [openinference_semantic_conventions_1.SemanticConventions.LLM_INVOCATION_PARAMETERS]: JSON.stringify(creator.parameters),
156
+ }));
157
+ }
158
+ if (meta.name === config_1.finishLLMEventName && meta.creator instanceof chat_1.ChatModel) {
105
159
  return {
106
- [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL,
160
+ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.LLM,
107
161
  };
108
162
  }
109
- const { input, output, error } = dataObject;
110
- return Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.TOOL }, (input
111
- ? { [openinference_semantic_conventions_1.SemanticConventions.TOOL_PARAMETERS]: JSON.stringify(input) }
112
- : {})), (output && {
113
- [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(output),
114
- })), (error && {
115
- "exception.message": error.message,
116
- "exception.stacktrace": error.stack,
117
- "exception.type": error.name,
118
- }));
119
- }
120
- // llm events
121
- if ([
122
- config_1.successLLMEventName,
123
- config_1.startLLMEventName,
124
- config_1.errorLLMEventName,
125
- config_1.newTokenLLMEventName,
126
- ].includes(meta.name) &&
127
- meta.creator instanceof chat_1.ChatModel) {
128
- const { value, input, error } = dataObject;
129
- const creator = meta.creator.createSnapshot();
130
- return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.LLM }, (((_a = value === null || value === void 0 ? void 0 : value.usage) === null || _a === void 0 ? void 0 : _a.completionTokens) && {
131
- [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_COMPLETION]: (_b = value === null || value === void 0 ? void 0 : value.usage) === null || _b === void 0 ? void 0 : _b.completionTokens,
132
- })), (((_c = value === null || value === void 0 ? void 0 : value.usage) === null || _c === void 0 ? void 0 : _c.promptTokens) && {
133
- [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_PROMPT]: (_d = value === null || value === void 0 ? void 0 : value.usage) === null || _d === void 0 ? void 0 : _d.promptTokens,
134
- })), (((_e = value === null || value === void 0 ? void 0 : value.usage) === null || _e === void 0 ? void 0 : _e.totalTokens) && {
135
- [openinference_semantic_conventions_1.SemanticConventions.LLM_TOKEN_COUNT_TOTAL]: (_f = value === null || value === void 0 ? void 0 : value.usage) === null || _f === void 0 ? void 0 : _f.totalTokens,
136
- })), ((input === null || input === void 0 ? void 0 : input.messages.length) > 0 && Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.INPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON, [openinference_semantic_conventions_1.SemanticConventions.INPUT_VALUE]: JSON.stringify(input.messages) }, parserLLMInputMessages(input.messages)))), ((value === null || value === void 0 ? void 0 : value.messages.length) > 0 && Object.assign({ [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_MIME_TYPE]: openinference_semantic_conventions_1.MimeType.JSON, [openinference_semantic_conventions_1.SemanticConventions.OUTPUT_VALUE]: JSON.stringify(value.messages) }, parseLLMOutputMessages(value.messages)))), (error && {
137
- "exception.message": error.message,
138
- "exception.stacktrace": error.stack,
139
- "exception.type": error.name,
140
- })), ("providerId" in creator && {
141
- [openinference_semantic_conventions_1.SemanticConventions.LLM_PROVIDER]: creator.providerId,
142
- [`${openinference_semantic_conventions_1.SemanticAttributePrefixes.metadata}.${openinference_semantic_conventions_1.LLMAttributePostfixes.provider}`]: creator.providerId,
143
- })), ("modelId" in creator && {
144
- [openinference_semantic_conventions_1.SemanticConventions.LLM_MODEL_NAME]: creator.modelId,
145
- [`${openinference_semantic_conventions_1.SemanticAttributePrefixes.metadata}.${openinference_semantic_conventions_1.LLMAttributePostfixes.model_name}`]: creator.modelId,
146
- })), (creator.parameters && {
147
- [openinference_semantic_conventions_1.SemanticConventions.LLM_INVOCATION_PARAMETERS]: JSON.stringify(creator.parameters),
148
- }));
149
- }
150
- if (meta.name === config_1.finishLLMEventName && meta.creator instanceof chat_1.ChatModel) {
151
- return {
152
- [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: openinference_semantic_conventions_1.OpenInferenceSpanKind.LLM,
153
- };
154
- }
155
- // other events
156
- const data = (0, object_1.getProp)(dataObject, ["data"], dataObject);
157
- if (data instanceof serializable_1.Serializable) {
158
- try {
163
+ // other events
164
+ const data = (0, object_1.getProp)(dataObject, ["data"], dataObject);
165
+ if (data instanceof serializable_1.Serializable) {
159
166
  return { data: JSON.stringify(data.createSnapshot()), test: "hallo" };
160
167
  }
161
- catch (e) {
162
- api_1.diag.warn("Invalid createSnapshot method in the Serializable class", e);
163
- return null;
164
- }
168
+ return { data: JSON.stringify(data) };
169
+ }
170
+ catch (e) {
171
+ api_1.diag.warn("Failed to parse event data", e);
172
+ return null;
165
173
  }
166
- return { data: JSON.stringify(data) };
167
174
  }
168
175
  //# sourceMappingURL=getSerializedObjectSafe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSerializedObjectSafe.js","sourceRoot":"","sources":["../../../src/helpers/getSerializedObjectSafe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getSerializedObjectSafe.js","sourceRoot":"","sources":["../../../src/helpers/getSerializedObjectSafe.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAWvD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgB1E,OAAO,EACL,qBAAqB,EAEtB,MAAM,6CAA6C,CAAC;AAErD,eAAO,MAAM,eAAe,qBAA4B,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,QAAQ,EAChB,YAAY,EAAE,qBAAqB,aAElB,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,UAuQrD"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAWvD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgB1E,OAAO,EACL,qBAAqB,EAEtB,MAAM,6CAA6C,CAAC;AAIrD,eAAO,MAAM,eAAe,qBAA4B,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,QAAQ,EAChB,YAAY,EAAE,qBAAqB,aAElB,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,UA+SrD"}
@@ -37,10 +37,12 @@ const message_1 = require("beeai-framework/backend/message");
37
37
  const traceSerializer_1 = require("./helpers/traceSerializer");
38
38
  const config_1 = require("./config");
39
39
  const utils_1 = require("beeai-framework/emitter/utils");
40
+ const agent_1 = require("beeai-framework/agents/react/agent");
40
41
  const base_1 = require("beeai-framework/agents/base");
41
42
  const api_1 = require("@opentelemetry/api");
42
43
  const buildTraceTree_1 = require("./helpers/buildTraceTree");
43
44
  const openinference_semantic_conventions_1 = require("@arizeai/openinference-semantic-conventions");
45
+ const agent_2 = require("beeai-framework/agents/toolCalling/agent");
44
46
  exports.activeTracesMap = new Map();
45
47
  /**
46
48
  * First we collect, filter and transform events from the beeai emitter to our internal framework spans in the `emitter.match("*.*"` block
@@ -171,84 +173,114 @@ function createTelemetryMiddleware(tracer, mainSpanKind) {
171
173
  context,
172
174
  });
173
175
  }
174
- /**
175
- * create groupId span level (id does not exist)
176
- * I use only the top-level groups like iterations other nested groups like tokens would introduce unuseful complexity
177
- */
178
- if (meta.groupId &&
179
- !meta.trace.parentRunId &&
180
- !groupIterations.includes(meta.groupId)) {
181
- spansMap.set(meta.groupId, (0, create_span_1.createSpan)({
182
- id: meta.groupId,
183
- name: meta.groupId,
184
- target: "groupId",
185
- data: {
186
- [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: "Chain",
187
- },
188
- startedAt: convertDateToPerformance(meta.createdAt),
189
- }));
190
- groupIterations.push(meta.groupId);
191
- }
192
- const { spanId, parentSpanId } = idNameManager.getIds({
193
- path: meta.path,
194
- id: meta.id,
195
- runId: meta.trace.runId,
196
- parentRunId: meta.trace.parentRunId,
197
- groupId: meta.groupId,
198
- });
199
- const serializedData = (0, getSerializedObjectSafe_1.getSerializedObjectSafe)(data, meta);
200
- // skip partialUpdate events with no data
201
- if (meta.name === config_1.partialUpdateEventName && (0, remeda_1.isEmpty)(serializedData)) {
202
- return;
203
- }
204
- const span = (0, create_span_1.createSpan)(Object.assign(Object.assign({ id: spanId, name: meta.name, target: meta.path }, (parentSpanId && { parent: { id: parentSpanId } })), { ctx: meta.context, data: serializedData, error: (0, getErrorSafe_1.getErrorSafe)(data), startedAt: convertDateToPerformance(meta.createdAt) }));
205
- const lastIteration = groupIterations[groupIterations.length - 1];
206
- // delete the `partialUpdate` event if does not have nested spans
207
- const lastIterationEventSpanId = (_b = eventsIterationsMap
208
- .get(lastIteration)) === null || _b === void 0 ? void 0 : _b.get(meta.name);
209
- if (lastIterationEventSpanId &&
210
- config_1.partialUpdateEventName === meta.name &&
211
- spansMap.has(lastIterationEventSpanId)) {
212
- const { context } = spansMap.get(lastIterationEventSpanId);
213
- if (parentIdsMap.has(context.span_id)) {
214
- spansToDeleteMap.set(lastIterationEventSpanId, undefined);
176
+ try {
177
+ /**
178
+ * create groupId span level (id does not exist)
179
+ * I use only the top-level groups like iterations other nested groups like tokens would introduce unuseful complexity
180
+ */
181
+ if (meta.groupId &&
182
+ !meta.trace.parentRunId &&
183
+ !groupIterations.includes(meta.groupId)) {
184
+ spansMap.set(meta.groupId, (0, create_span_1.createSpan)({
185
+ id: meta.groupId,
186
+ name: meta.groupId,
187
+ target: "groupId",
188
+ data: {
189
+ [openinference_semantic_conventions_1.SemanticConventions.OPENINFERENCE_SPAN_KIND]: "Chain",
190
+ },
191
+ startedAt: convertDateToPerformance(meta.createdAt),
192
+ }));
193
+ groupIterations.push(meta.groupId);
215
194
  }
216
- else {
217
- // delete span
218
- cleanSpanSources({ spanId: lastIterationEventSpanId });
219
- spansMap.delete(lastIterationEventSpanId);
195
+ const { spanId, parentSpanId } = idNameManager.getIds({
196
+ path: meta.path,
197
+ id: meta.id,
198
+ runId: meta.trace.runId,
199
+ parentRunId: meta.trace.parentRunId,
200
+ groupId: meta.groupId,
201
+ });
202
+ const serializedData = (0, getSerializedObjectSafe_1.getSerializedObjectSafe)(data, meta);
203
+ // skip partialUpdate events with no data
204
+ if (meta.name === config_1.partialUpdateEventName && (0, remeda_1.isEmpty)(serializedData)) {
205
+ return;
220
206
  }
221
- }
222
- // create new span
223
- spansMap.set(span.context.span_id, span);
224
- // update number of nested spans for parent_id if exists
225
- if (span.parent_id) {
226
- parentIdsMap.set(span.parent_id, (parentIdsMap.get(span.parent_id) || 0) + 1);
227
- }
228
- // save the last event for each iteration
229
- if (groupIterations.length > 0) {
230
- if (eventsIterationsMap.has(lastIteration)) {
231
- eventsIterationsMap
232
- .get(lastIteration)
233
- .set(meta.name, span.context.span_id);
207
+ const span = (0, create_span_1.createSpan)(Object.assign(Object.assign({ id: spanId, name: meta.name, target: meta.path }, (parentSpanId && { parent: { id: parentSpanId } })), { ctx: meta.context, data: serializedData, error: (0, getErrorSafe_1.getErrorSafe)(data), startedAt: convertDateToPerformance(meta.createdAt) }));
208
+ const lastIteration = groupIterations[groupIterations.length - 1];
209
+ // delete the `partialUpdate` event if does not have nested spans
210
+ const lastIterationEventSpanId = (_b = eventsIterationsMap
211
+ .get(lastIteration)) === null || _b === void 0 ? void 0 : _b.get(meta.name);
212
+ if (lastIterationEventSpanId &&
213
+ config_1.partialUpdateEventName === meta.name &&
214
+ spansMap.has(lastIterationEventSpanId)) {
215
+ const { context } = spansMap.get(lastIterationEventSpanId);
216
+ if (parentIdsMap.has(context.span_id)) {
217
+ spansToDeleteMap.set(lastIterationEventSpanId, undefined);
218
+ }
219
+ else {
220
+ // delete span
221
+ cleanSpanSources({ spanId: lastIterationEventSpanId });
222
+ spansMap.delete(lastIterationEventSpanId);
223
+ }
234
224
  }
235
- else {
236
- eventsIterationsMap.set(lastIteration, new Map().set(meta.name, span.context.span_id));
225
+ // create new span
226
+ spansMap.set(span.context.span_id, span);
227
+ // update number of nested spans for parent_id if exists
228
+ if (span.parent_id) {
229
+ parentIdsMap.set(span.parent_id, (parentIdsMap.get(span.parent_id) || 0) + 1);
230
+ }
231
+ // save the last event for each iteration
232
+ if (groupIterations.length > 0) {
233
+ if (eventsIterationsMap.has(lastIteration)) {
234
+ eventsIterationsMap
235
+ .get(lastIteration)
236
+ .set(meta.name, span.context.span_id);
237
+ }
238
+ else {
239
+ eventsIterationsMap.set(lastIteration, new Map().set(meta.name, span.context.span_id));
240
+ }
237
241
  }
238
242
  }
243
+ catch (e) {
244
+ api_1.diag.warn("Instrumentation error", e);
245
+ }
246
+ });
247
+ // The generated response and message history are collected from the `success` event generated by ReActAgent
248
+ emitter.match((event) => event.name === config_1.successLLMEventName &&
249
+ event.creator instanceof agent_1.ReActAgent, (data) => {
250
+ try {
251
+ const { data: dataObject, memory } = data;
252
+ generatedMessage = {
253
+ role: dataObject.role,
254
+ text: dataObject.text,
255
+ };
256
+ history = memory.messages.map((msg) => ({
257
+ text: msg.text,
258
+ role: msg.role,
259
+ }));
260
+ }
261
+ catch (e) {
262
+ api_1.diag.warn("Instrumentation error. Unable to map messages to history for ReActAgent", e);
263
+ }
239
264
  });
240
- // The generated response and message history are collected from the `success` agent's event
265
+ // The generated response and message history are collected from the `success` event generated by ToolCallingAgentCallbacks
241
266
  emitter.match((event) => event.name === config_1.successLLMEventName &&
242
- event.creator instanceof base_1.BaseAgent, (data) => {
243
- const { data: dataObject, memory } = data;
244
- generatedMessage = {
245
- role: dataObject.role,
246
- text: dataObject.text,
247
- };
248
- history = memory.messages.map((msg) => ({
249
- text: msg.text,
250
- role: msg.role,
251
- }));
267
+ event.creator instanceof agent_2.ToolCallingAgent, (data) => {
268
+ try {
269
+ const { state } = data;
270
+ if (state.result) {
271
+ generatedMessage = {
272
+ role: state.result.role,
273
+ text: state.result.text,
274
+ };
275
+ }
276
+ history = state.memory.messages.map((msg) => ({
277
+ text: msg.text,
278
+ role: msg.role,
279
+ }));
280
+ }
281
+ catch (e) {
282
+ api_1.diag.warn("Instrumentation error. Unable to map messages to history for ToolCallingAgent", e);
283
+ }
252
284
  });
253
285
  };
254
286
  }