Як пройшов AI HACKATHON 2023 в компанії HYS Enterprise?
Славнозвісний чат GPT, який не так давно став доступним в Україні, не залишив нікого байдужим. Взагалі тема штучного інтелекту зараз як ніколи актуальна: створюються курси, виходять статті та відео, проводяться мітапи на подібну тематику. Ми ж в HYS Enterprise вирішили, що найкращим знайомством з AI може бути у форматі хакатону, тому у липні провели AI Hackathon 2023 серед внутрішніх команд. Обрали журі та запропонували нашим колегам створити цікавий проєкт за два тижні на основі AI. Оцінювали креативність, складність проєкту, його benefit та найголовніше — відсоток коду написаного за допомогою AI чим — більше, тим краще.
У підсумку, отримали п’ять цікавих проєктів, про які хочемо розповісти й вам. Окрім мозкового штурму учасники мали й фінансову мотивацію, переможці отримали грошові призи, а 50% призового фонду ми спрямували у фонд «Госпітальєри» для збору на «Австрійку» — унікальний «стабілізаційних пунктів» на колесах, який перевозить одночасно лежачих та сидячих поранених бійців з прифронтових шпиталів до лікарень в тилу.
Тепер до справи, ми розповімо трішки про концепції проєктів та їх технічні складові. Можливо й ви знайдете для себе щось цікаве та інформативне.
WHAT’S INSIDE?
Андрій Красноярський, Front-End Developer at HYS Enterprise:
«Я отримав запит та ідею від моєї дружини. Вона хотіла розібратись у компонентах різних косметичних засобів, щоб аналізувати їх користь та таким чином вибрати найкращий з варіантів. Тому я створив аналізатор інгредієнтів продукту, а саме вебсайт, який пропонує комплексний аналіз компонентів, що містяться в косметиці, спортивних добавках та інших продуктах. Платформа дозволяє порівнювати різні композиції, щоб вибрати ідеальний продукт, який відповідає потребам людини й захищає від потенційних ризиків.»
Навіть перебуваючи у магазині, ви маєте змогу дізнатися аналіз складу продукту, адже є мобільна версія додатка. Фотографуєте етикетку зі складом, завантажуєте в програму та отримуєте відповідь чи фотографуєте відразу у програмі, адже і там є вбудована камера — головне обрізати усі зайві елементи на картинці та залишити лише інформацію про складники. Просто та зручно можна дізнатися про алергічні застереження, порівняти продукти, дізнатися про застереження й переваги.
Щодо технічної складової, аналіз запитів відбувається за допомогою gpt-3.5-turbo API. Запит аналізу складу включає тип продукту або продуктів, склад, параметри, які особливо цікавлять для оцінки й порівняння. У відповідь приходять параметри, якими можна порівняти та оцінити даний вид продукції (крім тих, що ми задаємо самі), структуровані дані, які можна використовувати для побудови графіка (відбувається валідація структури, щоб графік відображався коректно), і зрозумілий опис аналізу та порівняння. При аналізі компонентів відповідь містить лише опис кожного компонента.
Технічне завдання передбачало, що весь (або практично весь) код програми буде написаний за допомогою ChatGPT (або його аналогів), тобто за допомогою AI. Найскладнішим, на диво, виявилося створити найпростіший шаблон програми, тому що при запиті «створи красиву сторінку з такими полями та кнопками» результат був відверто поганий. Доводилося спочатку запитувати, які UI бібліотеки можна використовувати для створення сторінки. Потім попросити написати код сторінки буквально з однією кнопкою з використанням цієї бібліотеки. Вже маючи найпростіший скелет — доповнювати сторінку іншими полями, кнопками, графіками тощо (до речі, саме така ідея була у проєкту однієї з команд — створювати html сторінку за допомогою AI крок за кроком, починаючи з одного елемента). Все що стосується частини логіки програми, особливих труднощів не викликало, з цим chat GPT впорався досить добре, головне було правильно поставити питання.
Не менш цікавим, ніж створення програми виявилося створення презентації (і відеоінструкції) проєкту. Для цього я використав AI інструмент elai.io, який дозволяє створювати deepfake відео на основі наданого тексту та вибраного аватара з каталогу (аватар може являти собою й особу автора програми, але бюджет такого варіанту мене категорично не влаштовував). Текст для презентації також був створений повністю за допомогою chat GPT, так що можна сказати, що презентація програми власне є частиною проєкту для хакатону.
Переглянути як працює продукт можна тут.
HYS MEETINGS
Микита Савчук, Front-end developer та Валерій Ніколайчук .NET Developer at
HYS Enterprise
Це вебдодаток, призначений для розвитку соціальних зв’язків і організації дозвілля контракторів компанії. Програма спрямована на покращення зв’язків у команді, сприяння балансу між роботою та особистим життям і створення яскравої та інклюзивної корпоративної культури. Контрактори можуть пропонувати різноманітні заходи, такі як спортивні, вечірні ігри, походи в кіно, книжкові клуби чи будь-які інші види дозвілля, і брати в них участь. Тобто такий додаток створює можливість знаходити людей за інтересами, пропонувати різноманітні активності та проводити з колегами навіть вільний від роботи час, за бажанням 🙂Але на цьому палітра ідей не закінчується, програму можна використовувати і для волонтерської діяльності.
Валерій:
«Щодо штучного інтелекту ми з колегою використали два підходи. Я спробував генерувати програму частинами, тобто не прописував один великий промт, а спочатку згенерував скелет програми, а потім вже тренував частини згідно з нашою бізнес-логікою. Мій колега Микита використав інший підхід. Він згенерував всю програму один раз, тобто сам написав код, а потім спробував повністю створити промт згідно з кодом. У підсумку закинув великий шматок тексту в чат GPT. Чат повністю згенерував програму. Звичайно ж, не все так просто як пишеться, було достатньо багато проблем та перешкод. Це є доказом того, що штучний інтелект може дуже допомогти, але не замінить розробника аж ніяк. З технічної точки зору, наш бекенд повністю на Python, бо з ним працювалося простіше і часу витратили не так багато, якби, наприклад, ми обрали C#. Фронт на React ми обрали з тієї ж причини.»
Микита:
«Головною ідеєю створення додатка стало бажання ближче познайомитися з колегами в компанії, завести нові знайомства за інтересами. Саме тому ми не довго думали щодо проєкту, адже була проблематика пов’язана з дистанційною роботою.
Щодо фронтенд частини, обрали React і RTK Query, оскільки я краще знайомий з цими технологіями. У процесі роботи з AI, а саме з візуальною частиною проєкту, я зіштовхнувся зі складністю. Під час генерації шаблону з візуальним оформленням, потрібно чітко уявляти кінцевий результат, тобто створити дуже детальний промт. „Створи мені класний інтерфейс для додатка“ — не працює. Тому потрібно було продумувати ретельно кожний елемент інтерфейсу й чітко описувати, щоб отримати максимальний результат.Ліпше було з логікою на базовому рівні, проте логіки ставало дедалі більше, тому AI починав плутатись. У результаті, я щоразу повертався до опису кожного кроку. Я погоджуюсь з Валерою, що AI ще довгий час не зможе замінити розробника та зі словами журі про те, що кінцева якість згенерованого коду буде безпосередньо залежати від досвіду та кваліфікації розробника.»
ENGLISH BOT
Олексій Смірнов, .Net Developer at HYS Enterprise та Сергій Токарєв, Python Developer at HYS Enterprise
«Ідея для проєкту з’явилась несподівано на корпоративному уроці англійської мови. Інколи у мене виникають проблеми зі запам’ятовування слів та фраз, а щоразу записувати їх у зошит чи вносити у таблицю Excel сильно набридає.Таким чином я й дійшов до ідеї створення бота в телеграмі, який допомагає запам’ятовувати слова та фрази.»
Словник нараховує понад 1000 слів та висловів. Бот демонструє вам, наприклад, слово та пропонує самостійно його перекласти. Правильну відповідь заблюрено. Після вправи ви можете перевірити себе, для цього потрібно просто відкрити правильну відповідь. У кожного слова чи вислову є свій ваговий коефіцієнт. Тому щоразу як ви натискаєте кнопку «Don’t know», то збільшуєте вагу слова, після чого воно буде з’являтися частіше для кращого запам’ятовування. Якщо натискаєте кнопку «Know» вага зменшується та слово буде з’являтися рідше.
Бот використовує нейронну модель для перетворення тексту в спектрограму, а далі у мовлення, там чином реалізовано вимову висловів та слів.
ОБІДИ ПРИЇХАЛИ
Одеський офіс нашої компанії розташований на двох поверхах. Відповідно, коли привозять обіди, то вони потрапляють на один з них. Щоб дізнатися, коли саме приїхала їжа, нейронна модель визначає наявність сумок з їжею. Тобто, це бот для розпізнавання відео з камери, яка встановлена на кухні.
Для розпізнавання була використана ось ця модель для розпізнавання образів. Як тільки обіди потрапляють на кухню, приходить повідомлення в телеграм з фотографією та жартівливим повідомленням про прибуття смаколиків. Повідомлення формується за допомогою OpenAI, тому ми маємо нагоду відчути усю специфіку жартів нейронної моделі.
AI PAGE GENERATOR
Пилип Буланін, Front-End developer at HYS Enterprise
Це концепт вебдодатка що дозволяє створювати прості вебсторінки (такі як адмінпанель, наприклад) за допомогою штучного інтелекту.
Ідея проста: створіть базовий конструкт вашої сторінки, та додайте на нього потрібні елементи у вигляді простих блоків. Після цього створіть запит у вигляді простого тексту-опису для кожного з блоків та штучний інтелект згенерує для кожного з них відповідний HTML-темплейт зі стилями. А далі на сторінці перегляду можна побачити готову сторінку вашої ідеї. Якщо щось не влаштовує, то завжди можна повернутися на сторінку конструктора та змінити відповідний елемент. Змінити розміри, або згенерувати новий темплейт. Для розробки цього проєкту потрібен час, але він вартий уваги.
Ось такі ідеї та проєкти були на першому внутрішньому AI HACKATHON у HYS Enterprise. Фундамент закладений й надалі на нас чекає клопітка робота щодо інтеграції різноманітних інструментів та рішень, тим паче що деякі з проєктів варті того аби протестуватися на ринку. Ми вважаємо, що такі хакатони допомагають навчитися чомусь новому швидко та ефективно, а ще важливо, знайомитися з новими технологіями та створювати майданчик для їх реалізації.
Постійний розвиток — це вже невіддільна частина роботи, а не тренд, саме тому нові виклики не повинні бути перешкодою, а лише інструментом, який допомагає розробнику, звільняє його від рутини та дає місце креативності.
Немає коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів