A valós idejű hírfolyamok gazdagítása a Refinitiv Data Library, az AWS szolgáltatások és az Amazon SageMaker segítségével

A valós idejű hírfolyamok gazdagítása a Refinitiv Data Library, az AWS szolgáltatások és az Amazon SageMaker segítségével

Ennek a bejegyzésnek a társszerzői Marios Skevofylakas, Jason Ramchandani és Haykaz Aramyan, a Refinitiv, An LSEG Business munkatársai.

A pénzügyi szolgáltatóknak gyakran kell a releváns híreket azonosítaniuk, elemezniük, betekintést nyerniük, és valós időben kell lépéseket tenniük, például specifikus eszközökkel (például árukkal, részvényekkel, alapokkal) kereskedniük a további információk vagy a hír kontextusa alapján. Az egyik ilyen további információ (amelyet ebben a bejegyzésben példaként használunk) a hír hangulata.

A Refinitiv Data (RD) könyvtárak interfészek átfogó készletét biztosítják a Refinitiv Data Catalogue egységes eléréséhez. A könyvtár több rétegű absztrakciót kínál, amelyek különböző stílusokat és programozási technikákat kínálnak minden fejlesztő számára, az alacsony késleltetésű, valós idejű hozzáféréstől a Refinitiv adatok kötegelt feldolgozásáig.

Ebben a bejegyzésben egy AWS-architektúra prototípusát mutatjuk be, amely RD Libraries segítségével feldolgozza hírfolyamainkat, és gépi tanulási (ML) modell-előrejelzésekkel fejleszti azokat. Amazon SageMaker, egy teljesen felügyelt ML szolgáltatás az AWS-től.

Annak érdekében, hogy egy olyan moduláris architektúrát tervezzünk, amely különféle felhasználási esetekben használható, például hangulatelemzésben, elnevezett entitás felismerésben és még sok másban, függetlenül a fejlesztéshez használt ML modelltől, úgy döntöttünk, hogy a valós idejű térre összpontosítunk. Ennek a döntésnek az az oka, hogy a valós idejű használati esetek általában összetettebbek, és ugyanaz az architektúra minimális módosításokkal is használható kötegelt következtetésekhez. Használati esetünkben olyan architektúrát valósítunk meg, amely feldolgozza a valós idejű hírfolyamunkat, ML segítségével kiszámítja a hangulatot az egyes hírek címsorairól, és újra kiszolgálja az AI továbbfejlesztett hírfolyamot egy kiadói/előfizetői architektúrán keresztül.

Ezen túlmenően, hogy egy átfogó és újrafelhasználható módszert mutassunk be az ML-modellek MLOps gyakorlatok átvételével történő előállítására, bevezetjük az infrastruktúra kódként (IaC) koncepcióját a prototípus teljes MLOps életciklusa során. A Terraform és az egyetlen belépési ponton konfigurálható szkript használatával a teljes infrastruktúrát, éles módban, néhány perc alatt példányosíthatjuk AWS-en.

Ebben a megoldásban nem foglalkozunk az egyes modellek fejlesztésének, képzésének és telepítésének MLOps aspektusával. Ha többet szeretne megtudni erről, tekintse meg a MLOps alapítványi ütemterv az Amazon SageMakerrel rendelkező vállalkozások számára, amely a legjobb gyakorlatokat követve részletesen ismerteti a modellépítés, a képzés és a telepítés keretrendszerét.

Megoldás áttekintése

Ebben a prototípusban egy teljesen automatizált kiépítési módszert követünk az IaC-vel összhangban legjobb gyakorlatok. Az IaC az erőforrások programozott kiépítésének folyamata automatizált parancsfájlok használatával, nem pedig interaktív konfigurációs eszközök használatával. Az erőforrások lehetnek hardverek és szükséges szoftverek is. Esetünkben a Terraformot használjuk egyetlen konfigurálható belépési pont megvalósítására, amely automatikusan felpörgeti a szükséges teljes infrastruktúrát, beleértve a biztonsági és hozzáférési szabályzatokat, valamint az automatizált felügyeletet. Ezzel az egyetlen belépési ponttal, amely szolgáltatásonként vagy erőforrás-entitásonként egy Terraform-szkriptek gyűjteményét indítja el, teljesen automatizálhatjuk az architektúra összes összetevőjének vagy egy részének életciklusát, lehetővé téve számunkra, hogy a DevOps-on és a az MLOps oldalon. Miután a Terraformot megfelelően telepítették és integrálták az AWS-szel, az AWS-szolgáltatás irányítópultjain végrehajtható legtöbb műveletet megismételhetjük.

Az alábbi ábra szemlélteti megoldásunk architektúráját.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Az architektúra három szakaszból áll: bevitel, gazdagítás és közzététel. Az első szakaszban a valós idejű hírcsatornákat egy Amazon rugalmas számítási felhő (Amazon EC2) példány, amely Refinitiv Data Library-kompatibilis AMI-n keresztül jön létre. A példány ezen keresztül is csatlakozik egy adatfolyamhoz Amazon Kinesis adatfolyamok, amely kiváltja az an AWS Lambda funkciót.

A második szakaszban a Lambda funkció, amely a Kinesis Data Streamsből indul, csatlakozik a SageMakerhez, és elküldi a híreket. FinBERT végpont, amely a hír kiszámított hangulatát adja vissza. Ez a kiszámított hangulat a valós idejű adatok gazdagodása, amelyet a Lambda függvény azután becsomagolja a hírre, és egy Amazon DynamoDB táblázat.

Az architektúra harmadik szakaszában a DynamoDB adatfolyam egy Lambda funkciót indít el az új elembeillesztéseken, amely egy Amazon MQ szerver futtatja a RabbitMQ-t, amely újra kiszolgálja az AI továbbfejlesztett adatfolyamot.

Az Amazon MQ szerverrel közvetlenül kommunikáló vagy az EC2 példányban több funkcionalitást megvalósító első Lambda réteg helyett a háromlépcsős mérnöki tervezés mellett döntöttek, hogy lehetővé tegyék a bonyolultabb, kevésbé csatolt AI tervezési architektúrák jövőbeni feltárását.

A prototípus építése és telepítése

Három részletes tervrajzból álló sorozatban mutatjuk be ezt a prototípust. Minden tervben és minden használt szolgáltatáshoz áttekintéseket és releváns információkat talál a technikai megvalósításairól, valamint a Terraform szkriptekről, amelyek lehetővé teszik a szolgáltatás automatikus elindítását, konfigurálását és a struktúra többi részével való integrálását. Minden terv végén utasításokat talál arra vonatkozóan, hogyan győződjön meg arról, hogy minden a várt módon működik minden egyes szakaszig. A tervrajzok a következők:

A prototípus megvalósításának megkezdéséhez javasoljuk, hogy hozzon létre egy új Python-környezetet, és telepítse a szükséges csomagokat és eszközöket a többi környezettől elkülönítve. Ehhez hozza létre és aktiválja az új környezetet az Anacondában a következő parancsokkal:

conda create —name rd_news_aws_terraform python=3.7
conda activate rd_news_aws_terraform

Most már készen állunk a telepítésre AWS parancssori interfész (AWS CLI) eszközkészlet, amely lehetővé teszi számunkra az összes szükséges programozott interakció létrehozását az AWS-szolgáltatásokon belül és azok között:

pip install awscli

Most, hogy az AWS CLI telepítve van, telepítenünk kell a Terraformot. A HashiCorp bináris telepítővel látja el a Terraformot, amelyre Ön is képes letöltés és telepítse.

Miután mindkét eszközt telepítette, a következő parancsok segítségével győződjön meg arról, hogy megfelelően működnek:

terraform -help
AWS – version

Most már készen áll a részletes tervrajzok követésére a megvalósítás mindhárom szakaszában.

Ez a terv az architektúra kezdeti szakaszait mutatja be, amelyek lehetővé teszik számunkra a valós idejű hírfolyamok feldolgozását. A következő összetevőkből áll:

  • Az Amazon EC2 felkészíti a példányát az RD News feldolgozására – Ez a szakasz egy EC2-példányt állít be oly módon, hogy lehetővé tegye a kapcsolatot az RD Libraries API-val és a valós idejű adatfolyammal. Azt is bemutatjuk, hogyan mentheti el a létrehozott példány képét az újrafelhasználhatóság és a méretezhetőség biztosítása érdekében.
  • Valós idejű hírfeldolgozás az Amazon EC2-től – Azon konfigurációk részletes megvalósítása, amelyek ahhoz szükségesek, hogy az Amazon EC2 összekapcsolhassa az RD-könyvtárakat, valamint a feldolgozás megkezdéséhez szükséges szkripteket.
  • Amazon EC2 létrehozása és indítása az AMI-ből – Indítson el egy új példányt a feldolgozási fájlok egyidejű átvitelével az újonnan létrehozott példányra, mindezt automatikusan a Terraform használatával.
  • Kinesis adatfolyam létrehozása – Ez a rész áttekintést nyújt a Kinesis adatfolyamokról és az adatfolyam beállításáról az AWS-en.
  • Adatok csatlakoztatása és továbbítása a Kinesishez – Ha a beviteli kód működik, csatlakoztatnunk kell, és adatokat kell küldenünk egy Kinesis adatfolyamba.
  • A prototípus tesztelése eddig - Mi használjuk amazonfelhőóra és parancssori eszközökkel ellenőrizheti, hogy a prototípus eddig a pontig működik-e, és folytathatjuk-e a következő tervrajzot. A bevitt adatok naplójának az alábbi képernyőképhez hasonlóan kell kinéznie.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Ebben a második tervezetben az architektúra fő részére összpontosítunk: a Lambda funkcióra, amely feldolgozza és elemzi a hírfolyamot, hozzáfűzi az AI-következtetést, és tárolja azt további felhasználás céljából. A következő összetevőket tartalmazza:

  • Lambda – Adjon meg egy Terraform Lambda konfigurációt, amely lehetővé teszi a SageMaker végponthoz való csatlakozást.
  • Amazon S3 – A Lambda megvalósításához fel kell töltenünk a megfelelő kódot Amazon egyszerű tárolási szolgáltatás (Amazon S3), és hagyja, hogy a Lambda funkció lenyelje azt a környezetében. Ez a rész leírja, hogyan használhatjuk ezt a Terraformot.
  • A Lambda funkció megvalósítása: 1. lépés, a Kinesis esemény kezelése – Ebben a szakaszban kezdjük el a Lambda funkció kiépítését. Itt csak a Kinesis adatfolyam-válaszkezelő részét építjük fel.
  • SageMaker – Ebben a prototípusban egy előre betanított Hugging Face modellt használunk, amelyet egy SageMaker végpontban tárolunk. Itt bemutatjuk, hogyan érhető el ez Terraform szkriptek használatával, és hogyan valósulnak meg a megfelelő integrációk, amelyek lehetővé teszik a SageMaker végpontok és a Lambda függvények együttműködését.
    • Ezen a ponton ehelyett bármilyen más modellt használhat, amelyet egy SageMaker-végpont mögött fejlesztett és telepített. Egy ilyen modell az Ön igényeinek megfelelően az eredeti híradatokhoz képest eltérő továbbfejlesztést biztosíthat. Opcionálisan ez extrapolálható több modellre több fejlesztés érdekében, ha vannak ilyenek. Az architektúra többi részének köszönhetően minden ilyen modell valós időben gazdagítja az adatforrásokat.
  • A Lambda függvény felépítése: 2. lépés, a SageMaker végpont meghívása – Ebben a részben az eredeti Lambda funkciót építjük fel a SageMaker blokk hozzáadásával, hogy a SageMaker végpont meghívásával hangulatjavító hírcímet kapjunk.
  • DynamoDB – Végül, amikor az AI-következtetés a Lambda függvény memóriájában van, újracsomagolja az elemet, és elküldi egy DynamoDB táblába tárolásra. Itt tárgyaljuk mind a megfelelő Python-kódot, amely ehhez szükséges, valamint a szükséges Terraform-szkripteket, amelyek lehetővé teszik ezeket az interakciókat.
  • A Lambda függvény felépítése: 3. lépés: Továbbfejlesztett adatok küldése a DynamoDB-be – Itt folytatjuk a Lambda funkció felépítését az utolsó rész hozzáadásával, amely bejegyzést hoz létre a Dynamo táblázatban.
  • A prototípus tesztelése eddig – A DynamoDB konzolon a DynamoDB táblához navigálhatunk, hogy ellenőrizzük, hogy a fejlesztéseink megjelennek-e a táblázatban.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Ez a harmadik tervrajz véglegesíti ezt a prototípust. Az újonnan létrehozott, mesterséges intelligenciával továbbfejlesztett adatelemek RabbitMQ-szerverre való újraelosztására összpontosít az Amazon MQ-ban, lehetővé téve a fogyasztók számára, hogy valós időben csatlakozzanak és lekérjék a továbbfejlesztett híreket. A következő összetevőket tartalmazza:

  • DynamoDB Streams – Amikor a továbbfejlesztett hír a DynamoDB-ben van, beállítunk egy eseményt, amely aktiválódik, amelyet aztán a megfelelő Lambda függvényből rögzíthetünk.
  • A Lambda gyártója – Ez a Lambda funkció rögzíti az eseményt, és a RabbitMQ adatfolyam producereként működik. Ez az új funkció bevezeti a Lambda rétegek koncepcióját, mivel Python könyvtárakat használ a gyártói funkciók megvalósításához.
  • Amazon MQ és RabbitMQ fogyasztók – A prototípus utolsó lépése a RabbitMQ szolgáltatás beállítása és egy példafogyasztó megvalósítása, amely csatlakozik az üzenetfolyamhoz, és megkapja az AI továbbfejlesztett híreket.
  • A prototípus utolsó tesztje – Végponttól végpontig terjedő folyamatot használunk annak ellenőrzésére, hogy a prototípus teljes mértékben működik-e, a beviteltől az újrakiszolgálásig és az új, mesterséges intelligencia által továbbfejlesztett adatfolyam fogyasztásáig.

Ebben a szakaszban a RabbitMQ irányítópultjára navigálva ellenőrizheti, hogy minden működött-e, ahogy az a következő képernyőképen látható.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.

A végső tervben egy részletes tesztvektor is található, amellyel megbizonyosodhat arról, hogy a teljes architektúra a tervek szerint működik.

Következtetés

Ebben a bejegyzésben megosztottunk egy megoldást, amely az ML-t a felhőben használja az olyan AWS-szolgáltatásokkal, mint a SageMaker (ML), a Lambda (szerver nélküli) és a Kinesis Data Streams (streaming), hogy gazdagítsuk a Refinitiv Data Libraries által biztosított streamelési híradatokat. A megoldás valós időben hangulatpontszámot ad a hírekhez, és kód segítségével skálázza az infrastruktúrát.

Ennek a moduláris architektúrának az az előnye, hogy saját modelljével újra felhasználhatja más típusú adatbővítéshez, szerver nélküli, méretezhető és költséghatékony módon, amely a Refinitiv Data Library tetején is alkalmazható. Ez hozzáadott értéket jelenthet a kereskedési/befektetési/kockázatkezelési munkafolyamatokhoz.

Ha bármilyen észrevétele vagy kérdése van, kérjük, tegye meg a megjegyzés rovatban.

Kapcsolódó információ


 A szerzőkről

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Marios Skevofylakas pénzügyi szolgáltatási, befektetési banki és tanácsadó technológiai háttérrel rendelkezik. Mérnöki Ph.D. fokozattal rendelkezik. Mesterséges intelligencia szakon és okl. a Machine Visionban. Pályafutása során számos multidiszciplináris AI és DLT projektben vett részt. Jelenleg fejlesztői tanácsadóként dolgozik a Refinitivnél, egy LSEG-üzletnél, amely a mesterséges intelligencia és a Quantum alkalmazásokra összpontosít a pénzügyi szolgáltatásokban.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Jason Ramchandani 8 évig dolgozott a Refinitivnél, egy LSEG-üzletágnál, mint vezető fejlesztői jogvédő, és segített felépíteni fejlesztői közösségüket. Korábban több mint 15 éve dolgozott a pénzügyi piacokon, és jelentős háttérrel rendelkezett az Okasan Securities, a Sakura Finance és a Jefferies LLC részvény/részvényhez kötött területen. Alma materje az UCL.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Haykaz Aramjan pénzügyi és technológiai háttérrel rendelkezik. Ph.D. fokozattal rendelkezik. Pénzügy szakon, valamint okl. a Pénzügy, technológia és politika szakon. 10 éves szakmai tapasztalata révén Haykaz több multidiszciplináris projekten dolgozott, amelyek nyugdíj-, kockázatitőke-alapokat és technológiai startupokat érintettek. Jelenleg a Refinitiv, An LSEG Business fejlesztői tanácsadója, a pénzügyi szolgáltatások AI-alkalmazásaira összpontosítva.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Georgios Schinas az EMEA régióban az AI/ML vezető specialista megoldások építésze. Székhelye Londonban van, és szorosan együttműködik az Egyesült Királyságban és Írországban élő ügyfelekkel. A Georgios segít az ügyfeleknek a gépi tanulási alkalmazások tervezésében és üzembe helyezésében az AWS-en, különös tekintettel az MLOps-gyakorlatokra, és lehetővé teszi az ügyfelek számára a gépi tanulás nagyarányú végrehajtását. Szabadidejében szívesen utazik, főz, és a barátaival és családjával tölti az idejét.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Muthuvelan Swaminathan egy New York-i székhelyű Enterprise Solutions Architect. Vállalati ügyfelekkel dolgozik együtt, és építészeti útmutatást nyújt olyan rugalmas, költséghatékony, innovatív megoldások építésében, amelyek megfelelnek az üzleti szükségleteiknek, és segítik őket az AWS-termékek és -szolgáltatások felhasználásával a nagyszabású végrehajtásban.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Mayur Udernani vezeti az AWS AI és ML üzletet kereskedelmi vállalatokkal az Egyesült Királyságban és Írországban. Szerepkörében Mayur ideje nagy részét ügyfelekkel és partnerekkel tölti, hogy segítsen olyan hatásos megoldásokat létrehozni, amelyek megoldják az ügyfelek legsürgetőbb igényeit, vagy egy szélesebb iparág számára, kihasználva az AWS Cloud, AI és ML szolgáltatásokat. Mayur London környékén él. MBA diplomáját az Indiai Menedzsment Intézetben, valamint a Mumbai Egyetemen szerzett számítástechnikai alapképzést.

Időbélyeg:

Még több AWS gépi tanulás