fbpx
15.5 C
София

Изкуственият интелект Copilot вече пише много добър код. Дали програмистите ще останат без работа?

Най-четени

Даниел Десподов
Даниел Десподовhttps://www.kaldata.com/
Новинар. Увличам се от съвременни технологии, информационна безопасност, спорт, наука и изкуствен интелект.

Изключително адекватен код„, „малко плаши„, „безумно полезен“ –  такива са отзивите на програмистите, които са пробвали работата на Copilot от GitHub. Това е новият изкуствен интелект, който преобразува естествения език в сорс-код. Тази нова технология се базира на съвсем нова ИИ система, разработен от OpenAI –  компанията, която създаде ИИ от ново поколение и дълго време на никого не даваше достъп до него.

Какво е Copilot?

OpenAI  преди няколко прогърмя в целия свят със своя усъвършенстван алгоритъм за обработка на естествения език. Тогава финансираната от Илън Мъск изследователска организация с нестопанска цел съобщи за революционнен изкуствен интелект, който умее да довършва новините и литературните произведения, написани на английски език. Базирайки се само на няколко реда, изкуственият интелект завършва текста по такъв начин, че той стилистично и тематично съответства на оригинала.

Оттогава алгоритмите за обработка на речта значително се подобриха. AI е добре обучен и вече е в състояние да създава текстове, които са на практика неразличими от това, което човек пише. OpenAI смята тази система, наречена GPT-3, за твърде опасна: в грешни ръце тя може да бъде твърде зловредно оръжие.

Това обаче не пречи на OpenAI да даде ограничен достъп до GPT-3 на някои свои доверени партньори. Microsoft дори сключи договор за изключителните права за използване на новия ИИ алгоритъм на тази невронната мрежа.

Всъщност Copilot е самият краен продукт, който бе създаден благодарение на GPT-3. Това е виртуален партньор за програмистите, електронен невронен асистент, който е обучен да използва различни програмни езици и фреймуъркове. Той анализира кода, който програмистът пише и в зависимост от контекста предлага вмъкване на цели редове или функции.

„Купуването на абонамент за Copilot води до значително повишаване на производителността на разработчиците. Все едно Dell за $700 да бъде заменен с MacBook Pro за $2500“.

GitHub е най-голямото хранилище за отворен код в интернет и е собственост на Microsoft. ИИ Copilot е обучен чрез многото милиарди редове сорс код, които огромен брой програмисти програмисти от целия свят съхраняват в GitHub.

Преди време бяха направени опити за съвместяване работа на GPT-3 със сорс кода на програмистите, но меко казано тези опити бяха твърде неуспешни и точността бе около 0%. Като взеха за база този алгоритъм с елементи на изкуствен интелект, разработчиците създадоха и обучиха друг ИИ – OpenAI Codex, който може да преобразува естествения човешки език в с код. Именно той е в основата на Copilot

Copilot бе реализиран като плъгин за популярния редактор на сорс код Microsoft Visual Studio Code. Той поддържа най-популярните езици за програмиране, но засега широката общественост няма достъп до него. Към днешен ден ИИ Copilot е на етап техническо тестване, като достъпът до него се дава само чрез покани.

Какво мислят разработчиците

През месец август тази година създателите на OpenAI проведоха мащабна презентация, на която показаха по какъв начин новият алгоритъм се съобразява с контекста на работата и в режим на чат отговаря на екип от програмисти, коригирайки своя код. Така например, ако един от разработчиците каже „Изведи Hello, world!“ алгоритъмът извежда фразата Hello, world!. След подаването на командата тази фраза да бъде повторена пет пъти чрез използването на цикъла for, алгоритъмът пет пъти извежда същата фраза на конзолата, а на съседния програмен прозорец се извежда сорс-кода, който е бил генериран от изкуствения интелект за осъществяването на тази операция.

На най-обикновен човешки език разработчиците подават команда фразата Hello, world! да бъде изведена в уеб страница, като се задават шрифта и местоположението на текста, а след това се подава команда за стартирането на локален сървър за хостването на тази страница. Алгоритъмът генерира необходимия код, програмистът въвежда IP адреса в браузъра и може да разгледа тази съвсем опростена уеб-страница.

„Тези неща са една съвсем неинтересна част от програмирането“ – обяснява активно ръкомахайки един от разработчиците на OpenAI.

Той е на мнение, че алгоритъмът поема върху себе си цялата скучна част от програмирането, като в същото време програмистът може да отдели повече време на най-интересното и полезното – разбиране на проблема, съставяне на план за неговото решаване и самото решаване на проблема с помощта на код.

„Алгоритъмът е виждал и запомнил всички възможни начини на използването на кода от страна на хората. Той е обучен с помощта на почти всичкия достъпен публичен сорс-код. Той наистина ускорява моята работа като програмист и поема върху себе си цялата скучна част, така че аз мога да се фокусирам върху най-полезното и най-интересното“ – споделя разработчик от OpenAI, който се представя просто като Грег.

Страхуват ли се програмистите от близкото бъдеще?

Работата с Copilot от една страна изглежда впечатляваща, а от друга – плашеща. IT сферата за мнозина е нещо като тихо пристанище, спокойствието в което може да бъде нарушено едва ли не само от една ядрена зима. Но Copilot е звън от бъдещето: машините съвсем скоро ще вземат работата не само на таксиметровите шофьори и на касиерите, но и на своите създатели. Разработчикът просто пише това, което трябва да се получи, а ИИ пише кода вместо теб. Всъщност върши точно това, което върши програмистът.

Съвсе не става дума са за извеждането на екрана на класическата фраза Hello, world. Новият ИИ Copilot без проблеми се оправя както с алгоритмите, така и с твърде редките задачи с итерация по масиви със зададени уникални условия.

Трябва ли програмистите да се страхуват от Copilot? Първо, те съвсем логично отбелязват, че това не е първият изкуствен помощник за съвместно програмиране. От няколко години се използва Tabnine – ИИ асистент, който може автоматично да довършва започнатия от програмиста код. Само че Copilot може да генерира цялостни функции и подпрограми, съставени от голям брой редове, може да добавя коментари и пояснения, да тества написания код и още много други.

Нещо повече, Copilot понижава прага за навлизане в програмирането. На всеки, който използва този ИИ не се налага да помни и дори да знае точно определения синтаксис на конкретния програмен език или реализацията не една или друга негова характерна особеност. Често пъти е напълно достатъчно потребителят само да опише със свои думи какво иска. Това икономисва много време при програмирането и не се налага търсенето на типични блокове код в Google. Copilot явно ще бъде един нов и много добър инструмент ускоряващ програмирането.

Второ, Copilot се обучава с помощта на общодостъпен код публикуван под различни лицензи, което води до юридически проблеми за хората, които използват помощта на изкуствения интелект. В някои случаи това може да се счете за нарушение на лиценза, което може да доведе до ново атестиране на работата на програмиста. Това означава, че възникват проблеми с авторското право: някой може да каже, че Copilot подтиква разработчиците към копиране на чуждия код, защитена с авторски права. При програмирането за търговски цели дори и най-малкото съмнение по този повод може да спре компанията от внедряването на подобен инструмент в своите процеси.

Създателите на Copilot подчертават, че сорс кодът написана с помощта на този ИИ принадлежи на съответния програмист, който носи съответната отговорност. Обучаването на новия изкуствен интелект с помощта на общодостъпни данни се счита за добросъвестно използване на машинното обучение в тази общност.

По принцип тези схващания извращават цялата идея на отворения сорс код.

Трето Copilot не винаги пише достатъчно добър код. ИИ алгоритъмът е обучавана с помощта на общодостъпен код от GitHub. Там са записани проектите не само на най-добрите програмисти, но и на посредствените и на съвсем начинаещите. Ето защо като цяло се получава нещо средно, което невинаги е полезно на програмиста.

Но всичко това са подробности. Разбира се, колкото и умна да е една невронна мрежа, тя не може веднага да преобърне тази многотомна индустрия. От друга страна специалистите реагират на нейната поява като към от една страна полезен, а от друга – враждебен инструмент. Той може рязко да увеличи производителността на програмиста, да го избави от необходимостта да търси типичните блокове от сорс-код в Google, но едва ли ще е полезен за човек, който е твърде далеч от програмирането и не може да използва дебъгер и профайлър.

В наши дни стигнахме дотам кодът да пише код, а роботите да сглобяват роботи. Малко е тъжно да виждаме как човекът малко по малко става все по-безполезен.


Коментирайте статията в нашите Форуми. За да научите първи най-важното, харесайте страницата ни във Facebook, и ни последвайте в Telegram и Viber или изтеглете приложението на Kaldata.com за Android, iOS и Huawei!

Абонирай се
Извести ме за
guest

12 Коментара
стари
нови оценка
Отзиви
Всички коментари

Нови ревюта

Подобни новини