agents.planning.rewoo_v3.models

Pydantic models for ReWOO V3 Agent.

This module defines structured output models for the ReWOO (Reasoning without Observation) methodology using Enhanced MultiAgent V3.

Key Models: - ReWOOPlan: Planner agent structured output with evidence placeholders - EvidenceItem: Individual evidence collected by worker - EvidenceCollection: Worker agent structured output with all evidence - ReWOOSolution: Solver agent final answer with reasoning

Classes

EvidenceCollection

Worker agent structured output with all collected evidence.

EvidenceItem

Individual piece of evidence collected by Worker.

EvidenceStatus

Status of evidence collection.

PlanStep

Individual step in the ReWOO plan.

ReWOOPlan

Structured planning output from Planner agent.

ReWOOSolution

Final synthesized solution from Solver agent.

ReWOOV3Input

Input model for ReWOO V3 agent.

ReWOOV3Output

Output model for ReWOO V3 agent.

Module Contents

class agents.planning.rewoo_v3.models.EvidenceCollection(/, **data)

Bases: pydantic.BaseModel

Worker agent structured output with all collected evidence.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.EvidenceItem(/, **data)

Bases: pydantic.BaseModel

Individual piece of evidence collected by Worker.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.EvidenceStatus

Bases: str, enum.Enum

Status of evidence collection.

Initialize self. See help(type(self)) for accurate signature.

class agents.planning.rewoo_v3.models.PlanStep(/, **data)

Bases: pydantic.BaseModel

Individual step in the ReWOO plan.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.ReWOOPlan(/, **data)

Bases: pydantic.BaseModel

Structured planning output from Planner agent.

The plan contains all steps upfront without seeing any tool results. Each step has an evidence placeholder that will be filled by the Worker.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.ReWOOSolution(/, **data)

Bases: pydantic.BaseModel

Final synthesized solution from Solver agent.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.ReWOOV3Input(/, **data)

Bases: pydantic.BaseModel

Input model for ReWOO V3 agent.

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.

Parameters:

data (Any)

class agents.planning.rewoo_v3.models.ReWOOV3Output(/, **data)

Bases: pydantic.BaseModel

Output model for ReWOO V3 agent.

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.

Parameters:

data (Any)