fix: stabilize recent dialogue memory typing
This commit is contained in:
parent
c17de9def5
commit
b17779e034
@ -91,20 +91,20 @@ export function buildRecentDialogueMemory(params: {
|
||||
const maxCharsPerEntry = Math.max(80, Math.min(500, params.maxCharsPerEntry || 220));
|
||||
const maxTotalChars = Math.max(160, Math.min(1600, params.maxTotalChars || 900));
|
||||
|
||||
const sourceEntries = messages
|
||||
.slice(-maxSourceMessages)
|
||||
.map((message) => {
|
||||
const role = message.role === "assistant" ? "assistant" : message.role === "user" ? "user" : null;
|
||||
if (!role) return null;
|
||||
const content = getMessageText(message, maxCharsPerEntry);
|
||||
if (!content) return null;
|
||||
return {
|
||||
role,
|
||||
content,
|
||||
messageId: message.id,
|
||||
} satisfies RecentDialogueMemoryEntry;
|
||||
})
|
||||
.filter((entry): entry is RecentDialogueMemoryEntry => Boolean(entry));
|
||||
const sourceEntries: RecentDialogueMemoryEntry[] = [];
|
||||
for (const message of messages.slice(-maxSourceMessages)) {
|
||||
const role = message.role === "assistant" ? "assistant" : message.role === "user" ? "user" : null;
|
||||
if (!role) continue;
|
||||
|
||||
const content = getMessageText(message, maxCharsPerEntry);
|
||||
if (!content) continue;
|
||||
|
||||
sourceEntries.push({
|
||||
role,
|
||||
content,
|
||||
messageId: message.id,
|
||||
});
|
||||
}
|
||||
|
||||
const preferredEntries =
|
||||
isRecallRequest && !assistantRecall
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user