From e48e1a45975ded480ba32a18402c4a0acdf7c9c2 Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Wed, 20 Sep 2023 20:38:31 -0700 Subject: [PATCH] fix openrouter issue --- litellm/__init__.py | 3 ++- litellm/__pycache__/__init__.cpython-311.pyc | Bin 10846 -> 10998 bytes litellm/__pycache__/main.cpython-311.pyc | Bin 47185 -> 47209 bytes litellm/__pycache__/utils.cpython-311.pyc | Bin 115392 -> 116979 bytes litellm/tests/test_completion.py | 4 +++- 5 files changed, 5 insertions(+), 2 deletions(-) diff --git a/litellm/__init__.py b/litellm/__init__.py index d364335abae..ef7bfe91d68 100644 --- a/litellm/__init__.py +++ b/litellm/__init__.py @@ -101,7 +101,8 @@ for key, value in model_cost.items(): elif value.get('litellm_provider') == 'anthropic': anthropic_models.append(key) elif value.get('litellm_provider') == 'openrouter': - openrouter_models.append(key) + split_string = key.split('/', 1) + openrouter_models.append(split_string[1]) elif value.get('litellm_provider') == 'vertex_ai-text-models': vertex_text_models.append(key) elif value.get('litellm_provider') == 'vertex_ai-code-text-models': diff --git a/litellm/__pycache__/__init__.cpython-311.pyc b/litellm/__pycache__/__init__.cpython-311.pyc index f98964ab77456264475fe0ac626208de302782df..77b9f46da503d120e7d4b6c03603a3b946a1365c 100644 GIT binary patch delta 2011 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 x*tk>%JNRrVEh~*$+Wd&^sDZ!uCA)C?tb0x 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 Z5g{vkK))fHz{j+MaAkt0;stUm`G3#jh&TWM delta 16074 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 V9?eN4{zI<_T$ diff --git a/litellm/tests/test_completion.py b/litellm/tests/test_completion.py index fe891537249..4d418ccbdfb 100644 --- a/litellm/tests/test_completion.py +++ b/litellm/tests/test_completion.py @@ -336,6 +336,8 @@ def test_completion_openai_litellm_key(): # except Exception as e: # pytest.fail(f"Error occurred: {e}") +# test_completion_openrouter() + def test_completion_openai_with_more_optional_params(): try: response = completion( @@ -816,7 +818,7 @@ def test_completion_ai21(): except Exception as e: pytest.fail(f"Error occurred: {e}") -# test_completion_ai21() +test_completion_ai21() # test config file with completion # # def test_completion_openai_config(): # try: