Vertix-agent / graph /state.py
Naif Alqubalee
Update space
16ab8a2
Raw
History Blame Contribute Delete
1.21 kB
from __future__ import annotations
from typing import Any, TypedDict
from api.schemas import GaiaQuestion
class PlanStep(TypedDict, total=False):
action: str
instruction: str
query: str
expression: str
status: str
result: str
class AgentState(TypedDict, total=False):
task_id: str
question: str
file_name: str | None
file_path: str | None
file_type: str
plan: list[PlanStep]
step_index: int
evidence: list[dict[str, Any]]
tool_results: list[dict[str, Any]]
draft_answer: str
final_answer: str
verification_passed: bool
feedback: str
iteration: int
retry_count: int
error: str
def initial_state(question: GaiaQuestion) -> AgentState:
return {
"task_id": question.task_id,
"question": question.question,
"file_name": question.file_name,
"file_path": None,
"file_type": "none",
"plan": [],
"step_index": 0,
"evidence": [],
"tool_results": [],
"draft_answer": "",
"final_answer": "",
"verification_passed": False,
"feedback": "",
"iteration": 0,
"retry_count": 0,
"error": "",
}