Датасеты и скриптовая оценка
care dataset управляет небольшим оценочным датасетом, привязанным к одной
цепочке, — терминальный аналог /dataset в TUI. Каждая запись связывает входную
задачу с ожидаемой подстрокой; run прогоняет все записи через цепочку и
выставляет оценку. Под-действие обязательно: list, add, run или
export.
Цикл оценки
Заголовок раздела «Цикл оценки»add— добавьте случаи с--expected, то есть с подстрокой, которую должен содержать ответ цепочки.run— прогон датасета: каждый случай воспроизводится через цепочку (исполнитель CARL) и оценивается по подстроке без учёта регистра. Команда печатает ✓/✗ по каждому случаю и строкуscore: N/M passed, а при любом провале завершается с кодом 1 — то есть сразу готова стать гейтом в CI.export— выгрузите датасет в JSONL, если хотите оценивать его во внешнем фреймворке.
care dataset add <chain_id> <task>
Заголовок раздела «care dataset add <chain_id> <task>»Добавляет один тест-кейс в датасет цепочки.
care dataset add weather "погода в Париже завтра" --expected "Париж"| Флаг | По умолчанию | Назначение |
|---|---|---|
--expected EXPECTED | обязателен | Подстрока, которую должен содержать ответ (гейт run сверяет её без учёта регистра). |
--rubric RUBRIC | "" | Рубрика LLM-судьи, используется только при прогоне из TUI — care dataset run её игнорирует и оценивает по подстроке. |
care dataset list <chain_id>
Заголовок раздела «care dataset list <chain_id>»Выводит записи датасета цепочки — по строке на случай, со статусом и усечённой задачей.
care dataset list weathercare dataset list weather --json| Флаг | По умолчанию | Назначение |
|---|---|---|
--json | выкл. | Выдать записи в JSON вместо построчного вида. |
care dataset run <chain_id>
Заголовок раздела «care dataset run <chain_id>»Прогоняет каждую запись через цепочку и выставляет оценку.
care dataset run weather ✓ погода в Париже завтра ✗ прогноз на пять дней для SF
score: 1/2 passed (substring)| Флаг | По умолчанию | Назначение |
|---|---|---|
--json | выкл. | Выдать структурированный результат вместо построчного вывода. |
Код возврата равен 0, только если прошли все оценённые случаи; иначе — 1.
care dataset export <chain_id> <output>
Заголовок раздела «care dataset export <chain_id> <output>»Выгружает датасет в JSONL — по записи на строку — для внешнего фреймворка оценки.
care dataset export weather weather-eval.jsonlПоскольку run завершается с ненулевым кодом при первом же провале, шаг CI — это
просто сама команда, без дополнительной обвязки:
# один раз наполняем датасет (или коммитим случаи через `add` на этапе setup)care dataset add weather "погода в Париже завтра" --expected "Париж"care dataset add weather "идёт ли дождь в Лондоне" --expected "Лондон"
# гейт: ненулевой код роняет пайплайнcare dataset run weather# .github/workflows/eval.yml (фрагмент)- name: Оценка цепочки weather run: care dataset run weather env: OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}Запустите care dataset --help для полного и актуального списка флагов.
См. также
Заголовок раздела «См. также»- Команды продакшена — поток
/dataset, эволюция и публикация в TUI. - Обзор CLI — все headless-подкоманды одним взглядом.