From d8c14c04e30d204bbfbcef6c97af74a226a9beea Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 24 Jan 2025 09:14:37 -0800 Subject: [PATCH] refactor: standardize string quotes and improve model name handling --- aider/sendchat.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/aider/sendchat.py b/aider/sendchat.py index 837b3b853..108da90b8 100644 --- a/aider/sendchat.py +++ b/aider/sendchat.py @@ -60,20 +60,21 @@ def ensure_alternating_roles(messages): prev_role = None for msg in messages: - current_role = msg.get('role') # Get 'role', None if missing + current_role = msg.get("role") # Get 'role', None if missing # If the current role is the same as the previous, insert an empty message of the opposite role if current_role == prev_role: - if current_role == 'user': - fixed_messages.append({'role': 'assistant', 'content': ''}) + if current_role == "user": + fixed_messages.append({"role": "assistant", "content": ""}) else: - fixed_messages.append({'role': 'user', 'content': ''}) + fixed_messages.append({"role": "user", "content": ""}) fixed_messages.append(msg) prev_role = current_role return fixed_messages + def send_completion( model_name, messages, @@ -89,7 +90,7 @@ def send_completion( # # - if model_name == 'deepseek/deepseek-reasoner': + if "deepseek-reasoner" in model_name: messages = ensure_alternating_roles(messages) kwargs = dict( @@ -127,6 +128,9 @@ def send_completion( def simple_send_with_retries(model, messages): litellm_ex = LiteLLMExceptions() + if "deepseek-reasoner" in model.name: + messages = ensure_alternating_roles(messages) + retry_delay = 0.125 while True: try: