From d368576eac299950c19017c098a77a5eb3915df1 Mon Sep 17 00:00:00 2001 From: Arpit Roopchandani <17565234+whoisarpit@users.noreply.github.com> Date: Wed, 5 Feb 2025 10:43:37 +0800 Subject: [PATCH 1/3] Fallback to gpt-4o for tiktoken if openai model unrecognized --- patchwork/common/client/llm/openai_.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/patchwork/common/client/llm/openai_.py b/patchwork/common/client/llm/openai_.py index 6573ee24e..6d6beb910 100644 --- a/patchwork/common/client/llm/openai_.py +++ b/patchwork/common/client/llm/openai_.py @@ -14,6 +14,7 @@ from typing_extensions import Dict, Iterable, List, Optional, Union from patchwork.common.client.llm.protocol import NOT_GIVEN, LlmClient, NotGiven +from patchwork.logger import logger @functools.lru_cache @@ -87,7 +88,12 @@ def is_prompt_supported( model_limit = self.__get_model_limits(model) token_count = 0 - encoding = tiktoken.encoding_for_model(model) + encoding = None + try: + encoding = tiktoken.encoding_for_model(model) + except Exception as e: + logger.error(f"Error getting encoding for model {model}: {e}, using gpt-4o as fallback") + encoding = tiktoken.encoding_for_model("gpt-4o") for message in messages: message_token_count = len(encoding.encode(message.get("content"))) token_count = token_count + message_token_count From 6e5c5569a20885260e6529a7b939eeb15bcd577f Mon Sep 17 00:00:00 2001 From: Arpit Roopchandani <17565234+whoisarpit@users.noreply.github.com> Date: Wed, 5 Feb 2025 10:54:38 +0800 Subject: [PATCH 2/3] Add estimated model limit for o3-mini --- patchwork/common/client/llm/openai_.py | 1 + 1 file changed, 1 insertion(+) diff --git a/patchwork/common/client/llm/openai_.py b/patchwork/common/client/llm/openai_.py index 6d6beb910..ee04796db 100644 --- a/patchwork/common/client/llm/openai_.py +++ b/patchwork/common/client/llm/openai_.py @@ -37,6 +37,7 @@ class OpenAiLlmClient(LlmClient): "o1-mini": 128_000, "gpt-4o-mini": 128_000, "gpt-4o": 128_000, + "o3-mini": 128_000, } def __init__(self, api_key: str, base_url=None, **kwargs): From 94c4a71d309a5f0a13b50bf32a12d8c01bd34452 Mon Sep 17 00:00:00 2001 From: Arpit Roopchandani <17565234+whoisarpit@users.noreply.github.com> Date: Wed, 5 Feb 2025 10:58:53 +0800 Subject: [PATCH 3/3] Bump version to 0.0.96 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 0ea3dc951..874f0810a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "patchwork-cli" -version = "0.0.95" +version = "0.0.96" description = "" authors = ["patched.codes"] license = "AGPL"