В этом документе описывается, как использовать функцию настройки кода Gemini Code Assist , и приводятся некоторые рекомендации. Эта функция позволяет получать рекомендации по написанию кода, основанные на внутренних библиотеках, закрытых API и стиле кодирования вашей организации.
Прежде чем начать
Как использовать настройку кода
В следующей таблице перечислены способы использования настройки кода Gemini Code Assist:
| Форма | Как вызвать | Примечания и ресурсы | 
|---|---|---|
Чат на естественном языке  | Введите подсказку на естественном языке в чате Gemini Code Assist в IDE.  | Примите во внимание следующее: 
 Более подробную информацию можно найти в разделе Чат с Gemini Code Assist .  | 
| Сгенерировать код | На панели быстрого выбора в IDE, с выделенным кодом или без него, нажмите Command+Enter (в macOS) или Control+Enter . | Для получения дополнительной информации см. раздел Генерация кода с подсказками . | 
| Преобразовать код |  На панели быстрого выбора в вашей IDE, с выделенным кодом или без него, введите /fix . | Для получения дополнительной информации см. раздел Генерация кода с подсказками . | 
| Автозаполнение | Настройка кода запускается автоматически и предоставляет рекомендации на основе того, что вы пишете. | Примите во внимание следующее: 
 Для получения дополнительной информации см. раздел Получение автодополнения кода .  | 
| Контекст удаленного репозитория | 
  | Примите во внимание следующее: 
 Дополнительную информацию см. в разделе Получение более релевантных предложений с использованием контекста удаленного репозитория .  | 
Варианты использования и примеры подсказок
В следующей таблице приведены рекомендации и примеры использования настройки кода в конкретных случаях использования:
| Вариант использования | Что стоит попробовать | 
|---|---|
| Написание нового кода | Чтобы сгенерировать код в IDE или чате Gemini Code Assist, попробуйте выполнить следующие действия: 
 Попробуйте сгенерировать код с помощью следующих подсказок в чате Gemini Code Assist: 
 После того как вы сгенерируете код, попробуйте воспользоваться подсказкой для его улучшения: 
  | 
| Очистка, упрощение и рефакторинг кода | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Читабельность | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Обзор кода | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Отладка | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Обучение и адаптация | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Миграция | Попробуйте следующие подсказки в чате Gemini Code Assist: 
 Попробуйте следующий рабочий процесс преобразования на основе чата или генерации кода с использованием подсказок: 
  | 
| Создание документации | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
| Генерация модульных тестов | Попробуйте следующие подсказки в чате Gemini Code Assist: 
  | 
Лучшие практики
- Используйте соответствующие имена переменных и функций или фрагменты кода. Это поможет вам настроить код, выбрав наиболее подходящие примеры.
 - Используйте репозитории индексов, которые вы хотите масштабировать, и избегайте добавления устаревших функций. Настройка кода помогает масштабировать код с учётом стиля, шаблонов, семантики кода, знаний и реализаций по всей кодовой базе. Неудачными примерами репозиториев для масштабирования являются устаревшие функции, сгенерированный код и устаревшие реализации.
 -  Для случаев извлечения кода используйте функцию генерации кода вместо автодополнения . Используйте подсказки, например: «Используя определение 
FUNCTION_NAME, сгенерируйте точно такую же функцию» или «Сгенерируйте точную реализациюFUNCTION_NAME». - Включите или импортируйте в файл код, который вы хотите извлечь, чтобы улучшить контекстную осведомленность Gemini.
 - Выполняйте только одно действие для каждого запроса. Например, если вы хотите получить код и реализовать его в новой функции, выполните эти шаги для двух запросов.
 - В случаях, когда вам нужно больше, чем просто код (например, объяснение кода, план миграции или объяснение ошибок), используйте настройку кода для чата, где вы общаетесь с Gemini на основе вашей кодовой базы в контексте.
 - Обратите внимание, что генерация модели ИИ недетерминирована . Если вы не удовлетворены ответом, повторное выполнение того же запроса может дать лучший результат.
 - Обратите внимание, что генерация модульных тестов обычно работает лучше, если вы откроете файл локально, а затем в чате попросите сгенерировать модульные тесты для этого файла или определенной функции.
 
Получайте более релевантные предложения с учетом контекста удаленного репозитория
Вы можете получать более контекстно-зависимые и релевантные предложения по коду, указав Gemini Code Assist сосредоточиться на конкретных удалённых репозиториях. Используя символ @ в чате, вы можете выбрать один или несколько репозиториев, которые будут использоваться в качестве основного источника контекста для ваших подсказок. Это полезно, когда вы работаете над задачей, которая в основном связана с определённым набором микросервисов, библиотек или модулей.
Чтобы использовать удаленный репозиторий в качестве контекста, выполните следующие действия в чате вашей IDE:
- Начните запрос с символа @ . Появится список доступных удалённых репозиториев, которые индексируются.
 - Выберите из списка репозиторий, который вы хотите использовать для контекста. Вы также можете начать вводить имя репозитория, чтобы отфильтровать список.
 - После выбора репозитория напишите остальную часть приглашения.
 
Затем Gemini отдаст приоритет выбранному репозиторию при формировании ответа.
Примеры подсказок
Вот несколько примеров того, как можно использовать эту функцию:
-  Чтобы понять репозиторий:
-  " @ 
REPOSITORY_NAMEКакова общая структура этого репозитория?" -  « @REPOSITORY_NAME Я новый член команды. Можете ли вы дать мне обзор назначения этого репозитория и 
REPOSITORY_NAMEключевых модулей?» 
 -  " @ 
 -  Для генерации и модификации кода:
-  " @ 
REPOSITORY_NAMEРеализуйте функцию аутентификации, аналогичную той, что есть в этом репозитории." -  " @ 
REPOSITORY_NAMEВыполните рефакторинг следующего кода в соответствии с соглашениями выбранного репозитория." -  " @ 
REPOSITORY_A_NAMEКак я могу использовать последние функции из этого репозитория для улучшения своего кода вREPOSITORY_B_NAME?" 
 -  " @ 
 -  Для тестирования:
-  " @ 
UNIT_TEST_FILE_NAMEСгенерировать модульные тесты дляMODULEна основе примеров в выбранном файле." 
 -  " @ 
 
Используя удаленные репозитории в качестве целевого источника контекста, вы можете получать более точные и релевантные предложения от Gemini Code Assist, которые помогут вам писать код быстрее и эффективнее.