סקירה כללית של ניהול נקודות קצה של מודלים

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

סקירה כללית

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

אפשר לרשום את סוגי המודלים הבאים באמצעות ניהול נקודות קצה של מודלים:

  • מודלים להטמעת טקסט ב-Vertex AI.
  • מודלים להטמעת טקסט בהתאמה אישית שמתארחים ברשתות בתוך Google Cloud.
  • מודלים גנריים עם API מבוסס-JSON. דוגמאות למודלים כאלה:

    • מודל gemini-flash מ-Vertex AI Model Garden
    • מודל open_ai למודלים של OpenAI
    • מודלים שמתארחים ברשתות בתוך Google Cloud

איך זה עובד

אתם יכולים להשתמש בניהול של נקודות קצה של מודלים כדי לרשום נקודת קצה של מודל שעומדת בדרישות הבאות:

  • הקלט והפלט של המודל תומכים בפורמט JSON.
  • אפשר להשתמש בפרוטוקול REST כדי לקרוא למודל.

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

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

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

כדי לרשום מודלים של AI מרחוק ולהפעיל אותם באמצעות מכונת Cloud SQL, צריך להתקין במכונה את גרסת התחזוקה MYSQL_VERSION.R20250531.01_14 ואילך. אם במכונה שלכם פועלת גרסת תחזוקה מוקדמת יותר מ-MYSQL_VERSION.R20250531.01_14, תוכלו להשתמש רק בפונקציות הבאות, כפי שמתואר בשילוב של Cloud SQL ו-Vertex AI.

כדי לשדרג את המופע לגרסת תחזוקה MYSQL_VERSION.R20250531.01_14 או לגרסה מתקדמת יותר, אפשר לעיין במאמר בנושא תחזוקה בשירות עצמי. אחרי שמשדרגים את המופע, אפשר להשתמש בפונקציות הבאות:

בנוסף, אתם יכולים להשתמש בפונקציות הבאות עם ספק המודלים הרשום שלכם:

  • mysql.ml_embedding(): יצירת הטמעות טקסט
  • mysql.ml_predict_row(): יצירת תחזיות כשמפעילים מודלים גנריים שתומכים בפורמטים של קלט ופלט JSON

הרשאות משתמש נדרשות במסד הנתונים

כדי לרשום מודלים של AI מרחוק ולהפעיל אותם, אתם צריכים להיות מחוברים כמשתמש של מסד נתונים של MySQL שקיבל הרשאות SELECT ו-EXECUTE ב-mysql.*.

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

מידע נוסף על התפקיד cloudsqlsuperuser ב-Cloud SQL זמין במאמרים הרשאות משתמש ב-MySQL 8.0 והרשאות משתמש ב-MySQL 8.4.

מושגים מרכזיים

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

ספק המודל

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

ספק המודל הגדרה בפונקציה בתור…
‫Vertex AI (כולל Gemini) google
Anthropic anthropic
Hugging Face hugging_face
OpenAI open_ai
מודלים אחרים שמתארחים מחוץ ל-Vertex AI,‏
Anthropic,‏ Hugging Face ו-OpenAI
custom

ספק המודלים שמוגדר כברירת מחדל הוא custom.

סוגי מודלים

סוגי מודלים הם הסוגים של מודל ה-AI. כשרושמים נקודת קצה של מודל, אפשר להגדיר את סוגי המודלים text_embedding או generic לנקודת הקצה.

אם אתם משתמשים ב-Vertex AI כספק המודלים, אתם לא צריכים לרשום נקודת קצה של מודל כי נקודות הקצה נתמכות אוטומטית. כברירת מחדל, ב-Vertex AI משתמשים במודל text-embedding-005.

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

סוג המודל של המודלים האלה הוא text_embedding.

מודלים גנריים
בניהול נקודות הקצה של מודלים יש תמיכה גם ברישום של כל סוגי המודלים האחרים, מלבד מודלים של הטמעת טקסט. כדי להפעיל תחזיות למודלים גנריים, משתמשים בפונקציה mysql.ml_predict_row(). אפשר להגדיר מטא-נתונים של נקודת קצה של מודל, כמו נקודת קצה של בקשה וכותרות HTTP שספציפיות למודל.
אי אפשר להעביר פונקציות טרנספורמציה כשרושמים נקודת קצה של מודל גנרי. חשוב לוודא שכאשר מפעילים חיזויים, הקלט של הפונקציה הוא בפורמט JSON, ושהפלט של ה-JSON מנותח כדי להפיק את הפלט הסופי.
סוג המודל של המודלים האלה הוא generic. ‫generic הוא סוג המודל שמוגדר כברירת מחדל, ולכן אם רושמים נקודות קצה של מודל מהסוג הזה, הגדרת סוג המודל היא אופציונלית.
ב-Vertex AI, ניהול נקודות הקצה של המודלים כולל תמיכה רשומה מראש במודל gemini-2.5-flash.

שיטות אימות

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

במודלים של Vertex AI, חשבון השירות של Cloud SQL משמש לאימות. במודלים אחרים, אפשר להשתמש במפתח ה-API או באסימון ה-bearer שמאוחסן כסוד ב-Secret Manager עם פונקציית ה-SQL‏ mysql.ml_create_sm_secret_registration().

בטבלה הבאה מפורטות שיטות האימות שאפשר להגדיר:

שיטת אימות הגדרה בפונקציה בתור… ספק המודל
סוכן שירות של Cloud SQL auth_type_cloudsql_service_agent_iam ספק Vertex AI
Secret Manager auth_type_secret_manager מודלים שמתארחים מחוץ ל-Vertex AI

פונקציות חיזוי

mysql.ml_embedding()
Calls a registered text embedding model endpoint to generate embeddings. הוא כולל תמיכה מובנית בכל מודלי ההטמעה של Vertex AI.
במודלים להטמעת טקסט ללא תמיכה מובנית, פרמטרי הקלט והפלט הם ייחודיים למודל וצריך לבצע טרנספורמציה כדי שהפונקציה תוכל לקרוא למודל. יוצרים פונקציית קלט לטרנספורמציה כדי להפוך את הקלט של פונקציית החיזוי לקלט ספציפי למודל, ופונקציית פלט לטרנספורמציה כדי להפוך את הפלט הספציפי למודל לפלט של פונקציית החיזוי.
mysql.ml_predict_row()
קורא לנקודת קצה רשומה של מודל גנרי, אם נקודת הקצה תומכת בממשקי API מבוססי JSON להפעלת תחזיות.

פונקציות טרנספורמציה

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

אי אפשר להשתמש בפונקציות של שינוי כשרושמים נקודת קצה של מודל generic.

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

// define custom model specific input/output transform functions.
CREATE FUNCTION IF NOT EXISTS input_transform_function(model_id VARCHAR(100), input_text TEXT) RETURNS JSON DETERMINISTIC;

// the returned BLOB should be of type VECTOR
CREATE FUNCTION IF NOT EXISTS output_transform_function(model_id VARCHAR(100), response_json JSON) RETURNS BLOB DETERMINISTIC;

מידע נוסף על יצירת פונקציות טרנספורמציה זמין במאמר דוגמה לפונקציות טרנספורמציה.

פונקציה ליצירת כותרות HTTP

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

בדוגמה הבאה מוצגת החתימה של פונקציית החיזוי mysql.ml_embedding():

CREATE FUNCTION IF NOT EXISTS generate_headers(model_id VARCHAR(100), input TEXT) RETURNS JSON DETERMINISTIC;

עבור פונקציית החיזוי mysql.ml_predict_row(), החתימה היא:

CREATE FUNCTION IF NOT EXISTS generate_headers(model_id VARCHAR(100), input JSON) RETURNS JSON DETERMINISTIC;

מידע נוסף על יצירת פונקציה ליצירת שורות כותרת זמין בדוגמה לפונקציה ליצירת שורות כותרת.

מגבלות

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

  • אם מייצאים או מייבאים את מסד הנתונים באמצעות mysqldump, קטלוג נקודות הקצה של המודל לא מיוצא.

  • שם של מסד נתונים של משתמשים שמכיל פונקציות המרה לא יכול לכלול נקודה ('.'). לדוגמה, אי אפשר להשתמש במסד נתונים בשם my.sql.

  • ניהול נקודות קצה של מודלים זמין רק ב-Cloud SQL ל-MySQL בגרסה 8.0.36 ואילך.

המאמרים הבאים