Нещодавно Microsoft випустила нову версію всього свого програмного забезпечення з додаванням асистента зі штучним інтелектом (ШІ), який може виконувати різноманітні завдання за вас.
Copilot може підсумовувати усні розмови на онлайн-зустрічах Teams, представляти аргументи “за” чи “проти” певного питання на основі усних дискусій та відповідати на частину ваших електронних листів. Він навіть може писати комп’ютерний код.
Ця технологія, що швидко розвивається, здається, ще більше наближає нас до майбутнього, в якому ШІ полегшить наше життя і позбавить нас усіх нудних і повторюваних речей, які нам доводиться робити як людям.
Але хоча всі ці досягнення є дуже вражаючими та корисними, ми повинні бути обережними у використанні таких великих мовних моделей (ВММ). Попри їхню інтуїтивну природу, вони все ще вимагають навичок, щоб використовувати їх ефективно, надійно і безпечно.
Великі мовні моделі
LLM, тип нейронної мережі “глибокого навчання”, призначені для розуміння намірів користувача, аналізуючи ймовірність різних відповідей на основі наданої підказки. Отже, коли людина вводить запит, LLM вивчає текст і визначає найбільш вірогідну відповідь.
ChatGPT, яскравий приклад LLM, може надавати відповіді на підказки з широкого кола питань. Однак, попри те, що його відповіді здаються обізнаними, ChatGPT не володіє реальними знаннями. Його відповіді – це просто найбільш вірогідні результати, що ґрунтуються на заданому запитанні.
Коли люди надають ChatGPT, Copilot та іншим LLM детальний опис завдань, які вони хочуть виконати, ці моделі можуть досягти успіху в наданні високоякісних відповідей. Це може включати генерування тексту, зображень або комп’ютерного коду.
Але, як люди, ми часто розширюємо межі того, що може зробити технологія і для чого вона була спочатку розроблена. Як наслідок, ми починаємо використовувати ці системи для виконання тієї роботи, яку мали б робити самі.
Чому надмірне покладання на ШІ може стати проблемою
Всупереч їхнім, здавалося б, розумним відповідям, ми не можемо сліпо довіряти ШНМ в тому, що вони точні та надійні. Ми повинні ретельно оцінювати та перевіряти їхні результати, переконуючись, що наші початкові підказки відображені у наданих відповідях.
Щоб ефективно перевіряти та підтверджувати результати LLM, ми повинні мати глибоке розуміння предмета. Без цього ми не зможемо забезпечити необхідну гарантію якості.
Це стає особливо важливим у ситуаціях, коли ми використовуємо LLM для заповнення прогалин у наших власних знаннях. Тут наш брак знань може призвести до того, що ми просто не зможемо визначити, чи правильним є отриманий результат, чи ні. Така ситуація може виникнути при створенні тексту та кодуванні.
Використання штучного інтелекту для відвідування зустрічей і підбиття підсумків дискусії створює очевидні ризики щодо надійності.
Хоча запис зустрічі ґрунтується на стенограмі, нотатки все одно генеруються так само, як і інший текст від LLMs. Вони все ще базуються на мовних шаблонах і ймовірності того, що було сказано, тому потребують перевірки, перш ніж з ними можна буде діяти.
Вони також страждають від проблем з інтерпретацією через омофони – слова, які вимовляються однаково, але мають різні значення. Люди добре розуміють, що мається на увазі за таких обставин, завдяки контексту розмови.
Але ШІ не вміє виводити контекст і не розуміє нюансів. Тому очікування від нього аргументів на основі потенційно помилкової транскрипції створює ще більше проблем.
Верифікація ще складніша, якщо ми використовуємо ШІ для створення комп’ютерного коду. Тестування комп’ютерного коду за допомогою тестових даних – єдиний надійний метод перевірки його функціональності. Хоча це демонструє, що код працює за призначенням, це не гарантує, що його поведінка відповідає реальним очікуванням.
Уявімо, що ми використовуємо генеративний ШІ для створення коду для інструменту аналізу настроїв. Його мета – аналізувати відгуки про товари та класифікувати їх як позитивні, нейтральні або негативні. Ми можемо протестувати функціональність системи і переконатися, що код функціонує правильно – тобто, що він правильний з точки зору технічного програмування.
Однак уявіть, що ми розгортаємо таке програмне забезпечення в реальному світі, і воно починає класифікувати саркастичні відгуки про товар як позитивні. Системі аналізу настроїв бракує контекстуальних знань, необхідних для того, щоб зрозуміти, що сарказм не використовується як позитивний відгук, а зовсім навпаки.
Перевірка відповідності результатів роботи коду бажаним результатам у таких складних ситуаціях, як ця, вимагає експертних знань.
Непрограмісти не знатимуть принципів програмної інженерії, які використовуються для забезпечення коректності коду, таких як планування, методологія, тестування та документування. Програмування – це складна дисципліна, а програмна інженерія виникла як галузь для управління якістю програмного забезпечення.
Існує значний ризик, як показало моє власне дослідження, що нефахівці не помітять або пропустять критичні кроки в процесі розробки програмного забезпечення, що призведе до створення коду невідомої якості.
Валідація та верифікація
LLM, такі як ChatGPT та Copilot, є потужними інструментами, з яких ми всі можемо отримати вигоду. Але ми повинні бути обережними, щоб не сліпо довіряти отриманим результатам.
Ми знаходимося на самому початку великої революції, заснованої на цій технології. ШІ має безмежні можливості, але його потрібно формувати, перевіряти та верифікувати. І наразі люди – єдині, хто може це зробити.