Merge pull request #3685 from BerriAI/litellm_lago_integration

feat(lago.py): Enable Usage-based billing with lago
This commit is contained in:
Krish Dholakia 2024-05-16 13:09:48 -07:00 committed by GitHub
commit d43f75150a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 198 additions and 12 deletions

View file

@ -2,7 +2,7 @@ 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
from typing import Optional, List, Callable, get_args
import secrets, subprocess
import hashlib, uuid
import warnings
@ -2098,8 +2098,18 @@ class ProxyConfig:
elif key == "callbacks":
if isinstance(value, list):
imported_list: List[Any] = []
known_compatible_callbacks = list(
get_args(
litellm._custom_logger_compatible_callbacks_literal
)
)
for callback in value: # ["presidio", <my-custom-callback>]
if isinstance(callback, str) and callback == "presidio":
if (
isinstance(callback, str)
and callback in known_compatible_callbacks
):
imported_list.append(callback)
elif isinstance(callback, str) and callback == "presidio":
from litellm.proxy.hooks.presidio_pii_masking import (
_OPTIONAL_PresidioPIIMasking,
)