Корпоративні GenAI-системи. Відмінність від відкритих систем та принципи роботи з даними
Усі статті, обговорення, новини про AI — в одному місці. Підписуйтеся на DOU | AI!
Вітаю! Я Ігор, обіймаю посаду віцепрезидента з технологій у GlobalLogic. Моя роль включає розробку та впровадження інновацій у сфері штучного інтелекту та машинного навчання. Як фахівець у Data Science, я керую практикою машинного навчання, де ми розвиваємо ключові компетенції та експертизу. Працюючи над проєктами різної складності, я взаємодію з різними командами, займаючись архітектурними рішеннями.
Моя мета — підвищення ефективності та інноваційності наших клієнтів шляхом інтеграції передових технологій у їхні бізнес-процеси.
Останні роки впевнено можна назвати «бумом» штучного інтелекту: його намагаються інтегрувати в усі сфери від дизайну та маркетингу до MedTech та FinTech. Втім, як відомо інженерам, ШІ не є новою технологією. Понад десять років я разом із колегами працюю над впровадженням штучного інтелекту у програмні продукти та рішення.
Навесні цього року наша компанія розробила першу у своєму роді архітектуру єдиної платформи (Platform of Platforms) для впровадження ШІ на рівні компанії. Тож сьогодні я хотів би розповісти детальніше про корпоративні GenAI-системи: їх відмінність від відкритих, роботу з даними та архітектуру систем.
Принцип роботи Generative AI
Generative AI (GenAI) — це клас штучного інтелекту, що здатний створювати новий контент на основі вхідних даних, як-то текст, зображення, музика, або навіть код. Однак крім відомих застосувань, GenAI має й інші значні можливості:
- Оптимізація процесів.
- Автоматизація тестування.
- Сприяння інноваціям.
- Управління знаннями.
- Підтримка клієнтів.
Завдяки своїй здатності адаптуватися до різних завдань та інтегруватися в наявні системи, GenAI — це не лише інструмент для генерації контенту, але й потужний засіб для автоматизації й оптимізації робочих процесів, управління ресурсами та стимулювання інновацій.
Корпоративні vs відкриті GenAI
Метою розробки корпоративних GenAI-систем є створення безпечної, гнучкої та ефективної системи, яка може інтегруватися в бізнес-процеси компанії. Корпоративні системи дозволяють максимально використовувати можливості штучного інтелекту, при цьому зберігаючи контроль над конфіденційними даними, адаптуючись під специфічні потреби бізнесу та залишаючись у рамках правових та етичних норм.
Чим відрізняються корпоративні та відкриті GenAI-системи:
- Безпека: корпоративні системи забезпечують високий рівень безпеки та контроль приватності даних. Це є критичним для захисту конфіденційної інформації, якою оперують компанії.
- Гнучкість: корпоративні системи можуть бути налаштовані під специфічні потреби бізнесу, забезпечувати таким чином ефективне виконання різноманітних задач.
- Доступність: корпоративні системи дорожчі, тоді як відкриті системи доступні для всіх і мають низьку вартість. Це робить їх привабливими для індивідуальних користувачів та малих компаній.
Із зазначених відмінностей випливає ряд переваг, які мають корпоративні GenAI-системи. Серед них:
Контроль безпеки даних. Корпоративні системи чітко розрізняють, які фахівці до якої інформації мають доступ, адаптуючи результати видачі відповідно до цих обмежень.
Налаштованість. корпоративні системи, на відміну від відкритих, оперують так, як потрібно конкретній компанії. Ба більше, вони можуть підлаштовуватися під окремих спеціалістів. Наприклад, система знатиме, що відповідь для СЕО має містити узагальнені дані, стратегічно-важливі показники. Тоді як інженерам важливіші технічні деталі, ніж дані про продажі.
Інтеграція з внутрішніми системами. Корпоративні системи можуть бути інтегровані з внутрішніми базами даних та іншими системами компанії, забезпечуючи ефективний обмін інформацією та підвищуючи продуктивність.
З іншого боку, відкриті системи оперують даними зі сторонніх джерел (потенційно — це все, що можуть знайти в Інтернеті). Вони приречені на галюцинації у питаннях, які стосуються внутрішніх даних компанії. Через відсутність реальної інформації, системи будуть намагатись вгадати правильну відповідь. Передача цих даних відкритій системі неможлива через вимоги безпеки.
Як підготувати дані для GenAI-системи
Дуже важливо, щоб на вході GenAI отримувала надійні та точні дані. Від якісної підготовки вхідної інформації напряму залежать вихідні результати. «Сміття на вході — сміття на виході», як-то кажуть. Підготовка даних містить:
- Очищення даних: видалення непотрібної, некоректної або дубльованої інформації з набору даних.
- Трансформацію даних: дані різного формату, наприклад, PDF-документи, можуть бути конвертовані та структуровані для навчання моделі.
- Перевірку та валідацію, включно з перевіркою коректності та повноти даних.
- Створення бази знань: організація і зберігання даних у структурованому вигляді.
Варто звернути увагу на окремі типи даних, які вимагають додаткових зусиль при підготовці:
- Трансформація PDF: перетворення PDF-документів у структуровані дані, які можуть бути використані для навчання моделей.
- Обробка зображень: анотування (тобто виявлення та опис) об’єктів на зображеннях; створення транскрипцій для відео.
- Обробка таблиць: трансформація табличних даних для їх правильної інтерпретації моделлю.
У випадку із зображеннями все більш-менш зрозуміло: ми можемо виявити зображення й отримати опис, що на ньому міститься.
Тому розглянемо трансформацію даних для системи на прикладі таблиць.
Припустимо, у нас є велика таблиця з фінансовими даними, яка складається з кількох стовпців: «Дата», «Прибуток», «Витрати», «Чистий прибуток». Спершу таблиця може бути у форматі PDF або в іншому неструктурованому вигляді, що ускладнює її автоматичну обробку системою штучного інтелекту. Механічна конвертація її в текст зробить з таблиці сукупність строк зі значеннями, які втрачають повноту та цінність, якщо прибрати контекст, який задають заголовки стовпців.
Потрібні наступні етапи трансформації:
- Перетворення формату. Перший крок — це перетворення таблиці з неструктурованого формату (наприклад, PDF) у структурований формат, як-от CSV або Excel. Це дозволяє спростити маніпулювання даними та їх використання для навчання моделі.
- Розбивка таблиць. Якщо таблиця занадто велика або складна, її можна розділити на кілька менших. Наприклад, окремо виділити дані за кожен квартал або рік.
- Анотація даних. Додавання анотацій або заголовків до стовпців, якщо вони були відсутні або некоректні. Заголовки важливі для категоризації даних і пояснення моделі, що саме міститься в кожному стовпці.
- Перевірка на цілісність. Важливо переконатися, що під час трансформації не було втрачено жодних важливих даних, як-то заголовки або певні стовпці, оскільки це може вплинути на інтерпретацію даних моделлю.
- Стандартизація. Деякі значення у таблиці можуть бути представлені в різних форматах (наприклад, дата може бути записана як
«01-01-2024» або «1 січня 2024»). На цьому етапі дані стандартизуються для уніфікованого вигляду.
Після цих кроків таблиця буде готова для завантаження у GenAI-систему. Замість неструктурованого набору строк без контексту вона матиме чітку структуру з правильними заголовками та стандартизованими даними в коректному форматі. Це дозволить моделі краще розуміти дані й генерувати точніші результати. Наприклад, прогнози або аналітичні звіти.
Обробка даних і створення бази знань містить такі кроки:
- Очищення даних. Видалення зайвих та некоректних даних для підвищення якості навчання моделей.
- Перевірка і валідація. Забезпечення точності та надійності даних.
- Створення бази знань. Організація та зберігання даних у структурованому вигляді для ефективного використання моделями GenAI.
Обробка та підготовка бази знань дозволяє підійти до процесу якісно. У себе ми вирішили робити це у вигляді повноцінного ETL-процесу.
Приклад такого процесу можна розглянути на основі впровадження системи обробки даних для великого ритейлера, який хоче аналізувати поведінку клієнтів на основі даних про покупки, трафік вебсайту і соціальні медіа.
- Етап Extract (Витяг даних)
На цьому етапі відбувається витяг даних з різних джерел. Наприклад, інформацію про покупки клієнтів отримують з CRM-системи, дані про вебтрафік — з аналітичної платформи Google Analytics, а показники з соціальних медіа — з API Facebook та Twitter. Всі це може бути збережено в різних форматах: табличні дані у форматі CSV, дані з соцмереж у форматі JSON, дані про вебтрафік у формі структурованих логів.
- Етап Transform (Трансформація даних)
Після витягування даних необхідно трансформувати їх для подальшого використання. Це включає декілька підетапів:
- Очищення даних. Видаляються непотрібні або некоректні записи — дублікати або некоректні значення.
- Стандартизація даних. Інформація з різних джерел приводиться до єдиного формату. Скажімо, дати можуть бути представлені в різних форматах, і їх потрібно привести до одного стандарту (до прикладу, ISO 8601).
- Агрегація. Деякі дані можуть бути агреговані або об’єднані. Наприклад, інформація про щоденні покупки — в місячні або квартальні звіти.
- Розширення. Можливо, необхідно розширити дані, додаючи поля, розраховані на основі наявних. Наприклад, обчислення середнього чека клієнта або розрахунок клієнтської цінності на основі частоти покупок.
- Зв’язування. Дані з різних джерел можуть бути пов’язані на основі унікальних ідентифікаторів, як-то ID клієнта. Це дозволяє створити єдину, цілісну картину взаємодії клієнта з бізнесом.
- Етап Load (Завантаження даних):
На цьому етапі очищені й трансформовані дані завантажуються в цільову систему — зазвичай це база даних або сховище даних. Для нашого прикладу ритейлера дані можуть бути завантажені в аналітичну платформу на основі хмарного сховища (наприклад, Google BigQuery або Amazon Redshift), де вони будуть доступні для подальшого аналізу та побудови звітів.
Після завантаження дані готові до використання в різних аналітичних інструментах. На їх основі ритейлер може будувати звіти про поведінку клієнтів, виявляти тренди, аналізувати ефективність маркетингових кампаній та приймати обґрунтовані бізнес-рішення.
Окремо ми сфокусувалися на безпеці та контролі доступу до даних. Наприклад, витягуємо з інформації додаткові права доступу. Якщо людина запитує додаткову інформацію в системи, ми контролюємо, щоб тільки та інформація, на яку вона має права, була реально доступна. У відкритих системах такої можливості контролю немає.
Архітектура і процес роботи корпоративної GenAI-системи
Корпоративні системи GenAI обробляють запити користувачів за допомогою роутингу та адаптації. Вони використовують різни методи пошуку: семантичний та гібридний, а також векторні графи.
Основні етапи роботи корпоративної системи GenAI:
- Роутинг запитів: обробка запитів користувачів і маршрутизація їх до відповідних компонентів системи.
- Семантичний пошук: використання семантичного аналізу для пошуку релевантної інформації.
- Гібридний пошук: комбінація різних методів пошуку для підвищення точності результатів.
- Векторні графи: для організації й зберігання даних.
На етапі отримання запиту системою дуже важливим компонентом є роутинг, який визначає, як ми маємо направити дані в систему. Тут ми можемо розбивати запит як за логічними процесами вилучення даних (наприклад, запит до конкретної бази даних, загальний запит, чи, можливо, запит в інтернет), так і за допомогою технологій, повʼязаних з перетворенням запиту користувача, аби зробити його більш зрозумілим для системи.
Наприклад, коли система отримує великий запит, що складається з різних блоків, його складно обробити. Ми можемо істотно спростити задачу, якщо дамо їй команду розбити запит на окремі простіші задачі, а потім агрегувати результати.
Безпека та сертифікація
Процес перевірки на відсутність шкідливого коду, оцінка надійності та сертифікація GenAI-моделей містить етичні, юридичні та технічні аспекти.
Основні аспекти сертифікації моделей:
- Етичні аспекти. Перевірка моделей на наявність етичних проблем, таких як упередженість або дискримінація.
- Юридичні аспекти. Забезпечення відповідності моделей юридичним вимогам та регулюванням.
- Технічні аспекти. Оцінка надійності та точності моделей, перевірка на відсутність шкідливого коду.
При побудові своєї системи ми керувалися тим, що моделі, які використовуємо, мають проходити цикли досить жорстких перевірок з багатьох аспектів. Це дає впевненість, що на виході отримаємо збалансовані точні дані. У нашому випадку це юридичні перевірки, перевірки прозорості, етичності та, звичайно, перевірки на безпеку.
Всі намагаються адаптувати технології, проте ніхто не застрахований від того, що в чужій моделі може бути шкідливий код. Як у кейсі з HuggingFace.
Досвід та поради GlobalLogic для побудови GenAI-платформи
Ось на що я раджу звертати увагу при побудові системи, спираючись на досвід, який ми отримали:
- Cloud-агностичність: подумайте, чи важливо вам мати можливість розгортання системи на різних хмарних платформах або на власному обладнанні.
- Процес підготовки даних: не нехтуйте підготовкою даних для навчання моделі. Якщо очікуєте обґрунтовану відповідь на виході, необхідно «згодувати» системі чисті структуровані дані на вході.
- Безпека: подбайте про безпеку для захисту даних і контролю доступу.
А ось приклади використання платформи:
- Підтримка клієнтів: використання систем GenAI для підтримки клієнтів, автоматизації відповідей на запити та обробки звернень.
- Інтеграція з внутрішніми системами: застосування платформ для інтеграції з базами знань та іншими внутрішніми системами компанії.
Одним з таких прикладів може бути чат-бот, що допомагає готувати комерційні пропозиції. Яку проблему він розвʼязав і як працює?
Менеджери з передпродажів часто натрапляють на труднощі швидкого доступу до потрібної інформації про проєкти під час спілкування з клієнтами. Це зазвичай вимагає звернення до архітекторів або інженерів для уточнення деталей, що уповільнює підготовку комерційних пропозицій.
Щоб розв’язати цю проблему, було створено чат-бот, інтегрований з платформою Platform of Platforms. Цей інструмент дозволяє миттєво отримувати доступ до динамічного графа знань, який містить інформацію про попередні проєкти, демонстрації та кейси.
Для підвищення ефективності процесу була розроблена система, яка використовує процес ETL для збирання, обробки та завантаження даних у централізовану базу знань на основі графу Neo4j. Цей граф знань був інтегрований з чат-ботом, що працює на базі Google Chat. Чат-бот використовує великі мовні моделі (LLM), щоб обробляти запити природною мовою, що дозволяє швидко отримувати потрібну інформацію.
Використання чат-боту значно покращує процес підготовки пропозицій, автоматизуючи пошук і скорочуючи час на знаходження релевантної інформації. Завдяки цьому менеджери можуть зосередитись на взаємодії з клієнтами, не відволікаючись на тривалі пошуки даних. Інформація, яка отримується через платформу, проходить експертну верифікацію, що підвищує її точність і надійність. Система спроєктована для швидкої обробки запитів і інтегрується з Google Chat, що робить її ще зручнішою у використанні.
Висновок
Корпоративні GenAI-системи — наступний етап еволюції генеративного ШІ. Будь-яка велика компанія, яка має вимоги до конфіденційності даних, конкретний обсяг задач і даних до обробки, прагне до оптимізації бізнес процесів — є потенційним «клієнтом» на створення власної системи: гнучкої, масштабованої і контрольованої. У цьому й полягає її відмінність від відомих відкритих систем. Основний фокус у побудові корпоративної системи має бути на підготовці даних, які гарантують якісний, неупереджений та чіткий результат на виході.
Відкритість і готовність до інтеграції АІ та GenAI у продукти й послуги — передумова «виживання» бізнесу. Свого часу маленькі стартапи виростали як на дріжджах тільки тому, що додавали собі біткоін / блокчейн у назву. Зараз додають GenAI. Пізніше це все стабілізується: хтось виживе, хтось впаде. Google некомфортно почуває себе зі своїм пошуком, який видає купу посилань без аналізу, коли потрібно щось конкретне. Тобто ми вже зараз розуміємо, що Google погано працює. Вони це теж добре розуміють, тому вже працюють над цим. Якщо встигнуть адаптуватися — будуть розвиватися. Не встигнуть — буде як Nokia, яку зʼїла їх неповороткість і яка тепер допомагає рухатись іншим компаніям.
У відповідь на тенденції та попит, GlobalLogic продовжує розвивати АІ та GenAI стеки у своїй роботі. Незабаром ми плануємо запуск чергової навчальної програми для студентів, що буде присвячена розробкам на основі ШІ. Це чудова можливість не лише отримати практичні знання, а й мати шанс приєднатися до команди. Тож слідкуйте за новинами!
5 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів