2222from .typechecker import optional_typecheck
2323from .flags import is_verbose , is_private
2424from .env import WDOC_PRIVATE_MODE
25- from .misc import version_holder
25+ from .misc import langfuse_callback_holder
2626
2727TESTING_LLM = "testing/testing"
2828
29- if (
30- "LANGFUSE_PUBLIC_KEY" in os .environ and
31- "LANGFUSE_SECRET_KEY" in os .environ and
32- "LANGFUSE_HOST" in os .environ
33- ) and not is_private :
34- red ("Activating langfuse callbacks" )
35- try :
36- # # litellm's callbacks seem more flawed than langchain's
37- # import langfuse
38- # litellm.success_callback = ["langfuse"]
39- # litellm.failure_callback = ["langfuse"]
40-
41- from langfuse .callback import CallbackHandler as LangfuseCallback
42- langfuse_handler = [LangfuseCallback (
43- secret_key = os .environ ["LANGFUSE_SECRET_KEY" ],
44- public_key = os .environ ["LANGFUSE_PUBLIC_KEY" ],
45- host = os .environ ["LANGFUSE_HOST" ],
46- session_id = str (uuid .uuid4 ()),
47- version = version_holder [0 ],
48- )]
49- except Exception as e :
50- red (f"Failed to setup langfuse callback, make sure package 'langfuse' is installed. The error was: ''{ e } '" )
51- langfuse_handler = []
52-
5329
5430@optional_typecheck
5531def load_llm (
@@ -130,7 +106,7 @@ def load_llm(
130106 assert os .environ [f"{ backend .upper ()} _API_KEY" ] == "REDACTED_BECAUSE_WDOC_IN_PRIVATE_MODE"
131107
132108 assert os .environ [f"{ backend .upper ()} _API_KEY" ] == "REDACTED_BECAUSE_WDOC_IN_PRIVATE_MODE"
133- assert not langfuse_handler , "Private argument but langfuse_handler appears set. Something went wrong so crashing just to be safe."
109+ assert not langfuse_callback_holder , "Private argument but langfuse_handler appears set. Something went wrong so crashing just to be safe."
134110 else :
135111 assert not WDOC_PRIVATE_MODE
136112 assert "WDOC_PRIVATE_MODE" not in os .environ or os .environ ["WDOC_PRIVATE_MODE" ] == "false"
@@ -146,7 +122,7 @@ def load_llm(
146122 cache = llm_cache ,
147123 disable_streaming = True , # Not needed and might break cache
148124 verbose = llm_verbosity ,
149- callbacks = [PriceCountingCallback (verbose = llm_verbosity )] + langfuse_handler ,
125+ callbacks = [PriceCountingCallback (verbose = llm_verbosity )] + langfuse_callback_holder ,
150126 ** extra_model_args ,
151127 )
152128 else :
@@ -160,7 +136,7 @@ def load_llm(
160136 cache = llm_cache ,
161137 verbose = llm_verbosity ,
162138 tags = tags ,
163- callbacks = [PriceCountingCallback (verbose = llm_verbosity )] + langfuse_handler ,
139+ callbacks = [PriceCountingCallback (verbose = llm_verbosity )] + langfuse_callback_holder ,
164140 ** extra_model_args ,
165141 )
166142 litellm .drop_params = True
0 commit comments