ds4-context-core 0.3.9 → 0.3.10
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/dist/config/config-loader.d.ts.map +1 -1
- package/dist/config/config-loader.js +14 -0
- package/dist/config/config-loader.js.map +1 -1
- package/dist/config/config.d.ts +5 -0
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js.map +1 -1
- package/dist/core/bpe-token-estimator.d.ts +4 -0
- package/dist/core/bpe-token-estimator.d.ts.map +1 -0
- package/dist/core/bpe-token-estimator.js +6 -0
- package/dist/core/bpe-token-estimator.js.map +1 -0
- package/dist/core/budget-manager.d.ts.map +1 -1
- package/dist/core/budget-manager.js +7 -3
- package/dist/core/budget-manager.js.map +1 -1
- package/dist/core/model-awareness.d.ts +22 -3
- package/dist/core/model-awareness.d.ts.map +1 -1
- package/dist/core/model-awareness.js +70 -6
- package/dist/core/model-awareness.js.map +1 -1
- package/dist/core/token-estimator.d.ts +9 -0
- package/dist/core/token-estimator.d.ts.map +1 -1
- package/dist/core/token-estimator.js +32 -18
- package/dist/core/token-estimator.js.map +1 -1
- package/dist/manifest/context-manifest.d.ts +3 -1
- package/dist/manifest/context-manifest.d.ts.map +1 -1
- package/dist/manifest/observer.d.ts +3 -1
- package/dist/manifest/observer.d.ts.map +1 -1
- package/dist/manifest/observer.js +7 -6
- package/dist/manifest/observer.js.map +1 -1
- package/dist/planner/atomic-groups.d.ts +2 -1
- package/dist/planner/atomic-groups.d.ts.map +1 -1
- package/dist/planner/atomic-groups.js +3 -3
- package/dist/planner/atomic-groups.js.map +1 -1
- package/dist/planner/context-planner.d.ts +2 -0
- package/dist/planner/context-planner.d.ts.map +1 -1
- package/dist/planner/context-planner.js +11 -11
- package/dist/planner/context-planner.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAkfD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACpE,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAKA;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAoBnE;AAgBD,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAY,GAClB,MAAM,CAER;AAED,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAY,GAClB,MAAM,CAER"}
|
|
@@ -11,6 +11,7 @@ function isRecord(value) {
|
|
|
11
11
|
* They are merged as free objects and later validated by `validateConfig`.
|
|
12
12
|
*/
|
|
13
13
|
const OPTIONAL_OBJECT_PATHS = new Set(["compaction.model", "compaction.summary"]);
|
|
14
|
+
const OPTIONAL_BOOLEAN_PATHS = new Set(["modelAwareness.autoTune"]);
|
|
14
15
|
function mergeKnown(base, override, warnings, prefix = "") {
|
|
15
16
|
const result = structuredClone(base);
|
|
16
17
|
const known = base;
|
|
@@ -21,6 +22,10 @@ function mergeKnown(base, override, warnings, prefix = "") {
|
|
|
21
22
|
result[key] = structuredClone(incoming);
|
|
22
23
|
continue;
|
|
23
24
|
}
|
|
25
|
+
if (OPTIONAL_BOOLEAN_PATHS.has(path) && typeof incoming === "boolean") {
|
|
26
|
+
result[key] = incoming;
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
24
29
|
warnings.push(`Unknown configuration key ignored: ${path}`);
|
|
25
30
|
continue;
|
|
26
31
|
}
|
|
@@ -321,7 +326,11 @@ function validateConfig(config) {
|
|
|
321
326
|
|| lowerRatio < 0.25 || upperRatio > 4 || lowerRatio >= upperRatio) {
|
|
322
327
|
throw new Error("modelAwareness calibration ratio bounds must satisfy 0.25 <= lower < upper <= 4");
|
|
323
328
|
}
|
|
329
|
+
if (config.modelAwareness.autoTune !== undefined && typeof config.modelAwareness.autoTune !== "boolean") {
|
|
330
|
+
throw new Error("modelAwareness.autoTune must be a boolean");
|
|
331
|
+
}
|
|
324
332
|
const overrideFields = new Set([
|
|
333
|
+
"tokenEstimator",
|
|
325
334
|
"contextWindow",
|
|
326
335
|
"maxOutputTokens",
|
|
327
336
|
"safetyMarginTokens",
|
|
@@ -345,6 +354,11 @@ function validateConfig(config) {
|
|
|
345
354
|
throw new Error(`Unknown modelAwareness override field: ${key}.${field}`);
|
|
346
355
|
}
|
|
347
356
|
}
|
|
357
|
+
if (overrideRecord.tokenEstimator !== undefined
|
|
358
|
+
&& overrideRecord.tokenEstimator !== "chars-v1"
|
|
359
|
+
&& overrideRecord.tokenEstimator !== "o200k-base-v1") {
|
|
360
|
+
throw new Error(`modelAwareness override ${key} tokenEstimator must be chars-v1 or o200k-base-v1`);
|
|
361
|
+
}
|
|
348
362
|
const positive = [overrideRecord.contextWindow, overrideRecord.maxOutputTokens];
|
|
349
363
|
if (positive.some((value) => value !== undefined
|
|
350
364
|
&& (typeof value !== "number" || !Number.isInteger(value) || value <= 0 || value > 10_000_000))) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"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"}
|
package/dist/config/config.d.ts
CHANGED
|
@@ -186,7 +186,10 @@ export interface PrivacyConfig {
|
|
|
186
186
|
remoteProviders: Record<string, PrivacyClassification[]>;
|
|
187
187
|
redactSecrets: boolean;
|
|
188
188
|
}
|
|
189
|
+
export type TokenEstimatorVersion = "chars-v1" | "o200k-base-v1";
|
|
189
190
|
export interface ModelProfileOverride {
|
|
191
|
+
/** Opt-in OpenAI o200k BPE text counting for this profile; other content remains heuristic. */
|
|
192
|
+
tokenEstimator?: TokenEstimatorVersion;
|
|
190
193
|
contextWindow?: number;
|
|
191
194
|
maxOutputTokens?: number;
|
|
192
195
|
safetyMarginTokens?: number;
|
|
@@ -196,6 +199,8 @@ export interface ModelProfileOverride {
|
|
|
196
199
|
}
|
|
197
200
|
export interface ModelAwarenessConfig {
|
|
198
201
|
enabled: boolean;
|
|
202
|
+
/** Opt-in, evidence-gated expansion of automatic category ceilings. */
|
|
203
|
+
autoTune?: boolean;
|
|
199
204
|
calibrationWindow: number;
|
|
200
205
|
minimumCalibrationSamples: number;
|
|
201
206
|
calibrationRatioLowerBound: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAGA,uEAAuE;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAgC,CAAC;AAoEtE;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,KAAK;IACL,SAAS;IACT,KAAK;IACL,QAAQ;IACR,MAAM;IACN,OAAO;IACP,KAAK;CACG,CAAC;AAsBX,MAAM,CAAC,MAAM,2CAA2C,GAAG,MAAM,CAAC;AAClE,MAAM,CAAC,MAAM,6CAA6C,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type TokenEstimator } from "./token-estimator.ts";
|
|
2
|
+
/** Keep the portable core independent of any BPE implementation or agent runtime. */
|
|
3
|
+
export declare function createO200kEstimator(countText: (text: string) => number): TokenEstimator;
|
|
4
|
+
//# sourceMappingURL=bpe-token-estimator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bpe-token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/bpe-token-estimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEjF,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CAExF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { createTokenEstimator } from "./token-estimator.js";
|
|
2
|
+
/** Keep the portable core independent of any BPE implementation or agent runtime. */
|
|
3
|
+
export function createO200kEstimator(countText) {
|
|
4
|
+
return createTokenEstimator("o200k-base-v1", countText);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=bpe-token-estimator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bpe-token-estimator.js","sourceRoot":"","sources":["../../src/core/bpe-token-estimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAuB,MAAM,sBAAsB,CAAC;AAEjF,qFAAqF;AACrF,MAAM,UAAU,oBAAoB,CAAC,SAAmC;IACtE,OAAO,oBAAoB,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"budget-manager.d.ts","sourceRoot":"","sources":["../../src/core/budget-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;CACrB;AAOD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC9B,aAAa,
|
|
1
|
+
{"version":3,"file":"budget-manager.d.ts","sourceRoot":"","sources":["../../src/core/budget-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;CACrB;AAOD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC9B,aAAa,CA+Cf"}
|
|
@@ -19,9 +19,13 @@ export function calculateContextBudget(profile, config, calibration) {
|
|
|
19
19
|
&& calibration.appliedRatio > 0
|
|
20
20
|
? calibration.appliedRatio
|
|
21
21
|
: 1;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
// Short-prompt overestimation need not persist for longer contexts. Use
|
|
23
|
+
// calibration to reduce input ceilings on underestimation, never to raise
|
|
24
|
+
// them above the nominal model limits on apparent overestimation.
|
|
25
|
+
const conservativeRatio = Math.max(1, calibrationRatio);
|
|
26
|
+
const hardInputLimit = estimatorLimit(nominalHardInputLimit, conservativeRatio);
|
|
27
|
+
const softInputLimit = Math.min(hardInputLimit, estimatorLimit(nominalSoftInputLimit, conservativeRatio));
|
|
28
|
+
const preferredInputTarget = estimatorLimit(nominalPreferredInputTarget, conservativeRatio);
|
|
25
29
|
const activeInputBudget = Math.min(hardInputLimit, preferredInputTarget);
|
|
26
30
|
return {
|
|
27
31
|
contextWindow: profile.contextWindow,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"budget-manager.js","sourceRoot":"","sources":["../../src/core/budget-manager.ts"],"names":[],"mappings":"AA2BA,SAAS,cAAc,CAAC,cAAsB,EAAE,KAAa;IAC3D,IAAI,cAAc,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAqB,EACrB,MAAqB,EACrB,WAA+B;IAE/B,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,IAAI,MAAM,CAAC,sBAAsB,CAAC;IAC/E,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC;IAE9G,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG,aAAa,GAAG,YAAY,CAAC,CAAC;IAC9F,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAClF,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CACpC,qBAAqB,EACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAC1D,CAAC;IACF,MAAM,2BAA2B,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/F,MAAM,gBAAgB,GAAG,WAAW,EAAE,UAAU;WAC3C,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC;WACzC,WAAW,CAAC,YAAY,GAAG,CAAC;QAC/B,CAAC,CAAC,WAAW,CAAC,YAAY;QAC1B,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,cAAc,GAAG,cAAc,CAAC,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"budget-manager.js","sourceRoot":"","sources":["../../src/core/budget-manager.ts"],"names":[],"mappings":"AA2BA,SAAS,cAAc,CAAC,cAAsB,EAAE,KAAa;IAC3D,IAAI,cAAc,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAqB,EACrB,MAAqB,EACrB,WAA+B;IAE/B,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,IAAI,MAAM,CAAC,sBAAsB,CAAC;IAC/E,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC;IAE9G,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG,aAAa,GAAG,YAAY,CAAC,CAAC;IAC9F,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAClF,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CACpC,qBAAqB,EACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAC1D,CAAC;IACF,MAAM,2BAA2B,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/F,MAAM,gBAAgB,GAAG,WAAW,EAAE,UAAU;WAC3C,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC;WACzC,WAAW,CAAC,YAAY,GAAG,CAAC;QAC/B,CAAC,CAAC,WAAW,CAAC,YAAY;QAC1B,CAAC,CAAC,CAAC,CAAC;IACN,wEAAwE;IACxE,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC7B,cAAc,EACd,cAAc,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CACzD,CAAC;IACF,MAAM,oBAAoB,GAAG,cAAc,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAC;IAC5F,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;IAEzE,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa;QACb,YAAY;QACZ,mBAAmB;QACnB,qBAAqB;QACrB,qBAAqB;QACrB,2BAA2B;QAC3B,cAAc;QACd,cAAc;QACd,oBAAoB;QACpB,iBAAiB;QACjB,gBAAgB;QAChB,kBAAkB,EAAE,WAAW,EAAE,eAAe,IAAI,CAAC;KACtD,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ContextConfig, ModelAwarenessConfig } from "../config/config.ts";
|
|
1
|
+
import type { ContextConfig, ModelAwarenessConfig, TokenEstimatorVersion } from "../config/config.ts";
|
|
2
2
|
import { type ModelDescriptor, type ModelProfile } from "./model-profile.ts";
|
|
3
3
|
export interface TokenCalibrationSample {
|
|
4
4
|
estimatedTokens: number;
|
|
@@ -19,13 +19,15 @@ export interface ProviderCacheMetrics {
|
|
|
19
19
|
}
|
|
20
20
|
export interface ModelCalibrationAnalysis {
|
|
21
21
|
enabled: boolean;
|
|
22
|
-
estimator:
|
|
22
|
+
estimator: TokenEstimatorVersion;
|
|
23
23
|
windowSize: number;
|
|
24
24
|
observedSamples: number;
|
|
25
25
|
boundedSamples: number;
|
|
26
26
|
acceptedSamples: number;
|
|
27
27
|
rejectedSamples: number;
|
|
28
28
|
outlierSamples: number;
|
|
29
|
+
/** Valid observations outside configured ratio bounds (when nonzero). */
|
|
30
|
+
hardBoundSamples?: number;
|
|
29
31
|
minimumSamples: number;
|
|
30
32
|
lowerRatioBound: number;
|
|
31
33
|
upperRatioBound: number;
|
|
@@ -42,18 +44,35 @@ export interface AdaptiveModelLimits {
|
|
|
42
44
|
maxRetrievedHistoryTokens: number;
|
|
43
45
|
maxProjectTokens: number;
|
|
44
46
|
}
|
|
47
|
+
export interface TokenDriftWarning {
|
|
48
|
+
code: "persistent-underestimate" | "persistent-overestimate" | "calibration-outliers";
|
|
49
|
+
severity: "warning" | "critical";
|
|
50
|
+
sampleCount: number;
|
|
51
|
+
medianRatio?: number;
|
|
52
|
+
}
|
|
53
|
+
export interface AutoTuneDecision {
|
|
54
|
+
status: "disabled" | "insufficient-samples" | "no-headroom" | "expanded";
|
|
55
|
+
acceptedSamples: number;
|
|
56
|
+
highWatermarkRatio?: number;
|
|
57
|
+
boostFactor: number;
|
|
58
|
+
}
|
|
45
59
|
export interface ResolvedModelAwareness {
|
|
46
60
|
profileKey: string;
|
|
47
61
|
profile: ModelProfile;
|
|
48
62
|
overrideKeys: string[];
|
|
49
63
|
calibration: ModelCalibrationAnalysis;
|
|
64
|
+
drift?: TokenDriftWarning;
|
|
65
|
+
autoTune?: AutoTuneDecision;
|
|
50
66
|
limits: AdaptiveModelLimits;
|
|
51
67
|
contextConfig: ContextConfig;
|
|
52
68
|
}
|
|
53
|
-
export declare function analyzeModelCalibration(samples: readonly TokenCalibrationSample[], config: ModelAwarenessConfig): ModelCalibrationAnalysis;
|
|
69
|
+
export declare function analyzeModelCalibration(samples: readonly TokenCalibrationSample[], config: ModelAwarenessConfig, estimator?: TokenEstimatorVersion): ModelCalibrationAnalysis;
|
|
54
70
|
export declare function modelProfileKey(provider: string, modelId: string): string;
|
|
55
71
|
export declare function automaticRecentTailCeiling(contextWindow: number): number;
|
|
56
72
|
export declare function automaticHistoryRetrievalCeiling(contextWindow: number): number;
|
|
57
73
|
export declare function automaticProjectRetrievalCeiling(contextWindow: number): number;
|
|
74
|
+
export declare function tokenEstimatorVersion(model: ModelDescriptor, config: ModelAwarenessConfig): TokenEstimatorVersion;
|
|
75
|
+
/** Warn only on persistent evidence; never flag a single noisy provider response. */
|
|
76
|
+
export declare function detectTokenDrift(calibration: ModelCalibrationAnalysis): TokenDriftWarning | undefined;
|
|
58
77
|
export declare function resolveModelAwareness(model: ModelDescriptor, context: ContextConfig, config: ModelAwarenessConfig, samples?: readonly TokenCalibrationSample[]): ResolvedModelAwareness;
|
|
59
78
|
//# sourceMappingURL=model-awareness.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-awareness.d.ts","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,
|
|
1
|
+
{"version":3,"file":"model-awareness.d.ts","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { calculateContextBudget } from "./budget-manager.js";
|
|
1
2
|
import { createModelProfile, } from "./model-profile.js";
|
|
2
3
|
function rounded(value) {
|
|
3
4
|
return Math.round(value * 1_000_000) / 1_000_000;
|
|
@@ -44,7 +45,7 @@ function cacheMetrics(samples) {
|
|
|
44
45
|
cacheWriteShare: totalInputTokens > 0 ? rounded(cacheWriteTokens / totalInputTokens) : 0,
|
|
45
46
|
};
|
|
46
47
|
}
|
|
47
|
-
export function analyzeModelCalibration(samples, config) {
|
|
48
|
+
export function analyzeModelCalibration(samples, config, estimator = "chars-v1") {
|
|
48
49
|
const window = samples.slice(0, config.calibrationWindow);
|
|
49
50
|
const valid = window.filter(validSample);
|
|
50
51
|
const ratios = valid.map((sample) => ({
|
|
@@ -74,13 +75,14 @@ export function analyzeModelCalibration(samples, config) {
|
|
|
74
75
|
: 1;
|
|
75
76
|
return {
|
|
76
77
|
enabled: config.enabled,
|
|
77
|
-
estimator
|
|
78
|
+
estimator,
|
|
78
79
|
windowSize: config.calibrationWindow,
|
|
79
80
|
observedSamples: window.length,
|
|
80
81
|
boundedSamples: bounded.length,
|
|
81
82
|
acceptedSamples: accepted.length,
|
|
82
83
|
rejectedSamples: window.length - accepted.length,
|
|
83
84
|
outlierSamples: bounded.length - accepted.length,
|
|
85
|
+
...(valid.length > bounded.length ? { hardBoundSamples: valid.length - bounded.length } : {}),
|
|
84
86
|
minimumSamples: config.minimumCalibrationSamples,
|
|
85
87
|
lowerRatioBound: config.calibrationRatioLowerBound,
|
|
86
88
|
upperRatioBound: config.calibrationRatioUpperBound,
|
|
@@ -126,6 +128,59 @@ export function automaticProjectRetrievalCeiling(contextWindow) {
|
|
|
126
128
|
? 20_000
|
|
127
129
|
: 32_000;
|
|
128
130
|
}
|
|
131
|
+
export function tokenEstimatorVersion(model, config) {
|
|
132
|
+
if (!config.enabled)
|
|
133
|
+
return "chars-v1";
|
|
134
|
+
return matchingOverrides(model.provider, model.id, config.overrides).override.tokenEstimator ?? "chars-v1";
|
|
135
|
+
}
|
|
136
|
+
/** Warn only on persistent evidence; never flag a single noisy provider response. */
|
|
137
|
+
export function detectTokenDrift(calibration) {
|
|
138
|
+
if (!calibration.enabled)
|
|
139
|
+
return undefined;
|
|
140
|
+
const outlierCount = calibration.outlierSamples + (calibration.hardBoundSamples ?? 0);
|
|
141
|
+
if (calibration.calibrated && calibration.medianRatio !== undefined) {
|
|
142
|
+
const ratio = calibration.medianRatio;
|
|
143
|
+
if (ratio >= 1.25)
|
|
144
|
+
return {
|
|
145
|
+
code: "persistent-underestimate",
|
|
146
|
+
severity: ratio >= 1.6 ? "critical" : "warning",
|
|
147
|
+
sampleCount: calibration.acceptedSamples,
|
|
148
|
+
medianRatio: ratio,
|
|
149
|
+
};
|
|
150
|
+
if (ratio <= 0.8)
|
|
151
|
+
return {
|
|
152
|
+
code: "persistent-overestimate",
|
|
153
|
+
severity: ratio <= 0.625 ? "critical" : "warning",
|
|
154
|
+
sampleCount: calibration.acceptedSamples,
|
|
155
|
+
medianRatio: ratio,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
return outlierCount >= calibration.minimumSamples
|
|
159
|
+
? { code: "calibration-outliers", severity: "warning", sampleCount: outlierCount }
|
|
160
|
+
: undefined;
|
|
161
|
+
}
|
|
162
|
+
function decideAutoTune(samples, calibration, config, profile, context) {
|
|
163
|
+
if (!config.enabled || config.autoTune !== true)
|
|
164
|
+
return { status: "disabled", acceptedSamples: 0, boostFactor: 1 };
|
|
165
|
+
// Ratio outliers are excluded from calibration, but their provider-reported
|
|
166
|
+
// occupancy still matters: ignoring a near-limit call would make an expansion unsafe.
|
|
167
|
+
const observed = samples.slice(0, config.calibrationWindow).filter(validSample);
|
|
168
|
+
const count = calibration.acceptedSamples;
|
|
169
|
+
if (!calibration.calibrated || count < 8) {
|
|
170
|
+
return { status: "insufficient-samples", acceptedSamples: count, boostFactor: 1 };
|
|
171
|
+
}
|
|
172
|
+
const budget = calculateContextBudget(profile, context);
|
|
173
|
+
const target = Math.min(budget.preferredInputTarget, budget.hardInputLimit);
|
|
174
|
+
const highWatermark = Math.max(...observed.map((sample) => sample.actualInputTokens));
|
|
175
|
+
const rawRatio = target > 0 ? highWatermark / target : Number.POSITIVE_INFINITY;
|
|
176
|
+
const expanded = rawRatio <= 0.6;
|
|
177
|
+
return {
|
|
178
|
+
status: expanded ? "expanded" : "no-headroom",
|
|
179
|
+
acceptedSamples: count,
|
|
180
|
+
...(Number.isFinite(rawRatio) ? { highWatermarkRatio: rounded(rawRatio) } : {}),
|
|
181
|
+
boostFactor: expanded ? 1.125 : 1,
|
|
182
|
+
};
|
|
183
|
+
}
|
|
129
184
|
function calibratedLimit(value, calibrationRatio) {
|
|
130
185
|
if (value <= 0)
|
|
131
186
|
return 0;
|
|
@@ -138,7 +193,12 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
138
193
|
...(override.maxOutputTokens !== undefined ? { maxOutputTokens: override.maxOutputTokens } : {}),
|
|
139
194
|
...(override.safetyMarginTokens !== undefined ? { safetyMarginTokens: override.safetyMarginTokens } : {}),
|
|
140
195
|
});
|
|
141
|
-
const calibration = analyzeModelCalibration(samples, config);
|
|
196
|
+
const calibration = analyzeModelCalibration(samples, config, tokenEstimatorVersion(model, config));
|
|
197
|
+
const drift = detectTokenDrift(calibration);
|
|
198
|
+
const autoTune = decideAutoTune(samples, calibration, config, profile, context);
|
|
199
|
+
const boosted = (nominal, cap, explicit) => explicit === undefined && autoTune.status === "expanded"
|
|
200
|
+
? Math.min(cap, Math.floor(nominal * autoTune.boostFactor))
|
|
201
|
+
: nominal;
|
|
142
202
|
const nominalRecentTailTokens = override.recentTailTokens
|
|
143
203
|
?? Math.min(context.recentTailTokens, automaticRecentTailCeiling(profile.contextWindow));
|
|
144
204
|
const nominalRetrievedHistoryTokens = override.maxRetrievedHistoryTokens
|
|
@@ -149,9 +209,11 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
149
209
|
?? (config.enabled
|
|
150
210
|
? Math.min(context.maxProjectTokens, automaticProjectRetrievalCeiling(profile.contextWindow))
|
|
151
211
|
: context.maxProjectTokens);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
const
|
|
212
|
+
// Calibration can expand estimator-unit ceilings on overestimation, but
|
|
213
|
+
// configured context maxima remain hard caps after that conversion.
|
|
214
|
+
const recentTailTokens = Math.min(context.recentTailTokens, calibratedLimit(boosted(nominalRecentTailTokens, context.recentTailTokens, override.recentTailTokens), calibration.appliedRatio));
|
|
215
|
+
const maxRetrievedHistoryTokens = Math.min(context.maxRetrievedHistoryTokens, calibratedLimit(boosted(nominalRetrievedHistoryTokens, context.maxRetrievedHistoryTokens, override.maxRetrievedHistoryTokens), calibration.appliedRatio));
|
|
216
|
+
const maxProjectTokens = Math.min(context.maxProjectTokens, calibratedLimit(boosted(nominalProjectTokens, context.maxProjectTokens, override.maxProjectTokens), calibration.appliedRatio));
|
|
155
217
|
const contextConfig = {
|
|
156
218
|
...context,
|
|
157
219
|
recentTailTokens,
|
|
@@ -163,6 +225,8 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
163
225
|
profile,
|
|
164
226
|
overrideKeys: keys,
|
|
165
227
|
calibration,
|
|
228
|
+
...(drift ? { drift } : {}),
|
|
229
|
+
...(config.autoTune === true ? { autoTune } : {}),
|
|
166
230
|
limits: {
|
|
167
231
|
nominalRecentTailTokens,
|
|
168
232
|
nominalRetrievedHistoryTokens,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-awareness.js","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-awareness.js","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/** Counts text only; message/block and image overhead remains a heuristic. */
|
|
2
|
+
export interface TokenEstimator {
|
|
3
|
+
readonly version: string;
|
|
4
|
+
estimateTextTokens(text: string): number;
|
|
5
|
+
estimateMessageTokens(message: unknown): number;
|
|
6
|
+
estimateMessagesTokens(messages: readonly unknown[]): number;
|
|
7
|
+
}
|
|
8
|
+
export declare function createTokenEstimator(version: string, countText: (text: string) => number): TokenEstimator;
|
|
9
|
+
export declare const CHARS_ESTIMATOR: TokenEstimator;
|
|
1
10
|
export declare function estimateTextTokens(text: string): number;
|
|
2
11
|
export declare function estimateMessageTokens(message: unknown): number;
|
|
3
12
|
export declare function estimateMessagesTokens(messages: readonly unknown[]): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"AAKA,8EAA8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACzC,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAChD,sBAAsB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC;CAC9D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CASzG;AAED,eAAO,MAAM,eAAe,EAAE,cAE7B,CAAC;AAcF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAyCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAE9D;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAE3E"}
|
|
@@ -2,6 +2,17 @@ const CHARS_PER_TOKEN = 4;
|
|
|
2
2
|
const MESSAGE_WRAPPER_TOKENS = 8;
|
|
3
3
|
const CONTENT_BLOCK_WRAPPER_TOKENS = 4;
|
|
4
4
|
const IMAGE_TOKEN_ESTIMATE = 1024;
|
|
5
|
+
export function createTokenEstimator(version, countText) {
|
|
6
|
+
const text = (value) => value.length === 0 ? 0 : countText(value);
|
|
7
|
+
const message = (value) => estimateMessage(value, text);
|
|
8
|
+
return {
|
|
9
|
+
version,
|
|
10
|
+
estimateTextTokens: text,
|
|
11
|
+
estimateMessageTokens: message,
|
|
12
|
+
estimateMessagesTokens: (messages) => messages.reduce((total, value) => total + message(value), 0),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export const CHARS_ESTIMATOR = createTokenEstimator("chars-v1", (text) => Math.ceil(text.length / CHARS_PER_TOKEN));
|
|
5
16
|
function isRecord(value) {
|
|
6
17
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
7
18
|
}
|
|
@@ -14,51 +25,54 @@ function safeJson(value) {
|
|
|
14
25
|
}
|
|
15
26
|
}
|
|
16
27
|
export function estimateTextTokens(text) {
|
|
17
|
-
return
|
|
28
|
+
return CHARS_ESTIMATOR.estimateTextTokens(text);
|
|
18
29
|
}
|
|
19
|
-
function estimateContent(content) {
|
|
30
|
+
function estimateContent(content, countText) {
|
|
20
31
|
if (typeof content === "string")
|
|
21
|
-
return
|
|
32
|
+
return countText(content);
|
|
22
33
|
if (!Array.isArray(content))
|
|
23
|
-
return
|
|
34
|
+
return countText(safeJson(content));
|
|
24
35
|
return content.reduce((tokens, block) => {
|
|
25
36
|
if (!isRecord(block))
|
|
26
|
-
return tokens +
|
|
37
|
+
return tokens + countText(safeJson(block));
|
|
27
38
|
const type = block.type;
|
|
28
39
|
if (type === "image")
|
|
29
40
|
return tokens + IMAGE_TOKEN_ESTIMATE + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
30
41
|
if (type === "text" && typeof block.text === "string") {
|
|
31
|
-
return tokens +
|
|
42
|
+
return tokens + countText(block.text) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
32
43
|
}
|
|
33
44
|
if (type === "thinking" && typeof block.thinking === "string") {
|
|
34
|
-
return tokens +
|
|
45
|
+
return tokens + countText(block.thinking) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
35
46
|
}
|
|
36
47
|
if (type === "toolCall") {
|
|
37
48
|
const name = typeof block.name === "string" ? block.name : "";
|
|
38
|
-
return tokens +
|
|
49
|
+
return tokens + countText(name + safeJson(block.arguments)) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
39
50
|
}
|
|
40
|
-
return tokens +
|
|
51
|
+
return tokens + countText(safeJson(block)) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
41
52
|
}, 0);
|
|
42
53
|
}
|
|
43
|
-
|
|
54
|
+
function estimateMessage(message, countText) {
|
|
44
55
|
if (!isRecord(message))
|
|
45
|
-
return
|
|
56
|
+
return countText(safeJson(message)) + MESSAGE_WRAPPER_TOKENS;
|
|
46
57
|
let tokens = MESSAGE_WRAPPER_TOKENS;
|
|
47
58
|
if (typeof message.role === "string")
|
|
48
|
-
tokens +=
|
|
59
|
+
tokens += countText(message.role);
|
|
49
60
|
if ("content" in message)
|
|
50
|
-
tokens += estimateContent(message.content);
|
|
61
|
+
tokens += estimateContent(message.content, countText);
|
|
51
62
|
if (typeof message.summary === "string")
|
|
52
|
-
tokens +=
|
|
63
|
+
tokens += countText(message.summary);
|
|
53
64
|
if (typeof message.command === "string")
|
|
54
|
-
tokens +=
|
|
65
|
+
tokens += countText(message.command);
|
|
55
66
|
if (typeof message.output === "string")
|
|
56
|
-
tokens +=
|
|
67
|
+
tokens += countText(message.output);
|
|
57
68
|
if (typeof message.toolName === "string")
|
|
58
|
-
tokens +=
|
|
69
|
+
tokens += countText(message.toolName);
|
|
59
70
|
return tokens;
|
|
60
71
|
}
|
|
72
|
+
export function estimateMessageTokens(message) {
|
|
73
|
+
return CHARS_ESTIMATOR.estimateMessageTokens(message);
|
|
74
|
+
}
|
|
61
75
|
export function estimateMessagesTokens(messages) {
|
|
62
|
-
return
|
|
76
|
+
return CHARS_ESTIMATOR.estimateMessagesTokens(messages);
|
|
63
77
|
}
|
|
64
78
|
//# sourceMappingURL=token-estimator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,oBAAoB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NativeContinuationManifest } from "../continuation/native-continuation.ts";
|
|
2
2
|
import type { PersistedManifestInventory } from "./context-manifest-storage.ts";
|
|
3
|
-
import type { AdaptiveModelLimits, ModelCalibrationAnalysis } from "../core/model-awareness.ts";
|
|
3
|
+
import type { AdaptiveModelLimits, AutoTuneDecision, ModelCalibrationAnalysis, TokenDriftWarning } from "../core/model-awareness.ts";
|
|
4
4
|
import type { PrivacyClassification, ProviderDestination } from "../privacy/privacy-policy.ts";
|
|
5
5
|
import type { RankingDiagnostics } from "../ranking/learned-ranker.ts";
|
|
6
6
|
export type ContextManifestItemKind = "system" | "tool" | "pin" | "recent" | "summary" | "retrieval" | "history" | "project" | "memory" | "current";
|
|
@@ -106,6 +106,8 @@ export interface ModelAwarenessManifest {
|
|
|
106
106
|
maxOutputTokens?: number;
|
|
107
107
|
safetyMarginTokens: number;
|
|
108
108
|
calibration: ModelCalibrationAnalysis;
|
|
109
|
+
drift?: TokenDriftWarning;
|
|
110
|
+
autoTune?: AutoTuneDecision;
|
|
109
111
|
adaptive: AdaptiveModelLimits;
|
|
110
112
|
switch?: ModelSwitchManifest;
|
|
111
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manifest.d.ts","sourceRoot":"","sources":["../../src/manifest/context-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACzF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"context-manifest.d.ts","sourceRoot":"","sources":["../../src/manifest/context-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ContextBudget } from "../core/budget-manager.ts";
|
|
2
2
|
import type { ModelProfile } from "../core/model-profile.ts";
|
|
3
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
3
4
|
import type { ArtifactManifestRef, ContextManifest, ContextManifestItem, ContextManifestItemKind, ContextManifestPlanning, MemoryManifestRef, ModelAwarenessManifest, PinManifestRef, PrivacyManifest, ProjectRevision, ProjectSnippetRef } from "./context-manifest.ts";
|
|
4
5
|
export interface ObservedTool {
|
|
5
6
|
name: string;
|
|
@@ -37,6 +38,7 @@ export interface ObserverManifestInput {
|
|
|
37
38
|
profile: ModelProfile;
|
|
38
39
|
budget: ContextBudget;
|
|
39
40
|
systemPrompt: string;
|
|
41
|
+
tokenEstimator?: TokenEstimator;
|
|
40
42
|
systemClassification?: ContextManifestItem["classification"];
|
|
41
43
|
systemPrivacyReason?: string;
|
|
42
44
|
tools: readonly ObservedTool[];
|
|
@@ -58,6 +60,6 @@ export interface ObserverManifestInput {
|
|
|
58
60
|
plannerVersion: string;
|
|
59
61
|
createdAt: number;
|
|
60
62
|
}
|
|
61
|
-
export declare function estimateObservedToolTokens(tool: ObservedTool): number;
|
|
63
|
+
export declare function estimateObservedToolTokens(tool: ObservedTool, estimator?: TokenEstimator): number;
|
|
62
64
|
export declare function buildObserverManifest(input: ObserverManifestInput): ContextManifest;
|
|
63
65
|
//# sourceMappingURL=observer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CHARS_ESTIMATOR } from "../core/token-estimator.js";
|
|
2
2
|
import { sha256 } from "../shared/hash.js";
|
|
3
3
|
import { stableStringify } from "../shared/stable-json.js";
|
|
4
4
|
function messageRole(message) {
|
|
@@ -13,8 +13,8 @@ function messageKind(role, isCurrentUser) {
|
|
|
13
13
|
return "summary";
|
|
14
14
|
return "recent";
|
|
15
15
|
}
|
|
16
|
-
export function estimateObservedToolTokens(tool) {
|
|
17
|
-
return estimateTextTokens(stableStringify({
|
|
16
|
+
export function estimateObservedToolTokens(tool, estimator = CHARS_ESTIMATOR) {
|
|
17
|
+
return estimator.estimateTextTokens(stableStringify({
|
|
18
18
|
name: tool.name,
|
|
19
19
|
description: tool.description,
|
|
20
20
|
parameters: tool.parameters,
|
|
@@ -22,7 +22,8 @@ export function estimateObservedToolTokens(tool) {
|
|
|
22
22
|
}
|
|
23
23
|
export function buildObserverManifest(input) {
|
|
24
24
|
const included = [];
|
|
25
|
-
const
|
|
25
|
+
const estimator = input.tokenEstimator ?? CHARS_ESTIMATOR;
|
|
26
|
+
const systemTokens = estimator.estimateTextTokens(input.systemPrompt) + (input.systemPrompt ? 8 : 0);
|
|
26
27
|
if (input.systemPrompt) {
|
|
27
28
|
included.push({
|
|
28
29
|
kind: "system",
|
|
@@ -36,7 +37,7 @@ export function buildObserverManifest(input) {
|
|
|
36
37
|
}
|
|
37
38
|
let toolsTotal = 0;
|
|
38
39
|
for (const tool of input.tools) {
|
|
39
|
-
const tokens = estimateObservedToolTokens(tool);
|
|
40
|
+
const tokens = estimateObservedToolTokens(tool, estimator);
|
|
40
41
|
toolsTotal += tokens;
|
|
41
42
|
included.push({
|
|
42
43
|
kind: "tool",
|
|
@@ -59,7 +60,7 @@ export function buildObserverManifest(input) {
|
|
|
59
60
|
const message = input.messages[index];
|
|
60
61
|
const source = input.messageSources[index];
|
|
61
62
|
const role = messageRole(message) ?? source?.role;
|
|
62
|
-
const tokens = estimateMessageTokens(message);
|
|
63
|
+
const tokens = estimator.estimateMessageTokens(message);
|
|
63
64
|
messageTokens += tokens;
|
|
64
65
|
included.push({
|
|
65
66
|
kind: source?.kind ?? messageKind(role, index === lastUserIndex),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
1
2
|
export type AtomicGroupKind = "turn" | "summary" | "prefix";
|
|
2
3
|
export interface AtomicMessageGroup {
|
|
3
4
|
id: string;
|
|
@@ -10,6 +11,6 @@ export interface AtomicMessageGroup {
|
|
|
10
11
|
reason: string;
|
|
11
12
|
}
|
|
12
13
|
export declare function messageRole(message: unknown): string | undefined;
|
|
13
|
-
export declare function buildAtomicGroups(messages: readonly unknown[]): AtomicMessageGroup[];
|
|
14
|
+
export declare function buildAtomicGroups(messages: readonly unknown[], estimator?: TokenEstimator): AtomicMessageGroup[];
|
|
14
15
|
export declare function validateAtomicSelection(messages: readonly unknown[], selectedIndices: ReadonlySet<number>): string[];
|
|
15
16
|
//# sourceMappingURL=atomic-groups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-groups.d.ts","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"atomic-groups.d.ts","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAElF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAgBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGhE;AA0ED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,SAAS,OAAO,EAAE,EAAE,SAAS,GAAE,cAAgC,GACxE,kBAAkB,EAAE,CA+EtB;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,GACnC,MAAM,EAAE,CAyBV"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CHARS_ESTIMATOR } from "../core/token-estimator.js";
|
|
2
2
|
function isRecord(value) {
|
|
3
3
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
4
4
|
}
|
|
@@ -70,7 +70,7 @@ function mergedKind(groups, members) {
|
|
|
70
70
|
return "summary";
|
|
71
71
|
return "prefix";
|
|
72
72
|
}
|
|
73
|
-
export function buildAtomicGroups(messages) {
|
|
73
|
+
export function buildAtomicGroups(messages, estimator = CHARS_ESTIMATOR) {
|
|
74
74
|
const drafts = initialGroups(messages);
|
|
75
75
|
if (drafts.length === 0)
|
|
76
76
|
return [];
|
|
@@ -136,7 +136,7 @@ export function buildAtomicGroups(messages) {
|
|
|
136
136
|
messageIndices,
|
|
137
137
|
startIndex,
|
|
138
138
|
endIndex,
|
|
139
|
-
estimatedTokens: messageIndices.reduce((total, index) => total + estimateMessageTokens(messages[index]), 0),
|
|
139
|
+
estimatedTokens: messageIndices.reduce((total, index) => total + estimator.estimateMessageTokens(messages[index]), 0),
|
|
140
140
|
containsToolExchange,
|
|
141
141
|
reason: containsToolExchange
|
|
142
142
|
? "Atomic conversation turn containing a complete tool call/result batch"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-groups.js","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"atomic-groups.js","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ContextConfig } from "../config/config.ts";
|
|
2
2
|
import type { ContextBudget } from "../core/budget-manager.ts";
|
|
3
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
3
4
|
import type { ContextManifestItemKind, ContextManifestPlanning, ProjectSnippetRef } from "../manifest/context-manifest.ts";
|
|
4
5
|
import type { PrivacyClassification } from "../privacy/privacy-policy.ts";
|
|
5
6
|
import type { RankingFeatureVector } from "../ranking/learned-ranker.ts";
|
|
@@ -42,6 +43,7 @@ export interface PlanContextInput<T> {
|
|
|
42
43
|
fixedTokens: number;
|
|
43
44
|
budget: ContextBudget;
|
|
44
45
|
config: ContextConfig;
|
|
46
|
+
tokenEstimator?: TokenEstimator;
|
|
45
47
|
pinnedMessageIndices?: readonly number[];
|
|
46
48
|
supplementalMessages?: readonly SupplementalContextMessage<T>[];
|
|
47
49
|
/** Optional promoted learned order for non-mandatory supplements. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-planner.d.ts","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"context-planner.d.ts","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAQzE,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;IAC7B,gBAAgB,EAAE,CAAC,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,EAAE,CAAC;IACd,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,MAAM,WAAW,0BAA0B,CAAC,CAAC;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;IACX,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,oBAAoB,CAAC,EAAE,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,qEAAqE;IACrE,0BAA0B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,sBAAsB,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1D,qBAAqB,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACxD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAYD,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAE9F;AAoGD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CA6V7F"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { automaticRecentTailCeiling } from "../core/model-awareness.js";
|
|
2
|
-
import {
|
|
2
|
+
import { CHARS_ESTIMATOR } from "../core/token-estimator.js";
|
|
3
3
|
import { buildAtomicGroups, messageRole, validateAtomicSelection, } from "./atomic-groups.js";
|
|
4
4
|
export function adaptiveRecentTailLimit(contextWindow, configuredLimit) {
|
|
5
5
|
return Math.max(0, Math.min(configuredLimit, automaticRecentTailCeiling(contextWindow)));
|
|
@@ -8,12 +8,12 @@ function score(group, priority, messageCount) {
|
|
|
8
8
|
const value = priority + ((group.endIndex + 1) / Math.max(1, messageCount + 1));
|
|
9
9
|
return Math.round(value * 1_000_000) / 1_000_000;
|
|
10
10
|
}
|
|
11
|
-
function metadata(messages, classification, messageClassifications = [], messagePrivacyReasons = []) {
|
|
11
|
+
function metadata(messages, classification, messageClassifications = [], messagePrivacyReasons = [], estimator = CHARS_ESTIMATOR) {
|
|
12
12
|
return classification.group.messageIndices.map((originalIndex) => ({
|
|
13
13
|
originalIndex,
|
|
14
14
|
groupId: classification.group.id,
|
|
15
15
|
kind: classification.kind,
|
|
16
|
-
tokens: estimateMessagesTokens([messages[originalIndex]]),
|
|
16
|
+
tokens: estimator.estimateMessagesTokens([messages[originalIndex]]),
|
|
17
17
|
score: classification.score,
|
|
18
18
|
reason: `${classification.reason}; ${classification.group.reason}`,
|
|
19
19
|
...(classification.sourceId ? { sourceId: classification.sourceId } : {}),
|
|
@@ -31,7 +31,7 @@ function selectedMessages(messages, selected) {
|
|
|
31
31
|
return selected.map((item) => messages[item.originalIndex]).filter((message) => message !== undefined);
|
|
32
32
|
}
|
|
33
33
|
function fallbackPlan(input, recentTailTokenLimit, reason) {
|
|
34
|
-
const groups = buildAtomicGroups(input.messages);
|
|
34
|
+
const groups = buildAtomicGroups(input.messages, input.tokenEstimator);
|
|
35
35
|
const pinnedIndices = new Set((input.pinnedMessageIndices ?? []).filter((index) => Number.isInteger(index) && index >= 0 && index < input.messages.length));
|
|
36
36
|
const lastUserIndex = input.messages.findLastIndex((message) => messageRole(message) === "user");
|
|
37
37
|
const currentGroupIds = new Set((lastUserIndex >= 0
|
|
@@ -59,7 +59,7 @@ function fallbackPlan(input, recentTailTokenLimit, reason) {
|
|
|
59
59
|
kind,
|
|
60
60
|
score: score(group, priority, input.messages.length),
|
|
61
61
|
reason: `Pi context retained by fail-open: ${reason}`,
|
|
62
|
-
}, input.messageClassifications, input.messagePrivacyReasons);
|
|
62
|
+
}, input.messageClassifications, input.messagePrivacyReasons, input.tokenEstimator);
|
|
63
63
|
}).sort((left, right) => left.originalIndex - right.originalIndex);
|
|
64
64
|
return {
|
|
65
65
|
mode: "fallback",
|
|
@@ -69,7 +69,7 @@ function fallbackPlan(input, recentTailTokenLimit, reason) {
|
|
|
69
69
|
excluded: [],
|
|
70
70
|
planning: {
|
|
71
71
|
mode: "fallback",
|
|
72
|
-
originalMessageTokens: estimateMessagesTokens(input.messages),
|
|
72
|
+
originalMessageTokens: (input.tokenEstimator ?? CHARS_ESTIMATOR).estimateMessagesTokens(input.messages),
|
|
73
73
|
originalMessageCount: input.messages.length,
|
|
74
74
|
fixedTokens: input.fixedTokens,
|
|
75
75
|
messageTargetTokens: Math.max(0, input.budget.activeInputBudget - input.fixedTokens),
|
|
@@ -116,8 +116,8 @@ export function planManagedContext(nativeInput) {
|
|
|
116
116
|
...(includeClassifications ? { messageClassifications } : {}),
|
|
117
117
|
...(messagePrivacyReasons.some((reason) => reason !== undefined) ? { messagePrivacyReasons } : {}),
|
|
118
118
|
};
|
|
119
|
-
const groups = buildAtomicGroups(input.messages);
|
|
120
|
-
const originalMessageTokens = estimateMessagesTokens(nativeInput.messages);
|
|
119
|
+
const groups = buildAtomicGroups(input.messages, input.tokenEstimator);
|
|
120
|
+
const originalMessageTokens = (input.tokenEstimator ?? CHARS_ESTIMATOR).estimateMessagesTokens(nativeInput.messages);
|
|
121
121
|
const recentTailTokenLimit = input.cacheAwareTailTokens !== undefined && input.cacheAwareTailTokens > 0
|
|
122
122
|
? input.cacheAwareTailTokens
|
|
123
123
|
: adaptiveRecentTailLimit(input.budget.contextWindow, input.config.recentTailTokens);
|
|
@@ -294,7 +294,7 @@ export function planManagedContext(nativeInput) {
|
|
|
294
294
|
summaryTokens += group.estimatedTokens;
|
|
295
295
|
}
|
|
296
296
|
const selected = [...selectedGroups.values()]
|
|
297
|
-
.flatMap((classification) => metadata(input.messages, classification, input.messageClassifications, input.messagePrivacyReasons))
|
|
297
|
+
.flatMap((classification) => metadata(input.messages, classification, input.messageClassifications, input.messagePrivacyReasons, input.tokenEstimator))
|
|
298
298
|
.sort((left, right) => left.originalIndex - right.originalIndex);
|
|
299
299
|
const selectedIndices = new Set(selected.map((item) => item.originalIndex));
|
|
300
300
|
const atomicErrors = validateAtomicSelection(input.messages, selectedIndices);
|
|
@@ -326,7 +326,7 @@ export function planManagedContext(nativeInput) {
|
|
|
326
326
|
sourceId: supplement.sourceIds[0],
|
|
327
327
|
...(supplement.kind === "retrieval" ? { retrievedEventIds: [...supplement.sourceIds] } : {}),
|
|
328
328
|
...(supplement.projectSnippet ? { projectSnippet: { ...supplement.projectSnippet } } : {}),
|
|
329
|
-
}, input.messageClassifications, input.messagePrivacyReasons);
|
|
329
|
+
}, input.messageClassifications, input.messagePrivacyReasons, input.tokenEstimator);
|
|
330
330
|
}
|
|
331
331
|
const kind = group.kind === "summary"
|
|
332
332
|
? "summary"
|
|
@@ -344,7 +344,7 @@ export function planManagedContext(nativeInput) {
|
|
|
344
344
|
kind,
|
|
345
345
|
score: score(group, priority, input.messages.length),
|
|
346
346
|
reason,
|
|
347
|
-
}, input.messageClassifications, input.messagePrivacyReasons);
|
|
347
|
+
}, input.messageClassifications, input.messagePrivacyReasons, input.tokenEstimator);
|
|
348
348
|
})
|
|
349
349
|
.sort((left, right) => left.originalIndex - right.originalIndex);
|
|
350
350
|
const oversizedTurnExclusions = recentTailTokenLimit > 0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-planner.js","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-planner.js","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"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"}
|