Пример #1
0
 def get_data_from_unit(self, unit: Unit) -> Dict[str, Any]:
     agent = unit.get_assigned_agent()
     assert (
         agent is not None
     ), f"Trying to get completed data from unassigned unit {unit}"
     return {
         "worker_id": agent.worker_id,
         "unit_id": unit.db_id,
         "assignment_id": unit.assignment_id,
         "status": agent.db_status,
         "data": agent.state.get_parsed_data(),
         "task_start": agent.state.get_task_start(),
         "task_end": agent.state.get_task_end(),
     }
Пример #2
0
def get_mturk_ids_from_unit_id(db, unit_id: str) -> Dict[str, Optional[str]]:
    """
    Find the relevant mturk ids from the given mephisto unit id
    """
    mturk_unit = Unit(db, unit_id)
    assignment_id = mturk_unit.get_mturk_assignment_id()
    hit_id = mturk_unit.get_mturk_hit_id()
    agent = mturk_unit.get_assigned_agent()
    worker_id = None
    if agent is not None:
        worker_id = agent.get_worker().get_mturk_worker_id()
    return {
        "assignment_id": assignment_id,
        "hit_id": hit_id,
        "worker_id": worker_id
    }