Некоторые искусственные интеллекты (ИИ) способны менять программы и инструкции, по которым работают, чтобы улучшить результаты. Но такие правки могут вносить ошибки, а проверка неудачных изменений отнимает ресурсы. Группа учёных из Виргинского университета, Microsoft Research и Университета Цинхуа разработала программу прогнозирования, которая помогает ИИ-агентам предвидеть последствия предлагаемых правок ещё до тестирования изменённого кода. Статья опубликована на сервере препринтов arXiv.

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

В основе метода - система HyperAgents, объединяющая два ИИ-компонента. Первый выполняет задачи, второй изменяет код и инструкции, которыми пользуются оба. Предыдущие версии и их результаты сохраняются в архиве, чтобы учитывать их при следующих изменениях.

Новый компонент - модель динамики улучшений - анализирует предлагаемую правку, изменяемого агента и прошлые результаты. Она предсказывает исход для каждой задачи, различая неверные ответы и попытки, которые не завершились. Это важно: неверный ответ может требовать лучших рассуждений, а незавершённая попытка - исправления программы.

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

В одном из примеров правка вынесла инструкции за кавычки, что сломало программу. Агент-модификатор заметил ошибку, но исчерпал доступные вызовы инструментов до исправления. Прогнозист предсказал незавершённые задачи, что побудило к повторной доработке. После исправления кавычек и проверки синтаксиса обновлённый агент выполнил 11 задач.

Исследователи провели по пять запусков с 40 раундами улучшений для каждого условия эксперимента. Подход с прогнозированием быстрее создавал более сильных агентов-программистов, чем HyperAgents. На 166 задачах по программированию, отделённых от процесса улучшения и отбора, отобранные агенты показали медианную успешность около 30% против 22% у HyperAgents и 16% у общего стартового агента. Успех означал создание программной заплатки, проходящей тесты для конкретной задачи.

При сравнении с равными бюджетами на токены языковой модели (единицы текста, обрабатываемые или генерируемые) подход с прогнозированием сохранил преимущество. Учитывались токены на изменение, прогнозирование, обновление прогноза и оценку задач, но общие вычислительные затраты не измерялись.

Программа прогнозирования тоже может улучшаться. Каждые пять раундов система предлагает обновления и сверяет их предсказания с последующими записанными результатами, прежде чем решить, принимать ли их. Команда также проверила, можно ли перенести полученный опыт на новые задачи. Прогнозист, обученный совместно на предсказании принятия статей и разработке вознаграждений для симулированных роботов, применили к оценке математических решений. На 100 невиданных задачах оценки отобранные агенты точно совпадали с экспертными оценками в медиане 55% случаев. Агенты со свежим прогнозистом достигали 51%, а с HyperAgents - 47%.

Эти результаты не доказывают, что ИИ-агенты могут заменить людей-рецензентов, оценщиков или программистов. Они лишь предполагают, что прогнозирование помогает агентам находить полезные изменения в программах, а опыт таких предсказаний может пригодиться при улучшении на другой задаче.

Источник: Tech Xplore