mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-09-01 12:48:50 +02:00
* `strict=False` is the default, pyupgrade to min version 3.10 adds this to be explicit w/ behavior
31 lines
805 B
Python
31 lines
805 B
Python
from typing import Literal
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
# define these objects to avoid importing langchain_core.agents
|
|
# and therefore avoid relying on core Pydantic version
|
|
class AgentAction(BaseModel):
|
|
"""
|
|
Represents a request to execute an action by an agent.
|
|
|
|
The action consists of the name of the tool to execute and the input to pass
|
|
to the tool. The log is used to pass along extra information about the action.
|
|
"""
|
|
|
|
tool: str
|
|
tool_input: str | dict
|
|
log: str
|
|
type: Literal["AgentAction"] = "AgentAction"
|
|
|
|
|
|
class AgentFinish(BaseModel):
|
|
"""Final return value of an ActionAgent.
|
|
|
|
Agents return an AgentFinish when they have reached a stopping condition.
|
|
"""
|
|
|
|
return_values: dict
|
|
log: str
|
|
type: Literal["AgentFinish"] = "AgentFinish"
|