Делиться

7 ноября 2024 г.

Улучшение работы помощников ИИ-кодирования с помощью длинного контекста моделей Gemini

Бэян Лю

Источниковая графика

Пейдж Бейли

Инженер по опыту разработчиков ИИ

Вишал Дхармадхикари

Инженер по продуктовым решениям

Герой витрины Sourcegraph

Одной из самых захватывающих областей применения длинных контекстных окон является генерация и понимание кода. Большие кодовые базы требуют глубокого понимания сложных взаимосвязей и зависимостей, чего традиционным моделям ИИ трудно достичь. Увеличивая объём кода с помощью больших контекстных окон, мы можем выйти на новый уровень точности и полезности генерации и понимания кода.

Мы сотрудничали с Sourcegraph, создателями ИИ-помощника по кодированию Cody , поддерживающего программы LLM, такие как Gemini 1.5 Pro и Flash , чтобы изучить потенциал длинных контекстных окон в реальных сценариях кодирования. Стремление Sourcegraph к интеграции поиска и аналитики кода в генерацию кода на основе ИИ, а также успешное внедрение Cody на предприятиях с большими и сложными кодовыми базами, таких как Palo Alto Networks и Leidos, сделали их идеальным партнёром для этого исследования.

Подход и результаты Sourcegraph

Sourcegraph сравнил производительность Cody с контекстным окном размером в 1 млн токенов (с использованием Gemini 1.5 Flash от Google) с его рабочей версией. Это прямое сравнение позволило им выделить преимущества расширенного контекста. Они сосредоточились на ответах на технические вопросы — важнейшей задаче для разработчиков, работающих с большими кодовыми базами. Они использовали набор данных со сложными вопросами, требующими глубокого понимания кода.

Результаты оказались поразительными. Три ключевых показателя Sourcegraph — полнота, краткость и полезность — продемонстрировали значительные улучшения при использовании более длинного контекста.



  • Важное припоминание: доля важных фактов в ответе существенно возросла.

  • Основная краткость: Доля основных фактов, нормализованных по длине ответа, также улучшилась, что указывает на более краткие и релевантные ответы.

  • Полезность: общий показатель полезности, нормализованный по длине ответа, значительно увеличился, что указывает на более удобный пользовательский интерфейс.

Альтернативный текст для этого: Столбчатая диаграмма, показывающая улучшение качества между Code base и Cody с Gemini 1.5 Flash

Более того, использование моделей с длинным контекстом значительно снизило общую частоту галлюцинаций (генерации фактически неверной информации). Частота галлюцинаций снизилась с 18,97% до 10,48%, что значительно повысило точность и надёжность.

Столбчатая диаграмма, показывающая разницу в частоте галлюцинаций между базой кода и Cody с Gemini 1.5 Flash

Компромиссы и будущее направление

Несмотря на значительные преимущества длинного контекста, существуют и недостатки. Время до появления первого токена линейно увеличивается с длиной контекста. Чтобы смягчить этот эффект, Sourcegraph реализовал механизм предварительной выборки и архитектуру многоуровневой контекстной модели для кэширования состояния выполнения модели. В моделях длинного контекста Gemini 1.5 Flash и Pro это позволило оптимизировать время до появления первого токена с 30–40 секунд до примерно 5 секунд для контекстов размером 1 МБ, что является значительным улучшением для генерации кода в реальном времени и технической поддержки.

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

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

Комнаты

Расширение возможностей взаимодействия с аватаром с помощью текстовых и аудиовозможностей Gemini 2.0