Skip to content
Snippets Groups Projects
Commit 975fc4ec authored by James McKeown's avatar James McKeown
Browse files

do not require strict response validation

parent 6e3a0d0c
No related branches found
No related tags found
No related merge requests found
......@@ -71,7 +71,7 @@ class AzureOpenAIEncoder(BaseEncoder):
api_key=str(api_key),
azure_endpoint=str(azure_endpoint),
api_version=str(api_version),
_strict_response_validation=True,
# _strict_response_validation=True,
)
except Exception as e:
raise ValueError(f"OpenAI API client failed to initialize. Error: {e}")
......@@ -91,6 +91,10 @@ class AzureOpenAIEncoder(BaseEncoder):
if embeds.data:
break
except OpenAIError as e:
# print full traceback
import traceback
traceback.print_exc()
sleep(2**j)
error_message = str(e)
logger.warning(f"Retrying in {2**j} seconds...")
......
import pytest
from semantic_router.encoders import BaseEncoder, CohereEncoder, OpenAIEncoder
from semantic_router.encoders import (
AzureOpenAIEncoder,
BaseEncoder,
CohereEncoder,
OpenAIEncoder,
)
from semantic_router.hybrid_layer import HybridRouteLayer
from semantic_router.route import Route
......@@ -34,6 +39,18 @@ def openai_encoder(mocker):
return OpenAIEncoder(name="test-openai-encoder", openai_api_key="test_api_key")
@pytest.fixture
def azure_encoder(mocker):
mocker.patch.object(AzureOpenAIEncoder, "__call__", side_effect=mock_encoder_call)
return AzureOpenAIEncoder(
deployment_name="test-deployment",
azure_endpoint="test_endpoint",
api_key="test_api_key",
api_version="test_version",
model="test_model",
)
@pytest.fixture
def routes():
return [
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment