Skip to content

Commit afd2a90

Browse files
authored
Merge branch 'main' into copilot/fix-docfx-cross-reference-links
2 parents 85155f6 + 1fb4953 commit afd2a90

1 file changed

Lines changed: 13 additions & 16 deletions

File tree

  • libraries/microsoft-agents-a365-observability-extensions-langchain/microsoft_agents_a365/observability/extensions/langchain

libraries/microsoft-agents-a365-observability-extensions-langchain/microsoft_agents_a365/observability/extensions/langchain/tracer.py

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,15 @@ def __init__(
8484
*args: Any,
8585
**kwargs: Any,
8686
) -> None:
87-
"""Initialize the OpenInferenceTracer.
87+
"""Initialize the CustomLangChainTracer.
8888
8989
Args:
90-
tracer (trace_api.Tracer): The OpenTelemetry tracer for creating spans.
91-
separate_trace_from_runtime_context (bool): When True, always start a new trace for each
92-
span without a parent, isolating it from any existing trace in the runtime context.
93-
*args (Any): Positional arguments for BaseTracer.
94-
**kwargs (Any): Keyword arguments for BaseTracer.
90+
tracer: The OpenTelemetry tracer for creating spans.
91+
separate_trace_from_runtime_context: When True, always start a new
92+
trace for each span without a parent, isolating it from any
93+
existing trace in the runtime context.
94+
*args: Positional arguments forwarded to BaseTracer.
95+
**kwargs: Keyword arguments forwarded to BaseTracer.
9596
"""
9697
super().__init__(*args, **kwargs)
9798
if TYPE_CHECKING:
@@ -203,17 +204,13 @@ def on_tool_error(self, error: BaseException, *args: Any, run_id: UUID, **kwargs
203204
return super().on_tool_error(error, *args, run_id=run_id, **kwargs)
204205

205206
def on_chat_model_start(self, *args: Any, **kwargs: Any) -> Run:
206-
"""
207-
This emulates the behavior of the LangChainTracer.
208-
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/langchain.py#L115
209-
210-
Although this method exists on the parent class, i.e. `BaseTracer`,
211-
it requires setting `self._schema_format = "original+chat"`.
212-
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/base.py#L170
207+
"""Handle chat model start events.
213208
214-
But currently self._schema_format is marked for internal use.
215-
https://github.com/langchain-ai/langchain/blob/c01467b1f4f9beae8f1edb105b17aa4f36bf6573/libs/core/langchain_core/tracers/base.py#L60
216-
""" # noqa: E501
209+
Delegates to ``LangChainTracer.on_chat_model_start`` to obtain correct
210+
chat-formatted spans. The ``BaseTracer`` implementation requires setting
211+
an internal ``_schema_format`` flag; delegating to ``LangChainTracer``
212+
avoids depending on that private attribute.
213+
"""
217214
return LangChainTracer.on_chat_model_start(self, *args, **kwargs) # type: ignore
218215

219216

0 commit comments

Comments
 (0)