Lad 2 Lad 1

Группа IT-компаний

  • Услуги
     
    Услуги
    Разработка
    Разработка ПО Решения на базе AI Интеллектуальные чат-боты Веб-разработка Разработка интернет-магазинов Мобильная разработка Разработка личного кабинета Разработка приложений Эвотор Тестирование программного обеспечения IT-аудит
    Интеграция
    Внедрение 1С:ERP Автоматизация учета Внедрение и сопровождение продуктов 1С Переход на 1С
    Дистрибуция
    1С Тензор Р7‑Офис Эвотор
     
  • Отрасли
     
    Отрасли
    Строительство Торговля, ритейл Производство Энергетика и ТЭК
     
  • Кейсы
  • Продукты
     
    Продукты
    Project Lad GPTZATOR
     
  • О компании
     
    О компании
    Структура Контакты Партнеры Карьера
     
  • Медиа
     
    Медиа
    Новости Мероприятия СМИ о нас Статьи
     
Связаться с нами Связаться с нами
 
  • Услуги
     
    Разработка
    Разработка ПО Решения на базе AI Интеллектуальные чат-боты Веб-разработка Разработка интернет-магазинов Мобильная разработка Разработка личного кабинета Разработка приложений Эвотор Тестирование программного обеспечения IT-аудит
    Интеграция
    Внедрение 1С:ERP Автоматизация учета Внедрение и сопровождение продуктов 1С Переход на 1С
    Дистрибуция
    1С Тензор Р7‑Офис Эвотор
  • Отрасли
     
    Строительство Торговля, ритейл Производство Энергетика и ТЭК
  • Кейсы
  • Продукты
     
    Project Lad GPTZATOR
  • О компании
     
    Структура Контакты Партнеры Карьера
  • Медиа
     
    Новости Мероприятия СМИ о нас Статьи
+7 (831) 233-36-66 Связаться с нами

 

Главная /  Медиа / 

#статьи

Что не так с вашим кодом, сгенерированным большими языковыми моделями?

 

02 августа 2024 года

~ 3 мин. на чтение


#цифровизация

Подпишитесь на рассылку полезных материалов

Электронная почта

Спасибо за подписку!

Вы сможете отказаться от нее в любой момент

#цифровизация

Содержание

Об исследовании

Основные выводы

Обзор китайского исследования кода, сгенерированного популярными LLM, от руководителя направления «Лад.Технологии» Ксении Плесовских


Об исследовании

Китайские ученые провели обширное исследование на 7 популярных LLM, генерируя с помощью них код, а потом выявляя и анализируя ошибки. Им удалось не только выявить и категоризировать наиболее частые закономерности ошибок, но и предложить метод их устранения.

Далее будет вольный краткий перевод с комментариями.

Для исследования были выбраны 7 моделей.

Об исследовании

Бенчмарк для оценки моделей включал все образцы из HumanEval+ и MBPP+, а также 600 образцов из APPS+, в общей сложности 1000 образцов. Кроме того, для оценки эффективности генерации кода LLM в реальных проектах ученые создали реальный эталонный тест RWPB из репозиториев GitHub, созданных в 2024 году.

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


Основные выводы

1. Код, сгенерированный моделями, обычно имеет меньше строк, но немного более высокую сложность, в то время как количество API аналогично количеству канонических решений. Примечательно, что код, сгенерированный Claude-3, имеет тенденцию включать меньше строк кода и более низкую сложность при использовании большего количества API, что, вероятно, связано с тем, что Claude-3 использует API для замены частей сложной реализации кода.

Основные выводы

Различия в характеристиках кода между кодом, сгенерированным моделями, и каноническими решениями на HumanEval+. CC обозначает цикломатическую сложность.

2. Неверный код содержит больше комментариев, чем верный код.
Для HumanEval+ неправильный код, особенно от Claude-3 и Deepseek‑Coder, имеет тенденцию иметь больше разнообразных комментариев, чем правильный код. Аналогично, в наборе данных APPS+ дополнительные модели имеют тенденцию включать комментарии как в правильный, так и в неправильный код, с тенденцией к получению более высокого медианного числа комментариев в неправильном коде.

Это явление можно объяснить двумя потенциальными факторами. Во‑первых, сложные проблемы, присутствующие в корпусах кода, используемых для обучения этих LLM, часто содержат больше комментариев. Следовательно, LLM могут научиться воспроизводить эту модель, что приведет к генерации большего количества комментариев при решении сложных задач. Во‑вторых, LLM могут генерировать дополнительные комментарии как форму контекстного или пояснительного контента, когда они не уверены в правильности сгенерированного кода. Однако эти комментарии не значительно повышают точность LLM, поскольку уровень корректности остается низким.

3. По мере того, как описания проблем в бенчмарках удлиняются и становятся более сложными, LLM испытывают трудности с выполнением требований формата ввода‑вывода и с большей вероятностью генерируют неполные синтаксические структуры. Это связано с тем, что более длинные и сложные описания проблем затрудняют для LLM запоминание деталей, а длина сгенерированного кода может привести к ошибкам, таким как непарные скобки.

4. Неправильное использование API составляет наибольшую долю runtime ошибок в большинстве бенчмарков. Существует три основных ошибки, связанных с неправильным использованием API: AttributeError (20,9%), TypeError (50%) и ValueError (26,9%). AttributeError возникает, когда делается недопустимая ссылка на отсутствующий атрибут API. TypeError возникает, когда API применяется к объекту неправильного типа, в то время как ValueError возникает, когда предоставляется аргумент правильного типа, но неподходящее значение.

5. Реализация алгоритма часто неоптимальна, как правило, с высокой временной сложностью, что не позволяет программе завершиться в установленные сроки. Для более сложных алгоритмических задач LLM, как правило, используют циклы или глубокий поиск без оптимизированных условий выхода. Кроме того, частое использование рекурсивных алгоритмов значительно увеличивает временную сложность.

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

Источник: Хабр

 

Подпишитесь на рассылку полезных материалов

Электронная почта

Спасибо за подписку!

Вы сможете отказаться от нее в любой момент

Медиа

Все медиа

 

Все материалы Новости Статьи
Все медиа

 

 

#Новости

Lad наградили за заботу о сотрудниках и карьерный рост

 

#Новости

Кейс внедрения Project Lad в книге «Любимый Нижний Новгород»

 

#Новости

ДМС в Lad: забота о здоровье сотрудников через «Кафетерий бенефитов»

 

#Новости

Lad на страницах книги «Любимый Нижний Новгород»

 

 

 

#Новости

Lad наградили за заботу о сотрудниках и карьерный рост

 

#Новости

Кейс внедрения Project Lad в книге «Любимый Нижний Новгород»

 

#Новости

ДМС в Lad: забота о здоровье сотрудников через «Кафетерий бенефитов»

 

#Новости

Lad на страницах книги «Любимый Нижний Новгород»

 

 

 

#Статьи

Реальные кейсы: как начать использовать нейросети и повысить эффективность бизнеса

 

#Статьи

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

 

#Статьи

Построение методики, автоматизация раздельного учета ГОЗ и формирования РКМ

 

#Статьи

Искусственный интеллект в действии: автоматизация бизнес-процессов с GPTZATOR

 

 

 

 

 

Написать в Telegram
Мы используем cookie. Это позволяет нам следить за работой сайта, а также использовать данные для улучшения услуг и продуктов. Посещая lad24.ru, вы соглашаетесь с обработкой ваших персональных данных. Подробнее

Услуги

Разработка ПО

Решения на базе AI

Интеллектуальные чат-боты

Веб-разработка

Разработка интернет-⁠магазинов

Мобильная разработка

Разработка личного кабинета

Разработка приложений Эвотор

Тестирование программного обеспечения

IT-аудит

 

Внедрение 1С:ERP

Автоматизация учета и управления

Внедрение и сопровождение 1С

Переход на 1С с SAP

1С

Тензор

Р7‑Офис

Эвотор

Отрасли И Направления

Строительство

Торговля, ритейл

Производство

Энергетика и ТЭК

Продукты

Project Lad

GPTZATOR

 

Кейсы

О компании

Структура

Контакты

Партнеры

Карьера

Медиа

Новости

Мероприятия

СМИ о нас

Статьи


Lad 3 Группа IT-компаний

Головной офис

ООО «ЛАД-Интеллект»
Входит в состав группы IT-компаний Lad

Адрес: 603093, г. Нижний Новгород, ул. Родионова, д. 23А, оф. 313

Телефон: +7 (831) 2-333-666

E-mail: contact@lad24.ru

© 1992-2025. Все права защищены

Политика обработки персональных данных Файлы cookie