From 949a633e95825b4978d29e3ff0719aed56c03d64 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 23 Jun 2023 10:01:01 -0700 Subject: [PATCH] Handle complete context blowout more gracefully --- aider/coders/base_coder.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/aider/coders/base_coder.py b/aider/coders/base_coder.py index 97c4d8d3d..5820e614e 100755 --- a/aider/coders/base_coder.py +++ b/aider/coders/base_coder.py @@ -361,10 +361,17 @@ class Coder: if self.verbose: utils.show_messages(messages) + exhausted = False try: interrupted = self.send(messages, functions=self.functions) except ExhaustedContextWindow: - self.io.tool_error("Exhausted context window!") + exhausted = True + except openai.error.InvalidRequestError as err: + if "maximum context length" in str(err): + exhausted = True + + if exhausted: + self.io.tool_error("The chat session is larger than the context window!") self.io.tool_error(" - Use /tokens to see token usage.") self.io.tool_error(" - Use /drop to remove unneeded files from the chat session.") self.io.tool_error(" - Use /clear to clear chat history.")