Download src/deepagents_rl/observability/langfuse_trace.py from vanishingradient/deepagents-rl-coding: direct link, hf CLI and curl.
- Browser
- Download file 857 Bytes
-
https://huggingface.co/vanishingradient/deepagents-rl-coding/resolve/main/src/deepagents_rl/observability/langfuse_trace.py
- Command line
-
hf download hf://vanishingradient/deepagents-rl-coding/src/deepagents_rl/observability/langfuse_trace.py
-
curl -L -o langfuse_trace.py https://huggingface.co/vanishingradient/deepagents-rl-coding/resolve/main/src/deepagents_rl/observability/langfuse_trace.py
857 Bytes
| """Helpers for granular Langfuse traces (LLM generations + tool spans).""" | |
| from __future__ import annotations | |
| from typing import Any | |
| def make_callback_handler(): | |
| """LangChain CallbackHandler that nests generations under the current observation.""" | |
| from langfuse.langchain import CallbackHandler | |
| return CallbackHandler() | |
| def llm_invoke_config( | |
| *, | |
| handler: Any, | |
| turn: int, | |
| episode_id: str | None = None, | |
| extra_metadata: dict[str, Any] | None = None, | |
| ) -> dict[str, Any]: | |
| meta = {"turn": turn} | |
| if episode_id: | |
| meta["episode_id"] = episode_id | |
| if extra_metadata: | |
| meta.update(extra_metadata) | |
| return { | |
| "callbacks": [handler], | |
| "run_name": f"llm-turn-{turn}", | |
| "tags": ["deepagents-rl", "llm", f"turn-{turn}"], | |
| "metadata": meta, | |
| } | |