Как тестировать ваших агентов на реальных задачах с помощью Harbor — Ксандер Сонг, Arize AI

원제 · How to Test Your Agents on Real Tasks With Harbor - Xander Song, Arize AI

56:014분 읽기AI Engineer2026. 10. 26.컴퓨터/소프트웨어 · AI/미래기술

핵심 요약

Фреймворк Harbor изолирует окружение в Docker и проверяет внешние побочные эффекты через независимые верификаторы, заменяя интуитивные релизы агентов на доказательное тестирование.

하이라이트

  • Harbor запускает автономные тесты агентов в изолированных контейнерах Docker и оценивает результат с помощью независимых верификаторов через бинарные или числовые вознаграждения в файле reward.txt.

  • Использование скрипта-оракула позволяет полностью отладить окружение, тестовые данные и верификаторы до расходования средств на токены LLM.

  • Запуск тестов на облачных платформах вроде Daytona с 200 параллельными воркерами обеспечивает быстрое горизонтальное масштабирование и расчет агрегированных метрик pass@k для стохастических агентов.

  • Внедрение SQL-инструмента прямого чтения вместе с целевой корректировкой системного промпта предотвратило лишнюю пагинацию через GraphQL и снизило среднее число вызовов инструментов на задачу.

  • Стандарт OpenInference трансформирует траектории ATIF в телеметрию на базе OpenTelemetry, обеспечивая сопоставление трейсов, версионирование датасетов и сравнение экспериментов в Phoenix.

타임라인

  1. Архитектура и базовые сущности Harbor

    Пайплайн Harbor связывает инструкции на естественном языке, изолированное окружение в виде контейнера и проверочные скрипты. Запуск серии независимых попыток компенсирует стохастическую природу языковых моделей. Фиксация неизменной задачи и верификатора дает возможность менять промпты и архитектуру агента, точно отслеживая прогресс или регрессию. Предварительный запуск скрипта-оракула подтверждает корректность тестовой среды до расходования API-токенов.

    • Harbor определяет задачи в формате Markdown и запускает агентов внутри свежих Docker-песочниц с реалистичными данными.
    • Верификаторы запускаются после остановки агента, фиксируют произведенные побочные эффекты и записывают результат в файл reward.txt.
    • Траектории выполнения сохраняются в JSON-формате ATIF для последующей отладки и инспекции шагов.
    • Оракулы предоставляют готовое детерминированное решение задачи для калибровки тестового пайплайна без вызова языковых моделей.
  2. Принцип черного ящика и изоляция верификаторов

    На примере задачи восстановления сломанной схемы базы данных показана механика проверки: скрипт применяет SQL-миграцию, проверяет нулевой код возврата, целостность колонок и индексов. Монтирование каталога тестов post factum исключает утечку решений в контекст агента. Подобный подход работает по аналогии с интеграционным тестированием API, где тесты не зависят от внутренней логики сервиса.

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

    Сравнение моделей уровня Claude Code или Codex требует множественных независимых прогонов из-за стохастичности генерации. Развертывание идентичных контейнеров в облачных средах ускоряет валидацию объемных датасетов. Сводные метрики по набору данных сразу показывают влияние архитектурных изменений на общий процент успешных решений.

    • Полная изоляция сред гарантирует линейную горизонтальную масштабируемость тестовых запусков.
    • Исполнение задач в облачной инфраструктуре вроде Daytona поддерживает одновременную работу порядка 200 воркеров.
    • Метрика pass@k отражает вероятность успешного выполнения задачи за k независимых попыток.
  4. Интеграция с Phoenix и спецификация OpenInference

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

    • Траектории ATIF транслируются в соглашения OpenInference, развернутые поверх экосистемы OpenTelemetry.
    • Платформа Phoenix версионирует тестовые датасеты и задачи для аудита каждого прогона Harbor.
    • Графический интерфейс агрегирует историю вознаграждений, латентность и затраты на вызовы LLM по ходу экспериментов.
  5. Архитектура среды тестирования интерфейсов

    Изолированная среда объединяет работающий сервер, предзаполненную базу SQLite с реальными трейсами и тестового клиента вместо браузера. Агент взаимодействует с системой через реальные протоколы REST, GraphQL или MCP. Контракт между хостовым CLI Harbor и средой опирается на строгую структуру размещения скриптов инициализации и валидации внутри Docker-образа.

    • Одноузловой сервер Phoenix с локальной базой SQLite упаковывается целиком внутри контейнера Docker.
    • Тестированию подлежит связка агента с CLI, сервером MCP или серверным исполнителем Pixie.
    • Harbor функционирует как внешний оркестратор на хост-машине или CI-раннере, управляя скриптами внутри контейнера.
  6. Оптимизация вызовов инструментов через SQL и оракулы

    Запросы по выявлению максимальных расходов на модели приводили к неэффективным циклам ручной пагинации данных. Для устранения проблемы в MCP-сервер добавили инструмент прямого выполнения SQL только для чтения. Изменение системного промпта протестировали на сгенерированных сценариях, где верификатор зафиксировал рост использования SQL и сокращение суммарного числа шагов без потери правильности ответов.

    • Агенты генерировали избыточную постраничную выборку через GraphQL при попытке выполнить расчет агрегатных показателей.
    • Инструмент чтения базы через SQL снял вычислительную нагрузку с контекста агента.
    • Инструкция в промпте перенаправила запросы агрегации с GraphQL на прямой SQL.
    • Синтетический тестовый датасет с эталонными SQL-оракулами подтвердил сокращение общего числа вызовов инструментов.
  7. Анализ траекторий и регрессионное тестирование навыков

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

    • Построчное сравнение запусков в интерфейсе подтверждает переход с вызовов эмулятора bash на прямые SQL-запросы.
    • Тестирование отдельных навыков (skills) защищает сценарии от пересечения инструкций в метаданных.
    • Оптимизации подлежит не базовая LLM, а гибридная система из модели, CLI, MCP-серверов и системных навыков.

설명

Xander Song, an engineer at Arize AI who works on Phoenix, introduces Harbor, an open source framework for evaluating agents on realistic tasks with real data in isolated sandboxes. He explains tasks, Docker environments, verifiers and rewards, trials and jobs, oracles that validate your setup before you spend tokens, and ATIF trajectories. Then he shows how his team runs Harbor at scale on Daytona and with Phoenix to test a prompt change that steered agents toward a new SQL tool, cutting tool calls without hurting correctness. Chapters 00:00 Intro: shipping on evidence, not vibes 01:28 What Harbor is 03:37 Architecture: tasks, environments, verifiers 06:08 Trajectories, jobs and oracles 07:58 Example: fixing a failing migration 10:48 Verifiers as black-box integration tests 14:21 Running at scale in parallel sandboxes 17:04 Harbor with Phoenix 20:37 How the Phoenix team uses Harbor 25:07 Q&A: how Harbor orchestrates runs 29:24 Q&A: complex systems and data size 33:21 Case study: steering agents to a SQL tool 38:34 Demo: datasets and experiments in Phoenix 44:10 Demo: comparing jobs task by task 48:31 Regression tests and skills Xander Song, Arize AI Join us in SF for the second annual AIE CODE summit: https://aie.codes our last flagship summit of 2026. Applications live now!

이 영상에 대해 글쓰기