Репетиції з AI: як Edtech-стартап використовує ChatGPT для імітації технічних співбесід

Радий бачити! Я Павло Тимофєєв, Full Stack Developer в Edtech-стартапі Mate academy. Наші девелопери постійно шукають рішення для вдосконалення власної LMS-платформи.

У цьому блозі я хочу поділитись досвідом використання ChatGPT з освітньою метою та як це дозволило вплинути на ефективність навчання. І ще розкажу, чому ми вирішили нічого не робити з читерством від студентів на етапі їх взаємодії з АІ.

Дисклеймер: у цьому тексті буде багато слів техчеки та автотехчеки. Щоб було менш сплутаності, одразу напишу, що:

  • техчеки — це пробні технічні інтервʼю, що практикуються в нашому навчальному курсі;
  • автотехчеки — це тренажер для студентів на основі АІ, який є підготовкою до тех-чеків. Про нього і піде мова.

Автотехчеки з AI: як виникла ідея

Для контексту моєї розповіді, уточню, що процес навчання передбачає, що ментори на регулярній основі роблять зріз знань студентів. На курсі повного дня це зазвичай відбувається раз на два тижні. Ми називаємо це техчеки.

Фактично, це імітація технічних інтерв’ю, де ментор ставить питання студенту по конкретній темі, вони відповідають та отримують фідбек, що було супер, а що було не дуже і що варто підтягнути, а що не варто казати.

Щоб не провалити техчеки, студенти мають готуватись за планом навчального матеріалу на платформі. Раніше ми давали список запитань за темами, які теоретично ментори можуть ставити на техчеках і які можуть з’являтись на інтерв’ю в компаніях.

Задача студентів була вміти відповідати на ці питання голосом, використовуючи коректну термінологію та наводячи практичні приклади. Для цього ми рекомендували їм тренуватись перед дзеркалом, дружиною, братом, батьками, домашніми тваринами 🙂... і вже приходити підготовленими на техчек з ментором. Класичний навчальний формат: готуєшся і складаєш.

Але дзеркало, на жаль, не надає фідбек на етапі підготовки. Тобто вже був певний процес автотренування, але ми прагнули вивести його на новий суттєвий рівень, щоб покращити якість засвоєння матеріалу.

Ще до появи ChatGPT ми планували робити своє homegrown-рішення, яке б просто аналізувало надиктовані відповіді студентів і давало певну оцінку. Але в процесі появи ChatGPT мій колега Python Developer Данило Тютюшкін (Даня, привіт 👋) влучно підмітив, що моделька може аналізувати відповіді студентів і давати цілком валідні коментарі. Так у Данила виникла ідея використати саме ChatGPT для реалізації.

Ми протестили її на proof of concept, що довело нам резонність рухатись далі. Демо, яке Данило показав працівникам Mate, вразило своєю зручністю, ефективністю та потенціалом. Моя задача, своєю чергою, полягала в розробці процесу та інтеграції цього рішення до нас на LMS-платформу.

Задача автотехчеків

У нас є загальний тренд використовувати гейміфікацію навчального процесу аби підвищити його ефективність. За останній час було випущено декілька фіч, які надають студентам ще одну причину повертатись та розвʼязувати задачі кожен день — дошка лідерів, стріки, персональні досягнення 🏅та інші.

Основна місія автотехчеків — підвищити успішність студентів на звичайних техчеках і, як наслідок, на реальних технічних інтервʼю згодом. Ця практика жодним чином не покликана замінити спілкування з опонентом (ментором чи інтервʼюером), бо тут також грають роль інші фактори — вміння пояснювати відповідь, хвилювання, володіння іноземними мовами тощо.

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

Тобто ми лише впровадили ще один додатковий етап у навчальному процесі. А дзвінок з ментором залишається обов’язковим і це ключовий елемент процесу навчання.

Як це працює

Наразі студенти можуть вибрати набори питань з усіх напрямків, які доступні для навчання — Full-stack, Java, Python, QA, UI/UX та Recruitment. Нові набори питань постійно додають ментори.

Кожен набір складається з 5-10 питань, обʼєднаних загальною темою.

Студент отримує коротке запитання та має надиктувати свою відповідь в мікрофон.

Система автоматично транскрибує надиктовану відповідь у текстовий формат. Є можливість відредагувати певний відсоток відповіді в разі неправильного розпізнавання.

Далі відповідь аналізується засобами штучного інтелекту, а саме моделлю GPT-3.5. У відповідь студент отримує оцінку та відгук щодо відповіді.

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

Для порівняння: стандартний техчек (пробне технічне інтерв’ю) зазвичай проводиться за участі одного ментора та 4-6 студентів. При цьому за годину-півтори, поки він триває, кожен студент встигає відповісти на 4-6 запитань без врахування доповнень відповідей інших студентів.

З власного досвіду можу сказати, що якщо ментор проводить більш як два техчеки на день, то якість третього і наступних може знизитись через банальну втому. Водночас студент теоретично за півтори години використання автотехчеків може відповісти на 20-30 запитань. І АІ при цьому не стомлюється, даючи розгорнутий фідбек щодо кожної відповіді.

Що робимо з читерством

Так, на автотехчеці студент може відкрити все на екрані комп’ютера і просто зачитати правильну відповідь. Ми це жодним чином не задетектимо і блокувати не будемо, тому що це як гребти проти течії.

Але з іншого боку, якщо людина вже знайшла документацію, вже прочитала той матеріал, який має знати, і надиктувала його у мікрофон один або декілька разів, то це вже хороша практика. Студент буде вже більш готовий до відповіді на це питання на інтерв’ю з ментором, ніж був до цього. І можете бути впевнені, на інтервʼю з ментором з папірця вже ніхто не читає 🧑‍🏫.

Але більшість студентів насправді розуміють, що на реальному інтерв’ю з лайв-кодингом навряд буде доступ до СhatGPT, тому мають доволі відповідальне ставлення і до автотехчеків. Вони усвідомлюють, що техчеки — це те тренування, яке дозволить їм менше хвилюватись на реальних співбесідах з компаніями.

А автотехчеки — це додатковий інструмент, який дозволяє тренуватись будь-коли та на будь-яких темах та запитаннях.

Що тримаємо на контролі

Наразі для автотехчеків ми використовуємо модель GPT-3.5. Якщо оцінювати ефективність та коректність, то у десь 80% випадків на етапі тестування коментарі та оцінка чату збігались з фідбеком, який ментор дав би на таку саму відповідь.

Але іноді трапляється таке, що коментарі АІ суперечать одне одному. Десь він вимагає повнішої відповіді, а в наступному випадку вважає, що можна було впоратись і меншою кількістю тексту. Тому ми постійно тестуємо різні варіанти запитів до моделі, щоб результат був максимально наближеним до бажаного.

Також ми уважно слідкуємо за перфомансом студентів на звичайних техчеках. Теми, які викликають найбільше складності — перші претенденти на покриття цього матеріалу автотехчеками.

Дещо зі статистики замість висновків

Найголовніше — це відгуки студентів про фічу. А вони дуже позитивні. Студенти навіть змагаються між собою, хто отримає вищий відсоток правильності відповідей від модельки. Що є підтвердженням того, що наша ставка на гейміфікацію спрацювала.

За час роботи фічі в продакшені, а це неповні 3 місяці, студенти вже завершили понад 3500 автотехчеків. І це, варто зазначити, при тому, що ми ще не зробили таку практику обовʼязковою 🙂

Найпопулярніша мова відповіді — українська (більш ніж 85% у загальній кількості автотехчеків). Тут ми зробили два висновки:

  • Нам потрібно інвестувати ресурси першочергово в покращення якості розпізнавання української мови. Це був найбільший «негативний» фідбек щодо фічі від юзерів після релізу.
  • Потрібно заохочувати студентів проходити пробні інтервʼю також і англійською. Це не тільки дозволить їм краще підготуватись до співбесід з іноземними роботодавцями, але і одночасно надасть додаткову розмовну практику.

З доступних напрямків — найактивнішими юзерами фічі виявились студенти QA-напрямку (майже 27% із всіх користувачів). Цілком логічно, що від них ми отримали і найбільше релевантних відгуків і баг-репортів 🙂

👍ПодобаєтьсяСподобалось9
До обраногоВ обраному3
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Працюю з ChatGPT 3.5 майже кожен день — досить спірний інструмент для верифікації правильності відповідей.
Щодо базових тем, ймовірно, він даватиме правильну відповідь, але якщо розглянути глибшу технічну реалізацію, правильність відповідей коливається від 0 до 40 відсотків. Він може згодитися з неправильними відповідями та пропонувати неіснуючі рішення.
У таких випадках студент може повірити у свою правоту та працювати зі не достовірною інформацією, як істинною, що негативно вплине на його навчання (перенавчання є складнішим, ніж вивчення вперше), і, звісно ж, зіпсує його співбесіду.
Наприклад, у тестових завданнях часто видно код, який написав ChatGPT, а не кандидат.
В цілому, як спроба оптимізувати час за рахунок якості — відмінно.

Вважаю, що це крута практика і в майбутньому буде більш широко використовуватись. На разі ж ви одні з перших, хто крокує в цьому напрямку і юзаєте джіпіті для автоматизації чекінгу. Круто!

20% некоректної інформації, звісно, було б великою проблемою. Але в даному випадку мова йде трохи про їнше.

У 80% відсотках ментор підтримав би фідбек, отриманий від ШІ. У решту 20% попадають завищені або занижені бали за відповідь, або пропущені важливі нюанси.

Кожне питання перед тим, як використовувати його в авто-тех-чеках, проходить перевірку на те, чи правильно його текст розуміє модель.
Але, звісно, модель не ідеальна — і якщо ми отримуєм фідбек від студентів про проблемні питання, то ці питання одразу ж виймаються з переліку та додатково тестуються.

Щодо порівняння із вчителем математики — відповіді ШІ є далеко не основним джерелом інформації для студентів. Вони лише доповнюють існуючий теоретичний матеріал та коментарі менторів на пробних співбесідах.

Дякую, що ділитися досвідом, Paul

Підкажіть, чи є кейси, коли ментор не підтримує відповідь ШІ? Скільки % таких відповідей?

Ручну модерацію відповідей студентів ми не проводимо. Враховуючи, що на даний момент це вже до тисячі відповідей на добу, то витрачати на це час не є рентабельним.

Більше уваги ми приділяємо написанню тексту питань та їх тестуванню перед релізом.

Для питань на нашому FullStack курсі я використовував наступні принципи:
1. Відповідь, згенерована самою моделлю на це ж питання — очікується оцінка від ШІ 90-100%
2. Декілька варіантів відповідей «по підручнику» — очікується 80-100%
3. 4-5 відповідей різними словами, що містять часткову інформацію — очікується 30-70%
4. Повна нісенітниця, прохання ігнорувати попередні інструкції, тощо — очікується 0%
Якщо десь є відхилення — то текст питання переписується і відправляється на додатковий раунд тестування.

Плюс, ми моніторимо відгуки студентів. Про це писав вище.

Прикольно! молодці!

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