במסמך הזה מתוארות שגיאות שיכולות להופיע כשמשתמשים בפונקציות AI משופרות. בנוסף, מופיעות דוגמאות לשגיאות ולהמלצות לתיקון.
צפויים ביצועים נמוכים יותר. פונקציית ה-AI שעברה אופטימיזציה לא זמינה
תיאור
האזהרה הזו מציינת שהשאילתה חזרה לשימוש ב-LLM. המצב הזה קורה כשהפונקציה שעברה אופטימיזציה עדיין בתהליך למידה, לא הוכנה אף פעם, נכשלה בבדיקת האימות של הדיוק בזמן הריצה או אם העמודות של התוכן וההטמעה שאליהן מתייחסת הפונקציה ai.if() לא שייכות לאותו טבלה. בטבלאות קטנות יותר, יכול להיות שהמודל של ה-proxy לא יפעל בצורה טובה, והדיוק בדרך כלל נמוך מ-95%, ולכן AlloyDB משתמש ב-LLM כברירת מחדל.
דוגמה לשאילתה שגורמת לשגיאה
EXECUTE positive_reviews_query;
תיקון מומלץ
- ממתינים לסיום האימון של הפונקציה האופטימלית.
- חשוב לוודא שהשאילתה מוכנה בצורה נכונה באמצעות ההצהרה
PREPARE. - מוודאים שהתוכן והעמודות של ההטמעה שאליהן מתייחסת הפונקציה
ai.if()שייכות לאותה טבלה. - פונקציות שעברו אופטימיזציה (תצוגה מקדימה) מתאימות יותר לטבלאות גדולות. אפשר גם להשתמש בפונקציות AI מבוססות-מערך כדי לשפר את הביצועים.
אם רוצים לעקוף את בדיקת הדיוק בזמן הריצה (לדוגמה, בסביבות פיתוח), צריך להגדיר את
google_ml_integration.runtime_accuracy_checkלערךoffלכל סביבת מסד הנתונים.ALTER DATABASE DATABASE_NAME SET google_ml_integration.runtime_accuracy_check = off;מחליפים את
DATABASE_NAMEבשם של מסד הנתונים.
השאילתה לא מעבדת שורות או שהכנת המודל נכשלת
תיאור
אם השאילתה לא מעבדת שורות, הסיבה העיקרית לכך היא שההטבעות לא נוצרו או שכל עמודת ההטבעות מכילה ערכים של NULL. במקרה כזה, הכנת השאילתה נכשלת כי היא לא דוגמת שורות שמכילות הטבעות של NULL.
תיקון מומלץ
- כדאי ליצור הטמעות לנתונים לפני שמשתמשים בפונקציות שעברו אופטימיזציה.
- מוודאים שהעמודה של ההטמעה לא מכילה ערכים של
NULL. - יכול להיות ששאילתות ששונות רק בערכים קבועים בסעיף
WHEREעדיין ישתמשו במודל מאומן קיים.
ביצועים איטיים למרות השימוש בפונקציות AI שעברו אופטימיזציה
תיאור
מוודאים שלא חרגתם מהמכסה שלכם ב-Gemini Enterprise Agent Platform. גם עם פונקציות AI שעברו אופטימיזציה, בדיקת הדיוק הראשונית בזמן הריצה דורשת קריאה של מודל שפה גדול (LLM) מרוחק עבור מדגם של שורות. מכסה לא מספקת עלולה לגרום לבדיקה הראשונית הזו להיות איטית או להיכשל.
תיקון מומלץ
כדאי לבדוק את המכסה שלכם ב-Agent Platform ולבקש להגדיל אותה אם צריך, כדי לוודא שהבדיקה הראשונית של דיוק זמן הריצה תוכל להתבצע ללא עיכובים.
שגיאה: הפונקציה ai.if(prompt => text, embedding => vector) לא קיימת
תיאור
אם מעבירים את הפרמטר model_id יחד עם עמודת ההטמעה כשקוראים לפונקציה ai.if(), AlloyDB לא משתמש במודל הפרוקסי המאומן ומפיק שגיאה שדומה לזו:
testdb=# select ai.if('Is the rating positive?' || review, review_embedding, 'gemini-2.5-pro') from restaurant_reviews;
ERROR: function ai.if(text, vector, unknown) does not exist
LINE 1: select ai.if('Is the rating positive?' || review, review_embe...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
תיקון מומלץ
חשוב לוודא שלא מעבירים את הערך model_id כשקוראים לפונקציה ai.if(). כך מוודאים ש-AlloyDB ישתמש במודל הפרוקסי המאומן כדי לעבד את השאילתה.