Spaces:
Sleeping
Sleeping
File size: 1,088 Bytes
32f259e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
from __future__ import annotations
import logging
from typing import Any, Dict
from ..state import AgentState
_LOGGER_NAME = "agentic_multiwriter"
def get_logger() -> logging.Logger:
logger = logging.getLogger(_LOGGER_NAME)
if not logger.handlers:
handler = logging.StreamHandler()
formatter = logging.Formatter(
"[%(asctime)s] %(levelname)s - %(message)s", "%Y-%m-%d %H:%M:%S"
)
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.setLevel(logging.INFO)
return logger
def log_state_summary(state: AgentState, prefix: str = "") -> None:
logger = get_logger()
topic = state.get("topic", "")
mode = state.get("mode", "")
n_snippets = len(state.get("research_snippets", []) or [])
logger.info(
"%sState summary - topic='%s', mode='%s', research_snippets=%d",
f"{prefix} " if prefix else "",
topic,
mode,
n_snippets,
)
meta: Dict[str, Any] = state.get("meta", {}) or {}
if meta:
logger.info("%sMeta: %s", prefix, meta)
|