Співавторами цієї публікації є Маріос Скевофілакас, Джейсон Рамчандані та Хайказ Арамян з Refinitiv, An LSEG Business.
Постачальникам фінансових послуг часто потрібно визначати релевантні новини, аналізувати їх, отримувати статистичні дані та вживати заходів у режимі реального часу, наприклад торгувати певними інструментами (такими як товари, акції, фонди) на основі додаткової інформації чи контексту новини. Однією з таких додаткових відомостей (яку ми використовуємо як приклад у цій публікації) є настрої новин.
Бібліотеки даних Refinitiv (RD) забезпечують повний набір інтерфейсів для єдиного доступу до каталогу даних Refinitiv. Бібліотека пропонує кілька рівнів абстракції, що забезпечує різні стилі та методи програмування, придатні для всіх розробників, від доступу в режимі реального часу з низькою затримкою до пакетного прийому даних Refinitiv.
У цьому дописі ми представляємо прототип архітектури AWS, який отримує наші канали новин за допомогою бібліотек RD і вдосконалює їх за допомогою прогнозів моделі машинного навчання (ML) за допомогою Amazon SageMaker, повністю керована служба машинного навчання від AWS.
Прагнучи розробити модульну архітектуру, яку можна було б використовувати в різних випадках використання, як-от аналіз настроїв, розпізнавання іменованих об’єктів тощо, незалежно від моделі ML, яка використовується для вдосконалення, ми вирішили зосередитися на просторі реального часу. Причина такого рішення полягає в тому, що випадки використання в режимі реального часу, як правило, складніші, і ту саму архітектуру можна використовувати з мінімальними коригуваннями для пакетного висновку. У нашому прикладі використання ми реалізуємо архітектуру, яка завантажує нашу стрічку новин у реальному часі, обчислює настрої щодо кожного заголовка новин за допомогою ML і повторно обслуговує розширену стрічку штучного інтелекту через архітектуру видавець/передплатник.
Крім того, щоб представити комплексний і багаторазовий спосіб виробництва моделей ML шляхом прийняття практик MLOps, ми вводимо концепцію інфраструктури як коду (IaC) протягом усього життєвого циклу MLOps прототипу. Використовуючи Terraform і єдиний настроюваний сценарій точки входу, ми можемо створити екземпляр усієї інфраструктури в робочому режимі на AWS всього за кілька хвилин.
У цьому рішенні ми не розглядаємо аспект MLOps щодо розробки, навчання та розгортання окремих моделей. Якщо вам цікаво дізнатися більше про це, зверніться до Основна дорожня карта MLOps для підприємств із Amazon SageMaker, де детально пояснюється структура для побудови моделі, навчання та розгортання відповідно до найкращих практик.
Огляд рішення
У цьому прототипі ми використовуємо повністю автоматизовану методологію надання відповідно до IaC передового досвіду. IaC — це процес надання ресурсів програмним шляхом за допомогою автоматизованих сценаріїв, а не за допомогою інтерактивних інструментів налаштування. Ресурсами можуть бути як обладнання, так і необхідне програмне забезпечення. У нашому випадку ми використовуємо Terraform для реалізації єдиної конфігурованої точки входу, яка може автоматично розкручувати всю необхідну інфраструктуру, включаючи політики безпеки та доступу, а також автоматичний моніторинг. Завдяки цій єдиній точці входу, яка запускає набір сценаріїв Terraform, по одному на службу чи ресурс, ми можемо повністю автоматизувати життєвий цикл усіх або окремих компонентів архітектури, дозволяючи реалізувати детальний контроль як на DevOps, так і на DevOps. сторона MLOps. Після того, як Terraform буде правильно встановлено та інтегровано з AWS, ми зможемо відтворити більшість операцій, які можна виконати на інформаційних панелях служби AWS.
Наступна схема ілюструє нашу архітектуру рішення.
Архітектура складається з трьох етапів: прийом, збагачення та публікація. На першому етапі канали в режимі реального часу приймаються на Обчислювальна хмара Amazon Elastic (Amazon EC2), який створюється за допомогою AMI, готового до бібліотеки даних Refinitiv. Примірник також підключається до потоку даних через Потоки даних Amazon Kinesis, який запускає AWS Lambda функції.
На другому етапі функція Lambda, яка запускається з Kinesis Data Streams, підключається до SageMaker і надсилає заголовки новин. FinBERT кінцева точка, яка повертає розрахований настрій для новини. Цей розрахований настрій є збагаченням даних у реальному часі, якими функція Лямбда потім обгортає новину та зберігає в Amazon DynamoDB таблиці.
На третьому етапі архітектури потік DynamoDB запускає функцію Lambda для нових вставок елементів, яка інтегрована з Сервер Amazon MQ працює RabbitMQ, який повторно обслуговує розширений потік AI.
Рішення про цей триетапний інженерний проект, а не перший рівень Lambda, який безпосередньо зв’язується з сервером Amazon MQ або реалізує більше функціональних можливостей в екземплярі EC2, було прийнято, щоб у майбутньому можна було досліджувати більш складні, менш зв’язані архітектури дизайну ШІ.
Створення та розгортання прототипу
Ми представляємо цей прототип у серії з трьох детальних креслень. У кожному плані та для кожної використовуваної служби ви знайдете огляди та відповідну інформацію про її технічні реалізації, а також сценарії Terraform, які дозволяють автоматично запускати, налаштовувати та інтегрувати службу з рештою структури. У кінці кожного креслення ви знайдете інструкції щодо того, як переконатися, що все працює належним чином до кожного етапу. Чертежі такі:
Щоб почати реалізацію цього прототипу, ми пропонуємо створити нове середовище Python, призначене для нього, і встановити необхідні пакети та інструменти окремо від інших середовищ, які у вас можуть бути. Для цього створіть і активуйте нове середовище в Anaconda за допомогою таких команд:
Тепер ми готові до встановлення Інтерфейс командного рядка AWS (AWS CLI), набір інструментів, який дозволить нам створювати всі необхідні програмні взаємодії в службах AWS і між ними:
Тепер, коли AWS CLI встановлено, нам потрібно встановити Terraform. HashiCorp надає Terraform бінарний інсталятор, який ви можете скачати і встановити.
Після встановлення обох інструментів переконайтеся, що вони працюють належним чином, використовуючи такі команди:
Тепер ви готові дотримуватись детальних схем на кожному з трьох етапів впровадження.
Цей план представляє початкові етапи архітектури, які дозволяють нам завантажувати стрічки новин у реальному часі. Він складається з наступних компонентів:
- Amazon EC2 готує ваш екземпляр для прийому RD News – У цьому розділі налаштовується екземпляр EC2 таким чином, щоб він увімкнув підключення до API бібліотек RD і потоку в реальному часі. Ми також покажемо, як зберегти образ створеного екземпляра, щоб забезпечити його повторне використання та масштабованість.
- Отримання новин у реальному часі від Amazon EC2 – Детальна реалізація конфігурацій, необхідних для підключення Amazon EC2 до бібліотек RD, а також сценаріїв для запуску прийому даних.
- Створення та запуск Amazon EC2 з AMI – Запустіть новий екземпляр, одночасно передавши файли прийому до новоствореного екземпляра, і все це автоматично за допомогою Terraform.
- Створення потоку даних Kinesis – У цьому розділі наведено огляд потоків даних Kinesis і те, як налаштувати потік на AWS.
- Підключення та надсилання даних до Kinesis – Коли код прийому запрацює, нам потрібно підключити його та надіслати дані в потік Kinesis.
- Тестування прототипу поки що - Ми використовуємо Amazon CloudWatch і інструменти командного рядка, щоб переконатися, що прототип працює до цього моменту, і що ми можемо продовжити до наступного проекту. Журнал переданих даних має виглядати так, як на знімку екрана нижче.
У цьому другому плані ми зосереджуємося на основній частині архітектури: функції Lambda, яка отримує й аналізує потік новин, приєднує до нього висновок ШІ та зберігає його для подальшого використання. Він включає наступні компоненти:
- Лямбда – Визначте конфігурацію Terraform Lambda, яка дозволить підключатися до кінцевої точки SageMaker.
- Amazon S3 – Щоб реалізувати Lambda, нам потрібно завантажити відповідний код Служба простого зберігання Amazon (Amazon S3) і дозволити функції Lambda отримати його у своєму середовищі. У цьому розділі описано, як ми можемо використовувати Terraform для цього.
- Реалізація функції Лямбда: Крок 1, Обробка події Kinesis – У цьому розділі ми починаємо будувати лямбда-функцію. Тут ми створюємо лише частину обробки відповіді потоку даних Kinesis.
- SageMaker – У цьому прототипі ми використовуємо попередньо навчену модель Hugging Face, яку зберігаємо в кінцевій точці SageMaker. Тут ми представляємо, як цього можна досягти за допомогою сценаріїв Terraform і як відбувається відповідна інтеграція, щоб кінцеві точки SageMaker і функції Lambda могли працювати разом.
- На цьому етапі ви можете використовувати будь-яку іншу модель, яку ви розробили та розгорнули за кінцевою точкою SageMaker. Така модель може забезпечувати інше вдосконалення вихідних даних новин, виходячи з ваших потреб. За бажанням це можна екстраполювати на кілька моделей для численних покращень, якщо такі існують. Завдяки решті архітектури будь-які такі моделі збагачуватимуть ваші джерела даних у режимі реального часу.
- Створення функції Lambda: крок 2, виклик кінцевої точки SageMaker – У цьому розділі ми створили нашу оригінальну функцію Lambda, додавши блок SageMaker, щоб отримати заголовок новин із покращеним настроєм, викликавши кінцеву точку SageMaker.
- DynamoDB – Нарешті, коли висновок штучного інтелекту знаходиться в пам’яті функції Lambda, він повторно групує елемент і надсилає його в таблицю DynamoDB для зберігання. Тут ми обговорюємо як відповідний код Python, необхідний для цього, так і необхідні сценарії Terraform, які забезпечують цю взаємодію.
- Створення функції Lambda: Крок 3. Надсилання розширених даних до DynamoDB – Тут ми продовжуємо розбудову нашої лямбда-функції, додаючи останню частину, яка створює запис у таблиці Dynamo.
- Тестування прототипу поки що – Ми можемо перейти до таблиці DynamoDB на консолі DynamoDB, щоб переконатися, що наші вдосконалення відображаються в таблиці.
Цей третій Blueprint завершує цей прототип. Він зосереджений на перерозповсюдженні нещодавно створеного елемента даних, розширеного штучним інтелектом, на сервері RabbitMQ в Amazon MQ, дозволяючи споживачам підключатися та отримувати розширені новини в режимі реального часу. Він включає наступні компоненти:
- Потоки DynamoDB – Коли розширена новина знаходиться в DynamoDB, ми встановлюємо активацію події, яку потім можна зафіксувати за допомогою відповідної функції Lambda.
- Пише виробник Lambda – Ця функція Lambda фіксує подію та діє як виробник потоку RabbitMQ. Ця нова функція представляє концепцію лямбда-рівнів, оскільки вона використовує бібліотеки Python для реалізації функціональності виробника.
- Споживачі Amazon MQ і RabbitMQ – Останнім кроком прототипу є налаштування служби RabbitMQ і реалізація зразка споживача, який підключатиметься до потоку повідомлень і отримуватиме розширені новини ШІ.
- Остаточне випробування прототипу – Ми використовуємо наскрізний процес, щоб перевірити, чи прототип повністю працює, від прийому до повторного обслуговування та споживання нового потоку, розширеного ШІ.
На цьому етапі ви можете перевірити, чи все працює, перейшовши до інформаційної панелі RabbitMQ, як показано на наступному знімку екрана.
У остаточному плані ви також знайдете детальний тестовий вектор, щоб переконатися, що вся архітектура працює так, як було заплановано.
Висновок
У цій публікації ми поділилися рішенням, що використовує ML у хмарі з такими службами AWS, як SageMaker (ML), Lambda (без сервера) і Kinesis Data Streams (потокове передавання), щоб збагатити потокові дані новин, надані Refinitiv Data Libraries. Рішення додає оцінку настрою до новин у режимі реального часу та масштабує інфраструктуру за допомогою коду.
Перевага цієї модульної архітектури полягає в тому, що ви можете повторно використовувати її зі своєю власною моделлю для виконання інших типів доповнення даних у безсерверний, масштабований та економічно ефективний спосіб, який можна застосувати поверх бібліотеки даних Refinitiv. Це може додати цінності для робочих процесів торгівлі/інвестицій/управління ризиками.
Якщо у вас є коментарі чи запитання, залиште їх у розділі коментарів.
Супутня інформація
Про авторів
Маріос Скевофілакас походить із фінансових послуг, інвестиційної банківської справи та консалтингових технологій. Має ступінь доктора інженерних наук. у галузі штучного інтелекту та ступінь магістра наук. в системі машинного зору. Протягом своєї кар’єри він брав участь у численних мультидисциплінарних проектах ШІ та DLT. Зараз він є адвокатом розробників у Refinitiv, бізнесі LSEG, зосереджуючись на додатках AI та Quantum у фінансових послугах.
Джейсон Рамчандані 8 років працював у Refinitiv, бізнесі LSEG, як провідний адвокат розробників, допомагаючи створювати їхню спільноту розробників. Раніше він понад 15 років працював на фінансових ринках, маючи значний досвід у сфері акцій/акціонерного капіталу в Okasan Securities, Sakura Finance та Jefferies LLC. Його альма-матер — UCL.
Айказ Арамян має досвід фінансів і технологій. Має ступінь доктора філософії. в галузі фінансів, а також ступінь магістра наук. в області фінансів, технологій і політики. За 10 років професійного досвіду Хайказ працював над кількома міждисциплінарними проектами, пов’язаними з пенсійними фондами, фондами венчурного капіталу та технологічними стартапами. Зараз він є адвокатом розробників у Refinitiv, компанії LSEG, зосереджуючись на додатках ШІ у фінансових послугах.
Георгіос Схінас є старшим фахівцем з розробки рішень для AI/ML у регіоні EMEA. Він живе в Лондоні та тісно співпрацює з клієнтами у Великобританії та Ірландії. Georgios допомагає клієнтам розробляти та розгортати програми машинного навчання у виробництві на AWS, приділяючи особливий інтерес практикам MLOps і дозволяючи клієнтам виконувати машинне навчання в масштабі. У вільний час він любить подорожувати, готувати їжу та проводити час з друзями та родиною.
Мутувелан Свамінатан є архітектором корпоративних рішень із Нью-Йорка. Він працює з корпоративними клієнтами, надаючи архітектурні рекомендації щодо створення надійних, економічно ефективних інноваційних рішень, які відповідають потребам їхнього бізнесу та допомагають їм виконувати масштабні роботи за допомогою продуктів і послуг AWS.
Маюр Удернані керує бізнесом AWS AI & ML з комерційними підприємствами у Великобританії та Ірландії. На своїй посаді Маюр проводить більшу частину свого часу з клієнтами та партнерами, щоб допомогти створювати ефективні рішення, які вирішують найнагальніші потреби клієнтів або для ширшої галузі, використовуючи послуги AWS Cloud, AI & ML. Маюр живе в районі Лондона. Він має ступінь магістра ділового адміністрування в Індійському інституті менеджменту та бакалавра комп’ютерної інженерії в Університеті Мумбаї.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- Платоблокчейн. Web3 Metaverse Intelligence. Розширені знання. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/enriching-real-time-news-streams-with-the-refinitiv-data-library-aws-services-and-amazon-sagemaker/
- 1
- 10
- 100
- 15 роки
- 7
- a
- Здатний
- МЕНЮ
- доступ
- досягнутий
- дії
- акти
- Додатковий
- Додаткова інформація
- адреса
- Додає
- Прийняття
- адвокат
- після
- AI
- AI / ML
- ВСІ
- Дозволити
- ALMA
- Amazon
- Amazon EC2
- Amazon SageMaker
- аналіз
- аналізувати
- аналізи
- та
- API
- застосування
- прикладної
- відповідний
- архітектурний
- архітектура
- ПЛОЩА
- штучний
- штучний інтелект
- зовнішній вигляд
- автоматизувати
- Автоматизований
- автоматично
- AWS
- фон
- Banking
- заснований
- за
- користь
- КРАЩЕ
- передового досвіду
- між
- Блокувати
- будувати
- Створюємо
- бізнес
- розрахований
- обчислює
- захвати
- кар'єра
- випадок
- випадків
- тісно
- хмара
- код
- збір
- коментарі
- комерційний
- Commodities
- спілкування
- співтовариство
- комплекс
- Компоненти
- всеосяжний
- обчислення
- комп'ютер
- Комп'ютерна інженерія
- концепція
- конфігурація
- З'єднуватися
- зв'язку
- з'єднує
- Консоль
- консалтинг
- споживач
- Споживачі
- контекст
- продовжувати
- контроль
- рентабельним
- може
- з'єднаний
- створювати
- створений
- створює
- створення
- В даний час
- клієнт
- Клієнти
- приладова панель
- дані
- вирішене
- рішення
- присвячених
- розгортання
- розгорнути
- розгортання
- розгортання
- дизайн
- деталь
- докладно
- розвиненою
- Розробник
- розробників
- розробка
- різний
- безпосередньо
- обговорювати
- DLT
- Не знаю
- під час
- кожен
- зусилля
- в регіоні EMEA
- включіть
- дозволяє
- дозволяє
- кінець в кінець
- Кінцева точка
- Машинобудування
- підвищена
- Підсилює
- збагачувати
- збагачення
- забезпечувати
- підприємство
- підприємств
- Весь
- суб'єкта
- запис
- Навколишнє середовище
- середовищах
- Event
- все
- приклад
- виконувати
- очікуваний
- досвід
- Пояснює
- дослідження
- витяг
- Face
- сім'я
- кілька
- Файли
- остаточний
- в кінці кінців
- фінансування
- фінансовий
- фінансові послуги
- знайти
- Перший
- Сфокусувати
- фокусується
- фокусування
- стежити
- після
- слідує
- фонд
- Рамки
- друзі
- від
- повністю
- функція
- функціональність
- Функції
- засоби
- далі
- майбутнє
- в цілому
- отримати
- отримання
- Обробка
- апаратні засоби
- headline
- Headlines
- допомога
- допомогу
- допомагає
- тут
- тримає
- Як
- How To
- HTML
- HTTPS
- ідентифікувати
- зображення
- вражаючий
- здійснювати
- реалізація
- реалізації
- in
- includes
- У тому числі
- індійський
- індивідуальний
- промисловість
- інформація
- Інфраструктура
- початковий
- інноваційний
- Вставки
- розуміння
- встановлювати
- установка
- екземпляр
- замість
- Інститут
- інструкції
- інструменти
- інтегрувати
- інтегрований
- інтеграцій
- Інтелект
- Взаємодії
- інтерактивний
- інтерес
- зацікавлений
- Інтерфейси
- вводити
- Вводить
- інвестиції
- інвестиційний банкінг
- Ірландія
- IT
- пунктів
- Потоки даних Kinesis
- останній
- запуск
- запуск
- шар
- шарів
- вести
- Веде за собою
- вивчення
- Залишати
- використання
- libraries
- бібліотека
- Лінія
- Місце проживання
- LLC
- Лондон
- подивитися
- виглядає як
- LSEG
- машина
- навчання за допомогою машини
- made
- головний
- Більшість
- зробити
- вдалося
- управління
- ринки
- пам'ять
- повідомлення
- Методологія
- мінімальний
- хвилин
- ML
- MLOps
- режим
- модель
- Моделі
- модульний
- моніторинг
- більше
- найбільш
- мультидисциплінарний
- множинний
- Мумбаї
- Названий
- Переміщення
- навігація
- необхідно
- Необхідність
- потреби
- Нові
- Нью-Йорк
- новини
- наступний
- численний
- Пропозиції
- ONE
- операції
- оригінал
- Інше
- огляд
- власний
- пакети
- частина
- участь
- приватність
- партнери
- частини
- пенсія
- Виконувати
- частина
- місце
- запланований
- plato
- Інформація про дані Платона
- PlatoData
- будь ласка
- точка
- Політика
- політика
- пошта
- практики
- Прогнози
- підготовка
- представити
- раніше
- процес
- виробник
- Production
- Продукти
- професійний
- програмний
- Програмування
- проектів
- правильно
- прототип
- забезпечувати
- за умови
- провайдери
- забезпечує
- забезпечення
- Видавничий
- Натискання
- Python
- в якості
- Квантовий
- питань
- готовий
- реальний
- реального часу
- дані в режимі реального часу
- причина
- отримати
- визнання
- Незалежно
- регіон
- доречний
- представляє
- пружний
- ресурс
- ресурси
- відповідь
- REST
- Умови повернення
- багаторазовий
- Дорожня карта
- Роль
- біг
- мудрець
- то ж
- зберегти
- SC
- масштабованість
- масштабовані
- шкала
- ваги
- scripts
- другий
- розділ
- Securities
- безпеку
- старший
- настрій
- Серія
- Без сервера
- обслуговування
- постачальники послуг
- Послуги
- комплект
- набори
- установка
- кілька
- загальні
- акції
- Повинен
- Показувати
- показаний
- сторона
- простий
- одночасно
- один
- So
- Софтвер
- рішення
- Рішення
- ВИРІШИТИ
- Джерела
- Простір
- спеціаліст
- конкретний
- Витрати
- Спін
- Стажування
- етапи
- старт
- Стартапи
- Крок
- зберігання
- зберігати
- магазинів
- потік
- потоковий
- потоки
- структура
- такі
- підходящий
- таблиця
- Приймати
- технічний
- методи
- Технологія
- Terraform
- тест
- Команда
- їх
- третій
- три
- через
- по всьому
- час
- до
- разом
- інструменти
- топ
- торгові площі
- Навчання
- Передача
- Подорож
- спрацьовує
- Типи
- Uk
- університет
- us
- використання
- використання випадку
- ПЕРЕВІР
- значення
- різноманітність
- VC
- перевірити
- через
- бачення
- який
- ширше
- волі
- Work
- працювати разом
- працював
- Робочі процеси
- робочий
- працює
- років
- Ти
- вашу
- зефірнет