Telegram Group & Telegram Channel
Gödel Agent: A Self-Referential Agent Framework for Recursive Self-Improvement
Xunjian Yin, Xinyi Wang, Liangming Pan, Xiaojun Wan, William Yang Wang
Статья: https://arxiv.org/abs/2410.04444
Репа: https://github.com/Arvid-pku/Godel_Agent

Why did the Gödel Agent take so long to plan its road trip in its Gödel Machine?

Because its navigation system kept recursively self-improving, proving it could find a better route, but never actually getting to the destination!



Любопытная работа про эволюционирующих агентов, вдохновлённых Шмидхуберовской Машиной Гёделя (https://arxiv.org/abs/cs/0309048) 2003 года. Машина пыталась сначала формально доказать, что изменение ведёт к улучшению (что могло требовать примерно вечность), агент вместо формальных доказательств использует эмпирический фидбек из среды и просит LLM улучшить код на базе этого фидбека. По ощущению похоже на что-то типа AutoGPT, который ещё и код свой переписывает.

Идея в том, что агенты бывают разной породы. Первые, Hand-Designed Agents с самой низкой степенью свободы, следуют одной и той же полиси всё время, вне зависимости от фидбека из среды. Другие, известные как Meta-Learning Optimized Agents, имеют фиксированный алгоритм meta-learning, обновляющий их полиси по фидбеку из среды. И есть self-referential Gödel Agent, который может улучшать себя без ограничений. Технически это значит, что он обновляет и полиси, и алгоритм мета-обучения.

Для такого агента нужно задать начальные полиси и алгоритм мета-обучения. В качестве начальной полиси взята LLM с Chain-of-Thought промптом. А в качестве второго взят алгоритм, который рекурсивно запрашивает LLM для переписывания всей своей кодовой базы с учётом фидбека из среды (успешность решения задачи). При этом он может переписать и код, отвечающий за переписывание кода, поэтому он self-referential.

Агент -- это экземпляр конкретного питоновского класса (Agent), он имеет доступ к содержимому памяти питоновской среды (локальные и глобальные переменные, функции и модули) и может динамически там всё менять, включая свой код (monkey patching). Так он и эволюционирует, насколько я понял.

Для улучшения сходимости оптимизационного процесса агенту даны дополнительные тулы: 1) thinking before acting (кажется, похоже на ReAct), 2) error handling (добавлен механизм восстановления после ошибок, ибо LLM может всякого в код навставлять), 3) code running (Python и bash), 4) LLM calling (через API). Первые два дальше покажут наибольшую пользу.

Где-то в обзорах в сети проскакивало, что агент сначала проверяет, что новые изменения ведут к улучшению, и включает новый код только если они ведут, или что он делает backtrack назад к предыдущему хорошему решению в случае, когда результат оказался хуже. Но по статье этого не видно, более того, там явно есть примеры, когда результат сначала ухудшался, а потом агент таки навёрстывал. Код я посмотрел только поверхностно, и мне кажется, что ничего упомянутого тут нет и агент ориентируется только по истории. Но могу и ошибаться, так что если кто погрузится глубже и найдёт что-то интересное, расскажите. Вообще есть чувство, что всё больше обзоров начинают генериться NotebookLM или просто GPT, и оно не всегда соответствует реальности.

Потестили на бенчмарках DROP, MGSM, MMLU, GPQA. Бейзлайны из группы Hand-Designed Agents (CoT, CoT-SC, Self-Refine, LLM Debate, Step-back-Abs, Quality-Diversity, Role Assignment) и Meta-Learning Optimized Agents (Meta Agent Search).

Дефолтный гёделевский агент ограничен, ему запрещено менять модель (gpt-3.5-turbo) и у него нет доступа к интернету. Как я понял, для самоулучшения используется gpt-4o, а gpt-3.5-turbo -- для оценки уже оптимизированной полиси. Есть неограниченный вариант, которому можно фсё.

Ограниченный гёделевский агент побил всех. Где-то сильно (DROP, MGSM), а где-то лишь слегка (GPQA). В приложении есть код для найденных полиси, можно изучить, насколько далеко он ушёл от начального CoT. Неограниченный агент побил всех ещё больше, но во многих случаях за счёт перехода на более мощную модель 🙂



group-telegram.com/gonzo_ML/2964
Create:
Last Update:

Gödel Agent: A Self-Referential Agent Framework for Recursive Self-Improvement
Xunjian Yin, Xinyi Wang, Liangming Pan, Xiaojun Wan, William Yang Wang
Статья: https://arxiv.org/abs/2410.04444
Репа: https://github.com/Arvid-pku/Godel_Agent

Why did the Gödel Agent take so long to plan its road trip in its Gödel Machine?

Because its navigation system kept recursively self-improving, proving it could find a better route, but never actually getting to the destination!



Любопытная работа про эволюционирующих агентов, вдохновлённых Шмидхуберовской Машиной Гёделя (https://arxiv.org/abs/cs/0309048) 2003 года. Машина пыталась сначала формально доказать, что изменение ведёт к улучшению (что могло требовать примерно вечность), агент вместо формальных доказательств использует эмпирический фидбек из среды и просит LLM улучшить код на базе этого фидбека. По ощущению похоже на что-то типа AutoGPT, который ещё и код свой переписывает.

Идея в том, что агенты бывают разной породы. Первые, Hand-Designed Agents с самой низкой степенью свободы, следуют одной и той же полиси всё время, вне зависимости от фидбека из среды. Другие, известные как Meta-Learning Optimized Agents, имеют фиксированный алгоритм meta-learning, обновляющий их полиси по фидбеку из среды. И есть self-referential Gödel Agent, который может улучшать себя без ограничений. Технически это значит, что он обновляет и полиси, и алгоритм мета-обучения.

Для такого агента нужно задать начальные полиси и алгоритм мета-обучения. В качестве начальной полиси взята LLM с Chain-of-Thought промптом. А в качестве второго взят алгоритм, который рекурсивно запрашивает LLM для переписывания всей своей кодовой базы с учётом фидбека из среды (успешность решения задачи). При этом он может переписать и код, отвечающий за переписывание кода, поэтому он self-referential.

Агент -- это экземпляр конкретного питоновского класса (Agent), он имеет доступ к содержимому памяти питоновской среды (локальные и глобальные переменные, функции и модули) и может динамически там всё менять, включая свой код (monkey patching). Так он и эволюционирует, насколько я понял.

Для улучшения сходимости оптимизационного процесса агенту даны дополнительные тулы: 1) thinking before acting (кажется, похоже на ReAct), 2) error handling (добавлен механизм восстановления после ошибок, ибо LLM может всякого в код навставлять), 3) code running (Python и bash), 4) LLM calling (через API). Первые два дальше покажут наибольшую пользу.

Где-то в обзорах в сети проскакивало, что агент сначала проверяет, что новые изменения ведут к улучшению, и включает новый код только если они ведут, или что он делает backtrack назад к предыдущему хорошему решению в случае, когда результат оказался хуже. Но по статье этого не видно, более того, там явно есть примеры, когда результат сначала ухудшался, а потом агент таки навёрстывал. Код я посмотрел только поверхностно, и мне кажется, что ничего упомянутого тут нет и агент ориентируется только по истории. Но могу и ошибаться, так что если кто погрузится глубже и найдёт что-то интересное, расскажите. Вообще есть чувство, что всё больше обзоров начинают генериться NotebookLM или просто GPT, и оно не всегда соответствует реальности.

Потестили на бенчмарках DROP, MGSM, MMLU, GPQA. Бейзлайны из группы Hand-Designed Agents (CoT, CoT-SC, Self-Refine, LLM Debate, Step-back-Abs, Quality-Diversity, Role Assignment) и Meta-Learning Optimized Agents (Meta Agent Search).

Дефолтный гёделевский агент ограничен, ему запрещено менять модель (gpt-3.5-turbo) и у него нет доступа к интернету. Как я понял, для самоулучшения используется gpt-4o, а gpt-3.5-turbo -- для оценки уже оптимизированной полиси. Есть неограниченный вариант, которому можно фсё.

Ограниченный гёделевский агент побил всех. Где-то сильно (DROP, MGSM), а где-то лишь слегка (GPQA). В приложении есть код для найденных полиси, можно изучить, насколько далеко он ушёл от начального CoT. Неограниченный агент побил всех ещё больше, но во многих случаях за счёт перехода на более мощную модель 🙂

BY gonzo-обзоры ML статей


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/gonzo_ML/2964

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

In addition, Telegram's architecture limits the ability to slow the spread of false information: the lack of a central public feed, and the fact that comments are easily disabled in channels, reduce the space for public pushback. "We're seeing really dramatic moves, and it's all really tied to Ukraine right now, and in a secondary way, in terms of interest rates," Octavio Marenzi, CEO of Opimas, told Yahoo Finance Live on Thursday. "This war in Ukraine is going to give the Fed the ammunition, the cover that it needs, to not raise interest rates too quickly. And I think Jay Powell is a very tepid sort of inflation fighter and he's not going to do as much as he needs to do to get that under control. And this seems like an excuse to kick the can further down the road still and not do too much too soon." These entities are reportedly operating nine Telegram channels with more than five million subscribers to whom they were making recommendations on selected listed scrips. Such recommendations induced the investors to deal in the said scrips, thereby creating artificial volume and price rise. "Markets were cheering this economic recovery and return to strong economic growth, but the cheers will turn to tears if the inflation outbreak pushes businesses and consumers to the brink of recession," he added. Just days after Russia invaded Ukraine, Durov wrote that Telegram was "increasingly becoming a source of unverified information," and he worried about the app being used to "incite ethnic hatred."
from us


Telegram gonzo-обзоры ML статей
FROM American