This commit is contained in:
Yidadaa 2023-04-18 11:44:15 +08:00
parent d75b7d49b8
commit ad1c8ffe21

View File

@ -102,7 +102,7 @@ export function limitNumber(
x: number,
min: number,
max: number,
defaultValue: number
defaultValue: number,
) {
if (typeof x !== "number" || isNaN(x)) {
return defaultValue;
@ -217,7 +217,7 @@ interface ChatStore {
updateMessage: (
sessionIndex: number,
messageIndex: number,
updater: (message?: Message) => void
updater: (message?: Message) => void,
) => void;
resetSession: () => void;
getMessagesWithMemory: () => Message[];
@ -345,12 +345,12 @@ export const useChatStore = create<ChatStore>()(
.slice(0, index)
.concat([deletedSession])
.concat(
state.sessions.slice(index + Number(isLastSession))
state.sessions.slice(index + Number(isLastSession)),
),
}));
},
},
5000
5000,
);
}
},
@ -412,7 +412,7 @@ export const useChatStore = create<ChatStore>()(
get().onNewMessage(botMessage);
ControllerPool.remove(
sessionIndex,
botMessage.id ?? messageIndex
botMessage.id ?? messageIndex,
);
} else {
botMessage.content = content;
@ -436,7 +436,7 @@ export const useChatStore = create<ChatStore>()(
ControllerPool.addController(
sessionIndex,
botMessage.id ?? messageIndex,
controller
controller,
);
},
filterBot: !get().config.sendBotMessages,
@ -475,12 +475,12 @@ export const useChatStore = create<ChatStore>()(
// get short term and unmemoried long term memory
const shortTermMemoryMessageIndex = Math.max(
0,
n - config.historyMessageCount
n - config.historyMessageCount,
);
const longTermMemoryMessageIndex = config.lastSummarizeIndex;
const longTermMemoryMessageIndex = session.lastSummarizeIndex;
const oldestIndex = Math.min(
shortTermMemoryMessageIndex,
longTermMemoryMessageIndex
longTermMemoryMessageIndex,
);
const threshold = config.compressMessageLengthThreshold;
@ -506,7 +506,7 @@ export const useChatStore = create<ChatStore>()(
updateMessage(
sessionIndex: number,
messageIndex: number,
updater: (message?: Message) => void
updater: (message?: Message) => void,
) {
const sessions = get().sessions;
const session = sessions.at(sessionIndex);
@ -535,15 +535,15 @@ export const useChatStore = create<ChatStore>()(
(res) => {
get().updateCurrentSession(
(session) =>
(session.topic = res ? trimTopic(res) : DEFAULT_TOPIC)
(session.topic = res ? trimTopic(res) : DEFAULT_TOPIC),
);
}
},
);
}
const config = get().config;
let toBeSummarizedMsgs = session.messages.slice(
session.lastSummarizeIndex
session.lastSummarizeIndex,
);
const historyMsgLength = countMessages(toBeSummarizedMsgs);
@ -551,7 +551,7 @@ export const useChatStore = create<ChatStore>()(
if (historyMsgLength > get().config?.modelConfig?.max_tokens ?? 4000) {
const n = toBeSummarizedMsgs.length;
toBeSummarizedMsgs = toBeSummarizedMsgs.slice(
Math.max(0, n - config.historyMessageCount)
Math.max(0, n - config.historyMessageCount),
);
}
@ -564,7 +564,7 @@ export const useChatStore = create<ChatStore>()(
"[Chat History] ",
toBeSummarizedMsgs,
historyMsgLength,
config.compressMessageLengthThreshold
config.compressMessageLengthThreshold,
);
if (
@ -589,7 +589,7 @@ export const useChatStore = create<ChatStore>()(
onError(error) {
console.error("[Summarize] ", error);
},
}
},
);
}
},
@ -631,6 +631,6 @@ export const useChatStore = create<ChatStore>()(
return state;
},
}
)
},
),
);