Боты, суперботы и оркестр
Пока я занимаюсь дополнениями к SoliditySet, хочу поговорить с вами про набирающих популярность ИИ агентов для аудита кода.
В Твиттере сейчас чуть ли не каждый день появляются новые боты от частных аудиторов и компаний для проверки смарт контрактов. Даже те, кто еще в декабре-январе писали, что ИИ никогда не заменит человека и его навыков в проверке кода, сейчас уже во всю рекламируют свои решения.
Но из чего складываются подобные "решения" в большинстве случаев? Чего нужно опасаться, если решите попробовать одного из таких агентов?
Прежде всего хочется отметить, что есть "умные" разработки, и есть "тупые". Во втором случае это просто текст с указаниями (называйте его хоть промтом, хоть модным skill'ом, все равно это простая текстовая инструкция) и куча неоптимизированных вызовов в ИИ. Иногда они идут чуть дальше, делают одного главного ИИ бота, который управляет несколькими другими. Но это все такое же топорное решение.
Далее идут уже чуть более продуманные разработки таких агентов, которые могут не только посылать запросы в нейронку, но и работать с файлами и окружением на вашем компьютере. Такие агенты могут писать тесты с Foundry, запускать fv на определенные функции, и подтверждать каждую свою находку конкретным доказательством.
При запуске таких агентов, следите за тем, какие файлы и папки ему доступны на компьютере. В лучшем случае (это я уже понял для себя), лучше иметь отдельное пространство (wsl, другой ноутбук, или даже планшет на windows) для запуска таких продуктов. Чем меньше они имеют доступ к вашим персональным данным, тем лучше.
Следующим уровнем агентов являются те, которые также имеют продуманную систему вызовов в нейронные сети, хранение данных и истории изучения проекта (основная память) и кеш, а также кешированные запросы к ИИ (которые могут стоить в разы меньше обычных запросов). Вот тут начинается уже уровень профессиональных коммерческих решений. Вместо "глупых" прямых запросов: "Изучи эту функции и скажи, что тут", агент создает граф знаний проекта, определяет наличие тестов, изначальную и дополнительную информацию, которая может помочь, стоит свои собственные зависимости в проекте, может использовать AST. И самое главное, он работает с памятью и отправляет в нейросеть только конкретные моменты из кода на анализ уязвимостей.
На этот же уровень разработчики таких агентов могут добавлять внешние источники данных, как например анализ отчетов на code4rena, Solodit или даже обычные веб серфинг.
Сейчас идут также разработки агентов, которые могут собирать данные с популярных DeFi протоколов и тестировать взломы с быстрыми займами, ликвидациями и т.д. И это уже будет абсолютно новый уровень агентов ИИ.
Что же касается их действительной эффективности, то мы мало, что может сказать на этот счет на данный момент. Каждый разработчик таких систем работает либо со своими собственными бенчмарками, либо своими другими внутренними тестами. Нет такой общей платформа как lmarena или c4 для агентов, которые позволяли бы открыто и независимо валидировать находки таких агентов.
Хотя кто знает, может такие варианты скоро и появятся...
Если вы работаете над своим собственным агентов, то не делайте "тупые" системы. Подумайте над системой пямяти, написания тестов в локальной среде и использования разных нейронных сетей для разных задач.
#agent
Post #1579
633
- 👍 8
- ❤ 1