nat.atif.step#

Step model for ATIF trajectories.

Classes#

Step

A single step in an ATIF trajectory.

Module Contents#

class Step(/, **data: Any)#

Bases: pydantic.BaseModel

A single step in an ATIF trajectory.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

step_id: int = None#
timestamp: str | None = None#
source: Literal['system', 'user', 'agent'] = None#
model_name: str | None = None#
reasoning_effort: str | float | None = None#
message: str | list[nat.atif.content.ContentPart] = None#
reasoning_content: str | None = None#
tool_calls: list[nat.atif.tool_call.ToolCall] | None = None#
observation: nat.atif.observation.Observation | None = None#
metrics: nat.atif.metrics.Metrics | None = None#
is_copied_context: bool | None = None#
extra: dict[str, Any] | None = None#
model_config#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_timestamp(v: str | None) str | None#

Validate that timestamp is a valid ISO 8601 string.

validate_agent_only_fields() Step#

Validate that certain fields are only present for agent steps.