העשרת זרמי חדשות בזמן אמת עם ספריית הנתונים Refinitiv, שירותי AWS ו-Amazon SageMaker

העשרת זרמי חדשות בזמן אמת עם ספריית הנתונים Refinitiv, שירותי AWS ו-Amazon SageMaker

פוסט זה נכתב במשותף על ידי מריו סקבופילאקאס, ג'ייסון רמצ'נדאני והייקאז ארמיאן מ-Refinitiv, An LSEG Business.

ספקי שירותים פיננסיים צריכים לעתים קרובות לזהות חדשות רלוונטיות, לנתח אותן, לחלץ תובנות ולנקוט פעולות בזמן אמת, כמו מסחר במכשירים ספציפיים (כגון סחורות, מניות, קרנות) בהתבסס על מידע נוסף או ההקשר של הידיעה. פיסת מידע נוספת כזו (בה אנו משתמשים כדוגמה בפוסט זה) היא תחושת החדשות.

ספריות Refinitiv Data (RD) מספקות סט מקיף של ממשקים לגישה אחידה לקטלוג הנתונים של Refinitiv. הספרייה מציעה שכבות מרובות של הפשטה המספקות סגנונות שונים וטכניקות תכנות המתאימות לכל המפתחים, החל מגישה עם אחזור נמוך בזמן אמת וכלה בהטמעות אצווה של נתוני Refinitiv.

בפוסט זה, אנו מציגים ארכיטקטורת אב-טיפוס של AWS אשר בולעת עדכוני החדשות שלנו באמצעות ספריות RD ומשפרת אותם עם חיזוי מודל למידת מכונה (ML) באמצעות אמזון SageMaker, שירות ML מנוהל במלואו מבית AWS.

במאמץ לתכנן ארכיטקטורה מודולרית שתוכל לשמש במגוון מקרי שימוש, כמו ניתוח סנטימנטים, זיהוי ישות ועוד, ללא קשר למודל ה-ML המשמש לשיפור, החלטנו להתמקד במרחב בזמן אמת. הסיבה להחלטה זו היא שמקרי שימוש בזמן אמת הם בדרך כלל מורכבים יותר ושניתן להשתמש באותה ארכיטקטורה, עם התאמות מינימליות, להסקת אצווה. במקרה השימוש שלנו, אנו מיישמים ארכיטקטורה שמטמעת את עדכון החדשות שלנו בזמן אמת, מחשבת סנטימנט על כל כותרת חדשות באמצעות ML, ומגישה מחדש את העדכון המשופר של AI דרך ארכיטקטורת מוציאים לאור/מנויים.

יתרה מכך, כדי להציג דרך מקיפה וניתנת לשימוש חוזר לייצור מודלים של ML על ידי אימוץ שיטות MLOps, אנו מציגים את הרעיון של תשתית כקוד (IaC) במהלך כל מחזור החיים של MLOps של אב הטיפוס. על ידי שימוש ב- Terraform ובסקריפט שניתן להגדרה של נקודת כניסה יחידה, אנו מסוגלים ליצור את כל התשתית, במצב ייצור, ב-AWS תוך מספר דקות.

בפתרון זה, איננו מתייחסים להיבט ה-MLOps של הפיתוח, ההדרכה והפריסה של המודלים הבודדים. אם אתה מעוניין ללמוד עוד על זה, עיין ב מפת הדרכים של בסיס MLOps לארגונים עם Amazon SageMaker, שמסביר בפירוט מסגרת לבניית מודל, הדרכה ופריסה בעקבות שיטות עבודה מומלצות.

סקירת פתרונות

באב-טיפוס זה, אנו פועלים לפי מתודולוגיית הקצאה אוטומטית לחלוטין בהתאם ל-IAC שיטות עבודה מומלצות. IaC הוא תהליך של הקצאת משאבים באופן פרוגרמטי באמצעות סקריפטים אוטומטיים במקום שימוש בכלי תצורה אינטראקטיביים. משאבים יכולים להיות גם חומרה וגם תוכנה נחוצה. במקרה שלנו, אנו משתמשים ב-Terraform כדי לבצע יישום של נקודת כניסה יחידה הניתנת להגדרה שיכולה ליצור באופן אוטומטי את כל התשתית שאנו צריכים, כולל מדיניות אבטחה וגישה, כמו גם ניטור אוטומטי. עם נקודת כניסה יחידה זו שמפעילה אוסף של סקריפטים של Terraform, אחד לכל ישות שירות או משאב, אנו יכולים להפוך את מחזור החיים של כולם או חלקים של רכיבי הארכיטקטורה לאוטומטיים, מה שמאפשר לנו ליישם שליטה פרטנית גם ב-DevOps וגם הצד של MLOps. לאחר התקנה נכונה של Terraform ומשולבת עם AWS, נוכל לשכפל את רוב הפעולות שניתן לבצע על לוחות המחוונים של שירות AWS.

התרשים הבא ממחיש את ארכיטקטורת הפתרונות שלנו.

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

הארכיטקטורה מורכבת משלושה שלבים: בליעה, העשרה ופרסום. במהלך השלב הראשון, הזנות בזמן אמת נבלעות על א ענן מחשוב אלסטי של אמזון (Amazon EC2) מופע שנוצר באמצעות AMI מוכן ל-Refinitiv Data Library. המופע מתחבר גם לזרם נתונים באמצעות זרמי נתונים של אמזון קינסי, שמפעיל an AWS למבדה פונקציה.

בשלב השני, פונקציית Lambda המופעלת מ-Kinesis Data Streams מתחברת ושולחת את כותרות החדשות ל- SageMaker FinBERT נקודת קצה, המחזירה את הסנטימנט המחושב עבור הידיעה. הסנטימנט המחושב הזה הוא ההעשרה בנתונים בזמן אמת שפונקציית Lambda עוטפת את הידיעה ומאחסנת ב- אמזון דינמו השולחן.

בשלב השלישי של הארכיטקטורה, זרם DynamoDB מפעיל פונקציית Lambda בהוספת פריטים חדשים, המשולבת עם שרת אמזון MQ מפעיל את RabbitMQ, המשרת מחדש את הזרם המשופר של AI.

ההחלטה על תכנון הנדסי תלת-שלבי זה, במקום שכבת Lambda הראשונה שמתקשרת ישירות עם שרת Amazon MQ או מיישמת יותר פונקציונליות במופע EC2, התקבלה כדי לאפשר חקירה של ארכיטקטורות עיצוב בינה מלאכותית מורכבות יותר ופחות מצמודות בעתיד.

בנייה ופריסה של אב הטיפוס

אנו מציגים את אב הטיפוס הזה בסדרה של שלושה שרטוטים מפורטים. בכל שרטוט ולכל שירות בו נעשה שימוש, תמצא סקירה כללית ומידע רלוונטי על יישומיו הטכניים וכן סקריפטים של Terraform המאפשרים לך להתחיל, להגדיר ולשלב את השירות באופן אוטומטי עם שאר המבנה. בסוף כל שרטוט תמצאו הנחיות כיצד לוודא שהכל עובד כמצופה עד כל שלב. השרטוטים הם כדלקמן:

כדי להתחיל ביישום של אב טיפוס זה, אנו מציעים ליצור סביבת Python חדשה המוקדשת לו ולהתקין את החבילות והכלים הדרושים בנפרד מסביבות אחרות שאולי יש לך. לשם כך, צור והפעל את הסביבה החדשה ב-Anaconda באמצעות הפקודות הבאות:

conda create —name rd_news_aws_terraform python=3.7
conda activate rd_news_aws_terraform

כעת אנו מוכנים להתקין את ממשק שורת הפקודה של AWS (AWS CLI) ערכת כלים שתאפשר לנו לבנות את כל האינטראקציות התכנותיות הנדרשות בתוך ובין שירותי AWS:

pip install awscli

כעת לאחר שה-AWS CLI מותקן, עלינו להתקין את Terraform. HashiCorp מספקת ל-Terraform מתקין בינארי, שאתה יכול להורדה ולהתקין.

לאחר התקנת שני הכלים, ודא שהם פועלים כראוי באמצעות הפקודות הבאות:

terraform -help
AWS – version

כעת אתה מוכן לעקוב אחר השרטוטים המפורטים בכל אחד משלושת שלבי היישום.

שרטוט זה מייצג את השלבים הראשוניים של הארכיטקטורה המאפשרים לנו להטמיע את עדכוני החדשות בזמן אמת. הוא מורכב מהרכיבים הבאים:

  • Amazon EC2 מכינה את המופע שלך להטמעת חדשות RD – סעיף זה מגדיר מופע EC2 באופן שהוא מאפשר את החיבור ל-RD Libraries API ולזרם בזמן אמת. אנו גם מראים כיצד לשמור את התמונה של המופע שנוצר כדי להבטיח שימוש חוזר ומדרגיות שלו.
  • קליטת חדשות בזמן אמת מאמזון EC2 – יישום מפורט של התצורות הדרושות כדי לאפשר לאמזון EC2 לחבר את ספריות ה-RD וכן את הסקריפטים כדי להתחיל את ההטמעה.
  • יצירה והשקה של Amazon EC2 מה-AMI – הפעל מופע חדש על-ידי העברת קבצי הטמעה בו-זמנית למופע החדש שנוצר, והכל באופן אוטומטי באמצעות Terraform.
  • יצירת זרם נתונים של Kinesis – סעיף זה מספק סקירה כללית של זרמי נתונים של Kinesis וכיצד להגדיר זרם ב-AWS.
  • חיבור ודחיפת נתונים לקינזיס - ברגע שקוד ההטמעה פועל, עלינו לחבר אותו ולשלוח נתונים לזרם Kinesis.
  • בודקים את אב הטיפוס עד כה - אנו משתמשים אמזון CloudWatch וכלי שורת פקודה כדי לוודא שאב הטיפוס עובד עד לנקודה זו ושנוכל להמשיך לתוכנית הבאה. יומן הנתונים המובלעים אמור להיראות כמו צילום המסך הבא.

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

בתוכנית השנייה הזו, אנו מתמקדים בחלק העיקרי של הארכיטקטורה: פונקציית Lambda אשר קולטת ומנתחת את זרם החדשות, מצרף אליו את מסקנת הבינה המלאכותית ומאחסנת אותו לשימוש נוסף. הוא כולל את הרכיבים הבאים:

  • למבדה - הגדר תצורת Terraform Lambda המאפשרת לו להתחבר לנקודת קצה של SageMaker.
  • אמזון S3 - כדי ליישם את Lambda, עלינו להעלות את הקוד המתאים ל שירות אחסון פשוט של אמזון (Amazon S3) ולאפשר לפונקציית Lambda לבלוע אותה בסביבתה. סעיף זה מתאר כיצד אנו יכולים להשתמש ב- Terraform כדי להשיג זאת.
  • יישום פונקציית Lambda: שלב 1, טיפול באירוע הקינזיס – בסעיף זה, אנו מתחילים לבנות את פונקציית Lambda. כאן, אנו בונים את חלק המטפל בתגובה זרם הנתונים של Kinesis בלבד.
  • SageMaker – באב-טיפוס זה, אנו משתמשים בדגם חיבוק מיומן מראש שאנו מאחסנים בנקודת קצה של SageMaker. כאן אנו מציגים כיצד ניתן להשיג זאת באמצעות סקריפטים של Terraform וכיצד מתבצעות האינטגרציות המתאימות כדי לאפשר לנקודות הקצה של SageMaker ולפונקציות Lambda לעבוד יחד.
    • בשלב זה, אתה יכול במקום זאת להשתמש בכל מודל אחר שפיתחת ופרסת מאחורי נקודת קצה של SageMaker. מודל כזה יכול לספק שיפור שונה לנתוני החדשות המקוריים, בהתבסס על הצרכים שלך. לחלופין, ניתן להקציף את זה למספר דגמים עבור שיפורים מרובים אם קיימים כאלה. הודות לשאר הארכיטקטורה, כל מודל כזה יעשיר את מקורות הנתונים שלך בזמן אמת.
  • בניית פונקציית Lambda: שלב 2, הפעלת נקודת הקצה של SageMaker - בחלק זה, אנו בונים את פונקציית Lambda המקורית שלנו על ידי הוספת בלוק SageMaker כדי לקבל כותרת חדשות משופרת בסנטימנט על ידי הפעלת נקודת הקצה של SageMaker.
  • דינמודב - לבסוף, כאשר מסקנת הבינה המלאכותית נמצאת בזיכרון של פונקציית Lambda, היא מאגדת מחדש את הפריט ושולחת אותו לטבלת DynamoDB לאחסון. כאן, אנו דנים הן בקוד Python המתאים הדרוש כדי להשיג זאת, כמו גם בסקריפטים הדרושים של Terraform המאפשרים אינטראקציות אלה.
  • בניית פונקציית Lambda: שלב 3, דחיפת נתונים משופרים ל-DynamoDB – כאן, אנו ממשיכים לבנות את פונקציית Lambda שלנו על ידי הוספת החלק האחרון שיוצר ערך בטבלת דינמו.
  • בודקים את אב הטיפוס עד כה - אנו יכולים לנווט לטבלת DynamoDB במסוף DynamoDB כדי לוודא שהשיפורים שלנו מופיעים בטבלה.

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

שרטוט שלישי זה מסיים את אב הטיפוס הזה. הוא מתמקד בהפצה מחדש של פריט הנתונים החדש שנוצר, המשופר בינה מלאכותית, לשרת RabbitMQ באמזון MQ, ומאפשר לצרכנים להתחבר ולאחזר את החדשות המשופרות בזמן אמת. הוא כולל את הרכיבים הבאים:

  • זרמי DynamoDB - כאשר האייטם החדשותי המשופר נמצא ב-DynamoDB, אנו מגדירים אירוע שהופעל אותו ניתן ללכוד מפונקציית Lambda המתאימה.
  • כתיבת מפיק למבדה - פונקציית Lambda זו מצלמת את האירוע ומתפקדת כמפיקה של זרם RabbitMQ. פונקציה חדשה זו מציגה את הרעיון של שכבות Lambda כאשר היא משתמשת בספריות Python כדי ליישם את פונקציונליות המפיק.
  • צרכני Amazon MQ ו- RabbitMQ – השלב האחרון של אב הטיפוס הוא הקמת שירות RabbitMQ והטמעת צרכן לדוגמה שיתחבר לזרם ההודעות ויקבל את החדשות המשופרות של AI.
  • בדיקה סופית של אב הטיפוס - אנו משתמשים בתהליך מקצה לקצה כדי לוודא שאב הטיפוס פועל במלואו, החל מהטמעה ועד להגשה מחדש וצריכת הזרם החדש המשופר ב-AI.

בשלב זה, אתה יכול לאמת שהכל עובד על ידי ניווט ללוח המחוונים של RabbitMQ, כפי שמוצג בצילום המסך הבא.

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

בתוכנית הסופית, אתה מוצא גם וקטור בדיקה מפורט כדי לוודא שהארכיטקטורה כולה מתנהגת כמתוכנן.

סיכום

בפוסט זה, שיתפנו פתרון באמצעות ML בענן עם שירותי AWS כמו SageMaker (ML), Lambda (ללא שרת) ו-Kinesis Data Streams (סטרימינג) כדי להעשיר נתונים זורמים של חדשות המסופקים על ידי Refinitiv Data Libraries. הפתרון מוסיף ציון סנטימנט לפריטי חדשות בזמן אמת ומרחיב את התשתית באמצעות קוד.

היתרון של ארכיטקטורה מודולרית זו הוא שאתה יכול לעשות בה שימוש חוזר עם המודל שלך כדי לבצע סוגים אחרים של הגדלת נתונים, בצורה חסרת שרת, מדרגית וחסכונית שניתן ליישם על גבי Refinitiv Data Library. זה יכול להוסיף ערך עבור תהליכי עבודה של מסחר/השקעות/ניהול סיכונים.

אם יש לך הערות או שאלות כלשהן, השאר אותם במדור התגובות.

מידע קשור


 על הכותבים

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.מריו סקבופילאקאס מגיע מרקע טכנולוגי של שירותים פיננסיים, בנקאות השקעות וייעוץ. הוא בעל תואר דוקטור הנדסי. בבינה מלאכותית ותואר M.Sc. ב-Machine Vision. לאורך הקריירה שלו, הוא השתתף במספר רב של פרויקטי AI ו-DLT רב-תחומיים. כיום הוא עו"ד מפתחים ב-Refinitiv, עסק של LSEG, המתמקד ביישומי בינה מלאכותית וקוואנטים בשירותים פיננסיים.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.ג'ייסון רמצ'נדאני עבד ב-Refinitiv, עסק של LSEG, במשך 8 שנים כעורך דין מפתחים מוביל ועוזר בבניית קהילת המפתחים שלהם. בעבר הוא עבד בשווקים הפיננסיים למעלה מ-15 שנים עם רקע כמותי בתחום ההון/הצמוד להון ב-Okasan Securities, Sakura Finance ו-Jefferies LLC. עלמא שלו הוא UCL.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.הייקאז ארמיאן מגיע מרקע פיננסי וטכנולוגי. הוא בעל תואר Ph.D. במימון, ותואר M.Sc. בפיננסים, טכנולוגיה ומדיניות. באמצעות ניסיון מקצועי של 10 שנים, עבד הייקאז במספר פרויקטים רב-תחומיים הקשורים לפנסיה, קרנות הון סיכון וסטארט-אפים טכנולוגיים. כיום הוא עו"ד מפתחים ב-Refinitiv, An LSEG Business, המתמקד ביישומי בינה מלאכותית בשירותים פיננסיים.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.גאורגיוס שינאס הוא ארכיטקט פתרונות מומחה בכיר עבור AI/ML באזור EMEA. הוא מבוסס בלונדון ועובד בשיתוף פעולה הדוק עם לקוחות בבריטניה ובאירלנד. Georgios עוזר ללקוחות לתכנן ולפרוס יישומי למידת מכונה בייצור ב-AWS עם עניין מיוחד בפרקטיקות MLOps ומאפשר ללקוחות לבצע למידת מכונה בקנה מידה. בזמנו הפנוי הוא נהנה לטייל, לבשל ולבלות עם חברים ובני משפחה.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.Muthuvelan Swaminathan הוא ארכיטקט פתרונות ארגוניים שבסיסו מניו יורק. הוא עובד עם לקוחות ארגוניים המספקים הדרכה ארכיטקטונית בבניית פתרונות עמידים, חסכוניים וחדשניים הנותנים מענה לצרכים העסקיים שלהם ומסייעים להם לבצע בקנה מידה עם מוצרים ושירותים של AWS.

Enriching real-time news streams with the Refinitiv Data Library, AWS services, and Amazon SageMaker PlatoBlockchain Data Intelligence. Vertical Search. Ai.מאיור אודרני מוביל את עסקי AWS AI & ML עם ארגונים מסחריים בבריטניה ובאירלנד. בתפקידו, מאיור מבלה את רוב זמנו עם לקוחות ושותפים כדי לעזור ליצור פתרונות משפיעים הפותרים את הצרכים הדחופים ביותר של לקוח או עבור תעשייה רחבה יותר הממנפת שירותי ענן, AI ו-ML של AWS. מאיור גר באזור לונדון. יש לו תואר שני במנהל עסקים מהמכון ההודי לניהול ותואר ראשון בהנדסת מחשבים מאוניברסיטת מומבאי.

בול זמן:

עוד מ למידת מכונות AWS