Про Hayat Finans Bank
Hayat Finans Bank, перший цифровий банк Туреччини , прагнув покращити процеси та пришвидшити впровадження машинного навчання для свого нещодавно створеного відділу штучного інтелекту.
Обсяг і цілі проекту
Нещодавно створений відділ штучного інтелекту Hayat Finans Bank зіткнувся зі значними проблемами при розробці та розгортанні моделей машинного навчання. Команда намагалася створити ефективне середовище розробки Python, стикаючись із частими конфліктами між бібліотеками Python. Через сувору політику безпеки банку вони не змогли автоматично завантажувати необхідні бібліотеки та керувати ними, що ще більше ускладнювало процес розробки. Крім того, відділу не вистачало надійної системи для відстеження та керування моделями машинного навчання, що ускладнювало моніторинг версії, продуктивності та конвеєрів розгортання. Ці проблеми перешкоджали здатності команди оптимізувати робочі процеси та ефективно створювати моделі, підкреслюючи потребу в централізованому масштабованому рішенні.
Виклики
Нещодавно створений відділ штучного інтелекту Hayat Finans Bank зіткнувся з кількома ключовими проблемами:
Середовище розробки Python
Команді було важко керувати бібліотеками Python, часто стикаючись із конфліктами залежностей, які порушували процес розробки. Через сувору політику безпеки банку вони не змогли автоматично отримати та встановити необхідні бібліотеки, що ще більше затримало робочі процеси.
Відстеження моделі та керування версіями
Відділу не вистачало надійної системи для відстеження, керування та версії моделей машинного навчання. Це ускладнювало моніторинг продуктивності, забезпечення відтворюваності та автоматизацію конвеєрів розгортання, що є критично важливим для операцій масштабування.
Співпраця та ефективність
Без централізованого середовища розробки співпраця між членами команди була неефективною. Це призвело до дублювання зусиль, повільніших циклів ітерацій і зниження продуктивності як у завданнях обробки даних, так і в задачах машинного навчання.
Управління даними та підзвітність
Департамент не мав структурованої системи для відстеження того, хто створив документ, які команди мали до нього доступ або як він використовувався. Ця повна відсутність підзвітності та прозорості перешкоджала ефективній співпраці та створювала проблеми з дотриманням вимог, особливо в жорстко регульованому банківському середовищі.
Автоматизація розгортання моделі
Розгортання моделей машинного навчання було ручним і трудомістким процесом, що збільшувало ризик помилок і невідповідностей. Відсутність автоматизації також затримала інтеграцію нових моделей у виробничі системи.
Впроваджене рішення
Для вирішення проблем, з якими стикається відділ штучного інтелекту Hayat Finans Bank, було розроблено комплексне та масштабоване рішення:
Централізоване середовище розробки Python
Середовище на основі JupyterHub було реалізовано для забезпечення централізованої платформи для розробки Python. Ядра були визначені для різних команд, запобігаючи конфліктам між бібліотеками Python, які використовуються різними відділами. Система була інтегрована з внутрішнім репозиторієм програмного забезпечення банку, забезпечуючи контрольований доступ до необхідних бібліотек Python без шкоди для політики безпеки. Крім того, орієнтований на користувача підхід JupyterHub за замовчуванням був адаптований до орієнтованої на департамент моделі, дозволяючи членам команди в одному відділі отримувати доступ і безперешкодно переглядати роботу один одного.
Відстеження моделі та керування версіями
MLflow було розгорнуто як систему відстеження для керування життєвим циклом моделей машинного навчання, від розробки до розгортання. Це включало контроль версій, моніторинг продуктивності та відтворюваність, забезпечуючи ефективне керування та оновлення моделей.
Інтерактивне тестування моделі та документування за допомогою Streamlit
Платформу на основі Streamlit було розроблено для документування моделей машинного навчання та забезпечення інтерактивного тестування. Ця платформа включала контракти на дані, що дозволяло команді відстежувати, хто створив документ, яка команда ним надала доступ і як він використовувався. Це покращило управління, підзвітність і дотримання нормативних вимог, одночасно сприяючи кращій співпраці між командами.
Автоматизоване розгортання моделі
Kubernetes використовувався для створення автоматизованого та масштабованого конвеєра розгортання. Ця система спростила процес розгортання моделей машинного навчання у виробництві, забезпечивши узгодженість і мінімізуючи помилки.
Співпраця та оптимізація робочого процесу
Завдяки інтеграції JupyterHub, MLflow і Streamlit було створено централізовану екосистему, яка оптимізувала робочі процеси та покращила співпрацю між командами розробки даних і бізнес-командами. Орієнтована на департамент модель JupyterHub ще більше полегшила командну роботу в одному департаменті, тоді як інтерактивна платформа Streamlit дозволила бізнес-користувачам надавати зворотний зв’язок у режимі реального часу, прискорюючи цикл ітерації. Для вирішення проблем, з якими стикається департамент штучного інтелекту Hayat Finans Bank, було реалізовано централізоване середовище Python за допомогою JupyterHub, що забезпечувало безперебійну співпрацю всередині департаментів, одночасно забезпечуючи безпечний доступ до необхідних бібліотек. MLflow було розгорнуто для керування моделями машинного навчання протягом усього життєвого циклу, забезпечуючи контроль версій і відстеження продуктивності. Платформу на основі Streamlit було розроблено для документування та тестування моделей в інтерактивному режимі, покращуючи управління та співпрацю за допомогою контрактів на дані. Kubernetes використовувався для автоматизації та масштабування розгортання моделі, забезпечуючи узгодженість і мінімізуючи помилки. Цей інтегрований підхід оптимізував робочі процеси та зміцнив співпрацю між командами.
Результати
Операційний успіх
Завдяки впровадженню автоматизованих конвеєрів моделі машинного навчання розгорталися швидше та надійніше.
Централізовані системи відстеження покращили керування версіями та забезпечили відтворюваність.
Співпрацю всередині відділів було покращено за допомогою орієнтованого на відділи підходу JupyterHub, що дозволило командам безперешкодно ділитися та переглядати роботу.
Додана вартість
Інтеграція контрактів на дані забезпечила підзвітність і прозорість у документації та обміні моделями, забезпечивши дотримання вимог банку до управління.
Інтерактивне тестування та документування через Streamlit заохочували швидші цикли зворотного зв’язку та краще узгодження з бізнес-цілями.
Автоматизовані робочі процеси зменшили операційну неефективність, дозволивши командам більше зосередитися на стратегічних завданнях та інноваціях.
Загальна оцінка
Цей проект став важливою віхою на шляху Hayat Finans Bank до створення сучасної екосистеми MLOps. Вирішуючи критичні проблеми, такі як ефективне відстеження моделі, автоматизоване розгортання та керування за допомогою контрактів на дані, проект створив масштабовану та надійну платформу для операцій машинного навчання.
Інтеграція таких інструментів, як JupyterHub, MLflow і Streamlit, не лише оптимізувала робочі процеси, але й надала командам можливість ефективно співпрацювати та швидше впроваджувати інновації. Автоматизовані конвеєри та структуровані процеси документування значно зменшили операційні витрати, що дозволило відділу зосередитися на стимулюванні стратегічних ініціатив ШІ.
Ця успішна реалізація принципів MLOps не тільки змінила роботу відділу штучного інтелекту, але й заклала основу для майбутніх інновацій. Співпраця з Hayat Finans Bank зміцнила довіру та заклала основу для довгострокового партнерства, спрямованого на подальший розвиток рішень на основі ШІ.