fix(memory): hard-cap embedding inputs before batch

This commit is contained in:
Vignesh Natarajan
2026-02-22 15:40:07 -08:00
parent d306fc8ef1
commit 1000ff04ea
6 changed files with 67 additions and 2 deletions

View File

@@ -6,8 +6,13 @@ import { hashText, type MemoryChunk } from "./internal.js";
export function enforceEmbeddingMaxInputTokens(
provider: EmbeddingProvider,
chunks: MemoryChunk[],
hardMaxInputTokens?: number,
): MemoryChunk[] {
const maxInputTokens = resolveEmbeddingMaxInputTokens(provider);
const providerMaxInputTokens = resolveEmbeddingMaxInputTokens(provider);
const maxInputTokens =
typeof hardMaxInputTokens === "number" && hardMaxInputTokens > 0
? Math.min(providerMaxInputTokens, hardMaxInputTokens)
: providerMaxInputTokens;
const out: MemoryChunk[] = [];
for (const chunk of chunks) {