GigaCode
На текущий момент ни одна из современных IDE не обходится без возможности использовать нейросеть в процессе написания кода. И сберовская GIGA IDE здесь не исключение. В ее состав входит AI ассистент для разработчиков GigaCode
Настройки
Кроме непосредственно окна с чатом, есть окно в котором можно выставить флажки, которые определяют, какой контекст будет использоваться при генерации автокомплита.
Режимы работы
Работа с гигакодом доступна в двух режимах:
-
Режим диалога
В этом режиме взаимодействие с гигакод ведется в режиме вопрос-ответ. Аналогично тому как вы привыкли общаться с llm в браузере. Это удобно когда надо просто получить какую-то информацию. При этом не надо переключаться в браузер и к тому же при формировании вопроса можно в качестве контекста использовать свой код. Чтобы это сделать надо нажать кнопку Add context и выбрать какого рода контекст вы хотите добавить.
-
Режим агента
Режим агента конечно является более привлекательным для разработчика, так как он позволяет генерировать новый код и рефакторить существующий. Достаточно написать промпт. Допустим мы хотим сделать новый рест контроллер. Так и пишем:
После некоторых раздумий гигакод выведет сообщение о том что он хочет сделать и ниже команду mkdir с помощью которой он хочет создать каталог controller в папке проекта:
По кнопке Run command вы можете применить эту команду, а по кнопке Reject, соответственно, отказаться от ее выполнения. После создания нужного каталога, начинается непосредственно генерация кода. Результат выводится в хорошо всем знакомом окне сравнения и объединения:
Здесь мы также можем принять изменения или отказаться от них. Если нас не устраивают какие-то отдельные моменты, можно вместо нажатия на одну из кнопок, сказать гигакоду, что мы хотим изменить, и он сгенерирует новый код.
Заключение
Стоит заметить, что для корректной работы гигакода вам придется зарегистрироваться на сайте gitverse.
Конечно к коду, сгенерированному гигакодом, стоит относится с достаточной долей критичности. И сложную логику лучше писать самому. Но с шаблонными задачами типа CRUD-ов, генерации юнит-тестов он вполне справляется. Да, приходится и там местами править ручками, но все равно получается быстрее, чем писать вручную с нуля. Хорошо срабатывает прием, когда уже есть код, и надо написать похожий. Тогда просто говорим: "возьми вот этот сервис и создай подобный со следующим функционалом...".
Кто бы как ни относился к нейросетям, следует признать тот факт, что они существенно ускоряют работу при разумном их использовании. И умение работать с ними с каждым днем становится все более востребованным.