Кодируйте с помощью Gemini Code Assist для частных лиц

В этом документе описывается, как использовать Gemini Code Assist — инструмент для совместной работы на базе искусственного интеллекта в вашей среде IDE, который поможет вам выполнять следующие действия в VS Code или IntelliJ и других поддерживаемых средах IDE JetBrains :

  • Сгенерируйте код для вашего проекта с помощью преобразования кода.
  • Получайте автодополнения кода во время кодирования.
  • Используйте разумные действия.

Если вы используете Gemini Code Assist Enterprise , вы можете воспользоваться функцией настройки кода , которая позволяет получать рекомендации по коду на основе закрытой кодовой базы вашей организации непосредственно из Gemini Code Assist Enterprise. Узнайте , как настроить настройку кода .

Этот документ предназначен для разработчиков любого уровня подготовки. Предполагается, что вы уже знакомы с VS Code, IntelliJ и другими поддерживаемыми JetBrains IDE. Вы также можете использовать Gemini в Android Studio .

Прежде чем начать

VS Код

  1. Настройте Gemini Code Assist для частных лиц , Gemini Code Assist Standard или Gemini Code Assist Enterprise, если вы еще этого не сделали.

  2. Прежде чем тестировать возможности Gemini Code Assist в вашем файле кода, убедитесь, что язык программирования поддерживается. Подробнее о поддерживаемых языках программирования см. в разделе Поддерживаемые языки программирования .

  3. Если вы предпочитаете использовать IDE через прокси-сервер, см. раздел Сетевые подключения в Visual Studio Code .

IntelliJ

  1. Настройте Gemini Code Assist для частных лиц , Gemini Code Assist Standard или Gemini Code Assist Enterprise, если вы еще этого не сделали.

  2. Прежде чем тестировать возможности Gemini Code Assist в вашем файле кода, убедитесь, что язык программирования поддерживается. Подробнее о поддерживаемых языках программирования см. в разделе Поддерживаемые языки программирования .

  3. Если вы предпочитаете использовать IDE через прокси-сервер, см. HTTP-прокси .

Генерация кода с подсказками

В следующих разделах показано, как использовать Gemini Code Assist для генерации кода с помощью Function to create a Cloud Storage bucket внутри файла кода. Вы также можете выбрать фрагмент кода и обратиться к Gemini Code Assist за помощью через чат, а также получать и принимать или отклонять предложения по коду в процессе кодирования.

Помощь Gemini Code Assist с преобразованием кода

Преобразование кода позволяет использовать команды или подсказки на естественном языке в меню быстрого выбора для запроса изменений в коде, а также предоставляет просмотр различий для отображения ожидаемых изменений в коде. Чтобы запросить преобразование кода с помощью Gemini Code Assist, выполните следующие действия:

VS Код

  1. В файле кода на новой строке нажмите Control+I (для Windows и Linux) или Command+I (для macOS), чтобы открыть меню быстрого выбора Gemini Code Assist .

  2. В меню с помощью команды /generate введите /generate function to create a Cloud Storage bucket , а затем нажмите Enter (для Windows и Linux) или Return (для macOS).

    Gemini Code Assist генерирует код с помощью команды /generate.

    Gemini Code Assist генерирует код на основе вашего запроса в представлении различий.

    Gemini Code Assist открывает представление различий для отображения сгенерированного кода.

  3. Необязательно: Чтобы принять эти изменения, нажмите Принять .

IntelliJ

  1. В файле кода на новой строке нажмите Alt+\ (для Windows и Linux) или Cmd+\ (для macOS), чтобы открыть меню быстрого выбора Gemini Code Assist .

  2. В меню с помощью команды /generate введите /generate function to create a Cloud Storage bucket , а затем нажмите Enter (для Windows и Linux) или Return (для macOS).

    Функция генерации преобразования кода в IntelliJ Gemini Code Assist

    Gemini Code Assist генерирует код на основе вашего запроса в представлении различий.

    Просмотр различий преобразования кода в IntelliJ Gemini Code Assist

  3. Необязательно: Чтобы принять эти изменения, нажмите Принять изменения .

    Вы можете использовать следующие команды преобразования кода в вашей IDE:

    • /fix : Исправить проблемы или ошибки в вашем коде. Пример: /fix potential NullPointerExceptions in my code .
    • /generate : Генерация кода. Пример: /generate a function to get the current time .
    • /doc : Добавить документацию к вашему коду. Пример: /doc this function .
    • /simplify : Упростите свой код. Пример: /simplify if statement in this code .

Подсказка Gemini Code Assist в файле кода с комментарием

При желании вы также можете добавить комментарий в файл кода Gemini Code Assist, выполнив следующие действия:

VS Код

  1. На новой строке введите комментарий Function to create a Cloud Storage bucket , а затем нажмите Enter (для Windows и Linux) или Return (для macOS).

  2. Чтобы сгенерировать код, нажмите Control+Enter (для Windows и Linux) или Control+Return (для macOS).

    Рядом с текстом подсказки в файле кода Gemini Code Assist генерирует код в виде скрытого текста.

  3. Необязательно: Чтобы принять сгенерированный код, нажмите Tab .

IntelliJ

  1. В файле кода на новой строке введите комментарий Function to create a Cloud Storage bucket .

  2. Чтобы сгенерировать код, нажмите Alt+G (для Windows и Linux) или Option+G (для macOS). Также можно щелкнуть правой кнопкой мыши рядом с комментарием и выбрать «Сгенерировать код» .

    Gemini Code Assist сгенерирует код под вашим комментарием в виде скрытого текста.

  3. Необязательно: Чтобы принять сгенерированный код, нажмите Tab .

Необязательно: измените сочетание клавиш для генерации кода.

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

Получить автодополнения кода

Пока вы пишете код, Gemini Code Assist предлагает встроенные подсказки кода, также известные как автодополнения кода , которые вы можете принять или проигнорировать. Чтобы получить автодополнения кода, выполните следующие действия:

VS Код

  1. В файле кода, на новой строке, начните писать функцию. Например, если вы работаете в файле Python, напишите def .

    Gemini Code Assist предлагает код в виде скрытого текста.

  2. Чтобы принять предложенный код от Gemini Code Assist, нажмите Tab . Чтобы проигнорировать предложение, нажмите Esc или продолжите ввод кода.

IntelliJ

  1. В файле кода, на новой строке, начните писать функцию. Например, если вы работаете в файле Python, напишите def .

    Gemini Code Assist предлагает код в виде встроенных подсказок.

  2. Чтобы принять предложенный код от Gemini Code Assist, нажмите Tab . Чтобы проигнорировать предложение, нажмите Esc или продолжите ввод кода.

  3. Необязательно: если вы предпочитаете использовать другую комбинацию клавиш для принятия встроенной подсказки, наведите указатель мыши на неё и нажмите на раскрывающееся меню Tab . Затем выберите предпочитаемую комбинацию клавиш или нажмите «Настроить» , чтобы ввести собственную.

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

Необязательно: отключить автодополнение кода

Автодополнение кода включено по умолчанию. Чтобы отключить его, выполните следующие действия:

VS Код

  1. В IDE нажмите «Код» (для macOS) или «Файл» (для Windows и Linux), а затем перейдите в «Настройки» > «Настройки» .

  2. На вкладке Пользователь диалогового окна Настройки перейдите в раздел Расширения > Gemini Code Assist .

  3. Прокручивайте, пока не найдете список Duet AI: Встроенные предложения: Включить автоматически , а затем выберите Выкл .

    Это отключит встроенные подсказки. Вы по-прежнему можете нажать Control+Enter (для Windows и Linux) или Control+Return (для macOS), чтобы вручную активировать встроенные подсказки.

IntelliJ

В строке состояния вашей IDE нажмите spark Gemini Code Assist: Active и выберите Включить AI Code Completion .

Кнопка автодополнения кода Gemini в строке состояния IntelliJ.

Это отключает настройку автодополнения кода, и Gemini Code Assist больше не будет предлагать встроенные подсказки, пока вы снова не включите эту настройку.

Получайте более релевантные предложения с учетом контекста удаленного репозитория

Вы можете получать более контекстно-зависимые и релевантные предложения по коду, указав Gemini Code Assist сосредоточиться на конкретных удалённых репозиториях. Используя символ @ в чате, вы можете выбрать один или несколько репозиториев, которые будут использоваться в качестве основного источника контекста для ваших подсказок. Это полезно, когда вы работаете над задачей, которая в основном связана с определённым набором микросервисов, библиотек или модулей.

Чтобы использовать удаленный репозиторий в качестве контекста, выполните следующие действия в чате вашей IDE:

  1. Начните запрос с символа @ . Появится список доступных удалённых репозиториев, которые индексируются.
  2. Выберите из списка репозиторий, который вы хотите использовать для контекста. Вы также можете начать вводить имя репозитория, чтобы отфильтровать список.
  3. После выбора репозитория напишите остальную часть приглашения.

Затем Gemini Code Assist отдаст приоритет выбранному репозиторию при формировании ответа.

Примеры подсказок

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

  • Понять репозиторий
    • @REPOSITORY_NAME What is the overall structure of this repository?
    • @REPOSITORY_NAME I'm a new team member. Can you give me an overview of this repository's purpose and key modules?
  • Генерация и изменение кода
    • @REPOSITORY_NAME Implement an authentication function similar to the one in this repository.
    • @REPOSITORY_NAME Refactor the following code to follow the conventions in the selected repository.
    • Use the library-x in @REPOSITORY_A_NAME-A and implement the function-x
  • Тест
    • @UNIT_TEST_FILE_NAME Generate unit tests for module-x based on the examples in the selected file.

Используя удаленные репозитории в качестве целевого источника контекста, вы можете получать более точные и релевантные предложения от Gemini Code Assist, которые помогут вам писать код быстрее и эффективнее.

Используйте умные действия

Чтобы помочь вам работать продуктивнее и минимизировать переключение контекста, Gemini Code Assist предлагает интеллектуальные действия на базе искусственного интеллекта прямо в редакторе кода. Выбрав код в редакторе, вы можете просмотреть список действий, соответствующих вашему контексту, и выбрать одно из них.

Чтобы использовать умные действия в своем коде, выполните следующие действия:

VS Код

  1. В файле кода выберите блок кода.

  2. Рядом с выбранным блоком кода нажмите на lightbulb Показать действия кода .

    Значок лампочки «Умные действия» появляется после выбора блока кода в VS Code.

  3. Выберите действие, например «Создать модульные тесты» .

    Gemini Code Assist генерирует ответ на основе выбранного вами действия.

IntelliJ

  1. В файле кода выберите строку или блок кода.

  2. Щелкните правой кнопкой мыши по выбранному коду и выберите смарт-действие, например «Сгенерировать модульные тесты» .

    При выборе интеллектуального действия Gemini Code Assist автоматически сгенерирует ответ на запрос в окне инструментов Gemini Code Assist .

Используйте быстрое решение для преобразования кода

Если в вашем коде есть ошибка, Gemini Code Assist дает вам возможность быстро исправить ее с помощью преобразования кода.

Чтобы применить быстрое исправление в файле кода, выполните следующие действия:

VS Код

  1. В файле кода наведите указатель мыши на волнистую линию с ошибкой и выберите Быстрое исправление , а затем выберите /fix .

    Быстрое решение для преобразования кода в IDE.

  2. После применения быстрого исправления появится окно сравнения. Чтобы принять изменения, нажмите «Принять» .

IntelliJ

  1. В файле кода щелкните значок красной лампочки, указывающий на ошибку в коде, и выберите «Исправить с помощью Gemini» .

    Возможность исправления преобразования кода с помощью Gemini в IDE.

  2. После применения исправления появится окно сравнения. Чтобы принять изменения, нажмите «Принять» .

Исключить файлы из локального контекста

По умолчанию Gemini Code Assist исключает файлы из локального использования в контексте автодополнения кода, генерации кода, преобразования кода и чата, если файлы указаны в файле .aiexclude или .gitignore .

Чтобы узнать, как исключить файлы из локального использования, ознакомьтесь с разделом Исключить файлы из использования Gemini Code Assist .

Отключить предложения кода, соответствующие цитируемым источникам

Gemini Code Assist предоставляет информацию о цитировании, когда он напрямую цитирует чужой источник, например, существующий открытый исходный код. Подробнее см. в разделе «Как и когда Gemini цитирует источники» .

Чтобы запретить вам предлагать код, соответствующий цитируемым источникам, выполните следующие действия:

VS Код

  1. На панели активности вашей IDE нажмите Управление > Настройки .

  2. На вкладке Пользователь окна настроек перейдите в раздел Расширения > Gemini Code Assist .

  3. Прокручивайте, пока не найдете Geminicodeassist > Рецитация: максимальная длина цитирования .

  4. Установите значение 0 .

Gemini Code Assist больше не предлагает вам код, соответствующий цитируемым источникам.

IntelliJ

  1. В строке состояния вашей IDE нажмите spark Gemini Code Assist: Active и выберите, затем выберите Настроить Gemini .

  2. Разверните раздел Дополнительные настройки , а затем выберите Блокировать выборки, соответствующие внешним цитируемым источникам .

  3. Нажмите ОК .

Gemini Code Assist больше не предлагает вам код, соответствующий цитируемым источникам.

Известные проблемы

В этом разделе описаны известные проблемы Gemini Code Assist:

VS Код

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

    Чтобы обойти эту проблему, выберите меньший фрагмент кода и включите в приглашение чата дополнительную директиву, например, only output the selected code.

  • Vim: невозможно принять или отклонить предложения по генерации кода, если только не активен режим вставки.

    При использовании плагина Vim в обычном режиме вы не можете принимать или отклонять предложения по коду.

    Чтобы обойти эту проблему, нажмите i , чтобы войти в режим вставки, а затем нажмите Tab , чтобы принять предложение.

  • Vim: Непоследовательное поведение при нажатии Esc для отклонения предложений

    При нажатии Esc предложения IDE и Gemini Code Assist отключаются. Это поведение отличается от поведения без Vim, где нажатие Esc повторно запускает Gemini Code Assist.

  • Попытки входа в систему продолжают прерываться

    Если при попытках входа в систему возникает задержка, попробуйте добавить параметр cloudcode.beta.forceOobLogin в файл settings.json :

     "cloudcode.beta.forceOobLogin": true
    
  • Предупреждения о необходимости повторения лицензии не сохраняются между сеансами

    Если предупреждения об ошибках лицензии не сохраняются между сеансами, обратитесь к постоянным журналам:

    1. Нажмите Вид > Вывод .

    2. Выберите Gemini Code Assist - Citations .

  • Проблемы с подключением в окне вывода Gemini Code Assist

    Если в окне вывода Gemini Code Assist вы видите ошибку подключения или другие проблемы с подключением, попробуйте сделать следующее:

    • Настройте брандмауэр так, чтобы разрешить доступ к oauth2.googleapis.com и cloudaicompanion.googleapis.com .

    • Настройте брандмауэр так, чтобы он разрешал связь по протоколу HTTP/2, который использует gRPC.

    Для проверки подключения можно использовать инструмент grpc-health-probe . Успешная проверка приводит к следующему результату:

    $ grpc-health-probe -addr cloudaicompanion.googleapis.com:443 -tls error: this server does not implement the grpc health protocol (grpc.health.v1.Health): GRPC target method can't be resolved

    Неудачная проверка приводит к следующему результату:

    timeout: failed to connect service "cloudaicompanion.googleapis.com:443" within 1s

    Чтобы получить более подробную информацию, выполните следующее перед grpc-health-probe :

    export GRPC_GO_LOG_SEVERITY_LEVEL=info
    

IntelliJ

Известных проблем с Gemini Code Assist для IntelliJ и других поддерживаемых IDE JetBrains нет.

Оставить отзыв

Чтобы оставить отзыв о вашем опыте, выполните следующие действия:

VS Код

  1. Вы можете оставить отзыв одним из следующих способов:

    • В строке состояния нажмите spark Gemini Code Assist , а затем в меню Быстрый выбор выберите Отправить отзыв .
    • Откройте палитру команд ( Ctrl / Command + Shift + P ), а затем выберите Gemini Code Assist: Send Feedback .
  2. В форме заполните поля Заголовок и Комментарии .

  3. В форме «Отзыв о Gemini Code Assist» выберите нужный вариант из категории «Отзыв» и раскрывающегося меню «Тип» .

  4. Напишите подробное описание вашего опыта в поле «Комментарий» .

  5. Обязательно включите логи Gemini Code Assist в свой отчёт. По умолчанию эта опция выбрана.

  6. По своему усмотрению отметьте или снимите отметки с других опций.

  7. Нажмите «Отправить отзыв» .

IntelliJ

  1. В строке состояния нажмите spark Gemini Code Assist .

  2. Если после запроса Gemini Code Assist в чате вы не удовлетворены ответом, нажмите thumb_down Negative и затем выберите Оставить отзыв .

  3. В текстовом поле в верхней части формы введите свой отзыв.

  4. Если вы хотите поделиться своими журналами Gemini Code Assist, убедитесь, что вы выбрали файлы журналов.

  5. Нажмите «Отправить отзыв» .

Что дальше?