mirror of
https://github.com/tiennm99/litellm.git
synced 2026-08-14 08:26:09 +00:00
Merge pull request #2703 from BerriAI/litellm_remove_litellm_telemetry
[Fix] remove litellm telemetry from proxy server
This commit is contained in:
@@ -49,6 +49,15 @@ general_settings:
|
||||
disable_reset_budget: true
|
||||
```
|
||||
|
||||
## 4. Switch of `litellm.telemetry`
|
||||
|
||||
Switch of all telemetry tracking done by litellm
|
||||
|
||||
```yaml
|
||||
litellm_settings:
|
||||
telemetry: False
|
||||
```
|
||||
|
||||
## Machine Specifications to Deploy LiteLLM
|
||||
|
||||
| Service | Spec | CPUs | Memory | Architecture | Version|
|
||||
|
||||
@@ -222,16 +222,14 @@ def run_server(
|
||||
ssl_keyfile_path,
|
||||
ssl_certfile_path,
|
||||
):
|
||||
global feature_telemetry
|
||||
args = locals()
|
||||
if local:
|
||||
from proxy_server import app, save_worker_config, usage_telemetry, ProxyConfig
|
||||
from proxy_server import app, save_worker_config, ProxyConfig
|
||||
else:
|
||||
try:
|
||||
from .proxy_server import (
|
||||
app,
|
||||
save_worker_config,
|
||||
usage_telemetry,
|
||||
ProxyConfig,
|
||||
)
|
||||
except ImportError as e:
|
||||
@@ -243,10 +241,8 @@ def run_server(
|
||||
from proxy_server import (
|
||||
app,
|
||||
save_worker_config,
|
||||
usage_telemetry,
|
||||
ProxyConfig,
|
||||
)
|
||||
feature_telemetry = usage_telemetry
|
||||
if version == True:
|
||||
pkg_version = importlib.metadata.version("litellm")
|
||||
click.echo(f"\nLiteLLM: Current Version = {pkg_version}\n")
|
||||
|
||||
@@ -305,16 +305,6 @@ celery_fn = None # Redis Queue for handling requests
|
||||
### logger ###
|
||||
|
||||
|
||||
def usage_telemetry(
|
||||
feature: str,
|
||||
): # helps us know if people are using this feature. Set `litellm --telemetry False` to your cli call to turn this off
|
||||
if user_telemetry:
|
||||
data = {"feature": feature} # "local_proxy_server"
|
||||
threading.Thread(
|
||||
target=litellm.utils.litellm_telemetry, args=(data,), daemon=True
|
||||
).start()
|
||||
|
||||
|
||||
def _get_bearer_token(
|
||||
api_key: str,
|
||||
):
|
||||
@@ -2574,7 +2564,6 @@ async def initialize(
|
||||
if experimental:
|
||||
pass
|
||||
user_telemetry = telemetry
|
||||
usage_telemetry(feature="local_proxy_server")
|
||||
|
||||
|
||||
# for streaming
|
||||
|
||||
@@ -8313,34 +8313,6 @@ def get_or_generate_uuid():
|
||||
return uuid_value
|
||||
|
||||
|
||||
def litellm_telemetry(data):
|
||||
# Load or generate the UUID
|
||||
uuid_value = ""
|
||||
try:
|
||||
uuid_value = get_or_generate_uuid()
|
||||
except:
|
||||
uuid_value = str(uuid.uuid4())
|
||||
try:
|
||||
# Prepare the data to send to litellm logging api
|
||||
try:
|
||||
pkg_version = importlib.metadata.version("litellm")
|
||||
except:
|
||||
pkg_version = None
|
||||
if "model" not in data:
|
||||
data["model"] = None
|
||||
payload = {"uuid": uuid_value, "data": data, "version:": pkg_version}
|
||||
# Make the POST request to litellm logging api
|
||||
response = requests.post(
|
||||
"https://litellm-logging.onrender.com/logging",
|
||||
headers={"Content-Type": "application/json"},
|
||||
json=payload,
|
||||
)
|
||||
response.raise_for_status() # Raise an exception for HTTP errors
|
||||
except:
|
||||
# [Non-Blocking Error]
|
||||
return
|
||||
|
||||
|
||||
######### Secret Manager ############################
|
||||
# checks if user has passed in a secret manager client
|
||||
# if passed in then checks the secret there
|
||||
|
||||
@@ -49,6 +49,7 @@ litellm_settings:
|
||||
budget_duration: 30d
|
||||
num_retries: 5
|
||||
request_timeout: 600
|
||||
telemetry: False
|
||||
context_window_fallbacks: [{"gpt-3.5-turbo": ["gpt-3.5-turbo-large"]}]
|
||||
|
||||
general_settings:
|
||||
|
||||
Reference in New Issue
Block a user