Почему мне не понравилась нейросеть Codeium: кажется, она больше мешает

Сейчас многие компании пытаются внедрять ИИ-помощники в среды разработки в надежде упростить работу программистам и повысить эффективность работы. В начале этого года у нас провели пилотное тестирование бесплатной Codeium. Нейросеть использовалась из коробки (без дообучения). В статье расскажу про использование Codeium при разработке на C# в Visual Studio 2022(продуктовый код и тесты). За месяц использования работоспособность Codeium мне не понравилась и вот почему.

Понимание контекста

Создается ощущение, что нейросеть смотрит только в контексте текущего файла. Неправильно советует использовать поля и методы (публичные !) из других классов, просто генерирует рандомные имена. Не умеет работать со сторонними библиотеками. 

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

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

[Test]
public void Test_1()
{
    ...
}

// Ставлю курсор здесь и получаю рекомендацию от Codeium
Test_2();

[Test]
public void Test_2()
{
    ...
}

Качество сгенерированного кода

Что касается синтаксического сахара: советует что-то из более старых стандартов языка. После принятия сгенерированного кода приходится его редактировать, это занимает время.

Скорость работы

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

Часто не может предложить варианты вообще.

Раздражает, что после установки расширения Codeium в Visual Studio наблюдались небольшие тормоза. После удаления Codeium среда разработки снова работает как обычно.

Дообучение нейросети

Создатели Codeium обещают повышение качества генерируемого кода за счет дообучения нейросети. Тут есть два варианта, и к каждому из них есть вопросы:

Есть одна вещь, которая реально понравилась

Единственное, на чем экономишь время с использованием Codeium: нейросеть отлично автодополняет комментарии (на русском и английском). И для меня это все. Но ради этого устанавливать Codeium, думаю, не стоит :) Помню, на прошлой работе использовали ReSharper, который тоже отлично с этим справлялся.

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

@AnROm
24.07.2024 21:28 UTC
Первоисточник

Комментарии

@nakirrrr
24.07.2024 17:20 UTC
0

попробуй https://www.codefy.ai/ .

@milssky
24.07.2024 17:40 UTC
+2

Вы бы предупредили, что реферальную ссылку дали. Так хоты бы было бы честно.

@AnROm
24.07.2024 17:48 UTC
-1

Действительно, ссылка некорректная, исправила. Спасибо, закешировалась в браузере.

@gudvinr
24.07.2024 18:04 UTC
0

Codeium довольно сносно предлагает дополнения для обработки енумов, если они все одинаковые, вроде case ENUM-VALUE_1: return "VALUE_1";

Из того же, всякие стандартизированные вещи типа кодов ответа HTTP или MIME типов

Но даже в этом случае все равно приходится исправлять ответы, потому что порой выдумывает несуществующие сущности

А вот когда дело касается логики, то подсказки наоборот чаще мешают, потому что они вставляются посреди кода, а угадывают то, что хочется сделать, не так уж и часто

@Homyakin
24.07.2024 20:40 UTC
+2

А я как раз буквально пару недель назад начал пользоваться

Неправильно советует использовать поля и методы (публичные !) из других классов, просто генерирует рандомные имена.

С одной стороны недостаток, а с другой, подсказывает какой лучше контракт реализовать, мне даже помогло несколько раз. Не серебряная пуля, но неплохой помощник, как мне кажется.

@AnROm
25.07.2024 06:39 UTC
0

Codeium генерирует произвольные имена полей и методов для сторонних библиотек, менять которые невозможно. Это действительно мешает.

@itmind
24.07.2024 22:39 UTC
+2

Мне наоборот Codeium зашел для Go и Rust и он активно развивается и бесплатный. Есть возможность указывать предварительно контекст (например: "Rust, отвечать по русски"). Gigachat, codium пока в разы хуже.

@VicIamQuick
24.07.2024 23:08 UTC
0

Кто-нибудь может прояснить пожалуйста. Вот Codeium, написано бесплатен для индивдуального использования. А что если сначала проект создавался в одиночку, а потом разросся в командный из нескольких человек. Я всё еще могу использовать Codeium по индивидуальному плану или должен переходить на платный?

@luckfinder
25.07.2024 00:53 UTC
+1

Гигакод вообще лучше не пробуй.

Огорчишься

@Sigest
25.07.2024 04:31 UTC
+1

У меня жутко тормозит Intelij IDEA с codeium на очень хорошей конфигурации (i9 13000K, 64Gb ram, хотя видео слабое - 1050Ti). Тормозит на Котлине, на java тоже тупит, но меньше, на k8s yaml файлах работает нормально, но и бесполезен. Тормозит и при этом жрет цпу на 100%

@Sigest
26.07.2024 08:08 UTC
0

Дополню свой комментарий и возьму свои слова назад. По причине жутких тормозов я отключил данный плагин и он у меня не обновлялся. После прочтения статьи решил дать еще один шанс. Включил, он попросил обновить себя. После обновления, о чудо, тормозить перестал и пока полёт нормальный. И кстати забыл сказать, что тормозил только под Windows 11, там какой-то language_server процесс забирал под себя все 100% цпу. На маке с М1 все работало без проблем.

@Vladek
25.07.2024 06:12 UTC
0

в Visual Studio у них ужасное расширение, что мешает выдавать нормальные примеры кода. В VS Code расширение гораздо лучше - стоит проверить работу Codeium именно там.

@MaksimMukharev
25.07.2024 06:30 UTC
0

Я заметил, что он довольно хорошо даёт подсказки, если написать комментарий с тем, что ожидается. После комментария получается очень адекватный результат.

@qiper
25.07.2024 06:44 UTC
0

Скоро-скоро, вот-вот-вот, всё станет хорошо! https://habr.com/ru/posts/831268/ :D

@alexMolex
25.07.2024 09:11 UTC
+1

А какая модель используется? Base или GPT-4? При выборе последней качество подсказок становится выше. Да, согласен, что контекст как правило берется из открытого файла, но все равно, подсказывает в целом неплохо. А основным преимуществом является чат, с ним даже гуглить ничего не надо. Лично на своем опыте могу сказать, что с ним скорость написания именно нового функционала возрастает чуть ли не x2. Недостатки тоже есть, но они перекрываются преимуществами. А главное преимущество это бесплатность и доступность в России. Пользовались как-то платным copilot, так там качество подсказок заметно ниже, к тому же танцы с бубном при пополнении

@Alexander_Front-end
25.07.2024 10:04 UTC
0

Я уже месяц где-то использую codeium для Typescript в VS Code. Вполне неплохо угадывает и подсказывает, часто пихаю в него функцию и прошу юнит тесты написать

@undersunich
25.07.2024 11:01 UTC
+1

Codeium раздражает тем что всегда что то предлагает дополнить. Даже когда это не нужно Это отвлекает в больших проектах

@avran02
26.07.2024 06:00 UTC
0

Пишу на go в vscode и мне в целом нравится эта сетка. Бойлерплейт генерирует хорошо, что ускоряет написание кода. Насчёт логики согласен, обычно справляется плохо НО есть одно большое но. Если нет интернета, или он очень плохой, у меня из-за этого расширения падает языковой сервер и IDE не может давать вообще никаких подсказок

@45stvol
27.07.2024 07:50 UTC
0

Достаточно сносный ИИ для фрагментов кода. Получил доступ к 4 версии и мелкие .py скрипты, для промышленных задач, удовлетворительно пишет. На объёмный легаси код - её бессмыслено пускать(тут уже жду llama3.2). Пользуюсь с апреля+-