Перейти к основному содержанию
Обложка: Создание доверяемых агентных рабочих процессов с
ИИ-гайды

Создание доверяемых агентных рабочих процессов с

💡 О чём гайд
Гайд объясняет, почему важен механизм работы агента, а не только результат. Вы узнаете, как Elicit использует DSL (Ash PL) для создания воспроизводимых рабочих процессов с тремя ключевыми требованиями: понятностью для людей и других агентов (legibility), сохранением целостности при итерациях (fidelity) и точным выполнением плана (faithful execution). Система строится на Event Sourcing, кэшировании результатов и интеграции куратора, который пишет и переделывает код.
📢 Больше разборов — в канале «ИИ для чайников»

Самое большое собрание ИИ-гайдов в рунете

Каждый день — новый разбор. Забирай полностью и применяй.

DSL (Ash PL) — чисто функциональный язык без циклов и рекурсии, но с доменно-специфичными примитивами (поиск статей, клинических trials)
Три требования: legibility (понятность), fidelity (целостность при изменениях), faithful execution (точное выполнение)
Event Sourcing для управления состоянием: каждое изменение записывается в append-only лог
Кэширующее хранилище (Content Address Store) запоминает результаты выражений, избегая пересчётов
Демонстрация: картографирование 1000+ компаний и институтов в области фундаментальных моделей биологии
Компромисс: медленнее, чем генератор ответов, но надежнее и проверяемее

Почему механизм имеет значение

Два системы могут выдать идентичный результат, но уровень доверия к ним будет разным в зависимости от внутреннего процесса. Например, вывод от устаревшей модели и от современной системы, использующей критику и переработку, воспринимаются по-разному. Механизм — это дизайнерский выбор, который зависит от задачи, домена и пользователя. Когда вы инвестируете в проектирование механизма, вы создаёте реальное доверие, отличая ваш продукт от простого генератора ответов.

Три ключевых требования к процессу

При разработке исследовательского агента Elicit выделила три основных критерия:

  • Legibility (понятность). Процесс должен быть ясным для людей и других агентов (например, для критики). Это значит, что код должен быть прозрачен и легко проверяем.
  • Fidelity (сохранение целостности). Добавление новых шагов или направлений в работу не должно приводить к «дрейфу» от первоначальной цели пользователя. Итерации должны сохранять исходный смысл.
  • Faithful execution (точное выполнение). Система обязана строго следовать утверждённому плану действий без отклонений.

Эти требования привели к созданию предметно-ориентированного языка (DSL).

Ash PL: DSL для агентных рабочих процессов

Ash PL — это специальный язык для агентных рабочих процессов в Elicit, ориентированный на научные исследования и принятие решений.

Отличительные черты:

  • Неполный по Тьюрингу. Нет циклов, рекурсии, мутации. Это чисто функциональный реактивный язык, что обеспечивает предсказуемость.
  • Ограниченное подмножество Python. Убраны ненужные возможности, добавлены доменно-специфичные примитивы (поиск академических статей, клинических trials).
  • Статическая типизация. Позволяет быстро находить ошибки и перерабатывать код.

Пример: программа на Ash PL может описывать процесс конкурентного анализа — поиск в сети, объединение результатов, обогащение источников.

Архитектура: интеграция Ash PL

Система построена вокруг цикла «написание → интерпретация → переработка» кода на Ash PL.

Ключевые компоненты:

  • Пользовательский интерфейс (UI) — взаимодействие с пользователем.
  • Журнал событий (Event Log) — append-only лог для управления состоянием (паттерн Event Sourcing).
  • Куратор (Curator) — компонент, который пишет и перерабатывает код на Ash PL, используя лучшие доступные модели (например, Claude через Pi).
  • Песочница (Sandbox) — среда для куратора.
  • Python-сервис — интерпретирует и выполняет код на Ash PL.
  • Шлюз (Gateway) — централизованная точка для безопасного взаимодействия с API LLM.
  • Кэширующее хранилище (Content Address Store) — ключевой элемент производительности. Позволяет хэшировать и запоминать результаты выражений, избегая пересчётов при каждой интерпретации всей программы.

Демонстрация: картографирование исследовательского ландшафта

Запрос: «Картографировать компании и институты, инвестирующие в фундаментальные модели для биологии».

Процесс, управляемый Ash PL:

  1. Уточнение задачи у пользователя (широкий ландшафт vs. конкретика).
  2. Последовательное выполнение шагов: поиск академических статей, веб-поиск, фильтрация, обогащение данных.
  3. Создание артефакта — итоговой таблицы с организациями и их атрибутами (созданные модели, модальности, коллаборации).

Как обеспечивается доверие:

  • Просмотр кода Ash PL для каждого артефакта обеспечивает проверяемость.
  • Визуализация процесса: графическое представление шагов, автоматически генерируемое из Ash PL.
  • Итеративное развитие: пользователь добавляет новые слои анализа на естественном языке. Система расширяет исходную программу, но благодаря кэшированию ранее вычисленные части не пересчитываются.

Выводы и рекомендации

DSL — не универсальное решение, а инструмент, который стоит выбирать, если ваши цели совпадают с требованиями: прозрачность, целостность, надежность.

Что нужно учесть при реализации подобной системы:

  1. Создание DSL (желательно на основе популярного языка).
  2. Эргономика для агента (обертка для смены моделей и harness).
  3. Обработка прерываний (возможность добавлять новые запросы без остановки процесса).
  4. Восстановление сессий (rehydration).
  5. Изоляция credentials (безопасность).
  6. Управление выводом моделей (парсинг, обработка).
  7. Управление состоянием (Event Sourcing).
  8. Инвестиции в оценку (eval) — критически важно в сложных динамических системах.

Главный посыл: Инвестируйте в проектирование механизма работы вашей системы. Именно детальный, проверяемый и воспроизводимый процесс создает реальное доверие у пользователей.

Понравился разбор?

В канале «ИИ для чайников» — новый гайд каждый день

Перейти в канал

Создание доверяемых агентных рабочих процессов требует инвестиций в механизм, а не только в результаты. DSL и Ash PL показывают, что правильный выбор языка, Event Sourcing и кэширование создают систему, которую люди могут проверить, понять и которой можно доверять — это основа для масштабируемых, надежных агентных систем.

Часто задаваемые вопросы

DSL гарантирует три вещи: процесс понятен людям (legibility), добавление новых шагов не нарушает исходную цель (fidelity), система точно выполняет план (faithful execution). Агент без ограничений может дрейфовать от цели или выдать непроверяемый результат, что опасно в критичных областях.
Ash PL — функциональный язык без циклов, рекурсии и мутации, ориентированный на научные исследования. Отсутствие этих возможностей гарантирует предсказуемость вычислений, конечность выполнения и упрощает анализ и верификацию кода.
Кэширующее хранилище (Content Address Store) хэширует результаты выражений и запоминает их. При переинтерпретации программы ранее вычисленные части не пересчитываются благодаря кэшу, что значительно ускоряет добавление новых слоёв анализа.
Elicit фокусируется на глубине, качестве и надежности, что требует больше времени, чем быстрый генератор ответов. Это не подходит для задач, где скорость критичнее доверия. Выбирайте DSL, если вам нужна прозрачность и верификуемость.

Скачать гайд

Полная версия с примерами и подробными инструкциями.

📢 ИИ для чайников