| """Canonical reader-facing names for public task-suite artifacts.""" |
|
|
| from __future__ import annotations |
|
|
| from typing import Any |
|
|
|
|
| TASK_DISPLAY_NAMES = { |
| "timeline_action": "Action Recognition", |
| "timeline_subtask": "Procedure Step Recognition", |
| "transition_detection": "Action Boundary Detection", |
| "next_action": "Next-Action Prediction", |
| "hand_trajectory_forecast": "Hand Trajectory Forecasting", |
| "contact_prediction": "Contact State Prediction", |
| "object_relevance": "Object Relevance Prediction", |
| "caption_grounding": "Language Grounding", |
| "cross_modal_retrieval": "Cross-Modal Retrieval", |
| "modality_reconstruction": "Cross-Modal Reconstruction", |
| "temporal_order": "Temporal Order Verification", |
| "misalignment_detection": "Multimodal Synchronization Detection", |
| "long_horizon_next_action": "Long-Horizon Next-Action Forecasting", |
| "next_subtask_forecast": "Long-Horizon Next-Subtask Forecasting", |
| "interaction_text_prediction": "Interaction Text Prediction", |
| "action_object_relation": "Action-Object Relation Prediction", |
| "object_set_forecast": "Future Object-Set Forecasting", |
| "imu_to_hand_pose": "IMU-to-Hand Pose Reconstruction", |
| "camera_view_sync_retrieval": "Camera-View Synchronization Retrieval", |
| "time_to_transition": "Time-to-Next-Transition Regression", |
| } |
|
|
|
|
| def task_display_name(task_id: str) -> str: |
| """Return the public label while preserving unknown ids for debugging.""" |
| return TASK_DISPLAY_NAMES.get(task_id, task_id.replace("_", " ").title()) |
|
|
|
|
| def with_task_display(task_id: str, payload: dict[str, Any]) -> dict[str, Any]: |
| payload.setdefault("task", task_id) |
| payload["task_display_name"] = task_display_name(task_id) |
| return payload |
|
|