Чат с Gemini Code Assist для частных лиц

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

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

Этот документ предназначен для разработчиков всех уровней квалификации. Предполагается, что у вас есть практические навыки работы с 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 для объяснения вашего кода

В этом разделе вы предлагаете Gemini Code Assist предоставить пояснения к вашему существующему коду.

Код VS

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

  1. Откройте файл кода.

  2. На панели активности вашей IDE нажмите spark Gemini Code Assist .

  3. На панели Gemini Code Assist введите запрос Explain this code to me и нажмите кнопку Send send

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

    Чтобы сослаться на определенный блок кода, а не на весь код в файле, вы можете выбрать блок в файле кода, а затем вызвать Gemini Code Assist.

IntelliJ

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

  1. Откройте файл кода в IDE.

  2. В окне инструмента Gemini Code Assist введите запрос Explain this code to me и нажмите «Отправить» .

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

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

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

  • Вставить в курсор : вставляет сгенерированный код в текущий файл в текущую позицию курсора.

  • Вставить в новый файл : открывает новый файл и вставляет сгенерированный код в новый файл.

    Gemini перечисляет действия кода в конце сгенерированного ответа кода.

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

Посмотреть историю запросов

Если вы хотите повторно использовать предыдущие запросы, вы можете найти их в истории запросов в окне инструмента Gemini Code Assist , нажав schedule «Показать историю запросов» .

История запросов Gemini в окне инструментов.

Создать несколько чатов

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

Код VS

  1. Чтобы добавить новый чат, нажмите «Добавить новый чат» и введите запрос в текстовое поле. После ввода запроса Gemini Code Assist создаст новый чат.
  2. Чтобы получить доступ к предыдущему чату, нажмите История Возобновить предыдущий чат . Появится список ваших чатов. Выберите чат, который вы хотите просмотреть.
  3. Чтобы удалить ветку чата, нажмите «Возобновить предыдущий чат» , а затем нажмите «Удалить » рядом с чатом, который вы хотите удалить.

IntelliJ

В настоящее время эта функция не поддерживается в Gemini Code Assist для IntelliJ и других поддерживаемых IDE JetBrains.

Сбросить историю чата

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

Запрос кода Gemini Помощь с выбранным кодом с помощью чата

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

Код VS

  1. На панели действий нажмите spark Gemini Code Assist , чтобы открыть панель Gemini Code Assist .

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

  3. В текстовом поле панели Gemini Code Assist введите запрос для выбранного кода.

    Например, выберите функцию в вашем коде и введите приглашение Write a unit test for this function .

    Gemini использует выбранный вами код в качестве ссылки и отвечает на ваш запрос.

IntelliJ

  1. На панели действий нажмите Spark Gemini Code Assist , чтобы открыть окно инструментов Gemini Code Assist .

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

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

    Например, выберите функцию в вашем коде и введите приглашение Write a unit test for this function.

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

Запрос на конкретные файлы и папки в вашем рабочем пространстве с учетом локальной кодовой базы

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

При указании папки Gemini Code Assist использует в качестве контекста файлы в этой папке, а также файлы во вложенных папках.

Код VS

Чтобы указать файлы или папки в строке чата, введите @ и выберите файл или папку, которые вы хотите указать.

Укажите файлы и папки с поддержкой локальной кодовой базы для VS Code.

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

  1. На панели действий нажмите spark Gemini Code Assist .

  2. На панели Gemini Code Assist введите запрос Explain the difference between @YOUR_FILE_NAME_1 and @YOUR_FILE_NAME_2 и нажмите Enter (для Windows и Linux) или Return (для macOS) или Tab . Вы также можете щелкнуть имя файла в списке, чтобы выбрать файл. Щелчок по имени файла добавляет файл в контекст запроса и открывает файл в вашей IDE.

Gemini Code Assist отвечает на ваш запрос, используя два файла, которые вы указали для контекста. Gemini Code Assist также включает файлы, которые вы указали в Context Sources .

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

Например: на панели Gemini Code Assist введите запрос How can I improve YOUR_FILE_NAME_1? (без символа @ ) и нажмите Enter (для Windows и Linux) или Return (для macOS).

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

IntelliJ

Чтобы указать файлы или папки в строке чата, введите @ и выберите файлы или папки, которые вы хотите указать.

Укажите файлы с поддержкой локальной кодовой базы для IntelliJ.

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

  1. На панели действий нажмите spark Gemini Code Assist .

  2. На панели Gemini Code Assist введите запрос Explain the difference between @YOUR_FILE_NAME_1 and @YOUR_FILE_NAME_2 и нажмите Enter (для Windows и Linux) или Return (для macOS) или Tab . Вы также можете щелкнуть имя файла в списке, чтобы выбрать файл. Щелчок по имени файла добавляет файл в контекст запроса и открывает файл в вашей IDE.

Gemini Code Assist отвечает на ваш запрос, используя два файла, которые вы указали для контекста. Gemini Code Assist также включает файлы, которые вы указали в Context Sources .

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

Например: на панели Gemini Code Assist введите запрос How can I improve YOUR_FILE_NAME_1? (без символа @ ) и нажмите Enter (для Windows и Linux) или Return (для macOS).

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

Управление файлами и папками в Context Drawer

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

Для управления файлами и папками в Context Drawer выполните следующие задачи:

Код VS

  1. На панели активности вашей IDE нажмите spark Gemini Code Assist .

  2. Чтобы просмотреть файлы и папки в контекстном меню, нажмите Элементы контекста .

    Контекстный ящик для Gemini Code Assist для VS Code

  3. Чтобы удалить элементы из контекстного ящика, нажмите close Удалить .

IntelliJ

  1. На панели действий нажмите spark Gemini Code Assist.

  2. Чтобы просмотреть файлы и папки в Context Drawer, нажмите Контекст .

    Контекстный ящик для Gemini Code Assist для IntelliJ

  3. Чтобы удалить файлы и папки из контекстного меню, нажмите close «Удалить» .

Создавайте собственные команды

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

В этом разделе вы создадите пользовательскую команду add-comments , которая добавляет комментарии к коду в вашем файле кода. Для IntelliJ и других поддерживаемых JetBrains IDE вы создадите, сохраните и выполните пользовательскую команду из библиотеки подсказок и из подсказки в редакторе.

Код VS

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

  2. В меню найдите и выберите Настройки: Открыть настройки (пользовательский интерфейс) .

  3. В поле «Настройки поиска» введите Geminicodeassist: Custom Commands .

  4. В поле «Пользовательские команды» выберите «Добавить элемент» .

  5. В поле «Элемент» введите add-comments в качестве имени команды.

  6. В поле «Значение» введите в качестве подсказки add comments to all functions without comments in my code .

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

Теперь вы можете использовать пользовательскую команду add-comments в вашей IDE. Команда отображается в списке команд в меню быстрого выбора Gemini Code Assist ( Control+I (для Windows и Linux) или Command+I (для macOS)).

IntelliJ

  1. В IDE перейдите в Настройки > Инструменты > Gemini > Библиотека подсказок .

    Библиотека подсказок для IntelliJ Gemini Code Assist

  2. В окне «Библиотека подсказок» нажмите кнопку add » .

  3. Назовите свою пользовательскую команду add-comments .

  4. В текстовом поле библиотеки подсказок введите подсказку: Add comments to all functions without comments in this code .

  5. Установите флажок Показывать в подсказке редактора, если он не установлен.

  6. Нажмите «ОК» , чтобы сохранить пользовательскую команду в библиотеке подсказок.

  7. В файле кода выделите код, который вы хотите изменить.

  8. Щелкните правой кнопкой мыши выделенный код и перейдите в Gemini > Prompt Library , а затем выберите пользовательскую команду add-comments .

    Gemini Code Assist выполняет команду add-comments и добавляет комментарии к выделенному коду.

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

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

  2. В меню выберите пользовательскую команду add-comments .

    Gemini Code Assist выполняет команду add-comments и добавляет комментарии к выделенному коду.

Создать правила

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

Код VS

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

  2. В меню найдите и выберите Настройки: Открыть настройки (пользовательский интерфейс) .

  3. В поле «Настройки поиска» введите Geminicodeassist: Rules .

  4. В текстовом поле введите правило, например: Always generate unit tests when creating a new function . Вы также можете добавить одно или несколько правил с несколькими строками в текстовом поле.

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

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

IntelliJ

В настоящее время эта функция не поддерживается в Gemini Code Assist для IntelliJ и других поддерживаемых IDE JetBrains.

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

В этом разделе описаны известные проблемы 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 , а затем в меню «Быстрый выбор» выберите «Отправить отзыв» .

  2. В форме заполните поля Заголовок и Комментарии .

  3. Если вы хотите поделиться своими журналами Skaffold или AI Companion, убедитесь, что вы выбрали опцию « Отправить журналы Skaffold» или «Отправить журналы AI Companion» .

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

IntelliJ

  1. В строке состояния нажмите spark Gemini Code Assist , а затем в меню выберите Отправить отзыв .

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

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

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

Что дальше?