KaiserShultz's picture
Update src/state.py
f65cea5 verified
from langgraph.graph import MessagesState
from typing import List, Annotated, Optional, Dict, Any
from src.schemas import PlannerPlan, ComplexityLevel, CritiqueFeedback, ExecutionReport
from typing import Sequence
from langchain_core.messages import BaseMessage
from langgraph.graph.message import add_messages
class AgentState(MessagesState):
query: str
final_answer: str
plan: Optional[PlannerPlan]
complexity_assessment: ComplexityLevel
current_step: int
reasoning_done: bool
messages : Annotated[Sequence[BaseMessage], add_messages]
files: List[str]
file_contents: Dict[str, Any]
critique_feedback: Optional[CritiqueFeedback]
iteration_count :int
max_iterations: int
execution_report : ExecutionReport
previous_tool_results: Dict[str, str] # НОВОЕ ПОЛЕ для сохранения результатов
previous_final_answer: str # НОВОЕ ПОЛЕ для сохранения предыдущих окончательных ответов
critic_replan : bool # НОВОЕ ПОЛЕ для указания, был ли выполнен реплан на основе критики