@ramtinj95/opencode-tokenscope 1.6.0 → 1.6.2
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 +4 -2
- package/dist/tokenscope-lib/analyzer.d.ts +1 -1
- package/dist/tokenscope-lib/analyzer.d.ts.map +1 -1
- package/dist/tokenscope-lib/analyzer.js +37 -77
- package/dist/tokenscope-lib/analyzer.js.map +1 -1
- package/dist/tokenscope-lib/config.d.ts +1 -2
- package/dist/tokenscope-lib/config.d.ts.map +1 -1
- package/dist/tokenscope-lib/config.js +6 -8
- package/dist/tokenscope-lib/config.js.map +1 -1
- package/dist/tokenscope-lib/context.d.ts.map +1 -1
- package/dist/tokenscope-lib/context.js +7 -19
- package/dist/tokenscope-lib/context.js.map +1 -1
- package/dist/tokenscope-lib/cost.d.ts.map +1 -1
- package/dist/tokenscope-lib/cost.js +6 -1
- package/dist/tokenscope-lib/cost.js.map +1 -1
- package/dist/tokenscope-lib/formatter.d.ts.map +1 -1
- package/dist/tokenscope-lib/formatter.js +12 -2
- package/dist/tokenscope-lib/formatter.js.map +1 -1
- package/dist/tokenscope-lib/subagent.d.ts.map +1 -1
- package/dist/tokenscope-lib/subagent.js +18 -29
- package/dist/tokenscope-lib/subagent.js.map +1 -1
- package/dist/tokenscope-lib/telemetry.d.ts +47 -0
- package/dist/tokenscope-lib/telemetry.d.ts.map +1 -0
- package/dist/tokenscope-lib/telemetry.js +105 -0
- package/dist/tokenscope-lib/telemetry.js.map +1 -0
- package/dist/tokenscope-lib/tokenizer.d.ts +9 -6
- package/dist/tokenscope-lib/tokenizer.d.ts.map +1 -1
- package/dist/tokenscope-lib/tokenizer.js +59 -36
- package/dist/tokenscope-lib/tokenizer.js.map +1 -1
- package/dist/tokenscope-lib/types.d.ts +5 -1
- package/dist/tokenscope-lib/types.d.ts.map +1 -1
- package/dist/tokenscope-lib/types.js.map +1 -1
- package/dist/tokenscope.d.ts.map +1 -1
- package/dist/tokenscope.js +13 -3
- package/dist/tokenscope.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/subagent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmC,gBAAgB,EAAgB,MAAM,SAAS,CAAA;AAC9F,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"subagent.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/subagent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmC,gBAAgB,EAAgB,MAAM,SAAS,CAAA;AAC9F,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAGvC,OAAO,EAAE,gBAAgB,EAAsB,MAAM,YAAY,CAAA;AAEjE,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ,CAAC;gBAFT,MAAM,EAAE,GAAG,EACX,cAAc,EAAE,cAAc,EAC9B,QAAQ,CAAC,EAAE,gBAAgB,YAAA;IAG/B,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;YA2DhE,mBAAmB;IA2DjC,OAAO,CAAC,gBAAgB;CAMzB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// SubagentAnalyzer - analyzes child sessions from Task tool calls
|
|
2
2
|
import { fetchSessionChildren, fetchSessionMessages, unwrapResponseData } from "./opencode";
|
|
3
|
+
import { summarizeTelemetry } from "./telemetry";
|
|
3
4
|
import { formatErrorMessage } from "./warnings";
|
|
4
5
|
export class SubagentAnalyzer {
|
|
5
6
|
client;
|
|
@@ -69,37 +70,25 @@ export class SubagentAnalyzer {
|
|
|
69
70
|
if (!Array.isArray(messages) || messages.length === 0)
|
|
70
71
|
return null;
|
|
71
72
|
const agentType = this.extractAgentType(child.title);
|
|
72
|
-
|
|
73
|
-
let
|
|
74
|
-
let
|
|
73
|
+
const telemetry = summarizeTelemetry(messages);
|
|
74
|
+
let providerID = "";
|
|
75
|
+
let modelName = "unknown";
|
|
75
76
|
for (const message of messages) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
(Number(tokens?.reasoning) || 0) +
|
|
83
|
-
(Number(tokens?.cache?.read) || 0) +
|
|
84
|
-
(Number(tokens?.cache?.write) || 0);
|
|
85
|
-
if (tokenTotal > 0 || (Number(message.info.cost) || 0) > 0) {
|
|
86
|
-
telemetryApiCalls++;
|
|
87
|
-
}
|
|
88
|
-
if (tokens) {
|
|
89
|
-
inputTokens += Number(tokens.input) || 0;
|
|
90
|
-
outputTokens += Number(tokens.output) || 0;
|
|
91
|
-
reasoningTokens += Number(tokens.reasoning) || 0;
|
|
92
|
-
cacheReadTokens += Number(tokens.cache?.read) || 0;
|
|
93
|
-
cacheWriteTokens += Number(tokens.cache?.write) || 0;
|
|
94
|
-
}
|
|
95
|
-
apiCost += Number(message.info.cost) || 0;
|
|
96
|
-
if (message.info.providerID)
|
|
97
|
-
providerID = message.info.providerID;
|
|
98
|
-
if (message.info.modelID)
|
|
99
|
-
modelName = message.info.modelID;
|
|
100
|
-
}
|
|
77
|
+
if (message.info.role !== "assistant")
|
|
78
|
+
continue;
|
|
79
|
+
if (message.info.providerID)
|
|
80
|
+
providerID = message.info.providerID;
|
|
81
|
+
if (message.info.modelID)
|
|
82
|
+
modelName = message.info.modelID;
|
|
101
83
|
}
|
|
102
|
-
const
|
|
84
|
+
const inputTokens = telemetry.inputTokens;
|
|
85
|
+
const outputTokens = telemetry.outputTokens;
|
|
86
|
+
const reasoningTokens = telemetry.reasoningTokens;
|
|
87
|
+
const cacheReadTokens = telemetry.cacheReadTokens;
|
|
88
|
+
const cacheWriteTokens = telemetry.cacheWriteTokens;
|
|
89
|
+
const apiCost = telemetry.sessionCost;
|
|
90
|
+
const assistantMessageCount = telemetry.assistantMessageCount;
|
|
91
|
+
const apiCallCount = telemetry.apiCallCount;
|
|
103
92
|
const totalTokens = inputTokens + outputTokens + reasoningTokens + cacheReadTokens + cacheWriteTokens;
|
|
104
93
|
const pricingModelName = this.costCalculator.buildLookupKey(providerID, modelName) || modelName;
|
|
105
94
|
const pricing = this.costCalculator.getPricing(pricingModelName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent.js","sourceRoot":"","sources":["../../tokenscope-lib/subagent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"subagent.js","sourceRoot":"","sources":["../../tokenscope-lib/subagent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { TokenUsage } from "./types";
|
|
2
|
+
export interface TelemetryCall {
|
|
3
|
+
inputTokens: number;
|
|
4
|
+
outputTokens: number;
|
|
5
|
+
reasoningTokens: number;
|
|
6
|
+
cacheReadTokens: number;
|
|
7
|
+
cacheWriteTokens: number;
|
|
8
|
+
cost: number;
|
|
9
|
+
providerTotalTokens?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface TelemetrySummary {
|
|
12
|
+
assistantMessageCount: number;
|
|
13
|
+
apiCallCount: number;
|
|
14
|
+
inputTokens: number;
|
|
15
|
+
outputTokens: number;
|
|
16
|
+
reasoningTokens: number;
|
|
17
|
+
cacheReadTokens: number;
|
|
18
|
+
cacheWriteTokens: number;
|
|
19
|
+
callsWithCacheRead: number;
|
|
20
|
+
callsWithCacheWrite: number;
|
|
21
|
+
sessionCost: number;
|
|
22
|
+
mostRecentInput: number;
|
|
23
|
+
mostRecentOutput: number;
|
|
24
|
+
mostRecentReasoning: number;
|
|
25
|
+
mostRecentCacheRead: number;
|
|
26
|
+
mostRecentCacheWrite: number;
|
|
27
|
+
mostRecentCost: number;
|
|
28
|
+
mostRecentProviderTotalTokens?: number;
|
|
29
|
+
}
|
|
30
|
+
type TelemetryPartLike = {
|
|
31
|
+
type?: string;
|
|
32
|
+
tokens?: TokenUsage;
|
|
33
|
+
cost?: number;
|
|
34
|
+
};
|
|
35
|
+
type TelemetryMessageLike = {
|
|
36
|
+
info: {
|
|
37
|
+
role?: string;
|
|
38
|
+
tokens?: TokenUsage;
|
|
39
|
+
cost?: number;
|
|
40
|
+
};
|
|
41
|
+
parts: TelemetryPartLike[];
|
|
42
|
+
};
|
|
43
|
+
export declare function collectTelemetryCalls(messages: TelemetryMessageLike[]): TelemetryCall[];
|
|
44
|
+
export declare function summarizeTelemetry(messages: TelemetryMessageLike[]): TelemetrySummary;
|
|
45
|
+
export declare function firstCacheWriteTokens(messages: TelemetryMessageLike[]): number;
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/telemetry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAA;IACtB,6BAA6B,CAAC,EAAE,MAAM,CAAA;CACvC;AAED,KAAK,iBAAiB,GAAG;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,UAAU,CAAA;QACnB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,KAAK,EAAE,iBAAiB,EAAE,CAAA;CAC3B,CAAA;AAyCD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,aAAa,EAAE,CAoBvF;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,gBAAgB,CA8CrF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAM9E"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
// Telemetry helpers - extracts per-API-call token and cost data from stored session messages
|
|
2
|
+
function safeNumber(value) {
|
|
3
|
+
return typeof value === "number" && Number.isFinite(value) ? value : 0;
|
|
4
|
+
}
|
|
5
|
+
function hasExplicitNumber(value) {
|
|
6
|
+
return typeof value === "number" && Number.isFinite(value);
|
|
7
|
+
}
|
|
8
|
+
function buildTelemetryCall(tokens, cost, force) {
|
|
9
|
+
const inputTokens = safeNumber(tokens?.input);
|
|
10
|
+
const outputTokens = safeNumber(tokens?.output);
|
|
11
|
+
const reasoningTokens = safeNumber(tokens?.reasoning);
|
|
12
|
+
const cacheReadTokens = safeNumber(tokens?.cache?.read);
|
|
13
|
+
const cacheWriteTokens = safeNumber(tokens?.cache?.write);
|
|
14
|
+
const providerTotalTokens = hasExplicitNumber(tokens?.total) ? safeNumber(tokens?.total) : undefined;
|
|
15
|
+
const normalizedCost = safeNumber(cost);
|
|
16
|
+
const hasActivity = inputTokens + outputTokens + reasoningTokens + cacheReadTokens + cacheWriteTokens > 0 ||
|
|
17
|
+
normalizedCost > 0 ||
|
|
18
|
+
providerTotalTokens !== undefined;
|
|
19
|
+
if (!force && !hasActivity)
|
|
20
|
+
return null;
|
|
21
|
+
return {
|
|
22
|
+
inputTokens,
|
|
23
|
+
outputTokens,
|
|
24
|
+
reasoningTokens,
|
|
25
|
+
cacheReadTokens,
|
|
26
|
+
cacheWriteTokens,
|
|
27
|
+
cost: normalizedCost,
|
|
28
|
+
providerTotalTokens,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function isStepFinishPart(part) {
|
|
32
|
+
return part.type === "step-finish";
|
|
33
|
+
}
|
|
34
|
+
export function collectTelemetryCalls(messages) {
|
|
35
|
+
const calls = [];
|
|
36
|
+
for (const message of messages) {
|
|
37
|
+
if (message.info.role !== "assistant")
|
|
38
|
+
continue;
|
|
39
|
+
const stepFinishParts = message.parts.filter(isStepFinishPart);
|
|
40
|
+
if (stepFinishParts.length > 0) {
|
|
41
|
+
for (const part of stepFinishParts) {
|
|
42
|
+
const call = buildTelemetryCall(part.tokens, part.cost, true);
|
|
43
|
+
if (call)
|
|
44
|
+
calls.push(call);
|
|
45
|
+
}
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
const fallback = buildTelemetryCall(message.info.tokens, message.info.cost, false);
|
|
49
|
+
if (fallback)
|
|
50
|
+
calls.push(fallback);
|
|
51
|
+
}
|
|
52
|
+
return calls;
|
|
53
|
+
}
|
|
54
|
+
export function summarizeTelemetry(messages) {
|
|
55
|
+
const assistantMessageCount = messages.reduce((count, message) => count + (message.info.role === "assistant" ? 1 : 0), 0);
|
|
56
|
+
const calls = collectTelemetryCalls(messages);
|
|
57
|
+
let inputTokens = 0;
|
|
58
|
+
let outputTokens = 0;
|
|
59
|
+
let reasoningTokens = 0;
|
|
60
|
+
let cacheReadTokens = 0;
|
|
61
|
+
let cacheWriteTokens = 0;
|
|
62
|
+
let callsWithCacheRead = 0;
|
|
63
|
+
let callsWithCacheWrite = 0;
|
|
64
|
+
let sessionCost = 0;
|
|
65
|
+
for (const call of calls) {
|
|
66
|
+
inputTokens += call.inputTokens;
|
|
67
|
+
outputTokens += call.outputTokens;
|
|
68
|
+
reasoningTokens += call.reasoningTokens;
|
|
69
|
+
cacheReadTokens += call.cacheReadTokens;
|
|
70
|
+
cacheWriteTokens += call.cacheWriteTokens;
|
|
71
|
+
sessionCost += call.cost;
|
|
72
|
+
if (call.cacheReadTokens > 0)
|
|
73
|
+
callsWithCacheRead += 1;
|
|
74
|
+
if (call.cacheWriteTokens > 0)
|
|
75
|
+
callsWithCacheWrite += 1;
|
|
76
|
+
}
|
|
77
|
+
const mostRecent = calls[calls.length - 1];
|
|
78
|
+
return {
|
|
79
|
+
assistantMessageCount,
|
|
80
|
+
apiCallCount: calls.length,
|
|
81
|
+
inputTokens,
|
|
82
|
+
outputTokens,
|
|
83
|
+
reasoningTokens,
|
|
84
|
+
cacheReadTokens,
|
|
85
|
+
cacheWriteTokens,
|
|
86
|
+
callsWithCacheRead,
|
|
87
|
+
callsWithCacheWrite,
|
|
88
|
+
sessionCost,
|
|
89
|
+
mostRecentInput: mostRecent?.inputTokens ?? 0,
|
|
90
|
+
mostRecentOutput: mostRecent?.outputTokens ?? 0,
|
|
91
|
+
mostRecentReasoning: mostRecent?.reasoningTokens ?? 0,
|
|
92
|
+
mostRecentCacheRead: mostRecent?.cacheReadTokens ?? 0,
|
|
93
|
+
mostRecentCacheWrite: mostRecent?.cacheWriteTokens ?? 0,
|
|
94
|
+
mostRecentCost: mostRecent?.cost ?? 0,
|
|
95
|
+
mostRecentProviderTotalTokens: mostRecent?.providerTotalTokens,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
export function firstCacheWriteTokens(messages) {
|
|
99
|
+
for (const call of collectTelemetryCalls(messages)) {
|
|
100
|
+
if (call.cacheWriteTokens > 0)
|
|
101
|
+
return call.cacheWriteTokens;
|
|
102
|
+
}
|
|
103
|
+
return 0;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=telemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../tokenscope-lib/telemetry.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAiD7F,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACxE,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC5D,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA8B,EAAE,IAAa,EAAE,KAAc;IACvF,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/C,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACrD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACvD,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACzD,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACpG,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IAEvC,MAAM,WAAW,GACf,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,eAAe,GAAG,gBAAgB,GAAG,CAAC;QACrF,cAAc,GAAG,CAAC;QAClB,mBAAmB,KAAK,SAAS,CAAA;IAEnC,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IAEvC,OAAO;QACL,WAAW;QACX,YAAY;QACZ,eAAe;QACf,eAAe;QACf,gBAAgB;QAChB,IAAI,EAAE,cAAc;QACpB,mBAAmB;KACpB,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAuB;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,aAAa,CAAA;AACpC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAgC;IACpE,MAAM,KAAK,GAAoB,EAAE,CAAA;IAEjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW;YAAE,SAAQ;QAE/C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;QAC9D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;gBACnC,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBAC7D,IAAI,IAAI;oBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC;YACD,SAAQ;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAClF,IAAI,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAgC;IACjE,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACzH,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAE7C,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,IAAI,eAAe,GAAG,CAAC,CAAA;IACvB,IAAI,eAAe,GAAG,CAAC,CAAA;IACvB,IAAI,gBAAgB,GAAG,CAAC,CAAA;IACxB,IAAI,kBAAkB,GAAG,CAAC,CAAA;IAC1B,IAAI,mBAAmB,GAAG,CAAC,CAAA;IAC3B,IAAI,WAAW,GAAG,CAAC,CAAA;IAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,WAAW,IAAI,IAAI,CAAC,WAAW,CAAA;QAC/B,YAAY,IAAI,IAAI,CAAC,YAAY,CAAA;QACjC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAA;QACvC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAA;QACvC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAA;QACzC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAA;QAExB,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC;YAAE,kBAAkB,IAAI,CAAC,CAAA;QACrD,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC;YAAE,mBAAmB,IAAI,CAAC,CAAA;IACzD,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAE1C,OAAO;QACL,qBAAqB;QACrB,YAAY,EAAE,KAAK,CAAC,MAAM;QAC1B,WAAW;QACX,YAAY;QACZ,eAAe;QACf,eAAe;QACf,gBAAgB;QAChB,kBAAkB;QAClB,mBAAmB;QACnB,WAAW;QACX,eAAe,EAAE,UAAU,EAAE,WAAW,IAAI,CAAC;QAC7C,gBAAgB,EAAE,UAAU,EAAE,YAAY,IAAI,CAAC;QAC/C,mBAAmB,EAAE,UAAU,EAAE,eAAe,IAAI,CAAC;QACrD,mBAAmB,EAAE,UAAU,EAAE,eAAe,IAAI,CAAC;QACrD,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,IAAI,CAAC;QACvD,cAAc,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC;QACrC,6BAA6B,EAAE,UAAU,EAAE,mBAAmB;KAC/D,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAgC;IACpE,KAAK,MAAM,IAAI,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC7D,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC"}
|
|
@@ -3,18 +3,21 @@ import { WarningCollector } from "./warnings";
|
|
|
3
3
|
export declare class TokenizerManager {
|
|
4
4
|
private warnings?;
|
|
5
5
|
private tiktokenCache;
|
|
6
|
-
private
|
|
6
|
+
private huggingFaceTokenizerCache;
|
|
7
7
|
private tiktokenModule?;
|
|
8
|
-
private
|
|
8
|
+
private huggingFaceTokenizersModule?;
|
|
9
9
|
constructor(warnings?: WarningCollector | undefined);
|
|
10
10
|
countTokens(content: string, model: TokenModel): Promise<number>;
|
|
11
11
|
private approximateTokenCount;
|
|
12
12
|
private countWithTiktoken;
|
|
13
|
-
private
|
|
13
|
+
private countWithHuggingFaceTokenizer;
|
|
14
14
|
private loadTiktokenEncoder;
|
|
15
15
|
private loadTiktokenModule;
|
|
16
|
-
private
|
|
17
|
-
private
|
|
18
|
-
private
|
|
16
|
+
private loadHuggingFaceTokenizer;
|
|
17
|
+
private loadHuggingFaceTokenizersModule;
|
|
18
|
+
private fetchHuggingFaceJson;
|
|
19
|
+
private getHuggingFaceHeaders;
|
|
20
|
+
private buildHuggingFaceFallbackWarning;
|
|
21
|
+
private importRuntimePackage;
|
|
19
22
|
}
|
|
20
23
|
//# sourceMappingURL=tokenizer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenizer.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/tokenizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tokenizer.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/tokenizer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,EAAE,gBAAgB,EAAsB,MAAM,YAAY,CAAA;AAIjE,qBAAa,gBAAgB;IAMf,OAAO,CAAC,QAAQ,CAAC;IAL7B,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,yBAAyB,CAAyB;IAC1D,OAAO,CAAC,cAAc,CAAC,CAAc;IACrC,OAAO,CAAC,2BAA2B,CAAC,CAAc;gBAE9B,QAAQ,CAAC,EAAE,gBAAgB,YAAA;IAEzC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBtE,OAAO,CAAC,qBAAqB;YAIf,iBAAiB;YASjB,6BAA6B;YAc7B,mBAAmB;YAwBnB,kBAAkB;YAOlB,wBAAwB;YA8BxB,+BAA+B;YAO/B,oBAAoB;IAgBlC,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,+BAA+B;YASzB,oBAAoB;CAUnC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
// TokenizerManager - handles token counting with multiple backends
|
|
2
|
-
import path from "path";
|
|
3
|
-
import fs from "fs/promises";
|
|
4
|
-
import { pathToFileURL } from "url";
|
|
5
|
-
import { VENDOR_ROOT } from "./config";
|
|
6
2
|
import { formatErrorMessage } from "./warnings";
|
|
3
|
+
const APPROXIMATE_ONLY_HUGGINGFACE_HUBS = new Set(["google/gemma-2-9b-it"]);
|
|
7
4
|
export class TokenizerManager {
|
|
8
5
|
warnings;
|
|
9
6
|
tiktokenCache = new Map();
|
|
10
|
-
|
|
7
|
+
huggingFaceTokenizerCache = new Map();
|
|
11
8
|
tiktokenModule;
|
|
12
|
-
|
|
9
|
+
huggingFaceTokenizersModule;
|
|
13
10
|
constructor(warnings) {
|
|
14
11
|
this.warnings = warnings;
|
|
15
12
|
}
|
|
@@ -22,8 +19,8 @@ export class TokenizerManager {
|
|
|
22
19
|
return this.approximateTokenCount(content);
|
|
23
20
|
case "tiktoken":
|
|
24
21
|
return await this.countWithTiktoken(content, model.spec.model);
|
|
25
|
-
case "
|
|
26
|
-
return await this.
|
|
22
|
+
case "huggingface":
|
|
23
|
+
return await this.countWithHuggingFaceTokenizer(content, model.spec.hub);
|
|
27
24
|
}
|
|
28
25
|
}
|
|
29
26
|
catch (error) {
|
|
@@ -43,14 +40,14 @@ export class TokenizerManager {
|
|
|
43
40
|
return this.approximateTokenCount(content);
|
|
44
41
|
}
|
|
45
42
|
}
|
|
46
|
-
async
|
|
47
|
-
const tokenizer = await this.
|
|
43
|
+
async countWithHuggingFaceTokenizer(content, hub) {
|
|
44
|
+
const tokenizer = await this.loadHuggingFaceTokenizer(hub);
|
|
48
45
|
if (!tokenizer || typeof tokenizer.encode !== "function") {
|
|
49
46
|
return this.approximateTokenCount(content);
|
|
50
47
|
}
|
|
51
48
|
try {
|
|
52
49
|
const encoding = await tokenizer.encode(content);
|
|
53
|
-
return Array.isArray(encoding) ? encoding.length :
|
|
50
|
+
return Array.isArray(encoding?.ids) ? encoding.ids.length : this.approximateTokenCount(content);
|
|
54
51
|
}
|
|
55
52
|
catch {
|
|
56
53
|
return this.approximateTokenCount(content);
|
|
@@ -68,7 +65,7 @@ export class TokenizerManager {
|
|
|
68
65
|
}
|
|
69
66
|
let encoder;
|
|
70
67
|
try {
|
|
71
|
-
encoder = encodingForModel(model);
|
|
68
|
+
encoder = typeof encodingForModel === "function" ? encodingForModel(model) : getEncoding(model);
|
|
72
69
|
}
|
|
73
70
|
catch {
|
|
74
71
|
encoder = getEncoding("cl100k_base");
|
|
@@ -78,46 +75,72 @@ export class TokenizerManager {
|
|
|
78
75
|
}
|
|
79
76
|
async loadTiktokenModule() {
|
|
80
77
|
if (!this.tiktokenModule) {
|
|
81
|
-
this.tiktokenModule = this.
|
|
78
|
+
this.tiktokenModule = this.importRuntimePackage("js-tiktoken");
|
|
82
79
|
}
|
|
83
80
|
return this.tiktokenModule;
|
|
84
81
|
}
|
|
85
|
-
async
|
|
86
|
-
if (this.
|
|
87
|
-
return this.
|
|
82
|
+
async loadHuggingFaceTokenizer(hub) {
|
|
83
|
+
if (this.huggingFaceTokenizerCache.has(hub)) {
|
|
84
|
+
return this.huggingFaceTokenizerCache.get(hub);
|
|
85
|
+
}
|
|
86
|
+
if (APPROXIMATE_ONLY_HUGGINGFACE_HUBS.has(hub)) {
|
|
87
|
+
this.warnings?.add(`TokenScope used approximate token counting for '${hub}' because it only loads public tokenizers directly in analysis mode.`, `huggingface-tokenizer-approx-only:${hub}`);
|
|
88
|
+
this.huggingFaceTokenizerCache.set(hub, null);
|
|
89
|
+
return null;
|
|
88
90
|
}
|
|
89
91
|
try {
|
|
90
|
-
const {
|
|
91
|
-
const
|
|
92
|
-
|
|
92
|
+
const { Tokenizer } = await this.loadHuggingFaceTokenizersModule();
|
|
93
|
+
const [tokenizerJson, tokenizerConfig] = await Promise.all([
|
|
94
|
+
this.fetchHuggingFaceJson(hub, "tokenizer.json"),
|
|
95
|
+
this.fetchHuggingFaceJson(hub, "tokenizer_config.json", true),
|
|
96
|
+
]);
|
|
97
|
+
const tokenizer = new Tokenizer(tokenizerJson, tokenizerConfig ?? {});
|
|
98
|
+
this.huggingFaceTokenizerCache.set(hub, tokenizer);
|
|
93
99
|
return tokenizer;
|
|
94
100
|
}
|
|
95
101
|
catch (error) {
|
|
96
|
-
this.warnings?.add(
|
|
97
|
-
this.
|
|
102
|
+
this.warnings?.add(this.buildHuggingFaceFallbackWarning(hub, error), `huggingface-tokenizer-load:${hub}`);
|
|
103
|
+
this.huggingFaceTokenizerCache.set(hub, null);
|
|
98
104
|
return null;
|
|
99
105
|
}
|
|
100
106
|
}
|
|
101
|
-
async
|
|
102
|
-
if (!this.
|
|
103
|
-
this.
|
|
107
|
+
async loadHuggingFaceTokenizersModule() {
|
|
108
|
+
if (!this.huggingFaceTokenizersModule) {
|
|
109
|
+
this.huggingFaceTokenizersModule = this.importRuntimePackage("@huggingface/tokenizers");
|
|
110
|
+
}
|
|
111
|
+
return this.huggingFaceTokenizersModule;
|
|
112
|
+
}
|
|
113
|
+
async fetchHuggingFaceJson(hub, file, optional = false) {
|
|
114
|
+
const response = await fetch(`https://huggingface.co/${hub}/raw/main/${file}`, {
|
|
115
|
+
headers: this.getHuggingFaceHeaders(),
|
|
116
|
+
});
|
|
117
|
+
if (!response.ok) {
|
|
118
|
+
if (optional && response.status === 404) {
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
throw new Error(`Failed to fetch ${file} for '${hub}' (HTTP ${response.status})`);
|
|
122
|
+
}
|
|
123
|
+
return response.json();
|
|
124
|
+
}
|
|
125
|
+
getHuggingFaceHeaders() {
|
|
126
|
+
const token = process.env.HF_TOKEN ?? process.env.HUGGING_FACE_HUB_TOKEN ?? process.env.HUGGINGFACE_TOKEN;
|
|
127
|
+
return token ? { Authorization: `Bearer ${token}` } : undefined;
|
|
128
|
+
}
|
|
129
|
+
buildHuggingFaceFallbackWarning(hub, error) {
|
|
130
|
+
const message = formatErrorMessage(error);
|
|
131
|
+
if (message.includes("Token analyzer dependency '@huggingface/tokenizers' could not be loaded")) {
|
|
132
|
+
return `TokenScope used approximate token counting for '${hub}' because the lightweight tokenizer runtime was unavailable.`;
|
|
104
133
|
}
|
|
105
|
-
return
|
|
134
|
+
return `TokenScope used approximate token counting for '${hub}' because an exact public tokenizer could not be loaded.`;
|
|
106
135
|
}
|
|
107
|
-
async
|
|
108
|
-
const pkgJsonPath = path.join(VENDOR_ROOT, pkg, "package.json");
|
|
109
|
-
let data;
|
|
136
|
+
async importRuntimePackage(pkg) {
|
|
110
137
|
try {
|
|
111
|
-
|
|
138
|
+
return await import(pkg);
|
|
112
139
|
}
|
|
113
|
-
catch {
|
|
114
|
-
throw new Error(`Token analyzer
|
|
115
|
-
`
|
|
140
|
+
catch (error) {
|
|
141
|
+
throw new Error(`Token analyzer dependency '${pkg}' could not be loaded. ` +
|
|
142
|
+
`Reinstall the npm package or rerun plugin/install.sh. ${formatErrorMessage(error)}`);
|
|
116
143
|
}
|
|
117
|
-
const manifest = JSON.parse(data);
|
|
118
|
-
const entry = manifest.module ?? manifest.main ?? "index.js";
|
|
119
|
-
const entryPath = path.join(VENDOR_ROOT, pkg, entry);
|
|
120
|
-
return import(pathToFileURL(entryPath).href);
|
|
121
144
|
}
|
|
122
145
|
}
|
|
123
146
|
//# sourceMappingURL=tokenizer.js.map
|