diff --git a/litellm/integrations/otel/model/semconv.py b/litellm/integrations/otel/model/semconv.py index 8d186a2715a..1427589f586 100644 --- a/litellm/integrations/otel/model/semconv.py +++ b/litellm/integrations/otel/model/semconv.py @@ -68,6 +68,7 @@ class GenAIProvider(str, Enum): PERPLEXITY = "perplexity" X_AI = "x_ai" IBM_WATSONX_AI = "ibm.watsonx.ai" + ORACLE_CLOUD_GENERATIVE_AI = "oracle_cloud.generative_ai" class MCPMethod(str, Enum): @@ -390,6 +391,7 @@ _PROVIDER_BY_LITELLM: Final[dict[str, GenAIProvider]] = { "perplexity": GenAIProvider.PERPLEXITY, "xai": GenAIProvider.X_AI, "watsonx": GenAIProvider.IBM_WATSONX_AI, + "oci": GenAIProvider.ORACLE_CLOUD_GENERATIVE_AI, } # litellm ``call_type`` -> ``gen_ai.operation.name``. diff --git a/tests/unit/integrations/otel/test_otel_v2_sources_of_truth.py b/tests/unit/integrations/otel/test_otel_v2_sources_of_truth.py index c29da4607eb..5d2a4dd357c 100644 --- a/tests/unit/integrations/otel/test_otel_v2_sources_of_truth.py +++ b/tests/unit/integrations/otel/test_otel_v2_sources_of_truth.py @@ -211,6 +211,7 @@ def test_provider_resolution(): assert resolve_provider("openai") == "openai" assert resolve_provider("bedrock") == "aws.bedrock" assert resolve_provider("vertex_ai") == "gcp.vertex_ai" + assert resolve_provider("oci") == "oracle_cloud.generative_ai" # unknown providers pass through verbatim (semconv allows provider-specific) assert resolve_provider("my_custom_llm") == "my_custom_llm" assert resolve_provider(None) == ""