mirror of
https://github.com/huggingface/lerobot.git
synced 2026-05-21 19:49:49 +00:00
feat(language): add motion (persistent) and trace (event-only) styles
Promote the previously-reserved motion/trace styles to first-class core styles. motion routes to language_persistent (it tracks robot state over time); trace routes to language_events (single-moment annotations). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -27,12 +27,12 @@ LANGUAGE_COLUMNS = (LANGUAGE_PERSISTENT, LANGUAGE_EVENTS)
|
|||||||
PERSISTENT_ROW_FIELDS = ("role", "content", "style", "timestamp", "tool_calls")
|
PERSISTENT_ROW_FIELDS = ("role", "content", "style", "timestamp", "tool_calls")
|
||||||
EVENT_ROW_FIELDS = ("role", "content", "style", "tool_calls")
|
EVENT_ROW_FIELDS = ("role", "content", "style", "tool_calls")
|
||||||
|
|
||||||
CORE_STYLES = {"subtask", "plan", "memory", "interjection", "vqa"}
|
CORE_STYLES = {"subtask", "plan", "memory", "motion", "interjection", "vqa", "trace"}
|
||||||
EXTENDED_STYLES = set()
|
EXTENDED_STYLES = set()
|
||||||
STYLE_REGISTRY = CORE_STYLES | EXTENDED_STYLES
|
STYLE_REGISTRY = CORE_STYLES | EXTENDED_STYLES
|
||||||
|
|
||||||
PERSISTENT_STYLES = {"subtask", "plan", "memory"}
|
PERSISTENT_STYLES = {"subtask", "plan", "memory", "motion"}
|
||||||
EVENT_ONLY_STYLES = {"interjection", "vqa"}
|
EVENT_ONLY_STYLES = {"interjection", "vqa", "trace"}
|
||||||
|
|
||||||
LanguageColumn = Literal["language_persistent", "language_events"]
|
LanguageColumn = Literal["language_persistent", "language_events"]
|
||||||
|
|
||||||
|
|||||||
@@ -33,15 +33,17 @@ def test_language_arrow_schema_has_expected_fields():
|
|||||||
|
|
||||||
|
|
||||||
def test_style_registry_routes_columns():
|
def test_style_registry_routes_columns():
|
||||||
assert {"subtask", "plan", "memory"} == PERSISTENT_STYLES
|
assert {"subtask", "plan", "memory", "motion"} == PERSISTENT_STYLES
|
||||||
assert {"interjection", "vqa"} == EVENT_ONLY_STYLES
|
assert {"interjection", "vqa", "trace"} == EVENT_ONLY_STYLES
|
||||||
assert PERSISTENT_STYLES | EVENT_ONLY_STYLES <= STYLE_REGISTRY
|
assert PERSISTENT_STYLES | EVENT_ONLY_STYLES <= STYLE_REGISTRY
|
||||||
|
|
||||||
assert column_for_style("subtask") == LANGUAGE_PERSISTENT
|
assert column_for_style("subtask") == LANGUAGE_PERSISTENT
|
||||||
assert column_for_style("plan") == LANGUAGE_PERSISTENT
|
assert column_for_style("plan") == LANGUAGE_PERSISTENT
|
||||||
assert column_for_style("memory") == LANGUAGE_PERSISTENT
|
assert column_for_style("memory") == LANGUAGE_PERSISTENT
|
||||||
|
assert column_for_style("motion") == LANGUAGE_PERSISTENT
|
||||||
assert column_for_style("interjection") == LANGUAGE_EVENTS
|
assert column_for_style("interjection") == LANGUAGE_EVENTS
|
||||||
assert column_for_style("vqa") == LANGUAGE_EVENTS
|
assert column_for_style("vqa") == LANGUAGE_EVENTS
|
||||||
|
assert column_for_style("trace") == LANGUAGE_EVENTS
|
||||||
assert column_for_style(None) == LANGUAGE_EVENTS
|
assert column_for_style(None) == LANGUAGE_EVENTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user