Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!
  • Реклама на форуме платная! Обращаться к Admin.
    Произошла смена домена с maza.one на maza1.top!!!

Небольшой опыт работы с Replit AI (агент v2) как у опытного разработчика

  • Автор темы Автор темы admin
  • Дата начала Дата начала

admin

President of the MC Mazafaka
Команда форума
LV
0
 
Регистрация
Окт 16, 2022
Сообщения
1,233
Реакции
214
Награды
2
У меня больше 20 лет опыта в написании кода и развертывании приложений, и Replit/Agent v2 просто потрясающий. Удивительно, как много можно сделать за несколько часов с этой технологией.

Я перепробовал все, что смог найти и попробовать к настоящему моменту: Cline, Roo, Cursor, Localforge, Aider, Replit, Claude (Code), GPT, Gemini и т.д. Мой опыт примерно одинаков со всеми ними с точки зрения "интеллекта"; те, у кого интегрированный IDE-редактор, намного полезнее; когда нет интеграции с IDE, это очень "черный ящик", и когда возникают проблемы, на их исправление уходит гораздо больше времени, судя по моему опыту.

С Replit, который, очевидно, является IDE с ИИ, я создавал приложения, на которые раньше уходила неделя или около того, а теперь несколько часов. НО... Это, в основном, моя максимальная выгода от этого (не точная наука); как только вещи вырастают за пределы тривиального приложения, агент/ассистент действительно начинает испытывать трудности. Это не уникально для Replit, у всех так, приходится все больше и больше "водить за ручку", пока не дойдешь до момента, когда это "ведение за ручку" просто тратит твое время, и в итоге у тебя код хуже, чем ты бы написал вручную, и на работу с ним уходит больше времени.

Так что сейчас есть некий предел эффективности; когда я вижу приложения, быстро запускаемые с помощью replit, типа "заставить ИИ сделать xxx", у которых есть лендинг (одна страница), stripe для оплаты токенов и одностраничная панель для загрузки/вставки чего-либо, что приводит к ответу ИИ, но также немного более сложному, чем это, я вижу приложения, которые находятся *до* или как раз на этом пределе. Это здорово и удивительно, что это возможно.

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

Простой пример из реальной жизни; мне нужно было, чтобы какой-то div на какой-то странице прокручивался, и я попросил об этом, ассистент (после этого я попробовал тот же самый случай в Agent, но результат был тот же) изменил кучу не связанных вещей, и прокрутки не было. Поэтому я сказал: что это не работает и текущее/предыдущее поведение (то же самое), и он сказал: "Я вижу, что у пользователя проблемы с прокруткой SomePage", что было а) не div б) не та страница, на которой мы были. Поэтому я все объяснил еще раз, и он снова сделал изменения, которые не сработали. Иногда я просто хочу знать, *сможет* ли кто-то без опыта кодирования закончить это, поэтому я настаиваю; я видел, в чем проблема (это было тривиальное добавление класса tailwind 1), но продолжал пытаться заставить агента/ассистента исправить это, как будто я ничего не знаю. Поэтому я попробовал *все*; реализовал div с помощью javascript, чтобы прокручивать его, переписывал его много раз "давайте начнем с чистого примера, который точно сработает" (он не сработал). Так что ничего не сработало после 1 часа попыток.

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

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

Моя претензия к Replit;

Следствием этого, и у меня есть тысячи примеров только из replit, является то, что когда проект выходит за пределы этого предела, даже когда (я всегда делаю, даже когда начинаю, привычка) вы включаете точные файлы, которые он должен исправить/проверить/использовать, очень часто я прошу его изменить X, и, независимо от того, правильно он меняет X или нет, он также изменит другие вещи, о которых я не просил, фактически нарушая предыдущую функциональность, а затем говорит "Готово, контрольная точка" слишком часто. Не готово, мы ничего не исправили; хуже того, вы сломали вещи, о которых я не просил. Эй, я понимаю, что если X и Y сильно переплетены, и вы пытаетесь исправить X, вы можете сломать Y, но я говорю не об этом; он ломает Y *даже*, если он полностью отделен от X; можно увидеть, как он рассуждает типа "давайте изменим Y". Но кто тебя просил? Так что там происходит какая-то агентская галлюцинация и сжатие, что просто очень неприятно.

Решение? Я не уверен, но что бы помогло, так это если бы можно было пометить включенные файлы значком чтения/записи или чем-то подобным, чтобы агент/ассистент *не мог* записывать другие файлы, кроме тех, которые вы включили как доступные для записи (которые могут быть по умолчанию, как сейчас), и что-то, чтобы не разрешать запись ни во что, кроме включенных файлов.

Я бы не рискнул строить на этом компанию на данный момент, но, похоже, не так уж далеко до того, чтобы llm проверял разговор, чтобы увидеть, изменилась ли тема существенно, поэтому, если вы все еще говорите об одной и той же функции, а llm не исправил ее или сломал ее значительно, вы не получите счастливое "Готово! Контрольная точка!"

Или, конечно, просто сделайте Cursor; сделайте очередь после того, как ваши кредиты закончатся, и вы не хотите платить за использование.

Я вижу, что другие тоже жалуются на это, здесь и на youtube и т.д. Я думаю, это нужно исправить; я не вижу будущего для таких инструментов, если вам приходится платить за, по сути, дерьмо. Сейчас это еще нормально, так как мы все еще в начале цикла; инструменты вокруг этого созревают, и это очень полезно, а иногда и потрясающе, но когда это не так, это разочаровывающая рутина/цикл исправления, хуже, чем писать самому. И для меня это та самая точка отсечения, когда я просто переношу проект в github, открываю vs code и продолжаю сам. Обычно это происходит через 1-2 дня использования Replit для чего-то нового.

Источник
 
Кстати, точно такая же фигня, да, можно сделать макет, но не более.
Ваше мнение по поводу ИИ в кодинге?
 

Пинг форума и аптайм

Averaged results for https://maza.one

uptime counter
Назад
Сверху