From 061fec0d36cade6c9621ea6b7bdcb77b239903f0 Mon Sep 17 00:00:00 2001 From: Trung Dinh Date: Sun, 16 Feb 2025 15:15:50 +0700 Subject: [PATCH 1/5] Removed o1 model from USER_MESSAGE_ONLY_MODELS --- pr_agent/algo/__init__.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index 10b53cb3..0d45c307 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -88,8 +88,6 @@ USER_MESSAGE_ONLY_MODELS = [ "deepseek/deepseek-reasoner", "o1-mini", "o1-mini-2024-09-12", - "o1", - "o1-2024-12-17", "o3-mini", "o3-mini-2025-01-31" ] From fcbe986ec783d7e9870da6f2df4d7dad81c1b3d6 Mon Sep 17 00:00:00 2001 From: Trung Dinh Date: Sun, 16 Feb 2025 15:17:12 +0700 Subject: [PATCH 2/5] Removed o3 model from USER_MESSAGE_ONLY_MODELS --- pr_agent/algo/__init__.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index 0d45c307..bc7d2fa7 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -87,7 +87,5 @@ MAX_TOKENS = { USER_MESSAGE_ONLY_MODELS = [ "deepseek/deepseek-reasoner", "o1-mini", - "o1-mini-2024-09-12", - "o3-mini", - "o3-mini-2025-01-31" + "o1-mini-2024-09-12" ] From 90575e3f0d9a99aa62a4053f15547c7fbb90e2f4 Mon Sep 17 00:00:00 2001 From: Trung Dinh Date: Sun, 16 Feb 2025 15:17:59 +0700 Subject: [PATCH 3/5] Add NO_SUPPORT_TEMPERATURE_MODELS list --- pr_agent/algo/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index bc7d2fa7..f8dcd7fc 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -89,3 +89,13 @@ USER_MESSAGE_ONLY_MODELS = [ "o1-mini", "o1-mini-2024-09-12" ] + +NO_SUPPORT_TEMPERATURE_MODELS = [ + "deepseek/deepseek-reasoner", + "o1-mini", + "o1-mini-2024-09-12", + "o1", + "o1-2024-12-17", + "o3-mini", + "o3-mini-2025-01-31", +] From c4aa13e798468ffa84f34cd3b4b8154e8066bb60 Mon Sep 17 00:00:00 2001 From: Trung Dinh Date: Sun, 16 Feb 2025 15:18:52 +0700 Subject: [PATCH 4/5] Add o1-preview model to USER_MESSAGE_ONLY_MODELS and NO_SUPPORT_TEMPERATURE_MODELS --- pr_agent/algo/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index f8dcd7fc..dd6febfd 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -87,7 +87,8 @@ MAX_TOKENS = { USER_MESSAGE_ONLY_MODELS = [ "deepseek/deepseek-reasoner", "o1-mini", - "o1-mini-2024-09-12" + "o1-mini-2024-09-12", + "o1-preview" ] NO_SUPPORT_TEMPERATURE_MODELS = [ @@ -98,4 +99,5 @@ NO_SUPPORT_TEMPERATURE_MODELS = [ "o1-2024-12-17", "o3-mini", "o3-mini-2025-01-31", + "o1-preview" ] From adfc2a6b693e2b5970dbd2610b4f41653fb00863 Mon Sep 17 00:00:00 2001 From: Trung Dinh Date: Sun, 16 Feb 2025 15:43:40 +0700 Subject: [PATCH 5/5] Add temperature only if model supports it --- pr_agent/algo/ai_handlers/litellm_ai_handler.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pr_agent/algo/ai_handlers/litellm_ai_handler.py b/pr_agent/algo/ai_handlers/litellm_ai_handler.py index c936ebd5..0ef29b51 100644 --- a/pr_agent/algo/ai_handlers/litellm_ai_handler.py +++ b/pr_agent/algo/ai_handlers/litellm_ai_handler.py @@ -6,7 +6,7 @@ import requests from litellm import acompletion from tenacity import retry, retry_if_exception_type, stop_after_attempt -from pr_agent.algo import USER_MESSAGE_ONLY_MODELS +from pr_agent.algo import NO_SUPPORT_TEMPERATURE_MODELS, USER_MESSAGE_ONLY_MODELS from pr_agent.algo.ai_handlers.base_ai_handler import BaseAiHandler from pr_agent.algo.utils import get_version from pr_agent.config_loader import get_settings @@ -98,6 +98,9 @@ class LiteLLMAIHandler(BaseAiHandler): # Models that only use user meessage self.user_message_only_models = USER_MESSAGE_ONLY_MODELS + # Model that doesn't support temperature argument + self.no_support_temperature_models = NO_SUPPORT_TEMPERATURE_MODELS + def prepare_logs(self, response, system, user, resp, finish_reason): response_log = response.dict().copy() response_log['system'] = system @@ -202,7 +205,7 @@ class LiteLLMAIHandler(BaseAiHandler): {"type": "image_url", "image_url": {"url": img_path}}] # Currently, some models do not support a separate system and user prompts - if self.user_message_only_models and any(entry.lower() in model.lower() for entry in self.user_message_only_models): + if model in self.user_message_only_models: user = f"{system}\n\n\n{user}" system = "" get_logger().info(f"Using model {model}, combining system and user prompts") @@ -219,11 +222,14 @@ class LiteLLMAIHandler(BaseAiHandler): "model": model, "deployment_id": deployment_id, "messages": messages, - "temperature": temperature, "timeout": get_settings().config.ai_timeout, "api_base": self.api_base, } + # Add temperature only if model supports it + if model not in self.no_support_temperature_models: + kwargs["temperature"] = temperature + if get_settings().litellm.get("enable_callbacks", False): kwargs = self.add_litellm_callbacks(kwargs)