בניית יישומי RAG מבוססי מולטימודל: Amazon Bedrock

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

באמצעות Amazon Bedrock Data Automation ו-Amazon Bedrock Knowledge Bases, ניתן כעת לבנות בקלות יישומי RAG מרובי עוצמה. יחד, הם מאפשרים לארגונים לעבד, לארגן ולאחזר מידע ביעילות מתוכן רב-מודאלי, ובכך לשנות את האופן שבו הם מנהלים ומשתמשים בנתונים לא מובנים.

מאמר זה ידריך אותך בבניית יישום full-stack אשר משתמש ב-Amazon Bedrock Data Automation כדי לעבד תוכן רב-מודאלי, לאחסן את המידע החילוצי בתוך Amazon Bedrock Knowledge Bases ומאפשר שאילתות בשפה טבעית באמצעות ממשק שאלות ותשובות מבוסס RAG.

מקרי שימוש מעשיים

השילוב של Amazon Bedrock Data Automation ו-Amazon Bedrock Knowledge Bases מספק פתרון רב עוצמה לעיבוד כמויות גדולות של נתונים לא מובנים בתעשיות שונות, לדוגמה:

  • בתחום הבריאות, ארגונים צריכים להתמודד עם כמויות עצומות של רשומות מטופלים, כולל טפסים רפואיים, תמונות אבחון והקלטות ייעוץ. Amazon Bedrock Data Automation יכולה לחלץ ולבנות מידע זה באופן אוטומטי, בעוד ש-Amazon Bedrock Knowledge Bases מאפשרת לאנשי מקצוע בתחום הבריאות להשתמש בשאילתות בשפה טבעית, כגון “מה היה קריאת לחץ הדם האחרונה של המטופל?” או “הצג את ההיסטוריה הטיפולית של חולה הסוכרת”.
  • מוסדות פיננסיים מעבדים מדי יום אלפי מסמכים, החל מבקשות הלוואה ועד לדוחות כספיים. Amazon Bedrock Data Automation יכולה לחלץ מדדים פיננסיים ומידע תאימות מרכזיים, בעוד ש-Amazon Bedrock Knowledge Bases מאפשרת לאנליסטים לשאול שאלות כגון “אילו גורמי סיכון הוזכרו בדוח הרבעוני האחרון?” או “הצג את כל בקשות ההלוואה עם דירוג אשראי גבוה”.
  • משרדי עורכי דין צריכים להתמודד עם כמויות גדולות של תיקי תיעוד, המכילים תיקי בית משפט, תמונות ראיות ועדויות עדים. Amazon Bedrock Data Automation יכולה לעבד מקורות שונים אלה, בעוד ש-Amazon Bedrock Knowledge Bases מאפשרת לעורכי דין לשאול “אילו ראיות הוצגו לגבי האירועים של ה-15 במרץ?” או “מצא את כל ההצהרות של עדים שאזכרו את הנאשם”.
  • חברות מדיה יכולות להשתמש בשילוב זה כדי לאפשר הצבת מודעות הקשרית חכמה. Amazon Bedrock Data Automation מעבדת תוכן וידאו, כתוביות ושמע כדי להבין את ההקשר של הסצנה, את הדיאלוג ואת הרגש, תוך ניתוח נכסי מודעות ודרישות קמפיין פרסומי. לאחר מכן, Amazon Bedrock Knowledge Bases מאפשרת לבצע שאילתות מורכבות כדי להתאים מודעות לרגעי תוכן מתאימים, כגון “מצא סצנות של פעילויות חוץ חיוביות המכילות מודעת ציוד ספורט” או “זיהוי קטעי פרסום לתיירות אשר דנים בתעשיית התיירות”. התאמה הקשרית חכמה זו מספקת הצבת מודעות רלוונטית ויעילה יותר, תוך שמירה על בטיחות המותג.

דוגמאות אלה מראות כיצד שילוב של יכולות החילוץ של Amazon Bedrock Data Automation עם שאילתות בשפה טבעית של Amazon Bedrock Knowledge Bases, יכול לשנות את הדרך שבה ארגונים מקיימים אינטראקציה עם הנתונים הלא מובנים שלהם.

סקירת פתרון

פתרון מקיף זה מדגים את היכולות המתקדמות של Amazon Bedrock בעיבוד וניתוח של תוכן רב-מודאלי (מסמכים, תמונות, קבצי שמע וקובצי וידאו), אשר מושגת באמצעות שלושה מרכיבי מפתח: Amazon Bedrock Data Automation, Amazon Bedrock Knowledge Bases ומודלים בסיסיים המסופקים באמצעות Amazon Bedrock. משתמשים יכולים להעלות סוגים שונים של תוכן, כולל קבצי שמע, תמונות, וידאו או PDF, לצורך עיבוד וניתוח אוטומטיים.

כאשר אתה מעלה תוכן, Amazon Bedrock Data Automation מעבדת אותו באמצעות תוכניות מוגדרות מראש או מותאמות אישית כדי לחלץ ממנו תובנות בעלות ערך. המידע החילוצי מאוחסן בפורמט JSON בתוך Amazon Simple Storage Service ‏(Amazon S3) bucket, בעוד שמצב המשימות נמעקב באמצעות Amazon EventBridge ונשמר ב-Amazon DynamoDB. הפתרון מבצע ניתוח מותאם אישית של ה-JSON החילוצי כדי ליצור מסמכים אשר תואמים לבסיס ידע, ולאחר מכן מאחסן אותם ב-Amazon Bedrock Knowledge Bases ומבצע אינדוקס.

דרך ממשק משתמש אינטואיטיבי, הפתרון מציג בו זמנית את התוכן שהועלה ואת המידע החילוצי שלו. משתמשים יכולים לקיים אינטראקציה עם הנתונים המעובדים באמצעות מערכת שאלות ותשובות המבוססת על יצירת תוכן משופרת אחזור (RAG), אשר מופעלת על ידי מודלים בסיסיים של Amazon Bedrock. גישה משולבת זו מאפשרת לארגונים לעבד, לנתח ולהשיג תובנות ביעילות מפורמטים שונים של תוכן, תוך שימוש בתשתית חזקה וניתנת להרחבה אשר נפרשת באמצעות AWS Cloud Development Kit ‏(AWS CDK).

ארכיטקטורה

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

  1. משתמשים מקיימים אינטראקציה עם יישום חזיתי, אשר מאמת אותם דרך Amazon Cognito.
  2. בקשות API מעובדות על ידי Amazon API Gateway ופונקציות AWS Lambda.
  3. קבצים מועלים לתוך S3 bucket לעיבוד.
  4. Amazon Bedrock Data Automation מעבדת את הקבצים ומחלצת מידע.
  5. EventBridge מנהל את מצב המשימות ומפעיל עיבוד נוסף.
  6. מצב המשימה מאוחסן ב-DynamoDB, והתוכן המעובד מאוחסן ב-Amazon S3.
  7. פונקציית Lambda מנתחת את התוכן המעובד ומבצעת אינדוקס בתוך Amazon Bedrock Knowledge Bases.
  8. מערכת שאלות ותשובות מבוססת RAG משתמשת במודלים בסיסיים של Amazon Bedrock כדי לענות על שאילתות משתמשים.

דרישות קדם

צד שרת

עבור צד השרת, יש צורך בדרישות הקדם הבאות:

  • חשבון AWS.
  • Python 3.11 ומעלה.
  • Docker.
  • GitHub (אם משתמשים במאגר קוד).
  • AWS CDK. לפרטים נוספים ותנאים מוקדמים, ראה תחילת העבודה עם AWS CDK.
  • אפשר גישה למודלים בסיסיים ב-Amazon Bedrock:
    • Claude 3.5 Sonnet v2.0 של Anthropic
    • Amazon Nova Pro v1.0
    • Claude 3.7 Sonnet v1.0 של Anthropic

צד לקוח

עבור צד הלקוח, יש צורך בדרישות הקדם הבאות:

  • Node/npm: v18.12.1
  • קצה עורפי שנפרס.
  • משתמש אחד לפחות נוסף למאגר המשתמשים המתאים של Amazon Cognito (נדרש לקריאות API מאומתות).

כל מה שצריך זמין כקוד פתוח במאגר ה-GitHub שלנו.

מדריך פריסה

בסיס קוד יישום לדוגמה זה מאורגן לתיקיות מפתח הבאות:

samples/bedrock-bda-media-solution