|
|
@ -32,6 +32,11 @@ openai_callback_var: ContextVar[Optional[OpenAICallbackHandler]] = ContextVar(
|
|
|
|
tracing_callback_var: ContextVar[Optional[LangChainTracer]] = ContextVar( # noqa: E501
|
|
|
|
tracing_callback_var: ContextVar[Optional[LangChainTracer]] = ContextVar( # noqa: E501
|
|
|
|
"tracing_callback", default=None
|
|
|
|
"tracing_callback", default=None
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
tracing_v2_callback_var: ContextVar[
|
|
|
|
|
|
|
|
Optional[LangChainTracerV2]
|
|
|
|
|
|
|
|
] = ContextVar( # noqa: E501
|
|
|
|
|
|
|
|
"tracing_callback_v2", default=None
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@contextmanager
|
|
|
|
@contextmanager
|
|
|
@ -727,6 +732,11 @@ def _configure(
|
|
|
|
or tracer is not None
|
|
|
|
or tracer is not None
|
|
|
|
or os.environ.get("LANGCHAIN_HANDLER") is not None
|
|
|
|
or os.environ.get("LANGCHAIN_HANDLER") is not None
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tracer_v2 = tracing_v2_callback_var.get()
|
|
|
|
|
|
|
|
tracing_v2_enabled_ = (
|
|
|
|
|
|
|
|
os.environ.get("LANGCHAIN_TRACING_V2") is not None or tracer_v2 is not None
|
|
|
|
|
|
|
|
)
|
|
|
|
tracer_session = os.environ.get("LANGCHAIN_SESSION")
|
|
|
|
tracer_session = os.environ.get("LANGCHAIN_SESSION")
|
|
|
|
if tracer_session is None:
|
|
|
|
if tracer_session is None:
|
|
|
|
tracer_session = "default"
|
|
|
|
tracer_session = "default"
|
|
|
@ -746,6 +756,16 @@ def _configure(
|
|
|
|
handler = LangChainTracer()
|
|
|
|
handler = LangChainTracer()
|
|
|
|
handler.load_session(tracer_session)
|
|
|
|
handler.load_session(tracer_session)
|
|
|
|
callback_manager.add_handler(handler, True)
|
|
|
|
callback_manager.add_handler(handler, True)
|
|
|
|
|
|
|
|
if tracing_v2_enabled_ and not any(
|
|
|
|
|
|
|
|
isinstance(handler, LangChainTracerV2)
|
|
|
|
|
|
|
|
for handler in callback_manager.handlers
|
|
|
|
|
|
|
|
):
|
|
|
|
|
|
|
|
if tracer_v2:
|
|
|
|
|
|
|
|
callback_manager.add_handler(tracer_v2, True)
|
|
|
|
|
|
|
|
else:
|
|
|
|
|
|
|
|
handler = LangChainTracerV2()
|
|
|
|
|
|
|
|
handler.load_session(tracer_session)
|
|
|
|
|
|
|
|
callback_manager.add_handler(handler, True)
|
|
|
|
if open_ai is not None and not any(
|
|
|
|
if open_ai is not None and not any(
|
|
|
|
isinstance(handler, OpenAICallbackHandler)
|
|
|
|
isinstance(handler, OpenAICallbackHandler)
|
|
|
|
for handler in callback_manager.handlers
|
|
|
|
for handler in callback_manager.handlers
|
|
|
|