Skip to content

Commit cc54052

Browse files
committed
prettier
1 parent 22b79f9 commit cc54052

File tree

4 files changed

+55
-16
lines changed

4 files changed

+55
-16
lines changed

packages/ai-semantic-conventions/src/SemanticAttributes.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ export const SpanAttributes = {
3535
LLM_USAGE_COMPLETION_TOKENS: "gen_ai.usage.completion_tokens",
3636
LLM_USAGE_INPUT_TOKENS: ATTR_GEN_AI_USAGE_INPUT_TOKENS,
3737
LLM_USAGE_OUTPUT_TOKENS: ATTR_GEN_AI_USAGE_OUTPUT_TOKENS,
38-
LLM_USAGE_CACHE_CREATION_INPUT_TOKENS: "gen_ai.usage.cache_creation_input_tokens",
38+
LLM_USAGE_CACHE_CREATION_INPUT_TOKENS:
39+
"gen_ai.usage.cache_creation_input_tokens",
3940
LLM_USAGE_CACHE_READ_INPUT_TOKENS: "gen_ai.usage.cache_read_input_tokens",
4041

4142
GEN_AI_AGENT_NAME: "gen_ai.agent.name",

packages/traceloop-sdk/recordings/Test-AI-SDK-Integration-with-Recording_156038438/should-capture-and-transform-cache-tokens-from-OpenAI-with-prompt-caching_4027203422/recording.har

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,4 +327,4 @@
327327
"pages": [],
328328
"version": "1.2"
329329
}
330-
}
330+
}

packages/traceloop-sdk/src/lib/tracing/ai-sdk-transformations.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ const AI_PROMPT = "ai.prompt";
3333
const AI_USAGE_PROMPT_TOKENS = "ai.usage.promptTokens";
3434
const AI_USAGE_COMPLETION_TOKENS = "ai.usage.completionTokens";
3535
const AI_USAGE_CACHED_INPUT_TOKENS = "ai.usage.cachedInputTokens";
36-
const AI_USAGE_CACHE_CREATION_INPUT_TOKENS = "ai.usage.cacheCreationInputTokens";
36+
const AI_USAGE_CACHE_CREATION_INPUT_TOKENS =
37+
"ai.usage.cacheCreationInputTokens";
3738
const AI_USAGE_CACHE_READ_INPUT_TOKENS = "ai.usage.cacheReadInputTokens";
3839
const AI_MODEL_PROVIDER = "ai.model.provider";
3940
const AI_PROMPT_TOOLS = "ai.prompt.tools";
@@ -371,7 +372,9 @@ const calculateTotalTokens = (attributes: Record<string, any>): void => {
371372
}
372373
};
373374

374-
const transformCacheCreationInputTokens = (attributes: Record<string, any>): void => {
375+
const transformCacheCreationInputTokens = (
376+
attributes: Record<string, any>,
377+
): void => {
375378
// Transform ai.usage.cacheCreationInputTokens to gen_ai.usage.cache_creation_input_tokens
376379
if (AI_USAGE_CACHE_CREATION_INPUT_TOKENS in attributes) {
377380
attributes[SpanAttributes.LLM_USAGE_CACHE_CREATION_INPUT_TOKENS] =
@@ -380,7 +383,9 @@ const transformCacheCreationInputTokens = (attributes: Record<string, any>): voi
380383
}
381384
};
382385

383-
const transformCacheReadInputTokens = (attributes: Record<string, any>): void => {
386+
const transformCacheReadInputTokens = (
387+
attributes: Record<string, any>,
388+
): void => {
384389
// Transform ai.usage.cacheReadInputTokens to gen_ai.usage.cache_read_input_tokens
385390
if (AI_USAGE_CACHE_READ_INPUT_TOKENS in attributes) {
386391
attributes[SpanAttributes.LLM_USAGE_CACHE_READ_INPUT_TOKENS] =

packages/traceloop-sdk/test/ai-sdk-transformations.test.ts

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -953,7 +953,10 @@ describe("AI SDK Transformations", () => {
953953
attributes[SpanAttributes.LLM_USAGE_CACHE_CREATION_INPUT_TOKENS],
954954
1024,
955955
);
956-
assert.strictEqual(attributes["ai.usage.cacheCreationInputTokens"], undefined);
956+
assert.strictEqual(
957+
attributes["ai.usage.cacheCreationInputTokens"],
958+
undefined,
959+
);
957960
assert.strictEqual(attributes.someOtherAttr, "value");
958961
});
959962

@@ -969,7 +972,10 @@ describe("AI SDK Transformations", () => {
969972
attributes[SpanAttributes.LLM_USAGE_CACHE_READ_INPUT_TOKENS],
970973
512,
971974
);
972-
assert.strictEqual(attributes["ai.usage.cacheReadInputTokens"], undefined);
975+
assert.strictEqual(
976+
attributes["ai.usage.cacheReadInputTokens"],
977+
undefined,
978+
);
973979
assert.strictEqual(attributes.someOtherAttr, "value");
974980
});
975981

@@ -1007,11 +1013,26 @@ describe("AI SDK Transformations", () => {
10071013
attributes[SpanAttributes.LLM_USAGE_CACHE_READ_INPUT_TOKENS],
10081014
512,
10091015
);
1010-
assert.strictEqual(attributes[SpanAttributes.LLM_USAGE_INPUT_TOKENS], 2048);
1011-
assert.strictEqual(attributes[SpanAttributes.LLM_USAGE_OUTPUT_TOKENS], 100);
1012-
assert.strictEqual(attributes[SpanAttributes.LLM_USAGE_TOTAL_TOKENS], 2148);
1013-
assert.strictEqual(attributes["ai.usage.cacheCreationInputTokens"], undefined);
1014-
assert.strictEqual(attributes["ai.usage.cacheReadInputTokens"], undefined);
1016+
assert.strictEqual(
1017+
attributes[SpanAttributes.LLM_USAGE_INPUT_TOKENS],
1018+
2048,
1019+
);
1020+
assert.strictEqual(
1021+
attributes[SpanAttributes.LLM_USAGE_OUTPUT_TOKENS],
1022+
100,
1023+
);
1024+
assert.strictEqual(
1025+
attributes[SpanAttributes.LLM_USAGE_TOTAL_TOKENS],
1026+
2148,
1027+
);
1028+
assert.strictEqual(
1029+
attributes["ai.usage.cacheCreationInputTokens"],
1030+
undefined,
1031+
);
1032+
assert.strictEqual(
1033+
attributes["ai.usage.cacheReadInputTokens"],
1034+
undefined,
1035+
);
10151036
});
10161037

10171038
it("should prefer cacheReadInputTokens over cachedInputTokens when both present", () => {
@@ -1029,7 +1050,10 @@ describe("AI SDK Transformations", () => {
10291050
attributes[SpanAttributes.LLM_USAGE_CACHE_READ_INPUT_TOKENS],
10301051
256,
10311052
);
1032-
assert.strictEqual(attributes["ai.usage.cacheReadInputTokens"], undefined);
1053+
assert.strictEqual(
1054+
attributes["ai.usage.cacheReadInputTokens"],
1055+
undefined,
1056+
);
10331057
assert.strictEqual(attributes["ai.usage.cachedInputTokens"], undefined);
10341058
});
10351059

@@ -1079,7 +1103,10 @@ describe("AI SDK Transformations", () => {
10791103
transformLLMSpans(attributes);
10801104

10811105
// Should preserve input tokens and add total tokens
1082-
assert.strictEqual(attributes[SpanAttributes.LLM_USAGE_INPUT_TOKENS], 100);
1106+
assert.strictEqual(
1107+
attributes[SpanAttributes.LLM_USAGE_INPUT_TOKENS],
1108+
100,
1109+
);
10831110
assert.strictEqual(attributes.someOtherAttr, "value");
10841111
assert.strictEqual(
10851112
attributes[SpanAttributes.LLM_USAGE_CACHE_CREATION_INPUT_TOKENS],
@@ -1128,8 +1155,14 @@ describe("AI SDK Transformations", () => {
11281155
assert.strictEqual(attributes[SpanAttributes.LLM_SYSTEM], "Anthropic");
11291156

11301157
// Check original attributes are removed
1131-
assert.strictEqual(attributes["ai.usage.cacheCreationInputTokens"], undefined);
1132-
assert.strictEqual(attributes["ai.usage.cacheReadInputTokens"], undefined);
1158+
assert.strictEqual(
1159+
attributes["ai.usage.cacheCreationInputTokens"],
1160+
undefined,
1161+
);
1162+
assert.strictEqual(
1163+
attributes["ai.usage.cacheReadInputTokens"],
1164+
undefined,
1165+
);
11331166
assert.strictEqual(attributes["ai.response.text"], undefined);
11341167
assert.strictEqual(attributes["ai.model.provider"], undefined);
11351168
assert.strictEqual(attributes.someOtherAttr, "value");

0 commit comments

Comments
 (0)