Spaces:
Sleeping
Sleeping
File size: 1,837 Bytes
9c195fe 842577f 9c195fe 842577f 9c195fe 842577f 42757ca 9c195fe 842577f 42757ca 1bac517 42757ca 9c195fe 42757ca 9c195fe 42757ca 9c195fe 842577f 9c195fe 1bac517 9c195fe | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | from typing import Any, Dict, List, Optional
from pydantic import Field
from openenv.core.env_server.types import Action, Observation, State
class DataCleanAction(Action):
action_type: str = Field(...)
target_field: str = Field(default="")
target_row: int = Field(default=0)
new_value: str = Field(default="")
class DataCleanObservation(Observation):
task_name: str = Field(default="")
task_description: str = Field(default="")
dataset: List[Dict[str, Any]] = Field(default_factory=list)
errors_found: List[Dict[str, Any]] = Field(default_factory=list)
errors_remaining: int = Field(default=0)
errors_total: int = Field(default=0)
errors_fixed: int = Field(default=0)
step_count: int = Field(default=0)
max_steps: int = Field(default=20)
cumulative_reward: float = Field(default=0.01)
last_action_result: str = Field(default="")
task_hint: str = Field(default="")
available_actions: List[str] = Field(
default_factory=lambda: [
"fix_missing", "fix_type", "fix_range", "fix_format",
"fix_duplicate", "validate", "skip"
]
)
progress_pct: float = Field(default=0.0)
field_names: List[str] = Field(default_factory=list)
class DataCleanState(State):
task_name: str = Field(default="")
max_steps: int = Field(default=20)
done: bool = Field(default=False)
reward_history: List[float] = Field(default_factory=list)
cumulative_reward: float = Field(default=0.01)
dataset: List[Dict[str, Any]] = Field(default_factory=list)
ground_truth: List[Dict[str, Any]] = Field(default_factory=list)
errors: List[Dict[str, Any]] = Field(default_factory=list)
errors_fixed: int = Field(default=0)
total_errors: int = Field(default=0)
last_actions: List[str] = Field(default_factory=list)
|