Spanner והיכולות המולטי-מודאליות שלו משולבים עם שירותי ה-AI שלGoogle Cloudועם LangChain, framework בקוד פתוח, כדי לעזור לבנות אפליקציות מבוססות-AI גנרטיבי. אתם יכולים לשפר את האפליקציות באמצעות תכונות כמו חיפוש דמיון, יצירה עם שליפה משופרת (RAG) ו-Knowledge Graph. הפונקציונליות הזו מבוססת על היכולות של Spanner בתחומי המדרגיות, הזמינות והעקביות.
ביצוע חיפושים של דמיון באמצעות Vector Search
אפשר להשתמש ב-Spanner עם Vector Search כדי להטמיע חיפוש לפי דמיון בנתוני טקסט לא מובְנים. Spanner משתלב עם שירותים כמו Gemini Enterprise Agent Platform כדי להפעיל את יצירת הטמעות וקטוריות מנתוני טקסט לא מובנים. ההטמעות האלה הן ייצוגים מספריים שמשקפים את המשמעות הסמנטית של הטקסט. כדי למצוא פריטים דומים מבחינה מושגית, משתמשים בפונקציות של מרחק וקטורי כדי למצוא וקטורי הטמעה שדומים ביותר להטמעה של בקשת החיפוש. התהליך הזה מאפשר לכם ליצור תכונות כמו המלצות למוצרים או לתוכן.
כדי להתחיל, צריך ליצור ולמלא מראש הטבעות וקטוריות של Agent Platform בכמות גדולה עבור נתונים טקסטואליים קיימים. אפשר לעשות את זה באמצעות SQL ומודל הטמעה של Agent Platform, כמו מודל text-embedding, שמתואר במאמרי העזרה של ה-API של text embeddings.
Spanner תומך בשימוש בשכנים קרובים משוערים (ANN) ובשכנים קרובים מסוג K (KNN) עם הטמעות של וקטורים של שאילתות. ANN משתמש באינדקס וקטורי לחיפוש מהיר וניתן להרחבה שמחזיר תוצאות משוערות. החיפוש של KNN הוא מקיף ומחזיר תוצאות מדויקות יותר, אבל הוא יכול להיות איטי כשמדובר במערכי נתונים גדולים. אפשר להשתמש בכמה פונקציות של מרחק בין וקטורים כדי למדוד את הדמיון, כולל:
מרחק קוסינוס: מדד של קוסינוס הזווית בין שני וקטורים. המדד הזה שימושי למציאת פריטים עם אוריינטציה דומה, ללא קשר לגודל.
מרחק אוקלידי: מדידת המרחק בקו ישר בין שני וקטורים.
מכפלה סקלרית: חישוב המכפלה של גדלי הווקטורים והקוסינוס של הזווית ביניהם. זו יכולה להיות האפשרות הכי יעילה מבחינת חישובים עבור וקטורים מנורמלים.
מידע נוסף זמין בנושאים הבאים:
יצירת חיזויים של למידת מכונה באמצעות SQL
אתם יכולים להשתמש בשאילתות SQL ב-Spanner כדי להפעיל מודלים גדולים של שפה (LLM) שנפרסו ב-Agent Platform. גישה ישירה למודלים מסוג LLM מאפשרת לכם להריץ תחזיות למשימות כמו ניתוח סנטימנט, סיווג טקסט ותרגום של נתונים שמאוחסנים ב-Spanner.
באמצעות הפונקציה ML.PREDICT (GoogleSQL) או spanner.ML_PREDICT_ROW (PostgreSQL), אתם יכולים ליצור תחזיות של למידת מכונה (ML) בלי להעביר את הנתונים או לכתוב קוד אפליקציה בהתאמה אישית כדי ליצור אינטראקציה עם מודל שפה גדול (LLM). כך אפשר לפשט את ארכיטקטורת האפליקציה ולהשתמש ביכולות של ML קרוב יותר לנתונים. מידע נוסף זמין במאמר יצירת חיזויים של ML באמצעות SQL.
שימוש ב-Model Context Protocol (MCP) כדי להתחבר לסוכני LLM
אפשר לחבר את מופע Spanner לסביבות פיתוח משולבות (IDE) שתומכות ב-Model Context Protocol (MCP). MCP הוא פרוטוקול פתוח שבו אפשר להשתמש כדי לקשר מודלים גדולים של שפה (LLM) לנתונים ב-Spanner. אחרי החיבור, סוכני ה-LLM יכולים לשלוח שאילתות לאירוע Spanner ולקיים איתו אינטראקציה. מידע נוסף זמין במאמר חיבור סביבת פיתוח משולבת (IDE) ל-Spanner.
קבלת תובנות באמצעות גרפים של Spanner
לתרחישי שימוש מתקדמים יותר ב-RAG, Spanner Graph משלב יכולות של מסד נתונים של גרפים עם היתרונות העיקריים של Spanner. Spanner Graph מאפשר לכם ליצור מודלים של נתונים מקושרים מאוד, לאחסן אותם ולשאול עליהם שאילתות.
שילוב של Spanner Graph עם LangChain כדי ליצור אפליקציות GraphRAG. השילוב הזה יכול לשפר את ה-RAG המסורתי. GraphRAG מאפשר ליצור אפליקציות שמזהות קשרים מורכבים בין ישויות, כמו גרף ידע. השילוב משתמש בשאילתות גרף בנוסף לחיפוש וקטורי כדי לזהות קשרים מורכבים ומשתמעים בנתונים. שימוש משולב בשאילתות גרף ובחיפוש וקטורי יכול לספק תשובות מדויקות ורלוונטיות יותר מה-LLM מאשר שימוש בחיפוש וקטורי בלבד.
מידע נוסף זמין במאמר בנושא תשתית GraphRAG ל-AI גנרטיבי באמצעות Agent Platform ו-Spanner Graph.
פיתוח אפליקציות מבוססות-LLM באמצעות LangChain
Spanner מספק כמה מחלקות לעבודה פרוגרמטית עם LangChain. LangChain היא מסגרת לתזמור LLM שמספקת את המבנה, הכלים והרכיבים לייעול תהליכי עבודה מורכבים של LLM. שימוש ב-LangChain כדי ליצור אפליקציות של AI גנרטיבי ותהליכי עבודה של RAG. המחלקות הזמינות של LangChain ל-Spanner כוללות:
SpannerVectorStore: אחסון של הטבעות וקטוריות וחיפוש שלהן כדי לאפשר חיפוש של דמיון בתוך האפליקציה באמצעות המחלקה.
SpannerLoader: טעינת נתונים מ-Spanner לשימוש בהטמעות או כדי לספק הקשר ספציפי לשרשראות של מודלים גדולים של שפה (LLM) באמצעות המחלקה.
SpannerChatMessageHistory: אפשר להפעיל אפליקציות של AI בממשק שיחה על ידי אחסון היסטוריית השיחות במסד נתונים של Spanner.
מידע נוסף זמין במאמרים פיתוח אפליקציות מבוססות-LLM באמצעות LangChain וספריית הלקוח של Spanner ל-LangChain.
עיון בתרחישים לדוגמה
אתם יכולים להשתמש ביכולות ה-AI של Spanner כדי לבנות אפליקציות חכמות לתרחישי שימוש כמו:
מנועי המלצות למסחר אלקטרוני: יצירת הטבעות וקטוריות לתיאורי מוצרים כדי להפעיל מנוע המלצות. המנוע הזה יכול להציע ללקוחות פריטים דומים, וכך לשפר את חוויית הקנייה שלהם ולהגדיל את נפח המכירות. מידע נוסף מופיע במאמר בנושא שימוש ב-AI גנרטיבי לקבלת המלצות מותאמות אישית באפליקציית מסחר אלקטרוני.
ניהול היסטוריית ההודעות בצ'אט: אפשר להשתמש ב-Spanner וב-LangChain כדי לאחסן ולאחזר את היסטוריית השיחות. נתונים אלה מאוחסנים ב-Spanner במסד נתונים, והגישה אליהם מתבצעת באמצעות המחלקה
SpannerChatMessageHistory. המחלקה הזו מרחיבה מחלקה בסיסית של LangChain כדי לשמור ולאחזר הודעות ממסד נתונים. מידע נוסף זמין במאמר היסטוריית ההודעות בצ'אט עם Spanner.זיהוי הונאות פיננסיות: אפשר להשתמש ב-Spanner Graph כדי לנתח קשרים מורכבים בין משתמשים, חשבונות ועסקאות, ולזהות תבניות חשודות ואנומליות שקשה לזהות באמצעות מסדי נתונים רלציוניים מסורתיים.
Customer 360: בעזרת Spanner Graph, אפשר לקבל תמונה הוליסטית של הלקוחות על ידי מעקב אחרי קשרים, העדפות והיסטוריית רכישות. הנתונים האלה מאפשרים לספק המלצות מותאמות אישית, לטרגט קמפיינים שיווקיים ולשפר את חוויית שירות הלקוחות.
רשתות חברתיות: מידול של פעילויות ואינטראקציות של משתמשים עם Spanner Graph כדי לספק המלצות לחברים ולגלות תוכן ברשתות חברתיות.
המאמרים הבאים
מידע נוסף על הטמעת יכולות AI ב-Spanner זמין בנושאים הבאים:
- יצירה ומילוי חוזר של הטמעות וקטוריות
- איך מוצאים את השכנים הקרובים ביותר
- שיפור הביצועים של חיפוש וקטורי באמצעות חיפוש של השכנים הקרובים ביותר המשוערים
- שילוב LangChain
- סקירה כללית של Spanner Graph