fix(main.py): logit bias mapping for batch_completions

This commit is contained in:
Krrish Dholakia 2023-11-24 16:05:51 -08:00
parent d62da29cbe
commit e732fb8b97
4 changed files with 6 additions and 3 deletions

View file

@ -341,7 +341,6 @@ def completion(
litellm_params = ["metadata", "acompletion", "caching", "return_async", "mock_response", "api_key", "api_version", "api_base", "force_timeout", "logger_fn", "verbose", "custom_llm_provider", "litellm_logging_obj", "litellm_call_id", "use_client", "id", "fallbacks", "azure", "headers", "model_list", "num_retries", "context_window_fallback_dict", "roles", "final_prompt_value", "bos_token", "eos_token", "request_timeout", "complete_response", "self"] litellm_params = ["metadata", "acompletion", "caching", "return_async", "mock_response", "api_key", "api_version", "api_base", "force_timeout", "logger_fn", "verbose", "custom_llm_provider", "litellm_logging_obj", "litellm_call_id", "use_client", "id", "fallbacks", "azure", "headers", "model_list", "num_retries", "context_window_fallback_dict", "roles", "final_prompt_value", "bos_token", "eos_token", "request_timeout", "complete_response", "self"]
default_params = openai_params + litellm_params default_params = openai_params + litellm_params
non_default_params = {k: v for k,v in kwargs.items() if k not in default_params} # model-specific params - pass them straight to the model/provider non_default_params = {k: v for k,v in kwargs.items() if k not in default_params} # model-specific params - pass them straight to the model/provider
if mock_response: if mock_response:
return mock_completion(model, messages, stream=stream, mock_response=mock_response) return mock_completion(model, messages, stream=stream, mock_response=mock_response)
if timeout is None: if timeout is None:
@ -1447,7 +1446,7 @@ def batch_completion(
max_tokens: Optional[float] = None, max_tokens: Optional[float] = None,
presence_penalty: Optional[float] = None, presence_penalty: Optional[float] = None,
frequency_penalty: Optional[float]=None, frequency_penalty: Optional[float]=None,
logit_bias: dict = {}, logit_bias: Optional[dict] = None,
user: str = "", user: str = "",
deployment_id = None, deployment_id = None,
request_timeout: Optional[int] = None, request_timeout: Optional[int] = None,

View file

@ -9,13 +9,14 @@ sys.path.insert(
) # Adds the parent directory to the system path ) # Adds the parent directory to the system path
from openai import APITimeoutError as Timeout from openai import APITimeoutError as Timeout
import litellm import litellm
litellm.num_retries = 3 litellm.num_retries = 0
from litellm import batch_completion, batch_completion_models, completion, batch_completion_models_all_responses from litellm import batch_completion, batch_completion_models, completion, batch_completion_models_all_responses
# litellm.set_verbose=True # litellm.set_verbose=True
def test_batch_completions(): def test_batch_completions():
messages = [[{"role": "user", "content": "write a short poem"}] for _ in range(3)] messages = [[{"role": "user", "content": "write a short poem"}] for _ in range(3)]
model = "j2-mid" model = "j2-mid"
litellm.set_verbose = True
try: try:
result = batch_completion( result = batch_completion(
model=model, model=model,

View file

@ -1352,6 +1352,7 @@ def test_completion_ai21():
except Exception as e: except Exception as e:
pytest.fail(f"Error occurred: {e}") pytest.fail(f"Error occurred: {e}")
# test_completion_ai21()
# test_completion_ai21() # test_completion_ai21()
## test deep infra ## test deep infra
def test_completion_deep_infra(): def test_completion_deep_infra():

View file

@ -104,6 +104,8 @@ class UnsupportedParamsError(Exception):
def __init__(self, status_code, message): def __init__(self, status_code, message):
self.status_code = status_code self.status_code = status_code
self.message = message self.message = message
self.request = httpx.Request(method="POST", url=" https://openai.api.com/v1/")
self.response = httpx.Response(status_code=status_code, request=self.request)
super().__init__( super().__init__(
self.message self.message
) # Call the base class constructor with the parameters it needs ) # Call the base class constructor with the parameters it needs