++
This commit is contained in:
@@ -1,64 +1,64 @@
|
||||
from __future__ import annotations
|
||||
from enum import Enum
|
||||
from typing import Literal
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class ActionType(str, Enum):
|
||||
SPEAK_PUBLIC = "SPEAK_PUBLIC"
|
||||
SPEAK_PRIVATE = "SPEAK_PRIVATE"
|
||||
TRADE = "TRADE"
|
||||
FORM_GROUP = "FORM_GROUP"
|
||||
PROPOSE_RULE = "PROPOSE_RULE"
|
||||
VOTE = "VOTE"
|
||||
PROTEST = "PROTEST"
|
||||
COMPLY = "COMPLY"
|
||||
DEFECT = "DEFECT"
|
||||
BUILD = "BUILD"
|
||||
OBSERVE = "OBSERVE"
|
||||
RECOMMEND = "RECOMMEND"
|
||||
PURCHASE = "PURCHASE"
|
||||
ABANDON = "ABANDON"
|
||||
COMPARE = "COMPARE"
|
||||
RESEARCH = "RESEARCH"
|
||||
INVESTIGATE = "INVESTIGATE"
|
||||
DO_NOTHING = "DO_NOTHING"
|
||||
|
||||
|
||||
class AgentDecision(BaseModel):
|
||||
feel: str = ""
|
||||
want: str = ""
|
||||
fear: str = ""
|
||||
life_context: str = ""
|
||||
past_echo: str = ""
|
||||
action: ActionType = ActionType.DO_NOTHING
|
||||
args: dict = Field(default_factory=dict)
|
||||
speech: str | None = None
|
||||
internal_thought: str = ""
|
||||
belief_updates: list[str] = Field(default_factory=list)
|
||||
memory_promotion: str | None = None
|
||||
|
||||
|
||||
class ActionEntry(BaseModel):
|
||||
round: int
|
||||
day: int
|
||||
time_of_day: str
|
||||
agent_id: int
|
||||
agent_name: str
|
||||
location: str
|
||||
action_type: ActionType
|
||||
action_args: dict = Field(default_factory=dict)
|
||||
speech: str | None = None
|
||||
internal_thought: str | None = None
|
||||
targets: list[int] = Field(default_factory=list)
|
||||
world_state_changes: dict = Field(default_factory=dict)
|
||||
relationship_changes: dict = Field(default_factory=dict)
|
||||
|
||||
|
||||
class ReactiveResponse(BaseModel):
|
||||
agent_id: int
|
||||
agent_name: str = ""
|
||||
reaction_type: Literal["respond", "whisper", "silent"] = "silent"
|
||||
content: str | None = None
|
||||
target_id: int | None = None
|
||||
location: str = ""
|
||||
from __future__ import annotations
|
||||
from enum import Enum
|
||||
from typing import Literal
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class ActionType(str, Enum):
|
||||
SPEAK_PUBLIC = "SPEAK_PUBLIC"
|
||||
SPEAK_PRIVATE = "SPEAK_PRIVATE"
|
||||
TRADE = "TRADE"
|
||||
FORM_GROUP = "FORM_GROUP"
|
||||
PROPOSE_RULE = "PROPOSE_RULE"
|
||||
VOTE = "VOTE"
|
||||
PROTEST = "PROTEST"
|
||||
COMPLY = "COMPLY"
|
||||
DEFECT = "DEFECT"
|
||||
BUILD = "BUILD"
|
||||
OBSERVE = "OBSERVE"
|
||||
RECOMMEND = "RECOMMEND"
|
||||
PURCHASE = "PURCHASE"
|
||||
ABANDON = "ABANDON"
|
||||
COMPARE = "COMPARE"
|
||||
RESEARCH = "RESEARCH"
|
||||
INVESTIGATE = "INVESTIGATE"
|
||||
DO_NOTHING = "DO_NOTHING"
|
||||
|
||||
|
||||
class AgentDecision(BaseModel):
|
||||
feel: str = ""
|
||||
want: str = ""
|
||||
fear: str = ""
|
||||
life_context: str = ""
|
||||
past_echo: str = ""
|
||||
action: ActionType = ActionType.DO_NOTHING
|
||||
args: dict = Field(default_factory=dict)
|
||||
speech: str | None = None
|
||||
internal_thought: str = ""
|
||||
belief_updates: list[str] = Field(default_factory=list)
|
||||
memory_promotion: str | None = None
|
||||
|
||||
|
||||
class ActionEntry(BaseModel):
|
||||
round: int
|
||||
day: int
|
||||
time_of_day: str
|
||||
agent_id: int
|
||||
agent_name: str
|
||||
location: str
|
||||
action_type: ActionType
|
||||
action_args: dict = Field(default_factory=dict)
|
||||
speech: str | None = None
|
||||
internal_thought: str | None = None
|
||||
targets: list[int] = Field(default_factory=list)
|
||||
world_state_changes: dict = Field(default_factory=dict)
|
||||
relationship_changes: dict = Field(default_factory=dict)
|
||||
|
||||
|
||||
class ReactiveResponse(BaseModel):
|
||||
agent_id: int
|
||||
agent_name: str = ""
|
||||
reaction_type: Literal["respond", "whisper", "silent"] = "silent"
|
||||
content: str | None = None
|
||||
target_id: int | None = None
|
||||
location: str = ""
|
||||
|
||||
Reference in New Issue
Block a user