mirror of
https://github.com/moltbot/moltbot.git
synced 2026-04-21 05:32:53 +00:00
perf(reply): lazy-load context token lookup
This commit is contained in:
1
src/agents/context-tokens.runtime.ts
Normal file
1
src/agents/context-tokens.runtime.ts
Normal file
@@ -0,0 +1 @@
|
||||
export { lookupContextTokens } from "./context.js";
|
||||
@@ -1,5 +1,5 @@
|
||||
import fs from "node:fs";
|
||||
import { lookupContextTokens } from "../../agents/context.js";
|
||||
import { lookupCachedContextTokens } from "../../agents/context-cache.js";
|
||||
import { DEFAULT_CONTEXT_TOKENS } from "../../agents/defaults.js";
|
||||
import { resolveModelAuthMode } from "../../agents/model-auth.js";
|
||||
import { isCliProvider } from "../../agents/model-selection.js";
|
||||
@@ -64,6 +64,8 @@ let agentRunnerMemoryRuntimePromise: Promise<
|
||||
typeof import("./agent-runner-memory.runtime.js")
|
||||
> | null = null;
|
||||
let usageCostRuntimePromise: Promise<typeof import("./usage-cost.runtime.js")> | null = null;
|
||||
let contextTokensRuntimePromise: Promise<typeof import("../../agents/context-tokens.runtime.js")> | null =
|
||||
null;
|
||||
|
||||
function loadPiEmbeddedQueueRuntime() {
|
||||
piEmbeddedQueueRuntimePromise ??= import("../../agents/pi-embedded-queue.runtime.js");
|
||||
@@ -85,6 +87,11 @@ function loadUsageCostRuntime() {
|
||||
return usageCostRuntimePromise;
|
||||
}
|
||||
|
||||
function loadContextTokensRuntime() {
|
||||
contextTokensRuntimePromise ??= import("../../agents/context-tokens.runtime.js");
|
||||
return contextTokensRuntimePromise;
|
||||
}
|
||||
|
||||
export async function runReplyAgent(params: {
|
||||
commandBody: string;
|
||||
followupRun: FollowupRun;
|
||||
@@ -500,9 +507,11 @@ export async function runReplyAgent(params: {
|
||||
const cliSessionId = isCliProvider(providerUsed, cfg)
|
||||
? runResult.meta?.agentMeta?.sessionId?.trim()
|
||||
: undefined;
|
||||
const cachedContextTokens = lookupCachedContextTokens(modelUsed);
|
||||
const contextTokensUsed =
|
||||
agentCfgContextTokens ??
|
||||
lookupContextTokens(modelUsed) ??
|
||||
cachedContextTokens ??
|
||||
(await loadContextTokensRuntime()).lookupContextTokens(modelUsed) ??
|
||||
activeSessionEntry?.contextTokens ??
|
||||
DEFAULT_CONTEXT_TOKENS;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user