Протогоны: искины, которые делают искинов

Думаю, что те, кто активно пользуется AI, не раз сталкивались с таким явлением, как «галлюцинации». Это когда AI начинает выдавать в качестве ответов свои фантазии. Происходить это может в том случае, когда ему не хватает данных по какой-то специфической теме.

Сейчас благодаря встроенному веб-поиску такое происходит реже, но тем не менее. Да и если AI не обладает знаниями по конкретной теме, то его ответы будут так себе, даже если он не галлюцинирует.

Как обходить это слабое место — тоже не секрет. Добавляется более точная информация по теме — «контекст» — и даются более четкие системные инструкции самому AI. Думаю, что те, кто создавал «гемы» в гугловской Gemini или кастомные AI на основе ChatGPT, уже догадались, о чем идет речь. Там есть возможность прописать инструкции для AI и добавить до десяти файлов в контекст.

Для тех, кто не пробовал подобные функции, поясню на простом примере. Скажем, вы подготовили текст статьи для соцсети. AI неплохо справляются с проверкой ошибок. В контекстном окне вы пишете: «проверь грамматику и синтаксис текста, стилистику не меняй», — и потом копируете уже сам текст. Так вот, чтобы не писать каждый раз в окне инструкцию, что делать с текстом, вы делаете кастомного «искина», которому прописывается инструкция: «проверь грамматику и синтаксис текста, стилистику не меняй».

Это самый простой случай, такие системные инструкции, или «системные промпты», могут быть намного более детальными и с примерами. По сути, это аналог служебной инструкции.

О том, что под конкретные задачи стоит создавать вот такие кастомные «искины», я понял где-то весной, когда стал активно использовать Notebook LM для помощи с тест-кейсами. Этот гугловский сервис позволяет собирать разноформатные документы — тот самый контекст — и работать только с ними. В начале августа созрела концепция экосистемы AI, о которой и пойдет речь ниже.

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

Функционал и концепция экосистемы

Ключевые функции экосистемы:

  • управление полным жизненным циклом создания нового AI-агента на основе цели, заданной пользователем. Система автоматизирует сбор контекста, проектирование поведения, семантическую оптимизацию и контроль качества, то бишь тестирование;
  • усовершенствование существующих версий AI, созданных с помощью фреймворка ранее, включая «базовых» агентов.

Архитектура состоит из пяти специализированных агентов:

  • Preprocessor: Инженер по данным, который собирает и структурирует информацию.
  • Instructor: Архитектор поведения, который проектирует ключевые инструкции для AI.
  • Umberto: Коммуникационный стратег, который проверяет смысловую компоненту, ясность инструкций и определяет стратегии промптов.
  • OTK: Инженер по качеству, который тестирует конечный продукт.
  • Arbiter: Системный консультант, который предоставляет мета-уровневую экспертизу по архитектуре и технологиям всего фреймворка.

Эту пятерку «базовых» AI я назвал «протогонами», так как они являются основными в экосистеме, которая в перспективе будет состоять из десятков агентов, созданных ими. Впрочем, про имена чуть позже.

Детальные описания «протогонов»

Preprocessor выступает в роли модуля сбора первичных данных для формирования контекста. Его основная функция — создание базы знаний, или «файла контекста», для нового AI. Он принимает на вход тему, URL-адреса или документы и выдает на выходе структурированный текст в заданном формате (например, JSON-файл), содержащий терминологию, ключевые факты, сущности и полные тексты источников. Это обеспечивает то, что новый AI-агент будет работать на основе релевантной и проверенной информации.

Instructor — агент, ответственный за создание «личности» и операционных правил нового AI. Он принимает запрос пользователя и файл контекста от Preprocessor для генерации детальной системной инструкции (system prompt). Эта инструкция определяет назначение AI, его возможности, тон общения, ограничения и этические рамки.

Названный в честь культуролога, писателя и семиотика Умберто Эко, Umberto — это мета-агент, выполняющий роль консультанта по коммуникациям. Он анализирует системную инструкцию от Instructor и контекст от Preprocessor для выявления потенциальных двусмысленностей, скрытых предубеждений или неясных формулировок. Опираясь на принципы семиотики (науки о знаках и знаковых системах), он дает рекомендации, чтобы обеспечить максимальную ясность и эффективность инструкций, улучшая то, как конечный AI будет интерпретировать свои команды. Он также дает рекомендации по стратегиям запросов для дальнейшего диалога с AI.

OTK («отдел технического контроля») — это финальное звено в конвейере: контроль качества. После того как AI-агент сгенерирован, OTK разрабатывает и выполняет серию тестов для проверки его производительности. Он генерирует синтетические тесты на основе контекста и целей AI (например, задает вопросы по фактам из исходных материалов). Он также помогает оператору-человеку, предоставляя шаблоны и предложения для создания более сложных, реалистичных тестовых сценариев на основе экспертизы пользователя. Результаты собираются в отчет, который используется для дальнейших улучшений.

Arbiter выполняет роль системного консультанта и мета-архитектора всей экосистемы. Его функция — не участие в цикле создания или улучшения, а стратегическая экспертиза на всех этапах. Арбитр помогает в выборе моделей, базовых технологий и фреймворков, которые актуальны на текущий момент, оценивает архитектурные решения, предлагает улучшения для рабочего процесса. Он также предоставляет актуальную информацию о передовых моделях, технологиях, методах в области AI. По сути, Арбитр выступает в роли внешнего технического эксперта, обеспечивающего соответствие системы лучшим практикам и ее долгосрочное развитие.

Развитие экосистемы

Развитие экосистемы планируется в несколько этапов. На первом этапе экосистема использует несколько лучших в своем классе внешних инструментов для эффективного выполнения своих функций:

  • Первичный поиск: Perplexity AI и режимы Deep Research от Google используются для начального широкого поиска и сбора информации.
  • Агрегация данных: Google NotebookLM применяется как контролируемая среда, где оператор-человек может агрегировать, просматривать и курировать источники, собранные на этапе исследования, перед их «скармливанием» Preprocessor’у.
  • Базовые LLM: Пока все это будет крутиться на Gemini от Google и GPT от OpenAI.

В самом начале я дал задание Gemini Pro 2.5 сгенерировать системный промпт для Instructor. Потом уже с помощью Instructor были сгенерированы системные инструкции для остальных.

Как я уже сказал выше, пока все это будет крутиться на общедоступных сервисах. По мере «взросления» экосистемы и обработки значительного количества задач она будет генерировать наборы данных о предметных областях, создании запросов, семантической оптимизации и тестировании. Среднесрочная цель заключается в использовании этих данных для создания RAG и последующего дообучения более компактных open-source моделей по мере того, как для этого появится возможность. Это приведет к созданию узкоспециализированных, проприетарных моделей для роли каждого агента. Например, Instructor может быть дообучен на наборе данных из тысяч успешных системных инструкций, что сделает его быстрее и потенциально эффективнее в своей конкретной задаче, чем модель общего назначения.

Этот переход от зависимости от внешних API к локальному развертыванию кастомных моделей является конечной целью создания действительно независимой и оптимизированной «фабрики» по генерации AI. Попутно будут еще и набраны данные для доменов знаний, в которых я работаю профессионально.

Пока у «протогонов» есть только системные инструкции. Сейчас я собираю первую версию контекста для Preprocessor, чтобы с его помощью создать первые версии контекстов для «протогонов». С другой стороны, ожидание не мешает уже использовать экосистему для создания агентов под конкретные задачи. Для работы уже есть QA Adviser, в контекст которого в том числе был загнан силлабус ISTQB (международная сертификация тестировщиков) и некоторые документы по тестированию API.

Еще один пример. С конца июля я привожу в порядок свои старые текстовые блоги и думаю, что делать с игровым ютуб-каналом, на котором сейчас наблюдается стагнация по росту аудитории. Для работы над этой задачей уже есть Media Strategist и SEOnist. Первый будет советовать, что делать в принципе, а второй — помогать прописывать сниппеты для Google, теги и прочие SEO-шные «прибамбасы».

Последний пример касается литературы. Для работы над следующим романом или группой рассказов — очень подмывает вернуться к замыслу коротких текстов «Байки Магистрали» — будет сделан целый зоопарк «искинов». Скажем, каждый персонаж будет сделан в форме AI-агента. Чтобы описать сцену диалога, делаем агента, который будет «смотреть» на собеседников со стороны и описывать их мимику, жесты и прочее. Еще один агент будет обрабатывать текст в определенном стиле.

Вот как-то так. Не знаю, насколько эта концепция свежа, но, может быть, она кому-то пригодится.

Теперь немного об именах «базовых» «искинов» экосистемы. В орфической космогонии Протогон — это божество-демиург, порожденный Хроносом. В моем рассказе «Джем-тестер» протогонами называли первое поколение «искинов», которые создавали Сайберглоб, кибернетическое пространство следующего после интернета поколения. После создания первой версии Сайберглоба восемь из одиннадцати протогонов были уничтожены, но троим удалось проникнуть в сеть, где они впоследствии эволюционировали. Арбитр — это герой моего первого романа «Хаос-генератор». Персональный искин Чеширского Кота, экс-гейткипера, который создал протокол, после запуска которого искины-полиморфы обрели самосознание. В чем была суть модифицирующего алгоритма, знали только сам Чешир и Арбитр.

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

Leave a Reply