diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 4417499f..6805ff0c 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.0.8 +current_version = 0.0.9 tag = False parse = (?P\d+)\.(?P\d+)\.(?P\d+)(\-(?P[a-z]+)(?P\d+))? serialize = diff --git a/langkit/callback_handler.py b/langkit/callback_handler.py index be327444..35c30138 100644 --- a/langkit/callback_handler.py +++ b/langkit/callback_handler.py @@ -55,9 +55,10 @@ def _generate_callback_wrapper(handler) -> Dict[str, partial]: class LangKitCallback: - def __init__(self, logger: Logger): + def __init__(self, logger: Logger, log_metadata: bool = False): """Bind the configured logger for this langKit callback handler.""" self._logger = logger + self._log_metadata = log_metadata diagnostic_logger.info( f"Initialized LangKitCallback handler with configured whylogs Logger {logger}." ) @@ -80,7 +81,7 @@ def on_llm_start( invocation_params = kwargs.get("invocation_params") run_id = kwargs.get("run_id", 0) self.records[run_id] = {"prompts": prompts, "t0": time()} - if hasattr(self._logger, "_current_profile"): + if self._log_metadata and hasattr(self._logger, "_current_profile"): profile = self._logger._current_profile if invocation_params is not None: profile.track( @@ -96,8 +97,9 @@ def on_llm_end(self, response: Any, **kwargs: Any) -> None: run_id = kwargs.get("run_id", 0) llm_record = self.records.get(run_id) if llm_record is not None: - response_latency_s = time() - llm_record["t0"] - self._logger.log({"response_latency_s": response_latency_s}) + if self._log_metadata: + response_latency_s = time() - llm_record["t0"] + self._logger.log({"response_latency_s": response_latency_s}) index = 0 prompts = llm_record["prompts"] for generations in response.generations: @@ -107,7 +109,7 @@ def on_llm_end(self, response: Any, **kwargs: Any) -> None: self._logger.log(response_record) index = index + 1 - if hasattr(response, "llm_output"): + if self._log_metadata and hasattr(response, "llm_output"): llm_output = response.llm_output token_usage = llm_output.get("token_usage") if token_usage: diff --git a/pyproject.toml b/pyproject.toml index 2e789e09..36c3ecc0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "langkit" -version = "0.0.8" +version = "0.0.9" description = "A collection of text metric udfs for whylogs profiling and monitoring in WhyLabs" authors = ["WhyLabs.ai "] license = "Apache-2.0"