Эфир 18.11 · Поток 318 ноября в 19:00 МСК — бесплатный практический эфир по ИИ-агентам · Живой Поток 3 стартует 23.11Эфир 18 ноября →Поток 3 (23.11)
РелизКод / SDK · В работуModal Blog→ оригинал

Legora гоняет 2000 параллельных прогонов юридического агента в песочницах Modal

Когда ассистент превратился в агента, который часами работает с тысячами документов, старые evals на ноутбуке перестали годиться. Legora перенесла проверки в облако: каждый прогон получает отдельную Modal Sandbox с полной копией приложения на нужном коммите. Типичный эксперимент — 2000 запусков одновременно. Результат: бенчмарк BAR для длинных юридических задач и снижение стоимости агента на 30%.

AI-обработка оригинала Modal Blog; редакция Hamidun News
Legora гоняет 2000 параллельных прогонов юридического агента в песочницах Modal
Источник: Modal Blog. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникModal Blog ↗
Главный редактор
Ключевой факт #1VM Sandboxes с настоящим ядром Linux убрали все обходные пути для Docker
Volumes фиксируют состояние мирадокументы, базы, права доступа
Ключевой факт #3Почасовая сборка образа сводит сброс к коммиту к дельте

Тестировать чат-ассистента просто: задал вопрос, получил ответ, сравнил с эталоном. С агентом, который несколько часов роется в тысячах документов, правит файлы и ходит в базы, так не получится. Юридическая платформа Legora столкнулась с этим в начале 2026 года. Она заменила ассистента полноценным агентом и пересобрала систему оценки с нуля.

Почему ноутбука больше не хватает

Старые evals рассчитывались на небольшие задачи: несколько документов в окружении, всё крутится локально. Новый агент работает внутри реалистичного проекта с тысячами документов и гигабайтами данных. Типичный эксперимент теперь выглядит так: 100 кейсов, 4 варианта harness (обвязки агента вокруг модели) и по 5 прогонов на каждый. Итого 2000 запусков, и все они должны идти одновременно. Инженер Legora Эйрик Дрэге Стин говорит прямо: 10–20 параллельных прогонов уже перегрузили бы ноутбук.

Вторая проблема тоньше — достоверность окружения. Агент Legora охватывает весь продукт: безголовый редактор DOCX, собственные инстансы Turbopuffer, конвертацию PDF, Postgres и базу авторизации, хранилище блобов и динамические песочницы для исполнения кода. Чтобы измерить влияние миграции базы или правки в песочнице кода, в каждом прогоне нужна именно эта версия всего приложения. Моки тут не работают.

Как устроено: одна песочница — один прогон

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

Несколько приёмов, которые стоит запомнить:

  • Состояние мира в Volumes. Большие коллекции документов доступны во всех песочницах. Снимок включает документы, базу, права и блобы, так что повторные прогоны стартуют с одинаковых данных, а общая часть дедуплицируется.
  • Почасовой прогрев. Сборка огромного образа поначалу тормозила прогоны. Теперь раз в час пайплайн собирает образ и прогревает песочницы, и сброс на коммит сводится к дельте с прошлой сборки, а не к полной сборке приложения.
  • Секреты. Отдельная задача раз в час синхронизирует значения из хранилища ключей в Modal Secrets. Дополнительно используются частая ротация, минимальные права, требования к возрасту зависимостей и белый список доменов.

Отдельный сюжет — переход с gVisor на VM Sandboxes. Приложение Legora состоит из Docker-сервисов, и в gVisor приходилось городить обходные пути: сеть в host-режиме со своим DNS-резолвингом и запуск песочниц кода голыми процессами, потому что FUSE не монтировался. В виртуальной машине с настоящим ядром Linux Docker ведёт себя как на обычном хосте, и команда удалила все эти костыли.

Что это дало и где подвох

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

Интереснее другое: evals обернули в CLI и skill, и теперь агенты сами создают кейсы, запускают эксперименты и разбирают результаты. Большинство инженеров работает с evals через агентов. Если дать агенту метрику, инструменты экспериментов и бюджет, он будет подкручивать harness, пока метрика не улучшится. Так Legora оптимизировала поиск инструментов, генерацию PowerPoint и воспроизведение научных статей. Один из итогов — минус 30% к стоимости агента за счёт более умного сжатия контекста (compaction) и собственной реализации поиска инструментов.

Подвох в том, что это блог Modal, то есть кейс вендора. Цифр по задержке старта, цене 2000 прогонов или доле нестабильных запусков нет. Про «30%» не сказано, на каком бенчмарке и без потери ли качества. Сам подход при этом не привязан к одной платформе: его можно повторить на другой, если она тянет тяжёлые образы и даёт настоящий Docker.

Что забрать себе:

  • Если агент трогает базы, файлы и внешние сервисы, тестируйте его в полной копии продукта, а не на моках.
  • Фиксируйте не только код, но и данные: снимок документов, прав и состояния БД делает прогоны сопоставимыми.
  • Прогревайте образы по расписанию, чтобы сброс на коммит не требовал полной сборки.
  • Запускайте несколько прогонов на кейс: агент недетерминирован, и у Legora их 5.
  • Оберните evals в CLI, чтобы агенты могли сами запускать эксперименты и улучшать harness в рамках бюджета.
Сюжет

Вопросы и ответы по материалу

Что известно по теме: почему ноутбука больше не хватает?

Старые evals рассчитывались на небольшие задачи: несколько документов в окружении, всё крутится локально. Новый агент работает внутри реалистичного проекта с тысячами документов и гигабайтами данных. Типичный эксперимент теперь выглядит так: 100 кейсов, 4 варианта harness (обвязки агента вокруг модели) и по 5 прогонов на каждый. Итого 2000 запусков, и все они должны идти одновременно. Инженер Legora Эйрик Дрэге Стин говорит прямо: 10–20 параллельных прогонов уже перегрузили бы ноутбук.

Что известно по теме: как устроено: одна песочница — один прогон?

Каждый прогон получает отдельную Modal Sandbox с кастомным образом и файловой системой. Внутри поднято всё приложение, зафиксированное на конкретном коммите. Инженеры запускают эксперименты с ноутбука, а считается всё в облаке. Legora сравнивала несколько провайдеров облачных песочниц и выбрала Modal за масштабирование, низкую задержку старта и поддержку сложных окружений: и приложение, и образ у них очень большие. Несколько приёмов, которые стоит запомнить: Состояние мира в Volumes.

Что известно по теме: что это дало и где подвох?

Платформа стала главным инструментом оценки качества агента. На ней гоняют внутренний бенчмарк BAR, набор реалистичных длинных юридических задач, и сравнивают базовые модели по качеству, стоимости и задержке. От этих результатов зависят выбор модели в проде и устройство harness. Интереснее другое: evals обернули в CLI и skill, и теперь агенты сами создают кейсы, запускают эксперименты и разбирают результаты. Большинство инженеров работает с evals через агентов.

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Единое AI-пространство · Nomad

Протестируйте новые LLM и мультимодальные модели в одном окне

Платформа Nomad AI (nomadnet.ai) даёт прямой доступ к Claude Opus 5.5, GPT-6, Gemini 3.1, DeepSeek и автономным агентам без VPN, зарубежных карт и зоопарка подписок.

Открыть Nomad AI →Автономный Nomad Agent
Что вы думаете?
Загружаем комментарии…