NDGCodes's picture
fix repo structure for HF
1a692ce
Raw
History Blame Contribute Delete
1.14 kB
from typing import Any, Literal
from pydantic import BaseModel, Field
class Observation(BaseModel):
ticket_id: str | None = None
ticket_status: str | None = None
attempts_used: int = 0
attempts_remaining: int = 0
severity: Literal["low", "medium", "high"] = "low"
summary: str = ""
embedding: list[float] | None = None
queue_length: int = 0
waiting_tickets: list[dict[str, Any]] = Field(default_factory=list)
agents_available: int = 0
current_time: float = 0.0
level: int = 1
memory_used: int = 0
memory_budget: int = 0
class Action(BaseModel):
action_type: Literal[
"triage",
"respond",
"resolve",
"escalate",
"assign",
"reprioritize",
"skip",
"compress_memory",
]
ticket_id: str | None = None
agent_id: str | None = None
priority: int | None = None
note: str = ""
class RewardSignal(BaseModel):
value: float
reason: str
class StepResult(BaseModel):
observation: Observation
reward: RewardSignal
done: bool
info: dict[str, Any] = Field(default_factory=dict)