diff --git a/semantic_router/encoders/zure.py b/semantic_router/encoders/zure.py index 5b8099b991c0ab9d26f695c50094a5e869438cfb..792d16f0d9cad0caff784370effeef09edde3d9c 100644 --- a/semantic_router/encoders/zure.py +++ b/semantic_router/encoders/zure.py @@ -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...") diff --git a/tests/unit/test_hybrid_layer.py b/tests/unit/test_hybrid_layer.py index f87cb1d281b2884a10a9817b9a838c21e64a9881..fbaec6c25d8ae33cab7e4535ac0a246ad9f0b119 100644 --- a/tests/unit/test_hybrid_layer.py +++ b/tests/unit/test_hybrid_layer.py @@ -1,6 +1,11 @@ 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 [