From 87533bacf7fc79cde97918c7ea1f91e603c5b0c3 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Fri, 7 Jun 2024 09:55:59 -0700 Subject: [PATCH] fix importing Span --- litellm/integrations/opentelemetry.py | 14 ++++++++++---- litellm/proxy/auth/auth_checks.py | 10 ++++++++-- litellm/proxy/proxy_server.py | 10 ++++++++-- 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/litellm/integrations/opentelemetry.py b/litellm/integrations/opentelemetry.py index 97d57a55a..3fc50848e 100644 --- a/litellm/integrations/opentelemetry.py +++ b/litellm/integrations/opentelemetry.py @@ -1,12 +1,18 @@ import os -from typing import Optional from dataclasses import dataclass +from datetime import datetime from litellm.integrations.custom_logger import CustomLogger from litellm._logging import verbose_logger -from litellm.types.services import ServiceLoggerPayload, ServiceTypes -from opentelemetry.trace import Span -from datetime import datetime +from litellm.types.services import ServiceLoggerPayload +from typing import Union, Optional, TYPE_CHECKING, Any + +if TYPE_CHECKING: + from opentelemetry.trace import Span as _Span + + Span = _Span +else: + Span = Any LITELLM_TRACER_NAME = "litellm" LITELLM_RESOURCE = {"service.name": "litellm"} diff --git a/litellm/proxy/auth/auth_checks.py b/litellm/proxy/auth/auth_checks.py index 10037e60f..b9813afc9 100644 --- a/litellm/proxy/auth/auth_checks.py +++ b/litellm/proxy/auth/auth_checks.py @@ -17,14 +17,20 @@ from litellm.proxy._types import ( LiteLLM_OrganizationTable, LitellmUserRoles, ) -from typing import Optional, Literal, Union +from typing import Optional, Literal, TYPE_CHECKING, Any from litellm.proxy.utils import PrismaClient, ProxyLogging, log_to_opentelemetry from litellm.caching import DualCache import litellm -from opentelemetry.trace import Span from litellm.types.services import ServiceLoggerPayload, ServiceTypes from datetime import datetime +if TYPE_CHECKING: + from opentelemetry.trace import Span as _Span + + Span = _Span +else: + Span = Any + all_routes = LiteLLMRoutes.openai_routes.value + LiteLLMRoutes.management_routes.value diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index f96d78788..25e46269e 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -2,12 +2,18 @@ import sys, os, platform, time, copy, re, asyncio, inspect import threading, ast import shutil, random, traceback, requests from datetime import datetime, timedelta, timezone -from typing import Optional, List, Callable, get_args, Set +from typing import Optional, List, Callable, get_args, Set, Any, TYPE_CHECKING import secrets, subprocess import hashlib, uuid import warnings import importlib -from opentelemetry.trace import Span + +if TYPE_CHECKING: + from opentelemetry.trace import Span as _Span + + Span = _Span +else: + Span = Any def showwarning(message, category, filename, lineno, file=None, line=None):