В этом документе описывается, как вы можете использовать Gemini Code Assist , инструмент для совместной работы на базе искусственного интеллекта в вашей IDE, который поможет вам выполнять следующие действия в VS Code или IntelliJ и других поддерживаемых IDE JetBrains :
- Предоставьте рекомендации, которые помогут вам решить проблемы с вашим кодом.
- Сгенерируйте код для вашего проекта.
- Получайте встроенные предложения во время написания кода.
Узнайте, как и когда Gemini for Google Cloud использует ваши данные .
Чтобы помочь вам соблюдать любые лицензионные требования для вашего кода, Gemini Code Assist предоставляет ссылки на источники, когда его предложения напрямую цитируют конкретный источник. Дополнительные сведения о том, как и когда Gemini цитирует источники, см . в разделе «Как Gemini помогает создавать код и цитирует источники» .
Этот документ предназначен для разработчиков всех уровней квалификации. Предполагается, что у вас есть практические знания VS Code или IntelliJ и других поддерживаемых IDE JetBrains. При желании вы также можете изучить Gemini Code Assist в Cloud Shell и Cloud Workstations .
Прежде чем начать
- Прежде чем тестировать возможности Gemini Code Assist в файле кода, убедитесь, что язык кодирования вашего файла поддерживается. Дополнительные сведения о поддерживаемых языках кодирования см. в разделе Поддерживаемые языки кодирования .
- Если вы предпочитаете использовать свою интегрированную среду разработки через прокси-сервер, см. раздел Сетевые подключения в Visual Studio Code .
Прежде чем тестировать возможности Gemini Code Assist в файле кода, убедитесь, что язык кодирования вашего файла поддерживается. Дополнительные сведения о поддерживаемых языках кодирования см. в разделе Поддерживаемые языки кодирования .
Если вы предпочитаете использовать свою IDE за прокси-сервером, см. раздел HTTP-прокси .
Чат с Gemini Code Assist
В этом разделе вы предложите Gemini Code Assist предоставить объяснение существующего кода.
Чтобы получить объяснение вашего кода, выполните следующие действия:
Откройте файл кода.
На панели активности вашей IDE нажмите spark Gemini Code Assist» .
На панели Gemini Code Assist введите запрос
Explain this code to me
и нажмите send » .Gemini использует код в вашем файле кода в качестве ссылки на ваше приглашение и отвечает объяснением вашего кода.
Чтобы обратиться к конкретному блоку кода, а не ко всему коду в файле, вы можете выбрать блок в файле кода и затем запросить Gemini.
Чтобы получить объяснение вашего кода, выполните следующие действия:
В вашей IDE откройте файл кода.
В окне инструмента Gemini Code Assist введите запрос
Explain this code to me
и нажмите «Отправить» .
Gemini Code Assist использует код из вашего файла кода в качестве ссылки на ваше приглашение и отвечает объяснением вашего кода.
Если вам нужно объяснение только определенной части вашего кода, вы можете выбрать определенный код и затем снова запросить Gemini Code Assist. Gemini Code Assist будет использовать выбранный код только как ссылку на сгенерированный ответ.
Когда Gemini Code Assist предоставит вам код в своем ответе, вы можете выбрать следующие параметры, перечисленные в конце ответа:
Вставить в курсор : вставляет сгенерированный код в текущий файл в текущую позицию курсора.
Вставить в новый файл : открывает новый файл и вставляет в него сгенерированный код.
Эти параметры доступны, когда Gemini Code Assist определяет язык, используемый в вашем блоке кода, и если этот язык поддерживается в вашей текущей IDE.
Просмотр истории запросов
Если вы хотите повторно использовать предыдущие запросы, вы можете найти их в истории запросов в окне инструмента Gemini Code Assist , щелкнув schedule Показать историю запросов .
Сбросить историю чата
Gemini Code Assist использует историю чата для дополнительного контекста при ответе на ваши запросы. Если ваша история чата больше не имеет отношения к тому, чего вы пытаетесь достичь, вы можете сбросить историю чата:
На панели Gemini Code Assist нажмите delete Сбросить чат» .
В окне инструмента Gemini Code Assist нажмите delete Очистить историю разговоров» . Это также очистит историю ваших запросов.
Генерация кода с подсказками
В следующих разделах показано, как использовать Gemini Code Assist для генерации кода с помощью примера Function to create a Cloud Storage bucket
внутри файла кода. Вы также можете выбрать часть своего кода, а затем запросить помощь Gemini Code Assist через функцию чата, а также получать, принимать или отклонять предложения кода во время написания кода.
Оперативная помощь Gemini Code с преобразованием кода
Преобразование кода позволяет использовать команды или подсказки на естественном языке в меню «Быстрый выбор» для запроса изменений вашего кода, а также предоставляет представление различий для отображения ожидающих изменений в вашем коде. Чтобы запросить Gemini Code Assist преобразование кода, выполните следующие действия:
В файле кода на новой строке нажмите Control+I (для Windows и Linux) или Command+I (для macOS), чтобы открыть панель быстрого выбора Gemini Code Assist .
В меню с помощью команды
/generate
введите/generate function to create a Cloud Storage bucket
, а затем нажмите Enter (для Windows и Linux) или Return (для macOS).Gemini Code Assist генерирует код на основе вашего запроса в представлении различий.
Необязательно: Чтобы принять эти изменения, нажмите «Принять» .
Подскажите Gemini Code Помощь в файле кода с комментарием
При желании вы также можете запросить Gemini Code Assist в файле кода с комментарием, выполнив следующие действия:
В новой строке введите комментарий
Function to create a Cloud Storage bucket
, а затем нажмите Enter (для Windows и Linux) или Return (для macOS).Чтобы сгенерировать код, нажмите Control+Enter (для Windows и Linux) или Control+Return (для macOS).
Рядом с текстом подсказки в файле кода Gemini Code Assist генерирует код в виде призрачного текста.
Необязательно: Чтобы принять сгенерированный код, нажмите Tab .
Подскажите Gemini Code Assist с выбранным кодом в чате
Gemini Code Assist может выполнять задачи или отвечать на ваши вопросы на основе выбранного вами кода. Чтобы получить сгенерированный код на основе приглашения с выбранным кодом, выполните следующие действия:
На панели действий нажмите spark Помощник по коду Gemini» , чтобы открыть панель «Помощник по коду Gemini» .
В файле кода выберите блок кода.
В текстовом поле панели Gemini Code Assist введите запрос для выбранного кода.
Например, выберите функцию в своем коде и введите приглашение.
Write a unit test for this function
:Gemini использует выбранный вами код в качестве ссылки и отвечает на ваш запрос.
Оперативная помощь Gemini Code с преобразованием кода
Преобразование кода позволяет использовать команды или подсказки на естественном языке в меню «Быстрый выбор» для запроса изменений вашего кода, а также предоставляет представление различий для отображения ожидающих изменений в вашем коде. Чтобы запросить Gemini Code Assist преобразование кода, выполните следующие действия:
В файле кода на новой строке нажмите Alt+\ (для Windows и Linux) или Cmd+\ (для macOS), чтобы открыть меню быстрого выбора Gemini Code Assist .
В меню с помощью команды
/generate
введите/generate function to create a Cloud Storage bucket
, а затем нажмите Enter (для Windows и Linux) или Return (для macOS).Gemini Code Assist генерирует код на основе вашего запроса в представлении различий.
Необязательно: Чтобы принять эти изменения, нажмите «Принять изменения» .
В вашей 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 Помощь в файле кода с комментарием
В файле кода в новой строке введите комментарий
Function to create a Cloud Storage bucket
.Чтобы сгенерировать код, нажмите Alt+G (для Windows и Linux) или Option+G (для macOS). Альтернативно вы можете щелкнуть правой кнопкой мыши рядом с комментарием и выбрать «Создать код» .
Gemini Code Assist генерирует код под вашим комментарием в виде призрачного текста.
Необязательно: Чтобы принять сгенерированный код, нажмите Tab .
Подскажите Gemini Code Assist с выбранным кодом в чате
Gemini Code Assist может выполнять задачи или отвечать на ваши вопросы на основе выбранного вами кода. Чтобы получить сгенерированный код на основе приглашения с выбранным кодом, выполните следующие действия:
На панели действий нажмите «Включить Gemini Code Assist» , чтобы открыть окно инструмента Gemini Code Assist .
В файле кода выберите блок кода.
В текстовом поле окна инструмента Gemini Code Assist введите запрос для выбранного кода.
Например, выберите функцию в своем коде и введите приглашение
Write a unit test for this function.
Gemini Code Assist использует выбранный вами код в качестве ссылки и отвечает на ваш запрос.
Необязательно: измените сочетание клавиш для генерации кода.
Если сочетание клавиш по умолчанию для создания кода не работает, как описано в предыдущем разделе, вы можете изменить сочетание клавиш, выполнив следующие действия:
В интегрированной среде разработки нажмите «Файл» (для Windows и Linux) или «Код» (для macOS), а затем выберите «Настройки» > «Сочетания клавиш» .
Прокручивайте список сочетаний клавиш, пока не найдете Gemini Code Assist: Generate code .
Нажмите «Gemini Code Assist: создать код» , а затем нажмите edit привязку клавиш» .
В появившемся диалоговом окне введите собственный ярлык.
Нажмите Enter (для Windows и Linux) или Return (для macOS).
Теперь вы можете использовать недавно назначенное сочетание клавиш для генерации кода с помощью Gemini Code Assist.
Дополнительные сведения об изменении сочетаний клавиш в интегрированной среде разработки см. в разделе Привязки клавиш для кода Visual Studio .
Перейдите к settings IDE и Project Settings > Settings > Keymap > Gemini Code Assist .
Щелкните правой кнопкой мыши Gemini Code Assist и выберите «Добавить сочетание клавиш» .
Введите предпочитаемое сочетание клавиш и нажмите «ОК» .
Щелкните правой кнопкой мыши Gemini Code Assist и выберите «Удалить Alt+G» (для Windows и Linux) или «Удалить Option+G» (для macOS).
Теперь вы можете использовать новое сочетание клавиш для создания кода в файле кода.
Получить завершение кода
Пока вы пишете код, Gemini Code Assist предлагает встроенные предложения по коду, также известные как автодополнение кода , которые вы можете принять или проигнорировать. Чтобы получить завершение кода, выполните следующие действия:
В файле кода на новой строке начните писать функцию. Например, если вы находитесь в файле Python, напишите
def
.Gemini Code Assist предлагает код в виде призрачного текста.
Чтобы принять предложение кода от Gemini Code Assist, нажмите Tab . В противном случае, чтобы проигнорировать это предложение, нажмите Esc или продолжите писать код.
В файле кода на новой строке начните писать функцию. Например, если вы находитесь в файле Python, напишите
def
.Gemini Code Assist предлагает код в виде встроенного предложения.
Чтобы принять предложение кода от Gemini Code Assist, нажмите Tab . В противном случае, чтобы проигнорировать это предложение, нажмите Esc или продолжите писать код.
Необязательно: если вы предпочитаете использовать другое сочетание клавиш для принятия встроенного предложения, наведите указатель на встроенное предложение и щелкните появившийся раскрывающийся список «Вкладка» . Затем выберите предпочитаемый ярлык или нажмите «Пользовательский» , чтобы ввести собственный ярлык.
Необязательно: отключить завершение кода.
Завершение кода включено по умолчанию. Если вы хотите отключить завершение кода, выполните следующие действия:
В IDE нажмите «Код» (для macOS) или «Файл» (для Windows и Linux), а затем перейдите в «Настройки» > «Настройки» .
На вкладке «Пользователь» диалогового окна «Настройки» выберите «Расширения» > «Gemini Code Assist» .
Прокрутите список до тех пор, пока не найдете список Duet AI: Встроенные предложения: Включить автоматически , а затем выберите «Выключить» .
Это отключает встроенные предложения. Вы по-прежнему можете нажать Control+Enter (для Windows и Linux) или Control+Return (для macOS), чтобы вручную активировать встроенные предложения.
В строке состояния вашей IDE нажмите spark Gemini Code Assist: Active» и выберите «Enable AI Code Completion» .
При этом параметр завершения кода отключается, и Gemini Code Assist больше не будет предлагать встроенные предложения, пока вы снова не включите этот параметр.
Используйте умные действия
Чтобы помочь вам повысить продуктивность и свести к минимуму переключение контекста, Gemini Code Assist предоставляет интеллектуальные действия на базе искусственного интеллекта непосредственно в вашем редакторе кода. Когда вы выбираете свой код в редакторе кода, вы можете просматривать и выбирать из списка действия, соответствующие вашему контексту.
Чтобы использовать интеллектуальные действия в своем коде, выполните следующие действия:
В файле кода выберите блок кода.
Рядом с выбранным блоком кода нажмите lightbulb Показать действия кода» .
Выберите действие, например «Создать модульные тесты» .
Gemini генерирует ответ, основанный на выбранном вами действии.
В файле кода выберите строку или блок кода.
Щелкните правой кнопкой мыши выбранный код и выберите интеллектуальное действие, например «Создать модульные тесты» .
Выбор интеллектуального действия автоматически предложит Gemini Code Assist сгенерировать ответ на запрос в окне инструмента Gemini Code Assist .
Используйте быстрое исправление преобразования кода
Если в вашем коде есть ошибка, Gemini Code Assist дает вам возможность быстро исправить ошибку с помощью преобразования кода.
Чтобы применить быстрое исправление в файле кода, выполните следующие действия:
В файле кода наведите указатель на волнистую линию ошибки и выберите «Быстрое исправление» , а затем выберите /fix .
После применения быстрого исправления появится представление различий. Чтобы принять эти изменения, нажмите «Принять» .
В файле кода щелкните красный значок лампочки ошибки, который указывает на ошибку в вашем коде, и выберите «Исправить с помощью Gemini» .
Когда исправление будет применено, появится представление различий. Чтобы принять эти изменения, нажмите «Принять» .
Запрашивайте конкретные файлы в вашем рабочем пространстве с учетом локальной базы кода.
Знание локальной базы кода помогает вам предлагать высококачественные предложения кода, которые являются синтаксически правильными и семантически значимыми в более широком контексте вашей кодовой базы, когда вы указываете файлы, которые Gemini Code Assist будет использовать в качестве контекста.
Чтобы указать файлы в приглашении чата, введите @ и выберите файлы, которые вы хотите указать.
Чтобы получить объяснение различий двух файлов в вашей кодовой базе, выполните следующие действия:
На панели действий нажмите spark Gemini Code Assist» .
На панели 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 также включает файлы, указанные вами в разделе «Источники контекста» .
Теперь, когда вы указали эти файлы, вы можете продолжать задавать дополнительные вопросы или подсказки в той же истории чата, не указывая файлы повторно.
Например: На панели Gemini Code Assist введите запрос How can I improve YOUR_FILE_NAME_1?
(без символа @ ) и нажмите Enter (для Windows и Linux) или Return (для macOS).
Gemini Code Assist ответит на ваш запрос о файле, указанном в запросе.
Необязательно: Исключите файлы из контекста с помощью файла .aiexclude.
Вы можете исключить файлы из контекста Gemini Code Assist, создав файл .aiexclude
. Синтаксис файла .aiexclude
аналогичен синтаксису файла .gitignore
со следующими отличиями:
- Пустой или несуществующий файл
.aiexclude
не блокирует файлы в своем каталоге и во всех подкаталогах. - Файл
.aiexclude
не поддерживает отрицание, при котором перед шаблоном ставится восклицательный знак (!
). - Файл
.aiexclude
жадно сопоставляет символ*
. Это будет соответствовать без разбора каталогам и файлам. Этот файл.aiexclude
не делает различий между**
и*
в отношении папок и файлов.
В настоящее время поддерживается только один файл .aiexclude
. Чтобы настроить файл .aiexclude
, создайте файл с именем .aiexclude
в корне папки вашего рабочего пространства.
Примеры
Следующие примеры демонстрируют, как можно настроить файл .aiexclude
:
Заблокируйте все файлы с именем
apikeys.txt
в каталоге рабочей области или ниже:apikeys.txt
Заблокируйте все файлы с расширением
.key
в каталоге рабочей области или ниже:*.key
Заблокируйте только файл apikeys.txt в том же каталоге, что и файл
.aiexclude
, но не любые подкаталоги:/apikeys.txt
Заблокируйте все файлы в каталоге
my/sensitive/dir
и во всех подкаталогах. Путь должен быть относительным к корневому каталогу рабочей области.my/sensitive/dir/*
Отключить предложения кода, соответствующие цитируемым источникам.
Gemini Code Assist предоставляет информацию о цитировании, когда он напрямую цитирует длинный источник из другого источника, например существующего открытого исходного кода. Дополнительную информацию см. в разделе «Как и когда Gemini цитирует источники» .
Чтобы вам не предлагался код, соответствующий цитируемым источникам, сделайте следующее:
На панели действий вашей IDE нажмите «Управление» > «Настройки» .
На вкладке «Пользователь» окна настроек перейдите в «Расширения» > «Gemini Code Assist» .
Прокрутите страницу, пока не найдете Duet AI > Декламация: максимальная процитированная длина .
Установите значение
0
.Gemini Code Assist больше не предлагает вам код, соответствующий цитируемым источникам.
Известные проблемы
В этом разделе описаны известные проблемы Gemini Code Assist:
Ответы чата могут быть обрезаны, если они содержат обновленную версию большого открытого файла.
Чтобы обойти эту проблему, выберите меньший фрагмент кода и включите в приглашение чата дополнительную директиву, например
only output the selected code.
Vim: невозможно принять или отклонить предложения по созданию кода, если только он не находится в режиме вставки.
При использовании плагина Vim в обычном режиме вы не можете принимать или отклонять предложения кода.
Чтобы обойти эту проблему, нажмите i , чтобы войти в режим вставки, а затем нажмите Tab , чтобы принять предложение.
Vim: непоследовательное поведение при нажатии Esc для отклонения предложений.
При нажатии Esc предложения как IDE, так и Gemini отклоняются. Это поведение отличается от поведения, не связанного с Vim, когда нажатие Esc повторно запускает Gemini.
Попытки входа продолжаются по таймауту
Если время попыток входа в систему истекает, попробуйте добавить параметр
cloudcode.beta.forceOobLogin
в файлsettings.json
:"cloudcode.beta.forceOobLogin": true
Предупреждения о повторении лицензии не сохраняются между сеансами.
Если предупреждения о повторении лицензии не сохраняются между сеансами, обратитесь к постоянным журналам:
Нажмите «Просмотр» > «Вывод» .
Выберите «Помощь по коду Gemini — Цитаты» .
Проблемы с подключением в окне вывода 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
Известных проблем с Gemini Code Assist для IntelliJ и других поддерживаемых IDE JetBrains нет.
Оставить отзыв
Чтобы оставить отзыв о своем опыте, выполните следующие действия:
В строке состояния нажмите spark Gemini Code Assist» , а затем в меню «Быстрый выбор» выберите «Отправить отзыв» .
В форме заполните поля «Заголовок» и «Комментарии» .
Если вы хотите поделиться своими журналами Skaffold или AI Companion, обязательно выберите параметр « Отправить журналы Skaffold» или «Отправить журналы AI Companion» .
Нажмите «Отправить отзыв» .
В строке состояния нажмите spark Gemini Code Assist» , а затем в меню выберите «Отправить отзыв» .
В текстовом поле вверху формы введите свой отзыв.
Если вы хотите поделиться журналами Gemini Code Assist, обязательно выберите файлы журналов.
Нажмите «Отправить отзыв» .
Что дальше
- Узнайте , как Gemini for Google Cloud использует ваши данные .
- Узнайте о ценах на Gemini Code Assist .