Source code for steamship.agents.schema.action

from typing import List, Optional

from pydantic import BaseModel
from pydantic.fields import Field

from steamship import Block


[docs] class Action(BaseModel): """Actions represent a binding of a Tool to the inputs supplied to the tool. Upon completion, the Action also contains the output of the Tool given the inputs. """ tool: str """Name of tool used by this action.""" input: List[Block] """Data provided directly to the Tool (full context is passed in run).""" output: Optional[List[Block]] """Any direct output produced by the Tool.""" is_final: bool = Field(default=False) """Whether this Action should be the final action performed in a reasoning loop. Setting this to True means that the executing Agent should halt any reasoning. """
[docs] class FinishAction(Action): """Represents a final selected action in an Agent Execution.""" tool = "Agent-FinishAction" input: List[Block] = [] is_final = True