Перейти к основному содержанию
Avala связывает каждый кадр, метку, решение рецензента и версию экспорта на одной платформе. Когда модель ошибается на граничном случае, вы можете отследить предсказание до точной обучающей метки, которая на него повлияла — и исправить первопричину вместо гадания.

Что означает прослеживаемость в Avala

Каждая аннотация в Avala несёт полные метаданные происхождения:
СущностьЧто отслеживается
Элемент набора данныхURL исходного файла, временная метка загрузки, принадлежность к последовательности, метаданные сенсора
ЗадачаНазначенный аннотатор, время создания, время завершения, переходы состояний
РезультатДанные аннотации, использованный инструмент, ID аннотатора, временная метка отправки
QA-рецензияID рецензента, решение рецензии (принять/отклонить/исправить), комментарии
ЭкспортФормат экспорта, включённые наборы данных/проекты/срезы, временная метка создания, версия
Это означает, что вы можете начать с любой экспортированной метки и пройти назад по всей цепочке: какой аннотатор её создал, прошла ли она QA, из какого элемента набора данных она происходит и когда произошёл каждый шаг.

Пошаговый пример: отладка ошибки модели

Вот конкретный пример того, как прослеживаемость помогает отлаживать проблему продакшн-модели.

1. Модель ошибается на граничном случае

Ваша модель восприятия неправильно классифицирует частично перекрытого пешехода в скане LiDAR. Вы определяете предсказание и хотите понять, почему модель научилась такому поведению.

2. Найдите обучающие данные

Используйте SDK для поиска в экспортах элементов набора данных, которые внесли вклад в обучающую выборку модели.
from avala import Client

client = Client()

# Get the export used for training
export = client.exports.get("export_abc123")
print(f"Export: {export.name}")
print(f"Format: {export.format}")
print(f"Created: {export.created_at}")

3. Проверьте отдельные результаты

Каждый результат в экспорте включает исходный элемент набора данных, информацию об аннотаторе и статус QA.
# List tasks from the project used in the export
tasks = client.tasks.list(project="project_uid")

for task in tasks:
    print(f"Task {task.uid}")
    print(f"  Status: {task.status}")
    print(f"  Dataset: {task.dataset_name}")
    print(f"  Item: {task.dataset_item_name}")

4. Проследите до источника

Определив проблемную метку, вы можете найти оригинальный элемент набора данных, чтобы увидеть его исходный файл, метаданные сенсора и полную историю аннотаций.
# Get the specific dataset item
item = client.datasets.get_item(
    dataset="dataset_uid",
    item="item_uid"
)

print(f"Source: {item.source_url}")
print(f"Uploaded: {item.created_at}")
print(f"Sequence: {item.sequence_name}")

5. Исправьте и переобучите

Определив первопричину — например, ошибку аннотации перекрытого пешехода — вы исправляете метку в Avala, создаёте новый экспорт и переобучаете модель на исправленных данных.
# Create a new export with the corrected labels
new_export = client.exports.create(
    name="Training v2 - fixed occlusion labels",
    format="avala-json-external",
    projects=["project_uid"]
)

print(f"New export: {new_export.uid}")

Преимущества

Воспроизводимость

Каждый экспорт версионирован. Вы можете воссоздать точный обучающий набор, использованный для любой версии модели, по UID экспорта. Никаких догадок о том, какие метки были включены или исключены.

Быстрая отладка

Вместо ручного перебора тысяч аннотаций в поисках ошибки вы прослеживаете путь напрямую от ошибки модели до конкретной метки, которая её вызвала. То, что раньше занимало дни, теперь занимает минуты.

Соответствие и аудиторские следы

Для регулируемых отраслей (автомобилестроение, медицина, оборона) прослеживаемость обеспечивает документальный след, который требуют аудиторы. Каждое решение по аннотации атрибутировано, датировано и связано с QA-рецензией.

Непрерывное улучшение

Отслеживайте качество аннотаций во времени, соотнося производительность модели с конкретными аннотаторами, этапами рецензирования и версиями наборов данных. Выявляйте систематические проблемы разметки до того, как они распространятся по вашему пайплайну обучения.

Прослеживаемость через API

Все данные прослеживаемости доступны через REST API и SDK. Ключевые эндпоинты:
ЭндпоинтЧто возвращает
GET /api/v1/exports/{uid}/Метаданные экспорта, включая наборы данных, проекты и временную метку создания
GET /api/v1/tasks/Список задач со статусом, аннотатором и ссылками на элементы набора данных
GET /api/v1/datasets/{uid}/items/Элементы набора данных с URL источников и принадлежностью к последовательностям
GET /api/v1/datasets/{uid}/sequences/Последовательности с количеством кадров и ссылками на элементы
Полную документацию по эндпоинтам см. в Справочнике API, или используйте Python SDK и TypeScript SDK для типизированного доступа.

Следующие шаги

Контроль качества

Узнайте, как многоэтапные QA-процессы Avala отлавливают ошибки аннотации до того, как они попадут в вашу модель.

Экспорты

Создавайте версионированные экспорты аннотированных данных с полными метаданными происхождения.

Качество и SLA

Узнайте о гарантиях качества, целях точности и сроках выполнения Avala.

Python SDK

Установите SDK и начните программно запрашивать данные.