Skip to content

Commit dff700e

Browse files
added telemetry decorators to other chat clients (#255)
1 parent c794892 commit dff700e

2 files changed

Lines changed: 12 additions & 6 deletions

File tree

python/packages/foundry/agent_framework_foundry/_chat_client.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
)
3030
from agent_framework._clients import ai_function_to_json_schema_spec
3131
from agent_framework.exceptions import ServiceInitializationError
32+
from agent_framework.telemetry import use_telemetry
3233
from azure.ai.agents.models import (
3334
AgentsNamedToolChoice,
3435
AgentsNamedToolChoiceType,
@@ -90,6 +91,7 @@ class FoundrySettings(AFBaseSettings):
9091
agent_name: str | None = "UnnamedAgent"
9192

9293

94+
@use_telemetry
9395
@use_tool_calling
9496
class FoundryChatClient(ChatClientBase):
9597
"""Azure AI Foundry Chat client."""

python/packages/main/agent_framework/openai/_responses_client.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,7 @@
44
from collections.abc import AsyncIterable, Callable, Mapping, MutableMapping, MutableSequence, Sequence
55
from datetime import datetime
66
from itertools import chain
7-
from typing import Any, Literal
8-
9-
if sys.version_info >= (3, 12):
10-
from typing import override # type: ignore
11-
else:
12-
from typing_extensions import override # type: ignore[import]
7+
from typing import Any, ClassVar, Literal
138

149
from openai import AsyncOpenAI, AsyncStream
1510
from openai.types.responses.response import Response as OpenAIResponse
@@ -44,17 +39,26 @@
4439
UsageDetails,
4540
)
4641
from ..exceptions import ServiceInitializationError, ServiceInvalidResponseError
42+
from ..telemetry import use_telemetry
4743
from ._shared import OpenAIConfigBase, OpenAIHandler, OpenAIModelTypes, OpenAISettings
4844

45+
if sys.version_info >= (3, 12):
46+
from typing import override # type: ignore # pragma: no cover
47+
else:
48+
from typing_extensions import override # type: ignore[import] # pragma: no cover
49+
4950
__all__ = ["OpenAIResponsesClient"]
5051

5152
# region ResponsesClient
5253

5354

55+
@use_telemetry
5456
@use_tool_calling
5557
class OpenAIResponsesClient(OpenAIConfigBase, ChatClientBase, OpenAIHandler):
5658
"""OpenAI Responses client class."""
5759

60+
MODEL_PROVIDER_NAME: ClassVar[str] = "openai" # type: ignore[reportIncompatibleVariableOverride, misc]
61+
5862
def __init__(
5963
self,
6064
ai_model_id: str | None = None,

0 commit comments

Comments
 (0)