Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,15 @@ def __init__(
*args: Any,
**kwargs: Any,
) -> None:
"""Initialize the OpenInferenceTracer.
"""Initialize the CustomLangChainTracer.

Args:
tracer (trace_api.Tracer): The OpenTelemetry tracer for creating spans.
separate_trace_from_runtime_context (bool): When True, always start a new trace for each
span without a parent, isolating it from any existing trace in the runtime context.
*args (Any): Positional arguments for BaseTracer.
**kwargs (Any): Keyword arguments for BaseTracer.
tracer: The OpenTelemetry tracer for creating spans.
separate_trace_from_runtime_context: When True, always start a new
trace for each span without a parent, isolating it from any
existing trace in the runtime context.
*args: Positional arguments forwarded to BaseTracer.
**kwargs: Keyword arguments forwarded to BaseTracer.
"""
super().__init__(*args, **kwargs)
if TYPE_CHECKING:
Expand Down Expand Up @@ -203,17 +204,13 @@ def on_tool_error(self, error: BaseException, *args: Any, run_id: UUID, **kwargs
return super().on_tool_error(error, *args, run_id=run_id, **kwargs)

def on_chat_model_start(self, *args: Any, **kwargs: Any) -> Run:
"""
This emulates the behavior of the LangChainTracer.
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/langchain.py#L115

Although this method exists on the parent class, i.e. `BaseTracer`,
it requires setting `self._schema_format = "original+chat"`.
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/base.py#L170
"""Handle chat model start events.

But currently self._schema_format is marked for internal use.
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/base.py#L60
""" # noqa: E501
Delegates to ``LangChainTracer.on_chat_model_start`` to obtain correct
chat-formatted spans. The ``BaseTracer`` implementation requires setting
an internal ``_schema_format`` flag; delegating to ``LangChainTracer``
avoids depending on that private attribute.
"""
return LangChainTracer.on_chat_model_start(self, *args, **kwargs) # type: ignore


Expand Down
Loading