вариант

tao-analyze-gaps-vlm-bcq

NVIDIA/skills NVIDIA/skills

Извлечь ложноположительные и ложноотрицательные пробелы из прогнозов VLM по вопросам бинарной классификации путем сравнения ответов модели с эталонными данными, сформировав при этом структурированный файл JSONL и сводный отчет для последующего анализа первопричин.

...Расширить все
0
Обновлено время 25 сентября 2026 г.

Анализ разрыва в бинарной классификации VLM

Считывает JSON-файл с прогнозами VLM, сравнивает каждый ответ модели с эталонными данными и записывает случаи ошибок (FP/FN) в файл JSONL вместе с сводным отчетом.

Цель

После запуска VLM для задачи бинарной оценки «да/нет» прогнозы необходимо сравнить с эталонными данными, чтобы выявить случаи ошибок. Данный навык формирует структурированный список образцов FP (ложноположительных) и FN (ложноотрицательных), которые используются последующими этапами RCCA (например, генерацией космоса, анализом первопричин) для запуска итерации DEFT.

Использование

Вызовите действие vlm_bcq внутри контейнера служб данных TAO Toolkit с переопределениями ключ=значение в стиле Hydra:

gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps

Укажите параметр videos_dir, если значения video_id в прогнозах являются относительными путями:

gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps \
  videos_dir=/path/to/videos/root

После выполнения извлеките данные о количестве FP/FN из файла kpi_gaps_report.txt и укажите последующим этапам файл kpi_gaps.jsonl.

Входные данные

  • predictions_json: путь к файлу JSON с прогнозами. Должен представлять собой массив JSON, в котором каждый элемент содержит поля video_id, response и gt. Поля response и gt анализируются с учетом границ слов — распознается наличие «yes» или «no» в любой части строки. Образцы, в которых присутствуют оба слова или ни одно из них, пропускаются с выводом предупреждения.
  • videos_dir (необязательно): Базовый каталог для преобразования относительных путей video_id. Если не указан, значения video_id используются как абсолютные пути.

Формат JSON с прогнозами:

[
  {
    "video_id": "/path/to/video.mp4",
    "response": "Yes, there is a collision.",
    "gt": "B. Нет",
    "question": "Есть ли конфликт?"
  }
]

Выходные данные

  • kpi_gaps.jsonl: по одному объекту JSON в строке для каждого случая FP/FN. Поля: video_id (абсолютный путь), error_type (FP или FN), question, ground_truth, response.
  • kpi_gaps_report.txt: Удобная для чтения таблица с общим количеством FP/FN.

Если пробелов не обнаружено, файлы не записываются, а в журнал записывается сообщение.

Ключевые параметры

Параметр Обязательный Описание
predictions_json Да Путь к файлу JSON с прогнозами
results_dir Да Каталог вывода; создается, если не существует
videos_dir Нет Базовый каталог для преобразования относительных путей video_id

Шаблоны ошибок

Ошибка Причина Исправление
FileNotFoundError Файлpredictions_json не существует Проверьте путь
ValueError: должно быть массивом JSON Файл прогнозов не является списком Оберните прогнозы в [...]
ValueError: отсутствует 'gt'/'response'/'video_id' В элементе прогноза отсутствует обязательное поле Проверьте и исправьте JSON-файл с прогнозами
Образцы пропущены без уведомления В response или gt присутствуют оба значения «yes»/«no» или ни одного из них Проверьте журналы на наличие предупреждений; проанализируйте эти образцы
Посмотреть на GitHub
---
name: tao-analyze-gaps-vlm-bcq
description: Extract false-positive and false-negative gaps from VLM binary-classification-question predictions by comparing model responses against ground truth, producing a structured JSONL file and summary report for downstream root-cause analysis.
license: Apache-2.0
---

# VLM Binary Classification Gap Analysis

Reads a VLM predictions JSON, compares each model response against ground truth, and writes FP/FN failure cases to a JSONL file with a summary report.

## Purpose

After running a VLM on a binary yes/no evaluation task, the predictions need to be compared against ground truth to identify failure cases. This skill produces a structured list of FP (false positive) and FN (false negative) samples that downstream RCCA stages (e.g., cosmos generation, root cause analysis) consume to drive a DEFT iteration.

## Usage

Invoke the `vlm_bcq` action inside the TAO Toolkit data services container with Hydra-style key=value overrides:

```bash
gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps
```

Include `videos_dir` when `video_id` values in the predictions are relative paths:

```bash
gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps \
  videos_dir=/path/to/videos/root
```

After the run, surface the FP/FN counts from `kpi_gaps_report.txt` and point downstream stages at `kpi_gaps.jsonl`.

## Inputs

- **predictions_json**: Path to predictions JSON file. Must be a JSON array where each item has `video_id`, `response`, and `gt` fields. `response` and `gt` are parsed with word-boundary matching — `'yes'` or `'no'` anywhere in the string is recognized. Samples where both or neither are present are skipped with a warning.
- **videos_dir** (optional): Base directory for resolving relative `video_id` paths. If omitted, `video_id` values are used as absolute paths.

**Predictions JSON format:**
```json
[
  {
    "video_id": "/path/to/video.mp4",
    "response": "Yes, there is a collision.",
    "gt": "B. No",
    "question": "Is there a collision?"
  }
]
```

## Outputs

- **kpi_gaps.jsonl**: One JSON object per line for each FP/FN case. Fields: `video_id` (absolute path), `error_type` (`FP` or `FN`), `question`, `ground_truth`, `response`.
- **kpi_gaps_report.txt**: Human-readable table with total FP/FN counts.

If no gaps are found, no files are written and a message is logged.

## Key Parameters

| Parameter | Required | Description |
|-----------|----------|-------------|
| predictions_json | Yes | Path to predictions JSON file |
| results_dir | Yes | Output directory; created if it does not exist |
| videos_dir | No | Base directory for resolving relative `video_id` paths |

## Error Patterns

| Error | Cause | Fix |
|-------|-------|-----|
| `FileNotFoundError` | `predictions_json` does not exist | Check the path |
| `ValueError: must be a JSON array` | Predictions file is not a list | Wrap predictions in `[...]` |
| `ValueError: missing 'gt'/'response'/'video_id'` | A prediction item is missing a required field | Inspect and fix the predictions JSON |
| Samples silently skipped | `response` or `gt` contains both or neither 'yes'/'no' | Check logs for warnings; inspect those samples |

Установить tao-analyze-gaps-vlm-bcq

Скачайте файлы навыков и распакуйте их в каталог .claude/skills/.

Скачать ZIP

Клонируйте репозиторий и скопируйте файлы навыка в свой проект.

git clone https://github.com/NVIDIA/skills/tree/main/skills/tao-analyze-gaps-vlm-bcq # Copy SKILL.md to your .claude/skills/ directory

Копировать Копировать
Быстрая настройка: Скопируйте папку со скиллом в .claude/skills/ Claude автоматически обнаружит и запустит этот скилл
Репозиторий NVIDIA/skills

Похожие навыки

web-search
Обновлено время 29 июня 2026 г.
webapp-testing
Обновлено время 29 июня 2026 г.
lark-base
Обновлено время 5 июля 2026 г.
agentmail
Обновлено время 29 июня 2026 г.
OR