История изменений
Исправление KivApple, (текущая версия) :
1) Берёшь задачу, ставишь её агенту, он выдаёт какое-то решение. Затем берёшь решение и подаёшь на вход другому агенту, но уже с задачей «найди ошибки». Результат работы второго агента подаёшь на вход первого агента. Он должен либо исправить ошибки, либо выдать аргументацию, почему это false positive. Затем результат исправления снова подаётся на вход второго агента. Цикл повторяется либо пока агенты не сойдутся во мнении, что ошибок нет, либо до исчерпания бюджета времени на задачу (исходим из допущения, что самые критичные ошибки будут исправлены в первую очередь, а оставшееся будет лишь косметическими улучшениями).
2) Берёшь нескольких агентов и даёшь им одну и ту же задачу. Затем все результаты подаёшь на вход другого агента и его задача - выбрать лучшее решение.
3) Совместить 1 и 2 - на стадии выбора решения агента два. Один выбирает решение и приводит аргументы. Другой должен либо согласится, либо высказать контраргументы. Агенты зациклены, пока не придут к согласию или пока не наступит дедлайн (тогда можно в качестве tie-breaker подключить третьего агента, который должен сказать кто из спорщиков прав и выбрать одно решение).
4) N агентов генерируют решения, затем M агентов голосуют за решения, выбирается решение набравшее большинство голосов (N и M так подобраны, чтобы не могло быть ничьей, либо добавляется опять этап дискуссии, когда один агент должен переубедить другого агента, либо можно устроить второй тур выборов из финалистов первого голосования)
Неплохие результаты получаются, если спорящие агенты построены на разных ИИ моделях (например, Claude Opus + ChatGPT Codex), потому что из-за чуть разных обучающих выборок у моделей разные bias и они находят разные классы ошибок, в итоге хорошо дополняют друг-друга. Но модели должны быть +- одного уровня. Если поставить ревьюить Opus какой-нибудь DeepSeek, то результат будет хуже, чем от чистого Opus.
Всё это позаимствовано из мира людей и вполне себе применяется. Людям как и агентам для нормальной работы такой системы нужны некоторые правила (дедлайны на принятие решения, защиты от ничьих и т. д.). Система повышает шанс удачного решения, но не даёт 100% гарантий (но их вообще ничто не даёт).
Исходная версия KivApple, :
1) Берёшь задачу, ставишь её агенту, он выдаёт какое-то решение. Затем берёшь решение и подаёшь на вход другому агенту, но уже с задачей «найди ошибки». Результат работы второго агента подаёшь на вход первого агента. Он должен либо исправить ошибки, либо выдать аргументацию, почему это false positive. Затем результат исправления снова подаётся на вход второго агента. Цикл повторяется либо пока агенты не сойдутся во мнении, что ошибок нет, либо до исчерпания бюджета времени на задачу (исходим из допущения, что самые критичные ошибки будут исправлены в первую очередь, а оставшееся будет лишь косметическими улучшениями).
2) Берёшь нескольких агентов и даёшь им одну и ту же задачу. Затем все результаты подаёшь на вход другого агента и его задача - выбрать лучшее решение.
3) Совместить 1 и 2 - на стадии выбора решения агента два. Один выбирает решение и приводит аргументы. Другой должен либо согласится, либо высказать контраргументы. Агенты зациклены, пока не придут к согласию или пока не наступит дедлайн (тогда можно в качестве tie-breaker подключить третьего агента, который должен сказать кто из спорщиков прав и выбрать одно решение).
4) N агентов генерируют решения, затем M агентов голосуют за решения, выбирается решение набравшее большинство голосов (N и M так подобраны, чтобы не могло быть ничьей, либо добавляется опять этап дискуссии, когда один агент должен переубедить другого агента)
Неплохие результаты получаются, если спорящие агенты построены на разных ИИ моделях (например, Claude Opus + ChatGPT Codex), потому что из-за чуть разных обучающих выборок у моделей разные bias и они находят разные классы ошибок, в итоге хорошо дополняют друг-друга. Но модели должны быть +- одного уровня. Если поставить ревьюить Opus какой-нибудь DeepSeek, то результат будет хуже, чем от чистого Opus.
Всё это позаимствовано из мира людей и вполне себе применяется. Людям как и агентам для нормальной работы такой системы нужны некоторые правила (дедлайны на принятие решения, защиты от ничьих и т. д.). Система повышает шанс удачного решения, но не даёт 100% гарантий (но их вообще ничто не даёт).