בינה מלאכותית לשיחה עשתה דרך ארוכה בשנים האחרונות הודות להתפתחויות המהירות בבינה מלאכותית גנרטיבית, במיוחד שיפורי הביצועים של מודלים של שפה גדולה (LLMs) שהוכנסו על ידי טכניקות אימון כגון כוונון עדין של הוראה ולמידת חיזוק ממשוב אנושי. כאשר הנחיה נכונה, מודלים אלה יכולים לשאת שיחות קוהרנטיות ללא כל נתוני הדרכה ספציפיים למשימה. עם זאת, הם לא יכולים להכליל היטב לשאלות ספציפיות לארגון, משום שכדי ליצור תשובה, הם מסתמכים על הנתונים הציבוריים שאליהם נחשפו במהלך ההכשרה המוקדמת. נתונים כאלה חסרים לעתים קרובות את הידע המיוחד הכלול במסמכים פנימיים הזמינים בעסקים מודרניים, אשר נדרש בדרך כלל כדי לקבל תשובות מדויקות בתחומים כגון מחקר פרמצבטי, חקירה פיננסית ותמיכת לקוחות.
כדי ליצור עוזרי בינה מלאכותית שמסוגלים לנהל דיונים המבוססים על ידע ארגוני מיוחד, עלינו לחבר את ה-LLM העוצמתיים אך הגנריות הללו למאגרי ידע פנימיים של מסמכים. שיטה זו להעשרת ההקשר של יצירת LLM במידע שאוחזר ממקורות הנתונים הפנימיים שלך נקראת Retrieval Augmented Generation (RAG), ומייצרת עוזרים שהם ספציפיים לתחום ואמינים יותר, כפי שמוצג על ידי דור מוגבר לאחזור למשימות NLP עתירות ידע. מניע נוסף מאחורי הפופולריות של RAG הוא קלות היישום שלה וקיומם של פתרונות חיפוש וקטורים בוגרים, כמו אלה המוצעים על ידי אמזון קנדרה (ראה אמזון קנדרה משיקה אחזור API) ו שירות חיפוש פתוח של אמזון (ראה חיפוש k-Nearest Neighbor (k-NN) ב-Amazon OpenSearch Service), בין היתר.
עם זאת, דפוס העיצוב הפופולרי RAG עם חיפוש סמנטי אינו יכול לענות על כל סוגי השאלות האפשריות במסמכים. זה נכון במיוחד עבור שאלות הדורשות חשיבה אנליטית על פני מספר מסמכים. לדוגמה, דמיינו שאתם מתכננים את האסטרטגיה לשנה הבאה של חברת השקעות. צעד חיוני אחד יהיה לנתח ולהשוות את התוצאות הכספיות והסיכונים הפוטנציאליים של חברות מועמדות. משימה זו כוללת מענה על שאלות חשיבה אנליטית. לדוגמה, השאילתה "תן לי את 5 החברות המובילות עם ההכנסות הגבוהות ביותר ב-2 השנים האחרונות וזהה את הסיכונים העיקריים שלהן" דורשת מספר שלבים של חשיבה, שחלקם יכולים להשתמש באחזור חיפוש סמנטי, בעוד שאחרות דורשות יכולות אנליטיות.
בפוסט זה, אנו מראים כיצד לעצב עוזר מסמכים חכם המסוגל לענות על שאלות חשיבה אנליטיות ורב-שלביות בשלושה חלקים. בחלק 1, אנו סוקרים את דפוס העיצוב RAG ואת מגבלותיו בשאלות אנליטיות. לאחר מכן אנו מציגים בפניכם ארכיטקטורה מגוונת יותר שמתגברת על מגבלות אלו. חלק 2 עוזר לך לצלול עמוק יותר לתוך צינור חילוץ הישויות המשמש להכנת נתונים מובנים, שהם מרכיב מפתח למענה על שאלות אנליטיות. חלק 3 מנחה אותך כיצד להשתמש סלע אמזון LLMs לבצע שאילתות בנתונים אלה ולבנות סוכן LLM שמשפר את RAG עם יכולות אנליטיות, ובכך לאפשר לך לבנות עוזרי מסמכים חכמים שיכולים לענות על שאלות מורכבות ספציפיות לתחום על פני מספר מסמכים.
חלק 1: מגבלות RAG וסקירת פתרונות
בחלק זה, אנו סוקרים את דפוס התכנון של RAG ודנים במגבלותיו בשאלות אנליטיות. אנו מציגים גם ארכיטקטורה מגוונת יותר שמתגברת על מגבלות אלו.
סקירה כללית של RAG
פתרונות RAG הם בהשראת לימוד ייצוג ו חיפוש סמנטי רעיונות שאומצו בהדרגה בבעיות דירוג (לדוגמה, המלצה וחיפוש) ומשימות עיבוד שפה טבעית (NLP) מאז 2010.
הגישה הפופולרית הנהוגה כיום מורכבת משלושה שלבים:
- עבודת עיבוד אצווה לא מקוונת קולטת מסמכים מבסיס ידע קלט, מפצלת אותם לנתחים, יוצרת הטבעה עבור כל נתח כדי לייצג את הסמנטיקה שלו באמצעות מודל הטמעה מיומן מראש, כגון אמזון טיטאן הטמעת מודלים, ולאחר מכן משתמש בהטבעות אלה כקלט כדי ליצור אינדקס חיפוש סמנטי.
- כאשר עונים על שאלה חדשה בזמן אמת, שאלת הקלט מומרת להטמעה, המשמשת לחיפוש ולחלץ את הנתחים הדומים ביותר של מסמכים באמצעות מדד דמיון, כגון דמיון קוסינוס, ואלגוריתם של השכנים הקרובים ביותר. ניתן לשפר את דיוק החיפוש גם באמצעות סינון מטא נתונים.
- הנחיה נבנית משרשור של הודעת מערכת עם הקשר שנוצר מהנתחים הרלוונטיים של מסמכים שחולצו בשלב 2, ושאלת הקלט עצמה. הנחיה זו מוצגת לאחר מכן למודל LLM כדי ליצור את התשובה הסופית לשאלה מתוך ההקשר.
עם מודל ההטמעה הבסיסי הנכון, המסוגל לייצר ייצוגים סמנטיים מדויקים של נתחי מסמך הקלט ושאלות הקלט, ומודול חיפוש סמנטי יעיל, פתרון זה מסוגל לענות על שאלות הדורשות אחזור מידע קיים במסד נתונים של מסמכים. לדוגמה, אם יש לך שירות או מוצר, אתה יכול להתחיל באינדקס של סעיף השאלות הנפוצות או התיעוד שלו ולקבל AI ראשוני לשיחה המותאם להצעה הספציפית שלך.
מגבלות RAG מבוססות על חיפוש סמנטי
למרות ש-RAG הוא מרכיב חיוני בעוזרי AI מודרניים ספציפיים לתחום ונקודת התחלה הגיונית לבניית AI לשיחות סביב בסיס ידע מיוחד, הוא לא יכול לענות על שאלות הדורשות סריקה, השוואה והנמקה בכל המסמכים במאגר הידע שלך בו זמנית, במיוחד כאשר ההגדלה מבוססת אך ורק על חיפוש סמנטי.
כדי להבין את המגבלות הללו, הבה נשקול שוב את הדוגמה של החלטה היכן להשקיע בהתבסס על דוחות כספיים. אם היינו משתמשים ב-RAG כדי לשוחח עם הדוחות האלה, נוכל לשאול שאלות כמו "מהם הסיכונים שעמדו בפני החברה X ב-2022", או "מהן ההכנסות נטו של חברה Y ב-2022?" עבור כל אחת מהשאלות הללו, וקטור ההטמעה המתאים, המקודד את המשמעות הסמנטית של השאלה, משמש כדי לאחזר את החלקים העליונים של מסמכים דומים מבחינה סמנטית זמינים באינדקס החיפוש. זה מושג בדרך כלל על ידי שימוש בפתרון משוער של השכנים הקרובים ביותר כגון FAISS, NMSLIB, pgvector או אחרים, השואפים להגיע לאיזון בין מהירות אחזור וזיקול כדי להשיג ביצועים בזמן אמת תוך שמירה על דיוק משביע רצון.
עם זאת, הגישה הקודמת לא יכולה לענות במדויק על שאלות אנליטיות בכל המסמכים, כגון "מהן 5 החברות המובילות עם ההכנסות נטו הגבוהות ביותר ב-2022?"
הסיבה לכך היא שאחזור חיפוש סמנטי מנסה למצוא את ה-K נתחי המסמכים הדומים ביותר לשאלת הקלט. אבל מכיוון שאף אחד מהמסמכים לא מכיל סיכומים מקיפים של הכנסות, הוא יחזיר נתחי מסמכים שרק מכילים אזכורים של "הכנסה נטו" ואולי "2022", מבלי למלא את התנאי המהותי של התמקדות בחברות בעלות ההכנסות הגבוהות ביותר. אם נציג את תוצאות האחזור הללו ל-LLM כהקשר כדי לענות על שאלת הקלט, הוא עלול לנסח תשובה מטעה או לסרב לענות, מכיוון שהמידע הנכון הנדרש חסר.
מגבלות אלו באות בתכנון מכיוון שחיפוש סמנטי אינו מבצע סריקה יסודית של כל הוקטורים המוטבעים כדי למצוא מסמכים רלוונטיים. במקום זאת, הוא משתמש בשיטות משוערות של השכן הקרוב ביותר כדי לשמור על מהירות שליפה סבירה. אסטרטגיית מפתח ליעילות בשיטות אלו היא פילוח מרחב ההטמעה לקבוצות במהלך האינדקס. זה מאפשר לזהות במהירות אילו קבוצות עשויות להכיל הטבעות רלוונטיות במהלך השליפה, ללא צורך בהשוואות זוגיות. בנוסף, אפילו טכניקות מסורתיות של השכנים הקרובים ביותר כמו KNN, הסורקות את כל המסמכים, מחשבות רק מדדי מרחק בסיסיים ואינן מתאימות להשוואות המורכבות הדרושות לחשיבה אנליטית. לכן, RAG עם חיפוש סמנטי אינו מותאם למענה על שאלות הכרוכות בהיגיון אנליטי בכל המסמכים.
כדי להתגבר על מגבלות אלו, אנו מציעים פתרון המשלב RAG עם חילוץ מטא נתונים וישות, שאילתות SQL וסוכני LLM, כמתואר בסעיפים הבאים.
התגברות על מגבלות RAG עם סוכני מטא נתונים, SQL ו-LLM
הבה נבחן יותר לעומק שאלה שעליה נכשל RAG, כדי שנוכל להתחקות אחר ההיגיון הנדרש כדי לענות עליה ביעילות. ניתוח זה אמור להפנות אותנו לעבר הגישה הנכונה שיכולה להשלים את RAG בפתרון הכולל.
שקול את השאלה: "מהן 5 החברות המובילות עם ההכנסות הגבוהות ביותר ב-2022?"
כדי שנוכל לענות על שאלה זו, נצטרך:
- זהה את ההכנסות של כל חברה.
- סינון למטה כדי לשמור על ההכנסות של 2022 עבור כל אחד מהם.
- מיין את ההכנסות בסדר יורד.
- חלקו את 5 ההכנסות המובילות לצד שמות החברות.
בדרך כלל, פעולות אנליטיות אלו נעשות על נתונים מובנים, תוך שימוש בכלים כגון פנדות או מנועי SQL. אם הייתה לנו גישה לטבלת SQL המכילה את העמודות company
, revenue
, ו year
, נוכל לענות על השאלה שלנו בקלות על ידי הפעלת שאילתת SQL, בדומה לדוגמא הבאה:
SELECT company, revenue FROM table_name WHERE year = 2022 ORDER BY revenue DESC LIMIT 5;
אחסון מטא נתונים מובנים בטבלת SQL המכילה מידע על ישויות רלוונטיות מאפשר לך לענות על סוגים רבים של שאלות אנליטיות על ידי כתיבת שאילתת SQL נכונה. זו הסיבה שאנו משלימים את RAG בפתרון שלנו עם מודול שאילתות SQL בזמן אמת מול טבלת SQL, המאוכלס במטא נתונים שחולצו בתהליך לא מקוון.
אבל איך נוכל ליישם ולשלב גישה זו ב-AI לשיחות מבוסס LLM?
ישנם שלושה שלבים כדי להיות מסוגל להוסיף חשיבה אנליטית של SQL:
- חילוץ מטא נתונים - חלץ מטא נתונים ממסמכים לא מובנים לטבלת SQL
- טקסט ל-SQL - נסח שאילתות SQL משאלות קלט בצורה מדויקת באמצעות LLM
- בחירת כלים - זהה אם יש לענות על שאלה באמצעות RAG או שאילתת SQL
כדי ליישם את השלבים הללו, ראשית אנו מכירים בכך שחילוץ מידע ממסמכים לא מובנים היא משימת NLP מסורתית, שעבורה מבטיחים תלמידי LLM הבטחה בהשגת דיוק גבוה באמצעות למידה של אפס יריות או למידה מועטת. שנית, היכולת של מודלים אלה ליצור שאילתות SQL משפה טבעית הוכחה במשך שנים, כפי שניתן לראות ב- שחרור 2020 of Amazon QuickSight Q. לבסוף, בחירה אוטומטית בכלי המתאים לשאלה ספציפית משפרת את חווית המשתמש ומאפשרת מענה על שאלות מורכבות באמצעות חשיבה רב-שלבית. כדי ליישם תכונה זו, אנו מתעמקים בסוכני LLM בחלק מאוחר יותר.
לסיכום, הפתרון שאנו מציעים מורכב ממרכיבי הליבה הבאים:
- אחזור חיפוש סמנטי להגדלת הקשר הדור
- חילוץ מטא נתונים מובנה ושאילתות עם SQL
- סוכן המסוגל להשתמש בכלים הנכונים כדי לענות על שאלה
סקירת פתרונות
התרשים הבא מתאר ארכיטקטורה פשוטה של הפתרון. זה עוזר לך לזהות ולהבין את התפקיד של מרכיבי הליבה וכיצד הם מתקשרים כדי ליישם את ההתנהגות המלאה של עוזר LLM. המספור מתיישב עם סדר הפעולות בעת יישום פתרון זה.
בפועל, יישמנו פתרון זה כפי שמתואר בארכיטקטורה המפורטת הבאה.
עבור ארכיטקטורה זו, אנו מציעים יישום על GitHub, עם רכיבים מחוברים באופן רופף שבהם הקצה האחורי (5), צינורות הנתונים (1, 2, 3) והקצה הקדמי (4) יכולים להתפתח בנפרד. זאת כדי לפשט את שיתוף הפעולה בין מיומנויות בעת התאמה אישית ושיפור הפתרון לייצור.
פרוס את הפתרון
כדי להתקין פתרון זה בחשבון AWS שלך, בצע את השלבים הבאים:
- שיבט את מאגר ב- GitHub.
- התקן את הקצה האחורי ערכת פיתוח ענן AWS (AWS CDK) האפליקציה:
- פתח את
backend
תיקייה. - הפעלה
npm install
כדי להתקין את התלות. - אם מעולם לא השתמשת ב-AWS CDK בחשבון הנוכחי ובאזור, הפעל אתחול עם
npx cdk bootstrap
. - הפעלה
npx cdk deploy
לפרוס את המחסנית.
- פתח את
- לחלופין, הפעל את
streamlit-ui
באופן הבא:- אנו ממליצים לשבט את המאגר הזה לתוך סטודיו SageMaker של אמזון סביבה. למידע נוסף, עיין ב נכלל ב-Amazon SageMaker Domain באמצעות הגדרה מהירה.
- בתוך
frontend/streamlit-ui
תיקיה, הפעלbash run-streamlit-ui.sh
. - בחר בקישור עם הפורמט הבא כדי לפתוח את ההדגמה:
https://{domain_id}.studio.{region}.sagemaker.aws/jupyter/default/proxy/{port_number}/
.
- לבסוף, אתה יכול להפעיל את אמזון SageMaker צינור שהוגדר ב-
data-pipelines/04-sagemaker-pipeline-for-documents-processing.ipynb
מחברת לעיבוד מסמכי PDF הקלט ולהכנת טבלת SQL ואינדקס החיפוש הסמנטי המשמש את עוזר ה-LLM.
בהמשך הפוסט הזה, אנו מתמקדים בהסבר המרכיבים החשובים ביותר ובחירות העיצוב, כדי לקוות לעורר בך השראה בעת תכנון עוזר AI משלך על בסיס ידע פנימי. אנו מניחים שהרכיבים 1 ו-4 הם פשוטים להבנה, ומתמקדים ברכיבי הליבה 2, 3 ו-5.
חלק 2: צינור מיצוי ישות
בחלק זה, אנו צוללים עמוק יותר לתוך צינור חילוץ הישויות המשמש להכנת נתונים מובנים, המהווים מרכיב מרכזי למענה על שאלות אנליטיות.
חילוץ טקסט
מסמכים מאוחסנים בדרך כלל בפורמט PDF או כתמונות סרוקות. הם עשויים להיות מורכבים מפריסות פסקאות פשוטות או טבלאות מורכבות, ולהכיל טקסט דיגיטלי או בכתב יד. כדי לחלץ מידע נכון, עלינו להפוך את המסמכים הגולמיים הללו לטקסט רגיל, תוך שמירה על המבנה המקורי שלהם. כדי לעשות זאת, אתה יכול להשתמש טקסטורה באמזון, שהוא שירות למידת מכונה (ML) המספק ממשקי API בוגרים לחילוץ טקסט, טבלאות וטפסים מקלט דיגיטלי וכתב יד.
ברכיב 2, אנו מחלצים טקסט וטבלאות באופן הבא:
- עבור כל מסמך, אנו קוראים ל- Amazon Textract כדי לחלץ את הטקסט והטבלאות.
- אנו משתמשים בדברים הבאים תסריט פיתון כדי ליצור מחדש טבלאות כ-PandaFrames.
- אנו מאחדים את התוצאות למסמך אחד ומכניסים טבלאות כסימון.
תהליך זה מתואר על ידי דיאגרמת הזרימה הבאה ומודגם באופן קונקרטי ב notebooks/03-pdf-document-processing.ipynb
.
חילוץ ישויות ושאילתות באמצעות LLMs
כדי לענות ביעילות על שאלות אנליטיות, עליך לחלץ מטא נתונים וישויות רלוונטיות מבסיס הידע של המסמך שלך לפורמט נתונים מובנה נגיש. אנו מציעים להשתמש ב-SQL כדי לאחסן מידע זה ולאחזר תשובות בשל הפופולריות שלו, קלות השימוש ויכולת המדרגיות שלו. בחירה זו נהנית גם מהיכולת המוכחת של מודלים לשפות ליצור שאילתות SQL משפה טבעית.
בחלק זה, אנו צוללים עמוק יותר לתוך המרכיבים הבאים המאפשרים שאלות אנליטיות:
- תהליך אצווה המחלץ נתונים מובנים מתוך נתונים לא מובנים באמצעות LLMs
- מודול בזמן אמת הממיר שאלות בשפה טבעית לשאילתות SQL ומחזיר תוצאות ממסד נתונים של SQL
אתה יכול לחלץ את המטא נתונים הרלוונטיים כדי לתמוך בשאלות אנליטיות באופן הבא:
- הגדר סכימת JSON למידע שאתה צריך לחלץ, המכילה תיאור של כל שדה וסוג הנתונים שלו, וכוללת דוגמאות של הערכים הצפויים.
- עבור כל מסמך, בקש מ-LLM עם סכימת JSON ובקש ממנו לחלץ את הנתונים הרלוונטיים במדויק.
- כאשר אורך המסמך חורג מאורך ההקשר, וכדי להפחית את עלות החילוץ עם LLMs, אתה יכול להשתמש בחיפוש סמנטי כדי לאחזר ולהציג את נתחי המסמכים הרלוונטיים ל-LLM במהלך החילוץ.
- נתח את פלט ה-JSON ואמת את חילוץ ה-LLM.
- לחלופין, גבה את התוצאות באמזון S3 כקובצי CSV.
- טען למסד הנתונים של SQL לצורך שאילתה מאוחרת יותר.
תהליך זה מנוהל על ידי הארכיטקטורה הבאה, שבה המסמכים בפורמט טקסט נטענים עם סקריפט Python שרץ ב- עיבוד אמזון SageMaker תפקיד לבצע את החילוץ.
עבור כל קבוצת ישויות, אנו בונים באופן דינמי הנחיה הכוללת תיאור ברור של משימת חילוץ המידע, וכוללת סכימת JSON המגדירה את הפלט הצפוי וכוללת את נתחי המסמך הרלוונטיים כהקשר. אנו גם מוסיפים כמה דוגמאות של קלט ופלט נכון כדי לשפר את ביצועי החילוץ עם למידה של מספר יריות. זה מודגם ב notebooks/05-entities-extraction-to-structured-metadata.ipynb
.
חלק 3: בנה עוזר מסמכים סוכן עם Amazon Bedrock
בחלק זה, אנו מדגימים כיצד להשתמש ב- Amazon Bedrock LLMs כדי לבצע שאילתות בנתונים ולבנות סוכן LLM שמשפר את RAG עם יכולות אנליטיות, ובכך מאפשר לך לבנות עוזרי מסמכים חכמים שיכולים לענות על שאלות מורכבות ספציפיות לתחום על פני מספר מסמכים. אתה יכול להתייחס ל פונקציית Lambda ב- GitHub ליישום קונקרטי של הסוכן והכלים המתוארים בחלק זה.
נסח שאילתות SQL וענה על שאלות אנליטיות
עכשיו, כשיש לנו מאגר מטא נתונים מובנה עם הישויות הרלוונטיות שנשלפו ונטענו לתוך מסד נתונים של SQL שנוכל לבצע שאילתות, השאלה שנותרה היא איך ליצור את שאילתת ה-SQL הנכונה משאלות השפה הטבעית הקלט?
לימודי LLM מודרניים טובים ביצירת SQL. לדוגמה, אם אתה מבקש מקלוד LLM האנתרופי דרך סלע אמזון כדי ליצור שאילתת SQL, תראה תשובות הגיוניות. עם זאת, עלינו לציית למספר כללים בעת כתיבת ההנחיה כדי להגיע לשאילתות SQL מדויקות יותר. כללים אלה חשובים במיוחד עבור שאילתות מורכבות כדי להפחית הזיות ושגיאות תחביר:
- תאר את המשימה במדויק בתוך ההנחיה
- כלול את הסכימה של טבלאות SQL בתוך הפקודה, תוך תיאור כל עמודה בטבלה וציון סוג הנתונים שלה
- אמור במפורש ל-LLM להשתמש רק בשמות עמודות ובסוגי נתונים קיימים
- הוסף כמה שורות של טבלאות SQL
אתה יכול גם לעבד את שאילתת SQL שנוצרה לאחר עיבוד באמצעות א linter כמו sqlfluff לתיקון עיצוב, או מנתח כגון sqlglot כדי לזהות שגיאות תחביר ולייעל את השאילתה. יתרה מכך, כאשר הביצועים אינם עומדים בדרישה, תוכל לספק כמה דוגמאות במסגרת ההנחיה כדי לכוון את המודל עם למידה מועטת ליצירת שאילתות SQL מדויקות יותר.
מנקודת מבט של יישום, אנו משתמשים ב-an AWS למבדה פונקציה לתזמור את התהליך הבא:
- התקשר למודל של קלוד אנתרופי באמזון Bedrock עם שאלת הקלט כדי לקבל את שאילתת ה-SQL המתאימה. כאן, אנו משתמשים ב- SQLDatabase class מ-LangChain כדי להוסיף תיאורי סכימה של טבלאות SQL רלוונטיות, ולהשתמש בהנחיה מותאמת אישית.
- נתח, אמת והרץ את שאילתת SQL כנגד ה מהדורה תואמת אמזון אורורה PostgreSQL מאגר מידע.
הארכיטקטורה של חלק זה של הפתרון מודגשת בתרשים הבא.
שיקולי אבטחה למניעת התקפות הזרקת SQL
כאשר אנו מאפשרים לעוזר הבינה המלאכותית לבצע שאילתות על מסד נתונים של SQL, עלינו לוודא שזה לא מציג פרצות אבטחה. כדי להשיג זאת, אנו מציעים את אמצעי האבטחה הבאים למניעת התקפות הזרקת SQL:
- החל הרשאות IAM עם הרשאות לפחות – הגבל את ההרשאה של פונקציית Lambda שמריצה את שאילתות SQL באמצעות AWS זהות וניהול גישה (IAM) מדיניות ותפקיד הבאים בעקבות עקרון המינימום הפריבילגיה. במקרה זה, אנו מעניקים גישת קריאה בלבד.
- הגבל את הגישה לנתונים - ספק רק גישה למינימום המינימלי של טבלאות ועמודות כדי למנוע התקפות של חשיפת מידע.
- הוסף שכבת מתינות – הכנס שכבת מתינות שמזהה ניסיונות הזרקה מיידיים בשלב מוקדם ומונעת מהם להתפשט לשאר המערכת. זה יכול ללבוש צורה של מסננים מבוססי כללים, התאמת דמיון מול מסד נתונים של דוגמאות ידועות להזרקה דחופה, או מסווג ML.
אחזור חיפוש סמנטי להגדלת הקשר הדור
הפתרון שאנו מציעים משתמש ב- RAG עם חיפוש סמנטי ברכיב 3. אתה יכול ליישם מודול זה באמצעות בסיסי ידע עבור Amazon Bedrock. בנוסף, יש מגוון אפשרויות אחרות ליישום RAG, כגון ממשק API של אחזור אמזון קנדרה, מסד נתונים וקטוריים של Amazon OpenSearch, ו Amazon Aurora PostgreSQL עם pgvector, בין היתר. חבילת הקוד הפתוח aws-genai-llm-chatbot מדגים כיצד להשתמש ברבות מאפשרויות החיפוש הווקטוריות הללו כדי ליישם צ'אט בוט המופעל על ידי LLM.
בפתרון זה, מכיוון שאנו צריכים גם שאילתות SQL וגם חיפוש וקטורי, החלטנו להשתמש ב- Amazon Aurora PostgreSQL עם pgvector הרחבה, התומכת בשתי התכונות. לכן, אנו מיישמים את רכיב RAG של חיפוש סמנטי עם הארכיטקטורה הבאה.
תהליך המענה לשאלות באמצעות הארכיטקטורה הקודמת נעשה בשני שלבים עיקריים.
ראשית, תהליך אצווה לא מקוון, המופעל כעבודת SageMaker Processing, יוצר את אינדקס החיפוש הסמנטי באופן הבא:
- מדי פעם, או עם קבלת מסמכים חדשים, מופעלת עבודת SageMaker.
- הוא טוען את מסמכי הטקסט מאמזון S3 ומפצל אותם לנתחים חופפים.
- עבור כל נתח, הוא משתמש במודל הטבעה של Amazon Titan כדי ליצור וקטור הטמעה.
- הוא משתמש ב- PGVector class מ-LangChain כדי להטמיע את ההטמעות, עם נתחי המסמכים והמטא-נתונים שלהן, לתוך Amazon Aurora PostgreSQL וליצור אינדקס חיפוש סמנטי על כל וקטורי ההטמעה.
שנית, בזמן אמת ולכל שאלה חדשה, אנו בונים תשובה באופן הבא:
- השאלה מתקבלת על ידי המתזמר שפועל על פונקציית למבדה.
- המתזמר מטמיע את השאלה עם אותו דגם הטבעה.
- הוא מאחזר את חלקי המסמכים הרלוונטיים המובילים ביותר מאינדקס החיפוש הסמנטי של PostgreSQL. הוא משתמש באופן אופציונלי בסינון מטא נתונים כדי לשפר את הדיוק.
- נתחים אלו מוכנסים באופן דינמי בהנחיית LLM לצד שאלת הקלט.
- ההנחיה מוצגת לאנתרופיק קלוד ב- Amazon Bedrock, כדי להורות לו לענות על שאלת הקלט בהתבסס על ההקשר הזמין.
- לבסוף, התשובה שנוצרה נשלחת בחזרה למתזמר.
סוכן המסוגל להשתמש בכלים כדי לנמק ולפעול
עד כה בפוסט זה, דנו בטיפול בשאלות הדורשות RAG או חשיבה אנליטית בנפרד. עם זאת, שאלות רבות בעולם האמיתי דורשות את שתי היכולות, לפעמים על פני מספר שלבים של חשיבה, כדי להגיע לתשובה סופית. כדי לתמוך בשאלות המורכבות יותר הללו, עלינו להציג את הרעיון של סוכן.
סוכני LLM, כגון סוכנים עבור Amazon Bedrock, הופיעו לאחרונה כפתרון מבטיח המסוגל להשתמש ב-LLMs כדי לנמק ולהסתגל תוך שימוש בהקשר הנוכחי ולבחור פעולות מתאימות מתוך רשימה של אפשרויות, המציגה מסגרת כללית לפתרון בעיות. כפי שנדון ב סוכנים אוטונומיים מופעלי LLM, ישנן מספר אסטרטגיות הנחיה ודפוסי עיצוב עבור סוכני LLM התומכים בהיגיון מורכב.
דפוס עיצוב אחד כזה הוא Reason and Act (ReAct), שהוצג ב ReAct: סינרגיה של הגיון ופעולה במודלים של שפה. ב-ReAct, הסוכן לוקח כקלט מטרה שיכולה להיות שאלה, מזהה את פיסות המידע החסרות כדי לענות עליה, ומציע באופן איטרטיבי את הכלי הנכון לאיסוף מידע על סמך תיאורי הכלים הזמינים. לאחר קבלת התשובה מכלי נתון, ה-LLM בוחן מחדש אם יש לו את כל המידע הדרוש כדי לענות על השאלה במלואה. אם לא, הוא עושה עוד שלב של חשיבה ומשתמש באותו או בכלי אחר כדי לאסוף מידע נוסף, עד שתגובה סופית מוכנה או שמגיעים לגבול.
דיאגרמת הרצף הבאה מסבירה כיצד פועל סוכן ReAct לקראת תשובה לשאלה "תן לי את 5 החברות המובילות עם ההכנסות הגבוהות ביותר בשנתיים האחרונות וזהו את הסיכונים הקשורים לחברות המובילות".
הפרטים של יישום גישה זו ב-Python מתוארים ב סוכן LLM מותאם אישית. בפתרון שלנו, הסוכן והכלים מיושמים עם הארכיטקטורה החלקית המודגשת הבאה.
כדי לענות על שאלת קלט, אנו משתמשים בשירותי AWS באופן הבא:
- משתמש מזין את השאלה שלו דרך ממשק משתמש, שקורא ל-API שער API של אמזון.
- API Gateway שולח את השאלה לפונקציית Lambda המיישמת את מבצע הסוכן.
- הסוכן קורא ל-LLM עם הנחיה המכילה תיאור של הכלים הזמינים, פורמט ההוראות של ReAct ושאלת הקלט, ולאחר מכן מנתח את הפעולה הבאה להשלמה.
- הפעולה מכילה לאיזה כלי להתקשר ומהו קלט הפעולה.
- אם הכלי שיש להשתמש בו הוא SQL, מבצע הסוכן קורא ל-SQLQA כדי להמיר את השאלה ל-SQL ולהפעיל אותה. לאחר מכן הוא מוסיף את התוצאה להנחיה ומתקשר שוב ל-LLM כדי לראות אם הוא יכול לענות על השאלה המקורית או אם יש צורך בפעולות נוספות.
- באופן דומה, אם הכלי להשתמש בו הוא חיפוש סמנטי, אז קלט הפעולה מנותח החוצה ומשמש לאחזור מאינדקס החיפוש הסמנטי של PostgreSQL. הוא מוסיף את התוצאות להנחיה ובודק אם ה-LLM מסוגל לענות או צריך פעולה נוספת.
- לאחר שכל המידע כדי לענות על שאלה זמין, סוכן LLM מנסח תשובה סופית ושולח אותה בחזרה למשתמש.
אתה יכול להרחיב את הסוכן עם כלים נוספים. ביישום זמין ב GitHub, אנו מדגימים כיצד ניתן להוסיף מנוע חיפוש ומחשבון ככלים נוספים למנוע ה-SQL הנ"ל ולכלי החיפוש הסמנטיים. כדי לאחסן את היסטוריית השיחה השוטפת, אנו משתמשים ב- אמזון דינמו השולחן.
מניסיוננו עד כה, ראינו כי הדברים הבאים הם המפתחות לסוכן מצליח:
- LLM בסיסי המסוגל לנמק עם פורמט ReAct
- תיאור ברור של הכלים הזמינים, מתי להשתמש בהם, ותיאור של טיעוני הקלט שלהם, עם, פוטנציאלי, דוגמה של הקלט והפלט הצפוי
- מתאר ברור של פורמט ReAct שעל ה-LLM לפעול לפיו
- הכלים הנכונים לפתרון השאלה העסקית שהועמדו לרשות סוכן LLM לשימוש
- ניתוח נכון של הפלטים מתגובות סוכן LLM כפי שהוא מנמק
כדי לייעל את העלויות, אנו ממליצים לאחסן את השאלות הנפוצות ביותר עם התשובות שלהן ולעדכן את המטמון הזה מעת לעת כדי לצמצם שיחות ל-LLM הבסיסית. לדוגמה, אתה יכול ליצור אינדקס חיפוש סמנטי עם השאלות הנפוצות ביותר כפי שהוסבר קודם, ולהתאים את שאלת המשתמש החדשה לאינדקס תחילה לפני שתקרא ל-LLM. כדי לחקור אפשרויות אחרות לאחסון במטמון, עיין ב שילובי מטמון LLM.
תמיכה בפורמטים אחרים כגון וידאו, תמונה, אודיו ותלת מימד
אתה יכול ליישם את אותו פתרון על סוגים שונים של מידע, כגון תמונות, סרטונים, שמע וקבצי עיצוב תלת מימדיים כמו קבצי CAD או רשת. זה כרוך בשימוש בטכניקות ML מבוססות כדי לתאר את תוכן הקובץ בטקסט, שאותו ניתן להטמיע לתוך הפתרון שחקרנו קודם לכן. גישה זו מאפשרת לך לנהל שיחות QA על סוגי הנתונים המגוונים הללו. לדוגמה, אתה יכול להרחיב את מסד הנתונים של המסמכים שלך על ידי יצירת תיאורים טקסטואליים של תמונות, סרטונים או תוכן אודיו. אתה יכול גם לשפר את טבלת המטא נתונים על ידי זיהוי מאפיינים באמצעות סיווג או זיהוי אובייקטים באלמנטים בפורמטים אלה. לאחר שהנתונים המחולצים נוספו לאינדקס במאגר המטא נתונים או באינדקס החיפוש הסמנטי של מסמכים, הארכיטקטורה הכוללת של המערכת המוצעת נשארת עקבית במידה רבה.
סיכום
בפוסט זה, הראינו כיצד שימוש ב-LLMs עם דפוס העיצוב RAG נחוץ לבניית עוזר AI ספציפי לתחום, אך אינו מספיק כדי להגיע לרמת האמינות הנדרשת כדי לייצר ערך עסקי. בשל כך, הצענו להרחיב את דפוס העיצוב הפופולרי RAG עם המושגים של סוכנים וכלים, כאשר הגמישות של הכלים מאפשרת לנו להשתמש גם בטכניקות NLP מסורתיות וגם ביכולות LLM מודרניות כדי לאפשר לעוזר בינה מלאכותית יותר אפשרויות לחפש מידע ולסייע משתמשים בפתרון בעיות עסקיות ביעילות.
הפתרון מדגים את תהליך התכנון לקראת עוזר LLM המסוגל לענות על סוגים שונים של שאלות אחזור, חשיבה אנליטית והנמקה רב-שלבית בכל מאגר הידע שלך. כמו כן, הדגשנו את החשיבות של חשיבה לאחור מסוגי השאלות והמשימות שעוזרת ה-LLM שלך צפויה לעזור למשתמשים בהן. במקרה הזה, מסע העיצוב הוביל אותנו לארכיטקטורה עם שלושת המרכיבים: חיפוש סמנטי, מיצוי מטא נתונים ושאילתות SQL, וסוכן וכלים של LLM, שלדעתנו הם כלליים וגמישים מספיק עבור מקרי שימוש מרובים. אנו גם מאמינים כי על ידי קבלת השראה מהפתרון הזה וצלילה עמוקה לצורכי המשתמשים שלך, תוכל להרחיב את הפתרון הזה לעבר מה שהכי מתאים לך.
על המחברים
מוחמד עלי ג'מאוי הוא ארכיטקט בכיר ב-ML Prototyping עם ניסיון של 10 שנים בלמידת מכונה בייצור. הוא נהנה לפתור בעיות עסקיות עם למידת מכונה והנדסת תוכנה, ולעזור ללקוחות להוציא ערך עסקי עם ML. כחלק מ-AWS EMEA Prototyping והנדסת ענן, הוא עוזר ללקוחות לבנות פתרונות עסקיים הממנפים חידושים ב-MLOPs, NLP, CV ו-LLMs.
ג'וזפה האנן הוא יועץ עמית ProServe. ג'וזפה מיישם את כישוריו האנליטיים בשילוב עם AI&ML כדי לפתח פתרונות ברורים ויעילים עבור לקוחותיו. הוא אוהב להמציא פתרונות פשוטים לבעיות מסובכות, במיוחד כאלו הכרוכות בפיתוחים הטכנולוגיים והמחקרים העדכניים ביותר.
לורן טן קייט הוא מדען נתונים בכיר. Laurens עובדת עם לקוחות ארגוניים ב-EMEA ומסייעת להם להאיץ את התוצאות העסקיות שלהם באמצעות טכנולוגיות AWS AI/ML. הוא מתמחה בפתרונות NLP ומתמקד בענף שרשרת האספקה והלוגיסטיקה. בזמנו הפנוי הוא נהנה מקריאה ואמנות.
אירינה ראדו הוא מנהל אבות טיפוס, חלק מ-AWS EMEA Prototyping והנדסת ענן. היא עוזרת ללקוחות להפיק את המיטב מהטכנולוגיה העדכנית ביותר, לחדש מהר יותר ולחשוב גדול יותר.
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- PlatoData.Network Vertical Generative Ai. העצים את עצמך. גישה כאן.
- PlatoAiStream. Web3 Intelligence. הידע מוגבר. גישה כאן.
- PlatoESG. פחמן, קלינטק, אנרגיה, סביבה, שמש, ניהול פסולת. גישה כאן.
- PlatoHealth. מודיעין ביוטכנולוגיה וניסויים קליניים. גישה כאן.
- מקור: https://aws.amazon.com/blogs/machine-learning/boosting-rag-based-intelligent-document-assistants-using-entity-extraction-sql-querying-and-agents-with-amazon-bedrock/
- :יש ל
- :הוא
- :לֹא
- :איפה
- $ למעלה
- 1
- 10
- 100
- 2022
- 3d
- 7
- a
- יכולת
- יכול
- אודות
- להאיץ
- גישה
- נגיש
- מושלם
- חֶשְׁבּוֹן
- דיוק
- מדויק
- במדויק
- להשיג
- השגתי
- לרוחב
- לפעול
- משחק
- פעולה
- פעולות
- להסתגל
- להוסיף
- בנוסף
- מוסיף
- מאומץ
- לאחר
- שוב
- נגד
- סוֹכֵן
- סוכנים
- AI
- עוזר בינה מלאכותית
- AI / ML
- אַלגוֹרִיתְם
- מיישר
- תעשיות
- מאפשר
- בַּצַד
- גם
- אמזון בעברית
- אמזון SageMaker
- טקסטורה באמזון
- אמזון שירותי אינטרנט
- בין
- an
- אנליזה
- אנליטית
- לנתח
- ו
- אחר
- לענות
- תשובות
- אנתרופי
- כל
- API
- ממשקי API
- חל
- החל
- גישה
- מתאים
- לְהִתְקַרֵב
- ארכיטקטורה
- ARE
- טיעונים
- סביב
- אמנות
- AS
- לשאול
- לעזור
- עוזר
- עוזרים
- עמית
- המשויך
- לְהַנִיחַ
- At
- המתקפות
- ניסיונות
- אודיו
- לְהַגדִיל
- מוגבר
- כּוֹכָב הַשַׁחַר
- באופן אוטומטי
- אוטונומי
- זמין
- AWS
- בחזרה
- קצה אחורי
- איזון
- בסיס
- מבוסס
- בסיסי
- BE
- כי
- היה
- לפני
- התנהגות
- מאחור
- תאמינו
- הטבות
- הטוב ביותר
- בֵּין
- מעבר
- גדול
- חיזוק
- שניהם
- לִבנוֹת
- בִּניָן
- עסקים
- עסקים
- אבל
- by
- סליק
- דולר קנדי
- שיחה
- נקרא
- קוראים
- שיחות
- CAN
- מועמד
- יכולות
- מסוגל
- לשאת
- מקרה
- מקרים
- שרשרת
- chatbot
- בדיקות
- בחירה
- בחירות
- בחרו
- בכיתה
- מיון
- ברור
- ענן
- קוהרנטי
- שיתוף פעולה
- טור
- עמודות
- שילוב
- משלב
- איך
- Common
- חברות
- חברה
- לְהַשְׁווֹת
- השוואה
- השוואות
- השלמה
- להשלים
- מורכב
- מסובך
- רְכִיב
- רכיבים
- מורכב
- מַקִיף
- לחשב
- מושגים
- בטון
- מצב
- לנהל
- לְחַבֵּר
- לשקול
- שיקולים
- עִקבִי
- לְגַבֵּשׁ
- לבנות
- יועץ
- להכיל
- הכלול
- מכיל
- תוכן
- הקשר
- שיחה
- שיחה
- AI שיחה
- שיחות
- להמיר
- הומר
- ליבה
- לתקן
- צורה נכונה
- תוֹאֵם
- עלות
- עלויות
- יכול
- יחד
- לִיצוֹר
- יוצר
- יוצרים
- נוֹכְחִי
- מנהג
- לקוח
- שירות לקוחות
- לקוחות
- נתונים
- גישה למידע
- מדען נתונים
- מסד נתונים
- החליט
- מחליטים
- עמוק
- עמוק יותר
- מוגדר
- מגדיר
- להתעמק
- דרישה
- הדגמה
- להפגין
- מופגן
- מדגים
- תלות
- לפרוס
- לתאר
- מְתוּאָר
- המתאר
- תיאור
- עיצוב
- תבניות עיצוב
- תהליך עיצוב
- תכנון
- מְפוֹרָט
- פרטים
- לאתר
- איתור
- לפתח
- צעצועי התפתחות
- התפתחויות
- דיגיטלי
- חשיפה
- לדון
- נָדוֹן
- דיונים
- מרחק
- צלילה
- שונה
- צלילה
- do
- מסמך
- תיעוד
- מסמכים
- עושה
- לא
- תחום
- תחומים
- עשה
- מטה
- נהג
- ראוי
- בְּמַהֲלָך
- באופן דינמי
- כל אחד
- מוקדם יותר
- מוקדם
- להקל
- קלות שימוש
- בקלות
- אפקטיבי
- יעילות
- יְעִילוּת
- יעיל
- יעילות
- או
- אלמנטים
- הטבעה
- EMEA
- יצא
- העסקת
- לאפשר
- מאפשר
- מה שמאפשר
- סוף
- התעסקות
- מנוע
- הנדסה
- מנועים
- להגביר את
- משפר
- מספיק
- מעשיר
- מִפְעָל
- ישויות
- ישות
- סביבה
- שגיאות
- במיוחד
- חיוני
- נוסד
- אֲפִילוּ
- להתפתח
- לִבחוֹן
- דוגמה
- דוגמאות
- קיום
- קיימים
- לְהַרְחִיב
- צפוי
- ניסיון
- מוסבר
- המסביר
- מסביר
- לחקור
- חקר
- חשוף
- להאריך
- מאריך
- הארכה
- נוסף
- תמצית
- הוֹצָאָה
- תמציות
- מתמודד
- נכשל
- שאלות נפוצות
- רחוק
- מהר יותר
- מאפיין
- תכונות
- מָשׁוֹב
- מעטים
- שדה
- שלח
- קבצים
- סינון
- מסננים
- סופי
- בסופו של דבר
- כספי
- ראשון
- גמישות
- גמיש
- תזרים
- להתמקד
- התמקדות
- הבא
- כדלקמן
- בעד
- טופס
- פוּרמָט
- נוצר
- צורות
- מסגרת
- חופשי
- החל מ-
- חזית
- חזיתי
- להגשמה
- מלא
- לגמרי
- פונקציה
- נוסף
- שער כניסה
- ללקט
- כללי
- ליצור
- נוצר
- יצירת
- דור
- גנרטטיבית
- AI Generative
- לקבל
- מקבל
- GitHub
- נתן
- מטרה
- טוב
- בהדרגה
- להעניק
- קְבוּצָה
- קבוצה
- היה
- יש
- יש
- he
- לעזור
- עזרה
- עוזר
- כאן
- גָבוֹהַ
- הגבוה ביותר
- מודגש
- שֶׁלוֹ
- היסטוריה
- אני מקווה
- איך
- איך
- אולם
- HTML
- HTTPS
- בן אנוש
- רעיונות
- מזהה
- לזהות
- זיהוי
- זהות
- if
- תמונה
- תמונות
- תמונה
- ליישם
- הפעלה
- יושם
- יישום
- חשיבות
- חשוב
- לשפר
- משופר
- שיפורים
- שיפור
- in
- כולל
- מדד
- -
- תעשייה
- מידע
- מיצוי מידע
- בתחילה
- לחדש
- חידושים
- קלט
- תשומות
- השראה
- לעורר
- השראה
- להתקין
- למשל
- במקום
- לשלב
- אינטליגנטי
- אינטראקציה
- פנימי
- אל תוך
- מבוא
- הציג
- להשקיע
- חקירה
- השקעה
- לערב
- IT
- שֶׁלָה
- עצמו
- עבודה
- מסע
- jpg
- ג'סון
- שמור
- מפתח
- מפתחות
- ידע
- ידוע
- שפה
- גָדוֹל
- במידה רבה
- אחרון
- מאוחר יותר
- האחרון
- השקות
- שכבה
- למידה
- הכי פחות
- הוביל
- אורך
- רמה
- תנופה
- כמו
- להגביל
- מגבלות
- קשר
- לינקדין
- רשימה
- LLM
- המון
- לוגיסטיקה
- תעשיית לוגיסטיקה
- ארוך
- אוהב
- מכונה
- למידת מכונה
- עשוי
- ראשי
- לתחזק
- שמירה
- לעשות
- הצליח
- מנהל
- רב
- להתאים
- תואם
- בוגר
- מאי..
- me
- משמעות
- אמצעים
- לִפְגוֹשׁ
- אזכורים
- רק
- רשת
- הודעה
- מידע נוסף
- שיטה
- שיטות
- מטרי
- מדדים
- מינימום
- מַטעֶה
- חסר
- ML
- MLOps
- מודל
- מודלים
- מתינות
- מודרני
- מודול
- יותר
- יתר על כן
- רוב
- מספר
- צריך
- שמות
- טבעי
- עיבוד שפה טבעית
- הכרחי
- צורך
- נחוץ
- צרכי
- השכנים
- נטו
- הכנסה נטו
- לעולם לא
- חדש
- הבא
- NLP
- ללא חתימה
- מחברה
- רעיון
- אובייקט
- זיהוי אובייקט
- of
- מוצע
- הצעה
- לא מחובר
- לעתים קרובות
- on
- ONE
- מתמשך
- רק
- לפתוח
- קוד פתוח
- תפעול
- מטב
- אפשרויות
- or
- להזמין
- מְקוֹרִי
- אחר
- אחרים
- שלנו
- הַחוּצָה
- תוצאות
- מתווה
- המתואר
- תפוקה
- פלטים
- יותר
- מקיף
- להתגבר על
- שֶׁלוֹ
- חבילה
- דובי פנדה
- חלק
- חלקים
- תבנית
- דפוסי
- לְבַצֵעַ
- ביצועים
- רשות
- פרספקטיבה
- התרופות
- חתיכות
- צינור
- מישור
- תכנון
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- מתקבל על הדעת
- נקודה
- מדיניות
- פופולרי
- פופולריות
- מְאוּכלָס
- אפשרי
- יִתָכֵן
- הודעה
- פוסטגרסל
- פוטנציאל
- פוטנציאל
- מופעל
- חזק
- תרגול
- דיוק
- להכין
- להציג
- מוצג
- מתנות
- מִשׁמֶרֶת
- למנוע
- מונע
- קוֹדֶם
- זְכוּת
- פתרון בעיות
- בעיות
- תהליך
- תהליך
- ייצור
- הפקת
- המוצר
- הפקה
- הבטחה
- מבטיח
- נכסים
- להציע
- מוּצָע
- מציע
- prototyping
- מוכח
- לספק
- מספק
- ציבורי
- פיתון
- שאלות ותשובות
- שאילתות
- שאלה
- שאלות
- מָהִיר
- מהירות
- דירוג
- מהיר
- חי
- לְהַגִיעַ
- הגיע
- להגיב
- קריאה
- מוכן
- ממשי
- עולם אמיתי
- זמן אמת
- טעם
- סביר
- קיבלו
- קבלה
- לאחרונה
- לאחרונה
- להכיר
- להמליץ
- המלצה
- להפחית
- להתייחס
- באזור
- רלוונטי
- אמינות
- לסמוך
- שְׂרִידִים
- דוחות לדוגמא
- מאגר
- לייצג
- לבקש
- לדרוש
- נדרש
- דרישה
- דורש
- מחקר
- תגובה
- תגובות
- REST
- תוצאה
- תוצאות
- לַחֲזוֹר
- הכנסה
- הכנסות
- סקירה
- תקין
- סיכונים
- תפקיד
- כללי
- הפעלה
- ריצה
- פועל
- בעל חכמים
- אותו
- בקרת מערכות ותקשורת
- סריקה
- סריקה
- מַדְעָן
- תסריט
- חיפוש
- מנוע חיפוש
- שְׁנִיָה
- סעיף
- סעיפים
- אבטחה
- אמצעי אבטחה
- לִרְאוֹת
- לחפש
- לראות
- בחירה
- מבחר
- סמנטיקה
- שולח
- לחצני מצוקה לפנסיונרים
- נשלח
- רצף
- שרות
- שירותים
- היא
- צריך
- לְהַצִיג
- הראה
- הראה
- דומה
- פָּשׁוּט
- פשוט
- לפשט
- בו זמנית
- since
- יחיד
- מיומנויות
- So
- עד כה
- תוכנה
- הנדסת תוכנה
- אך ורק
- פִּתָרוֹן
- פתרונות
- פותר
- כמה
- לפעמים
- מָקוֹר
- מקורות
- מֶרחָב
- מיוחד
- מתמחה
- ספציפי
- מְהִירוּת
- פיצולים
- לערום
- שלבים
- התחלה
- החל
- להטות
- שלב
- צעדים
- חנות
- מאוחסן
- פשוט
- אסטרטגיות
- אִסטרָטֶגִיָה
- להכות
- לשאוף
- מִבְנֶה
- מובנה
- סטודיו
- מוצלח
- כזה
- להציע
- מַתְאִים
- לסכם
- לספק
- שרשרת אספקה
- תמיכה
- תומך
- בטוח
- תחביר
- מערכת
- שולחן
- מותאם
- לקחת
- לוקח
- המשימות
- משימות
- טק
- טכניקות
- טכנולוגי
- טכנולוגיות
- לספר
- עשר
- טֶקסט
- טקסטואלית
- תודה
- זֶה
- השמיים
- המידע
- שֶׁלָהֶם
- אותם
- אז
- שם.
- בכך
- לכן
- אלה
- הֵם
- לחשוב
- חושב
- זֶה
- אלה
- שְׁלוֹשָׁה
- דרך
- זמן
- עֲנָק
- ל
- היום
- כלי
- כלים
- חלק עליון
- 5 העליון
- לקראת
- לקראת
- עקבות
- מסורתי
- הדרכה
- לשנות
- בטיפול
- נָכוֹן
- אמין
- שתיים
- סוג
- סוגים
- בדרך כלל
- ui
- בְּסִיסִי
- להבין
- עד
- עדכון
- על
- us
- להשתמש
- מְשׁוּמָשׁ
- משתמש
- חוויית משתמש
- משתמשים
- שימושים
- באמצעות
- לְאַמֵת
- ערך
- ערכים
- מגוון
- שונים
- רב צדדי
- וִידֵאוֹ
- וידאו
- פגיעויות
- הולך
- דֶרֶך..
- we
- אינטרנט
- שירותי אינטרנט
- טוֹב
- היו
- מה
- מתי
- ואילו
- אם
- אשר
- בזמן
- למה
- ויקיפדיה
- יצטרך
- עם
- בתוך
- לְלֹא
- עובד
- היה
- כתיבה
- X
- שנה
- שנים
- אתה
- זפירנט