19 lines
767 B
Python
19 lines
767 B
Python
from typing import Type, TypedDict, Literal, Dict, List, Tuple, Any
|
|
|
|
from langchain_core.messages import SystemMessage, HumanMessage, AIMessage
|
|
|
|
class State(TypedDict):
|
|
inp: Tuple[Dict[str, List[SystemMessage | HumanMessage]],
|
|
Dict[str, Dict[str, str|int]]]
|
|
messages: List[SystemMessage | HumanMessage]
|
|
decision: str
|
|
subgraph_states: Dict[str, Any] # NOTE: Naively assuming subgraphs
|
|
# won't be so complicated
|
|
|
|
|
|
class ChattyToolState(TypedDict):
|
|
inp: Tuple[Dict[str, List[SystemMessage | HumanMessage]],
|
|
Dict[str, Dict[str, str|int]]]
|
|
tool_messages: List[SystemMessage | HumanMessage | AIMessage]
|
|
chatty_messages: List[SystemMessage | HumanMessage | AIMessage]
|