attention-env / env /models.py
prashasti
Initial changes for attention allocation system env
64ea2b1
Raw
History Blame Contribute Delete
943 Bytes
from pydantic import BaseModel
from typing import List
# pydantic models used for OpenEnv compliance. Base class adds data validation, conversion
class UserState(BaseModel):
interest_vector: List[float] # what the user likes (e.g., [sports, tech, music])
fatigue: float # measure of the boredom
session_time: int # how long the user has been interacting
class Item(BaseModel):
id: int
topic_vector: List[float] # what the item is about
quality: float # is the quality of the item good
novelty: float # is the item new to the user
length: int # how long the item is (e.g., in seconds for videos, or word count for articles)
# Observation is what the agent sees
class Observation(BaseModel):
user: UserState
items: List[Item]
# Which item id the agent chooses
class Action(BaseModel):
item_id: int
# Feedback from the environment after taking an action
class Reward(BaseModel):
value: float