From a2b62eb72fb255231999df0c1dd9c17441e38a8a Mon Sep 17 00:00:00 2001 From: Tim Conley Date: Tue, 15 Jul 2025 08:47:29 -0700 Subject: [PATCH] Mark some dataclasses as pydantic dataclasses --- src/agents/items.py | 3 ++- src/agents/model_settings.py | 3 ++- src/agents/usage.py | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/agents/items.py b/src/agents/items.py index 64797ad22..fd13031e2 100644 --- a/src/agents/items.py +++ b/src/agents/items.py @@ -5,6 +5,7 @@ from dataclasses import dataclass from typing import TYPE_CHECKING, Any, Generic, Literal, TypeVar, Union +import pydantic from openai.types.responses import ( Response, ResponseComputerToolCall, @@ -212,7 +213,7 @@ class MCPApprovalResponseItem(RunItemBase[McpApprovalResponse]): """An item generated by an agent.""" -@dataclass +@pydantic.dataclasses.dataclass class ModelResponse: output: list[TResponseOutputItem] """A list of outputs (messages, tool calls, etc) generated by the model""" diff --git a/src/agents/model_settings.py b/src/agents/model_settings.py index edb692960..5af83fe3e 100644 --- a/src/agents/model_settings.py +++ b/src/agents/model_settings.py @@ -2,7 +2,7 @@ import dataclasses from collections.abc import Mapping -from dataclasses import dataclass, fields, replace +from dataclasses import fields, replace from typing import Annotated, Any, Literal, Union from openai import Omit as _Omit @@ -10,6 +10,7 @@ from openai.types.responses import ResponseIncludable from openai.types.shared import Reasoning from pydantic import BaseModel, GetCoreSchemaHandler +from pydantic.dataclasses import dataclass from pydantic_core import core_schema from typing_extensions import TypeAlias diff --git a/src/agents/usage.py b/src/agents/usage.py index 843f62937..3639cf944 100644 --- a/src/agents/usage.py +++ b/src/agents/usage.py @@ -1,6 +1,7 @@ -from dataclasses import dataclass, field +from dataclasses import field from openai.types.responses.response_usage import InputTokensDetails, OutputTokensDetails +from pydantic.dataclasses import dataclass @dataclass