zykrix
Re-added phidata as a normal folder (final fix)
c96b98a
Raw
History Blame Contribute Delete
1.2 kB
from enum import Enum
from typing import Optional, List
from pydantic import BaseModel, Field
class NextAction(str, Enum):
CONTINUE = "continue"
VALIDATE = "validate"
FINAL_ANSWER = "final_answer"
class ReasoningStep(BaseModel):
title: Optional[str] = Field(None, description="A concise title summarizing the step's purpose")
action: Optional[str] = Field(
None, description="The action derived from this step. Talk in first person like I will ... "
)
result: Optional[str] = Field(
None, description="The result of executing the action. Talk in first person like I did this and got ... "
)
reasoning: Optional[str] = Field(None, description="The thought process and considerations behind this step")
next_action: Optional[NextAction] = Field(
None,
description="Indicates whether to continue reasoning, validate the provided result, or confirm that the result is the final answer",
)
confidence: Optional[float] = Field(None, description="Confidence score for this step (0.0 to 1.0)")
class ReasoningSteps(BaseModel):
reasoning_steps: List[ReasoningStep] = Field(..., description="A list of reasoning steps")