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

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

AI גנרטיבי פתח פוטנציאל רב בתחום ה-AI. אנו רואים שימושים רבים, כולל יצירת טקסט, יצירת קוד, סיכום, תרגום, צ'אט בוטים ועוד. תחום כזה שמתפתח הוא שימוש בעיבוד שפה טבעית (NLP) כדי לפתוח הזדמנויות חדשות לגישה לנתונים באמצעות שאילתות SQL אינטואיטיביות. במקום להתמודד עם קוד טכני מורכב, משתמשים עסקיים ומנתחי נתונים יכולים לשאול שאלות הקשורות לנתונים ותובנות בשפה פשוטה. המטרה העיקרית היא ליצור אוטומטית שאילתות SQL מטקסט בשפה טבעית. לשם כך, קלט הטקסט הופך לייצוג מובנה, ומתוך ייצוג זה נוצרת שאילתת SQL שניתן להשתמש בה כדי לגשת למסד נתונים.

בפוסט זה, אנו מספקים מבוא לטקסט ל-SQL (Text2SQL) וחוקרים מקרי שימוש, אתגרים, דפוסי עיצוב ושיטות עבודה מומלצות. באופן ספציפי, אנו דנים בדברים הבאים:

  • למה אנחנו צריכים Text2SQL
  • רכיבי מפתח עבור טקסט ל-SQL
  • שיקולים הנדסיים מהירים עבור שפה טבעית או טקסט ל-SQL
  • אופטימיזציות ושיטות עבודה מומלצות
  • דפוסי אדריכלות

למה אנחנו צריכים Text2SQL?

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

NLP SQL מאפשר למשתמשים עסקיים לנתח נתונים ולקבל תשובות על ידי הקלדה או דיבור של שאלות בשפה טבעית, כגון:

  • "הצג את סך המכירות עבור כל מוצר בחודש שעבר"
  • "אילו מוצרים הניבו יותר הכנסות?"
  • "איזה אחוז מהלקוחות הם מכל אזור?"

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

רכיבי מפתח לטקסט ל-SQL

מערכות טקסט ל-SQL כוללות מספר שלבים להמרת שאילתות שפה טבעית ל-SQL שניתן להרצה:

  • עיבוד שפה טבעית:
    • נתח את שאילתת הקלט של המשתמש
    • חלץ מרכיבי מפתח וכוונה
    • המר לפורמט מובנה
  • יצירת SQL:
    • מפה פרטים שחולצו לתוך תחביר SQL
    • צור שאילתת SQL חוקית
  • שאילתת מסד נתונים:
    • הפעל את שאילתת SQL שנוצרה על ידי AI במסד הנתונים
    • אחזר תוצאות
    • החזר תוצאות למשתמש

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

התרשים הבא ממחיש זרימת Text2SQL בסיסית.

טקסט 2 SQL זרימת תהליך ברמה גבוהה

שיקולים הנדסיים מהירים עבור שפה טבעית ל-SQL

ההנחיה היא קריטית בעת שימוש ב-LLMs לתרגום שפה טבעית לשאילתות SQL, ויש כמה שיקולים חשובים להנדסה מהירה.

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

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

/* Given the following database schema : */
CREATE TABLE IF NOT EXISTS " gymnast " ( " Gymnast_ID " int , " Floor_Exercise_Points " real , " Pommel_Horse_Points " real , " Rings_Points " real , " Vault_Points " real , " Parallel_Bars_Points " real , " Horizontal_Bar_Points " real , " Total_Points " real , PRIMARY KEY ( " Gymnast_ID " ) , FOREIGN KEY ( " Gymnast_ID " ) REFERENCES " people " ( " People_ID " ) ) ; CREATE TABLE IF NOT EXISTS " people " ( " People_ID " int , " Name " text , " Age " real , " Height " real , " Hometown " text , PRIMARY KEY ( " People_ID " ) ) ; /* Answer the following : Return the total points of the gymnast with the lowest age .
*/ select t1 . total_points from gymnast as t1 join people as t2 on t1 . gymnast_id = t2 .
people_id order by t2 . age asc limit 1

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

כוונון עדין לעומת הנדסה מהירה

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

    • כוונון עדין – מודל הבסיס מאומן מראש על קורפוס טקסט כללי גדול ולאחר מכן ניתן להשתמש בו כוונון עדין מבוסס הוראות, המשתמש בדוגמאות מסומנות כדי לשפר את הביצועים של מודל בסיס מאומן מראש ב-text-SQL. זה מתאים את המודל למשימת היעד. כוונון עדין מאמן ישירות את המודל במשימה הסופית אך דורש דוגמאות רבות של SQL-טקסט. אתה יכול להשתמש בכוונון עדין מפוקח על סמך ה-LLM שלך כדי לשפר את האפקטיביות של טקסט ל-SQL. לשם כך, אתה יכול להשתמש במספר מערכי נתונים כמו עכביש, WikiSQL, צ'ייס, BIRD-SQL, או CoSQL.
    • הנדסה מהירה – המודל מאומן להשלים הנחיות שנועדו להנחות את תחביר היעד של SQL. בעת יצירת SQL משפה טבעית באמצעות LLMs, מתן הוראות ברורות בהנחיה חשובה לשליטה בפלט של המודל. בהנחיה להוסיף הערות לרכיבים שונים כמו הצבעה על עמודות, סכימה ואז להורות איזה סוג של SQL ליצור. אלה פועלים כמו הוראות שאומרות לדגם כיצד לעצב את פלט SQL. ההנחיה הבאה מציגה דוגמה שבה אתה מצביע על עמודות בטבלה ומורה ליצור שאילתת MySQL:
Table offices, columns = [OfficeId, OfficeName]
Table employees, columns = [OfficeId, EmployeeId,EmployeeName]
Create a MySQL query for all employees in the Machine Learning Department

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

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

אופטימיזציה ושיטות עבודה מומלצות

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

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

  • מטמון – כדי לשפר את זמן ההשהיה, בקרת העלויות והסטנדרטיזציה, אתה יכול לשמור במטמון את ה-SQL המנתח ואת הנחיות השאילתה המזוהות מהטקסט ל-SQL LLM. כך נמנע מעיבוד חוזר של שאילתות חוזרות ונשנות.
  • ניטור – יש לאסוף יומנים ומדדים סביב ניתוח שאילתות, זיהוי מהיר, יצירת SQL ותוצאות SQL כדי לנטר את מערכת LLM של טקסט ל-SQL. זה מספק נראות לדוגמה האופטימיזציה מעדכנת את ההנחיה או ביקור מחדש בכוונון העדין עם מערך נתונים מעודכן.
  • צפיות ממומשות לעומת טבלאות - תצוגות מתמשכות יכולות לפשט את יצירת SQL ולשפר את הביצועים עבור שאילתות טקסט ל-SQL נפוצות. שאילתה ישירה של טבלאות עשויה לגרום ל-SQL מורכב וגם לגרום לבעיות ביצועים, כולל יצירה מתמדת של טכניקות ביצועים כמו אינדקסים. בנוסף, תוכל להימנע מבעיות ביצועים כאשר אותה טבלה משמשת לתחומי יישום אחרים בו-זמנית.
  • מרענן נתונים - יש לרענן תצוגות מתמשכות בלוח זמנים כדי לשמור על עדכניות הנתונים עבור שאילתות טקסט ל-SQL. אתה יכול להשתמש בגישות רענון אצווה או מצטבר כדי לאזן את התקורה.
  • קטלוג נתונים מרכזי - יצירת קטלוג נתונים מרוכז מספקת חלונית זכוכית אחת למקורות הנתונים של הארגון ותעזור למנהלי מקצוענים לבחור טבלאות וסכמות מתאימות על מנת לספק תשובות מדויקות יותר. וֶקטוֹר הטבעות שנוצר מקטלוג נתונים מרכזי ניתן לספק ל-LLM יחד עם מידע מתבקש כדי ליצור תגובות SQL רלוונטיות ומדויקות.

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

דפוסי אדריכלות

בואו נסתכל על כמה דפוסי ארכיטקטורה שניתן ליישם עבור זרימת עבודה של טקסט ל-SQL.

הנדסה מהירה

התרשים הבא ממחיש את הארכיטקטורה להפקת שאילתות עם LLM באמצעות הנדסה מהירה.

ממחיש את הארכיטקטורה ליצירת שאילתות עם LLM באמצעות הנדסה מהירה

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

בדפוס זה, המשתמש יוצר למידה של כמה יריות מבוססת הנחיה המספקת למודל דוגמאות מוערות בהנחיה עצמה, הכוללת את פרטי הטבלה והסכמה וכמה שאילתות לדוגמה עם התוצאות שלו. ה-LLM משתמש בהנחיה שסופקה כדי להחזיר את ה-SQL שנוצר בינה מלאכותית, אשר מאומת ומופעל כנגד מסד הנתונים כדי לקבל את התוצאות. זהו הדפוס הפשוט ביותר להתחיל להשתמש בהנדסה מהירה. בשביל זה, אתה יכול להשתמש סלע אמזון שהוא שירות מנוהל במלואו המציע מבחר של דגמי יסוד (FM) בעלי ביצועים גבוהים מחברות בינה מלאכותית מובילות באמצעות API יחיד, יחד עם מערך רחב של יכולות שאתה צריך כדי לבנות יישומי בינה מלאכותית עם אבטחה, פרטיות ובינה מלאכותית אחראית אוֹ מודלים של JumpStart Foundation אשר מציעה מודלים מתקדמים של בסיס למקרי שימוש כגון כתיבת תוכן, הפקת קוד, מענה לשאלות, קופירייטינג, סיכום, סיווג, אחזור מידע ועוד

הנדסה מהירה וכיוונון עדין

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

ממחיש את הארכיטקטורה ליצירת שאילתות עם LLM תוך שימוש בהנדסה מהירה וכיוונון עדין

זרימה זו דומה לתבנית הקודמת, אשר מסתמכת בעיקר על הנדסה מהירה, אך עם זרימה נוספת של כוונון עדין על מערך הנתונים הספציפי לתחום. ה-LLM המכוונן עדין משמש ליצירת שאילתות SQL עם ערך מינימלי בהקשר עבור ההנחיה. לשם כך, אתה יכול להשתמש ב- SageMaker JumpStart כדי לכוונן LLM במערך נתונים ספציפי לתחום באותו אופן שהיית מתאמן ופריסה של כל מודל על אמזון SageMaker.

הנדסה מהירה ו-RAG

התרשים הבא ממחיש את הארכיטקטורה להפקת שאילתות עם LLM באמצעות הנדסה מהירה ו-RAG.

ממחיש את הארכיטקטורה ליצירת שאילתות עם LLM באמצעות הנדסה מהירה ו-RAG

בתבנית זו, אנו משתמשים אחזור דור מוגבר באמצעות חנויות הטבעות וקטוריות, כמו Embeddings של אמזון טיטאן or Cohere Embed, ביום סלע אמזון מקטלוג נתונים מרכזי, כמו דבק AWS קטלוג נתונים, של מאגרי מידע בתוך ארגון. ההטבעות הווקטוריות מאוחסנות במסדי נתונים וקטוריים כמו מנוע וקטור עבור Amazon OpenSearch Serverless, שירות מסדי נתונים יחסיים של אמזון (Amazon RDS) עבור PostgreSQL עם pgvector הרחבה, או אמזון קנדרה. LLMs משתמשים בהטמעות וקטוריות כדי לבחור את מסד הנתונים, הטבלאות והעמודות הנכונות מטבלאות מהר יותר בעת יצירת שאילתות SQL. השימוש ב- RAG מועיל כאשר נתונים ומידע רלוונטי שצריך לאחזר על ידי LLMs מאוחסנים במספר מערכות מסד נתונים נפרדות וה- LLM צריך להיות מסוגל לחפש או לבצע שאילתות בנתונים מכל המערכות השונות הללו. זה המקום שבו מתן הטמעות וקטוריות של קטלוג נתונים מרוכז או מאוחד ל-LLMs מביא למידע מדויק ומקיף יותר המוחזר על-ידי ה-LLMs.

סיכום

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


על הכותבים

הפקת ערך מנתונים ארגוניים: שיטות עבודה מומלצות עבור Text2SQL ובינה מלאכותית יצירתית | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.רנדי דפאו הוא אדריכל פתרונות בכיר ב-AWS. הוא בעל תואר MSEE מאוניברסיטת מישיגן, שם עבד על ראייה ממוחשבת לרכבים אוטונומיים. הוא גם בעל תואר MBA מאוניברסיטת קולורדו סטייט. רנדי מילא מגוון תפקידים בתחום הטכנולוגיה, החל מהנדסת תוכנה ועד לניהול מוצר. אין נכנסה לתחום ה-Big Data בשנת 2013 וממשיכה לחקור את התחום הזה. הוא עובד באופן פעיל על פרויקטים בתחום ה-ML והציג בכנסים רבים כולל Strata ו-GlueCon.

הפקת ערך מנתונים ארגוניים: שיטות עבודה מומלצות עבור Text2SQL ובינה מלאכותית יצירתית | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.ניטין אוזביוס הוא Sr. Enterprise Solutions Architect ב-AWS, מנוסה בהנדסת תוכנה, ארכיטקטורה ארגונית ו-AI/ML. הוא נלהב מאוד לחקור את האפשרויות של AI גנרטיבי. הוא משתף פעולה עם לקוחות כדי לעזור להם לבנות יישומים מעוצבים היטב בפלטפורמת AWS, ומוקדש לפתרון אתגרים טכנולוגיים וסיוע במסע הענן שלהם.

הפקת ערך מנתונים ארגוניים: שיטות עבודה מומלצות עבור Text2SQL ובינה מלאכותית יצירתית | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.ארג'יה בנרג'י הוא Sr. Solutions Architect ב-AWS באזור מפרץ סן פרנסיסקו המתמקד בסיוע ללקוחות לאמץ ולהשתמש ב-AWS Cloud. Arghya מתמקדת ב-Big Data, Data Lakes, Streaming, Batch Analytics ושירותים וטכנולוגיות AI/ML.

בול זמן:

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