Home / File/ log_stream.py — langchain Source File

log_stream.py — langchain Source File

Architecture documentation for log_stream.py, a python file in the langchain codebase. 21 imports, 0 dependents.

File python Observability Tracers 21 imports 4 functions 5 classes

Entity Profile

Dependency Diagram

graph LR
  bd3b753a_7a64_0c77_8d7a_afcce4658003["log_stream.py"]
  e6310202_b39e_ec9f_8b57_921c9c39c97d["asyncio"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> e6310202_b39e_ec9f_8b57_921c9c39c97d
  be45a0bb_0276_f8f1_f985_55cddb92c224["contextlib"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> be45a0bb_0276_f8f1_f985_55cddb92c224
  43a94385_8919_6471_1068_d923b3a3c65f["copy"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 43a94385_8919_6471_1068_d923b3a3c65f
  115d9bf0_a63e_564c_f8d8_eb2c82bbd856["threading"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 115d9bf0_a63e_564c_f8d8_eb2c82bbd856
  9cec496e_5583_62d2_b4a1_469bbdaf601f["collections"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 9cec496e_5583_62d2_b4a1_469bbdaf601f
  dc836f38_234d_7aeb_e22f_678eac1ef137["pprint"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> dc836f38_234d_7aeb_e22f_678eac1ef137
  feec1ec4_6917_867b_d228_b134d0ff8099["typing"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> feec1ec4_6917_867b_d228_b134d0ff8099
  c08ea107_2676_23b9_a07b_fa74c7a82dac["jsonpatch"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> c08ea107_2676_23b9_a07b_fa74c7a82dac
  f85fae70_1011_eaec_151c_4083140ae9e5["typing_extensions"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> f85fae70_1011_eaec_151c_4083140ae9e5
  3da01f49_ed2a_3d9f_9faa_7ea2c3c67c7f["langchain_core.callbacks.base"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 3da01f49_ed2a_3d9f_9faa_7ea2c3c67c7f
  86d015d7_8a78_acc2_abd6_9cb22b0ae1aa["langchain_core.load"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 86d015d7_8a78_acc2_abd6_9cb22b0ae1aa
  679bd51a_077f_a2c5_f968_44da37489a0d["langchain_core.load.load"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 679bd51a_077f_a2c5_f968_44da37489a0d
  4382dc25_6fba_324a_49e2_e9742d579385["langchain_core.outputs"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 4382dc25_6fba_324a_49e2_e9742d579385
  31eab4ab_7281_1e6c_b17d_12e6ad9de07a["langchain_core.runnables"]
  bd3b753a_7a64_0c77_8d7a_afcce4658003 --> 31eab4ab_7281_1e6c_b17d_12e6ad9de07a
  style bd3b753a_7a64_0c77_8d7a_afcce4658003 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"""Tracer that streams run logs to a stream."""

from __future__ import annotations

import asyncio
import contextlib
import copy
import threading
from collections import defaultdict
from pprint import pformat
from typing import (
    TYPE_CHECKING,
    Any,
    Literal,
    TypeVar,
    overload,
)

import jsonpatch  # type: ignore[import-untyped]
from typing_extensions import NotRequired, TypedDict, override

from langchain_core.callbacks.base import BaseCallbackManager
from langchain_core.load import dumps
from langchain_core.load.load import load
from langchain_core.outputs import ChatGenerationChunk, GenerationChunk
from langchain_core.runnables import RunnableConfig, ensure_config
from langchain_core.tracers._streaming import _StreamingCallbackHandler
from langchain_core.tracers.base import BaseTracer
from langchain_core.tracers.memory_stream import _MemoryStream

if TYPE_CHECKING:
    from collections.abc import AsyncIterator, Iterator, Sequence
    from uuid import UUID

    from langchain_core.runnables import Runnable
    from langchain_core.runnables.utils import Input, Output
    from langchain_core.tracers.schemas import Run


class LogEntry(TypedDict):
    """A single entry in the run log."""

    id: str
    """ID of the sub-run."""

    name: str
    """Name of the object being run."""

    type: str
    """Type of the object being run, eg. prompt, chain, llm, etc."""

    tags: list[str]
    """List of tags for the run."""

    metadata: dict[str, Any]
    """Key-value pairs of metadata for the run."""

    start_time: str
    """ISO-8601 timestamp of when the run started."""

// ... (709 more lines)

Domain

Subdomains

Dependencies

  • asyncio
  • collections
  • collections.abc
  • contextlib
  • copy
  • jsonpatch
  • langchain_core.callbacks.base
  • langchain_core.load
  • langchain_core.load.load
  • langchain_core.outputs
  • langchain_core.runnables
  • langchain_core.runnables.utils
  • langchain_core.tracers._streaming
  • langchain_core.tracers.base
  • langchain_core.tracers.memory_stream
  • langchain_core.tracers.schemas
  • pprint
  • threading
  • typing
  • typing_extensions
  • uuid

Frequently Asked Questions

What does log_stream.py do?
log_stream.py is a source file in the langchain codebase, written in python. It belongs to the Observability domain, Tracers subdomain.
What functions are defined in log_stream.py?
log_stream.py defines 4 function(s): _astream_log_implementation, _get_standardized_inputs, _get_standardized_outputs, collections.
What does log_stream.py depend on?
log_stream.py imports 21 module(s): asyncio, collections, collections.abc, contextlib, copy, jsonpatch, langchain_core.callbacks.base, langchain_core.load, and 13 more.
Where is log_stream.py in the architecture?
log_stream.py is located at libs/core/langchain_core/tracers/log_stream.py (domain: Observability, subdomain: Tracers, directory: libs/core/langchain_core/tracers).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free