@brizz/sdk 0.1.3-rc.0 → 0.1.3
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 +34 -0
- package/dist/index.cjs +32 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +32 -22
- package/dist/index.js.map +1 -1
- package/dist/preload.cjs +32 -22
- package/dist/preload.cjs.map +1 -1
- package/dist/preload.js +32 -22
- package/dist/preload.js.map +1 -1
- package/package.json +25 -28
package/dist/index.js
CHANGED
|
@@ -1429,7 +1429,7 @@ var HANDLED_SPAN_NAMES = {
|
|
|
1429
1429
|
"ai.streamText": "ai.streamText",
|
|
1430
1430
|
"ai.toolCall": (span) => {
|
|
1431
1431
|
const toolName = span.attributes["ai.toolCall.name"];
|
|
1432
|
-
return `${toolName}.tool`;
|
|
1432
|
+
return `${String(toolName ?? "unknown")}.tool`;
|
|
1433
1433
|
}
|
|
1434
1434
|
};
|
|
1435
1435
|
var AI_RESPONSE_TEXT = "ai.response.text";
|
|
@@ -1439,10 +1439,11 @@ var AI_USAGE_COMPLETION_TOKENS = "ai.usage.completionTokens";
|
|
|
1439
1439
|
var AI_MODEL_PROVIDER = "ai.model.provider";
|
|
1440
1440
|
var transformAiSdkSpanName = (span) => {
|
|
1441
1441
|
if (span.name in HANDLED_SPAN_NAMES) {
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1442
|
+
const handler = HANDLED_SPAN_NAMES[span.name];
|
|
1443
|
+
if (typeof handler === "function") {
|
|
1444
|
+
span.name = handler(span);
|
|
1445
|
+
} else if (handler) {
|
|
1446
|
+
span.name = handler;
|
|
1446
1447
|
}
|
|
1447
1448
|
}
|
|
1448
1449
|
};
|
|
@@ -1457,26 +1458,30 @@ var transformPromptMessages = (attributes) => {
|
|
|
1457
1458
|
if (AI_PROMPT_MESSAGES in attributes) {
|
|
1458
1459
|
try {
|
|
1459
1460
|
const messages = JSON.parse(attributes[AI_PROMPT_MESSAGES]);
|
|
1460
|
-
messages.
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1461
|
+
for (const [index, msg] of messages.entries()) {
|
|
1462
|
+
const message = msg;
|
|
1463
|
+
logger.debug("Transforming prompt message", { msg: message, type: typeof message.content });
|
|
1464
|
+
if (typeof message.content === "string") {
|
|
1465
|
+
attributes[`${SpanAttributes.LLM_PROMPTS}.${index}.content`] = message.content;
|
|
1464
1466
|
} else {
|
|
1465
|
-
if (Array.isArray(
|
|
1466
|
-
const lastContent =
|
|
1467
|
-
if (lastContent
|
|
1467
|
+
if (Array.isArray(message.content) && message.content.length > 0) {
|
|
1468
|
+
const lastContent = message.content.at(-1);
|
|
1469
|
+
if (lastContent?.text) {
|
|
1468
1470
|
attributes[`${SpanAttributes.LLM_PROMPTS}.${index}.content`] = lastContent.text;
|
|
1469
1471
|
}
|
|
1470
1472
|
} else {
|
|
1471
1473
|
attributes[`${SpanAttributes.LLM_PROMPTS}.${index}.content`] = JSON.stringify(
|
|
1472
|
-
|
|
1474
|
+
message.content
|
|
1473
1475
|
);
|
|
1474
1476
|
}
|
|
1475
1477
|
}
|
|
1476
|
-
attributes[`${SpanAttributes.LLM_PROMPTS}.${index}.role`] =
|
|
1477
|
-
}
|
|
1478
|
+
attributes[`${SpanAttributes.LLM_PROMPTS}.${index}.role`] = message.role;
|
|
1479
|
+
}
|
|
1478
1480
|
delete attributes[AI_PROMPT_MESSAGES];
|
|
1479
|
-
} catch {
|
|
1481
|
+
} catch (error) {
|
|
1482
|
+
logger.debug("Skipping prompt messages transformation because of JSON parsing error", {
|
|
1483
|
+
e: error
|
|
1484
|
+
});
|
|
1480
1485
|
}
|
|
1481
1486
|
}
|
|
1482
1487
|
};
|
|
@@ -1502,11 +1507,7 @@ var calculateTotalTokens = (attributes) => {
|
|
|
1502
1507
|
var transformVendor = (attributes) => {
|
|
1503
1508
|
if (AI_MODEL_PROVIDER in attributes) {
|
|
1504
1509
|
const vendor = attributes[AI_MODEL_PROVIDER];
|
|
1505
|
-
|
|
1506
|
-
attributes[SpanAttributes.LLM_SYSTEM] = "OpenAI";
|
|
1507
|
-
} else {
|
|
1508
|
-
attributes[SpanAttributes.LLM_SYSTEM] = vendor;
|
|
1509
|
-
}
|
|
1510
|
+
attributes[SpanAttributes.LLM_SYSTEM] = vendor && vendor.startsWith("openai") ? "OpenAI" : vendor;
|
|
1510
1511
|
delete attributes[AI_MODEL_PROVIDER];
|
|
1511
1512
|
}
|
|
1512
1513
|
};
|
|
@@ -1522,11 +1523,20 @@ var shouldHandleSpan = (span) => {
|
|
|
1522
1523
|
return span.name in HANDLED_SPAN_NAMES;
|
|
1523
1524
|
};
|
|
1524
1525
|
var transformAiSdkSpan = (span) => {
|
|
1525
|
-
logger.debug("Transforming AI SDK span", { spanName: span.name });
|
|
1526
1526
|
if (!shouldHandleSpan(span)) {
|
|
1527
1527
|
logger.debug("Skipping span transformation", { spanName: span.name });
|
|
1528
1528
|
return;
|
|
1529
1529
|
}
|
|
1530
|
+
for (const key in span.attributes) {
|
|
1531
|
+
if (Number.isNaN(span.attributes[key])) {
|
|
1532
|
+
span.attributes[key] = 0;
|
|
1533
|
+
}
|
|
1534
|
+
}
|
|
1535
|
+
logger.debug("Transforming AI SDK span", {
|
|
1536
|
+
spanName: span.name,
|
|
1537
|
+
spanContext: span.spanContext(),
|
|
1538
|
+
attributes: span.attributes
|
|
1539
|
+
});
|
|
1530
1540
|
transformAiSdkSpanName(span);
|
|
1531
1541
|
transformAiSdkAttributes(span.attributes);
|
|
1532
1542
|
};
|