litellm not honoring OPENAI_ORGANIZATION env var (#7066)

* fix setting organization using .env vars

* test_completion_bad_org

* test_completion_bad_org
This commit is contained in:
Ishaan Jaff 2024-12-06 20:59:58 -08:00 committed by GitHub
parent 04d558e75f
commit aaa4d4178a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 24 additions and 1 deletions

View file

@ -1527,12 +1527,13 @@ def completion( # type: ignore # noqa: PLR0915
or get_secret("OPENAI_API_BASE") or get_secret("OPENAI_API_BASE")
or "https://api.openai.com/v1" or "https://api.openai.com/v1"
) )
openai.organization = ( organization = (
organization organization
or litellm.organization or litellm.organization
or get_secret("OPENAI_ORGANIZATION") or get_secret("OPENAI_ORGANIZATION")
or None # default - https://github.com/openai/openai-python/blob/284c1799070c723c6a553337134148a7ab088dd8/openai/util.py#L105 or None # default - https://github.com/openai/openai-python/blob/284c1799070c723c6a553337134148a7ab088dd8/openai/util.py#L105
) )
openai.organization = organization
# set API KEY # set API KEY
api_key = ( api_key = (
api_key api_key

View file

@ -278,3 +278,25 @@ class TestOpenAIChatCompletion(BaseLLMChatTest):
def test_tool_call_no_arguments(self, tool_call_no_arguments): def test_tool_call_no_arguments(self, tool_call_no_arguments):
"""Test that tool calls with no arguments is translated correctly. Relevant issue: https://github.com/BerriAI/litellm/issues/6833""" """Test that tool calls with no arguments is translated correctly. Relevant issue: https://github.com/BerriAI/litellm/issues/6833"""
pass pass
def test_completion_bad_org():
import litellm
litellm.set_verbose = True
_old_org = os.environ.get("OPENAI_ORGANIZATION", None)
os.environ["OPENAI_ORGANIZATION"] = "bad-org"
messages = [{"role": "user", "content": "hi"}]
with pytest.raises(Exception) as exc_info:
comp = litellm.completion(
model="gpt-4o-mini", messages=messages, organization="bad-org"
)
print(exc_info.value)
assert "No such organization: bad-org" in str(exc_info.value)
if _old_org is not None:
os.environ["OPENAI_ORGANIZATION"] = _old_org
else:
del os.environ["OPENAI_ORGANIZATION"]