GitHub зробив свій інструмент дописування коду на основі АІ загальнодоступним. Деталі

Copilot for Business — інструмент дописування коду на основі AI від GitHub відкрили для загального доступу. Інструмент коштуватиме розробникам $19 на місяць.

Раніше Copilot for Business був доступний лише корпоративним клієнтам (їх наразі близько 400).

👨‍💻 Про Copilot

GitHub разом з OpenAI вперше представили інструмент Copilot у 2021 році. Інструмент вбудовується у редактор коду як розширення, черпає контекст із коду розробника та пропонує кілька варіантів продовження коду — від кількох рядків до цілих функцій, тестів та, подекуди, складних алгоритмів. При цьому АІ поступово вчиться адаптуватися до індивідуального стилю та умов програмування кожної людини.

Код пропонується у режимі реального часу, усі пропозиції можна швидко прийняти або відхилити. Редактор можна використовувати будь-який: від Visual Studio до Neovim, VS Code або JetBrains IDE.

👀 Що нового додали до інструменту

У GitHub заявили, що Copilot тепер на основі штучного інтелекту тепер працює на основі вдосконаленої моделі OpenAI. Також підтримує з’єднання через проксі, включно з самопідписаними сертифікатами. Сама модель також вдосконалюється — тепер вона може не лише завершити рядки із кодом, а й пропонувати «заповнення середини» коду, переглядаючи задля цього пов’язані файли, над якими працює розробник, і використовуючи цю інформацію для створення своїх запитів.

«З моменту свого випуску Copilot покращив продуктивність понад одного мільйона розробників та допоміг їм кодувати на 55% швидше», — йдеться у блозі компанії.

✨ Майбутнє GitHub Copilot

Генеральний директор GitHub Томас Домке очікує, що незабаром Copilot зможе генерувати 80% коду розробника. Сьогодні цей показник становить приблизно 46% для усіх мов програмування — і 61% для Java, пише Tech Crunch.

В цілому ж, команда GitHub бачить за розвитком АІ майбутнє розробки ПЗ в цілому. У своєму блозі вони пишуть наступне.

«Створення програмного забезпечення ніколи не було складнішим, ніж зараз, і розробникам потрібні нові рішення. Розвиток АІ нині — найзначніша технологічна трансформація. Організації, які використовують АІ для розширення можливостей програмістів, виграють майбутнє. І це лише початок нашого бачення створення інтегрованого GitHub на основі штучного інтелекту.

У найближчі роки ми інтегруватимемо АІ у всі аспекти роботи розробників — від власне написання коду до запиту на підключення й до розгортання коду — для отримання найкращих результатів.»

TelegramВсе про українське ІТ в телеграмі — підписуйтеся на канал DOU

👍ПодобаєтьсяСподобалось5
До обраногоВ обраному0
LinkedIn



11 коментарів

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

Непогано, але не панацея, допомагає якщо розумієш код який воно генерує, джунам мабуть більше нашкодить

Насправді 80% генерує брєд, класно справляється тільки для генерування тестів для гетерів/сетерів, щоб обійти сонар покриття)

Ще добре справляється, коли в коді вже є щось подібне — як, наприклад, тест для кейсу з трошки іншими умовами. По суті, замінює копі-паст свого ж коду

Не обов’язково свого, часто пропонує хороші ідеї на основі коду з того ж StackOverflow (ну чи з інших репозиторіїв, бог його знає звідки він це вигадує).

ну то, що він бере для джави та джаваскрипта зі стековерфлоу — іноді великий фейспалм

Як уже написали, чудова штука поки розумієш той код, який генерується, і чому він саме такий.
Пишу в основному на плюсах, тому якщо щось не те генерується, то компілятор виправить.
Відмінно для шаблонного коду (не коду з шаблонами!), особливо для тестів, де припустимо писати одне й те саме багато разів.
Чудово генерує код для рутинних задач. Опишу вчорашню, де треба було зберігати дані в структурі з бітовими масками.
1. Copilot на третьому рядку нагенерував enum class, де я тільки імена вводив, запропонував створити None і All з відповідними значеннями.
2. Створив функцію *_to_string для цього переліку. В плюсах це задача на надцять рядків коду, а тут тільки довелося написати назву. З іншого боку, без нього я б замислився чи не написати це якось простіше з виводом «А{пробіл}Б{пробіл}Г{пробіл}», це зайняло б менше коду, який комусь потім, можливо, доведеться довше читати. Він же згенерував гарний правильний код для «А, Б, Г».
3. Щойно я написав перевірку чи існує елемент у JSON, запропонував відразу заповнити бітові значення за допомогою відповідних масок. Довелося тільки трохи поміняти типи, але це 15 секунд замість хвилини.
4. Раптом виявилося, що enum class потребує самостійно визначених операторів для бітових масок. 2 хвилини пошуків на StackOverflow, і я готовий їх писати. Але щойно я під цим переліком поставив Enter, він запропонував саме ці 3 перевантажені оператори. Вважаймо, що тут знову 15 секунд замість трьох хвилин.
Не завжди так щастить, але в цілому ця штука перевищила мої очікування. Є свої мінуси, код потрібно ретельно вичитувати, але зручно, що шаблонний код, який якразнаййбільше лінь писати, якраз працює найкраще.

Якщо коротко, то — агонь. Економія реальна. Не скажу, що 61% як в пості. Але 20% десь буде.
Основний недолік — контекст береться із файлу, що редагується, а не з усього проекту. Не знаю з чим це повязано. Якщо/коли це зафіксять, то економія часу пригне до 80-90%.
Ще один недолік — не працює з новими фічами мови. Наприклад, з рекордами в джаві все сумно.

Ну і ще — треба вміти ним користуватись. А саме — писати коменти до методів, давати нормальні імена методам, змінним і тд. Іншими словами — сопілоту потрібен контекст. Чим більше контексту — тим ідеальніша відповідь.

Цікаво, як використання Copilot корелюватиме з NDA більшості компаній.

Так само як і використання будь-яких інших ентерпрайз продуктів Гітхабу?

Code Snippets Data

GitHub Copilot transmits snippets of your code from your IDE to GitHub to provide Suggestions to you. Code snippets data is only transmitted in real-time to return Suggestions, and is discarded once a Suggestion is returned. Copilot for Business does not retain any Code Snippets Data.

А як ти використовуєш грамарлі?

Перша штука яка як на мене демонструє монетизацію із великої мовної моделі.

Підписатись на коментарі