From aedd6ed8d00956d3517f141ca4511caec153a530 Mon Sep 17 00:00:00 2001 From: Arseniy Pavlenko Date: Thu, 3 Aug 2023 23:37:44 +0300 Subject: [PATCH] Update base_coder.py It fixes 2 exceptions on Azure GPT-4 1) Traceback (most recent call last): File "/opt/homebrew/bin//aider", line 8, in sys.exit(main()) File "/opt/homebrew/lib/python3.10/site-packages/aider/main.py", line 523, in main coder.run() File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 339, in run new_user_message = self.run_loop() File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 423, in run_loop return self.send_new_user_message(inp) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 456, in send_new_user_message interrupted = self.send(messages, functions=self.functions) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 580, in send self.show_send_output_stream(completion) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 680, in show_send_output_stream sys.stdout.write(text) UnboundLocalError: local variable 'text' referenced before assignment 2) Traceback (most recent call last): File "/opt/homebrew/bin//aider", line 8, in sys.exit(main()) File "/opt/homebrew/lib/python3.10/site-packages/aider/main.py", line 523, in main coder.run() File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 339, in run new_user_message = self.run_loop() File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 423, in run_loop return self.send_new_user_message(inp) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 456, in send_new_user_message interrupted = self.send(messages, functions=self.functions) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 580, in send self.show_send_output_stream(completion) File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 656, in show_send_output_stream if chunk.choices[0].finish_reason == "length": IndexError: list index out of range --- aider/coders/base_coder.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/aider/coders/base_coder.py b/aider/coders/base_coder.py index 07a0974b9..83597e075 100755 --- a/aider/coders/base_coder.py +++ b/aider/coders/base_coder.py @@ -653,6 +653,10 @@ class Coder: live.start() for chunk in completion: + text = '' + if len(chunk.choices) == 0: + continue + if chunk.choices[0].finish_reason == "length": raise ExhaustedContextWindow()