mirror of
https://github.com/BerriAI/litellm.git
synced 2025-04-27 03:34:10 +00:00
feat(langfuse/): support langfuse prompt management (#7073)
* feat(langfuse/): support langfuse prompt management Initial working commit for langfuse prompt management support Closes https://github.com/BerriAI/litellm/issues/6269 * test: update test * fix(litellm_logging.py): suppress linting error
This commit is contained in:
parent
df3da2e5d2
commit
20e8dc35e1
6 changed files with 186 additions and 2 deletions
|
@ -75,6 +75,7 @@ from ..integrations.helicone import HeliconeLogger
|
|||
from ..integrations.lago import LagoLogger
|
||||
from ..integrations.langfuse.langfuse import LangFuseLogger
|
||||
from ..integrations.langfuse.langfuse_handler import LangFuseHandler
|
||||
from ..integrations.langfuse.langfuse_prompt_management import LangfusePromptManagement
|
||||
from ..integrations.langsmith import LangsmithLogger
|
||||
from ..integrations.literal_ai import LiteralAILogger
|
||||
from ..integrations.logfire_logger import LogfireLevel, LogfireLogger
|
||||
|
@ -2349,9 +2350,17 @@ def _init_custom_logger_compatible_class( # noqa: PLR0915
|
|||
_mlflow_logger = MlflowLogger()
|
||||
_in_memory_loggers.append(_mlflow_logger)
|
||||
return _mlflow_logger # type: ignore
|
||||
elif logging_integration == "langfuse":
|
||||
for callback in _in_memory_loggers:
|
||||
if isinstance(callback, LangfusePromptManagement):
|
||||
return callback
|
||||
|
||||
langfuse_logger = LangfusePromptManagement()
|
||||
_in_memory_loggers.append(langfuse_logger)
|
||||
return langfuse_logger # type: ignore
|
||||
|
||||
|
||||
def get_custom_logger_compatible_class(
|
||||
def get_custom_logger_compatible_class( # noqa: PLR0915
|
||||
logging_integration: litellm._custom_logger_compatible_callbacks_literal,
|
||||
) -> Optional[CustomLogger]:
|
||||
if logging_integration == "lago":
|
||||
|
@ -2402,6 +2411,10 @@ def get_custom_logger_compatible_class(
|
|||
for callback in _in_memory_loggers:
|
||||
if isinstance(callback, OpikLogger):
|
||||
return callback
|
||||
elif logging_integration == "langfuse":
|
||||
for callback in _in_memory_loggers:
|
||||
if isinstance(callback, LangfusePromptManagement):
|
||||
return callback
|
||||
elif logging_integration == "otel":
|
||||
from litellm.integrations.opentelemetry import OpenTelemetry
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue