fix: avoid possible dead loop when discarding

This commit is contained in:
lanvent
2023-03-26 18:01:35 +08:00
parent a3be1fcd8f
commit 3d428ee844

View File

@@ -232,9 +232,13 @@ class SessionManager(object):
session.pop(1)
elif len(session) == 2 and session[1]["role"] == "assistant":
session.pop(1)
break
elif len(session) == 2 and session[1]["role"] == "user":
logger.warn("user message exceed max_tokens. total_tokens={}".format(dec_tokens))
break
else:
logger.debug("max_tokens={}, total_tokens={}, len(sessions)={}".format(max_tokens, dec_tokens, len(session)))
break
try:
cur_tokens = num_tokens_from_messages(session, self.model)
dec_tokens = cur_tokens