הרשמה וקריאה למודלים של AI מרחוק ב-AlloyDB Omni

בחירת גרסת תיעוד:

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

לפני שרושמים נקודת קצה של מודל באמצעות ניהול נקודות קצה של מודלים, צריך להפעיל את התוסף google_ml_integration ולהגדיר אימות על סמך ספק המודל, אם נקודת הקצה של המודל דורשת אימות.

חשוב לוודא שאתם ניגשים למסד הנתונים עם שם המשתמש שמוגדר כברירת מחדל postgres.

הפעלת התוסף

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

  1. מוודאים שסימון מסד הנתונים google_ml_integration.enable_model_support מוגדר ל-on עבור מופע. מידע נוסף על הגדרת דגלים של מסד נתונים זמין במאמר הגדרת דגלים של מסד נתונים.

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

        ALTER EXTENSION google_ml_integration UPDATE;
    
  3. מוסיפים את התוסף google_ml_integration באמצעות psql:

      CREATE EXTENSION IF NOT EXISTS google_ml_integration;
    
  4. אופציונלי: נותנים הרשאה למשתמש PostgreSQL שאינו סופר-אדמין לנהל את המטא-נתונים של המודל:

      GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA google_ml TO NON_SUPER_USER;
    

    מחליפים את NON_SUPER_USER בשם המשתמש ב-PostgreSQL שאינו משתמש-על.

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

      ALTER SYSTEM SET google_ml_integration.enable_model_support=on;
      SELECT pg_reload_conf();
    
  6. מוודאים שהקישוריות היוצאת מופעלת.

מגדירים אימות

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

הגדרת אימות ל-Vertex AI

כדי להשתמש בנקודות הקצה של מודל Google Vertex AI, צריך להוסיף הרשאות Vertex AI לחשבון השירות שבו השתמשתם במהלך ההתקנה של AlloyDB Omni. מידע נוסף זמין במאמר הגדרת התקנת AlloyDB Omni לשליחת שאילתות למודלים מבוססי-ענן.

הגדרת אימות באמצעות Secret Manager

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

כדי ליצור מפתח API או אסימון bearer ולהשתמש בהם, צריך לבצע את השלבים הבאים:

  1. יוצרים את הסוד ב-Secret Manager. מידע נוסף זמין במאמר בנושא יצירת סוד וגישה לגרסה של סוד.

    הנתיב של הסוד משמש בפונקציית ה-SQL‏ google_ml.create_sm_secret().

  2. נותנים הרשאות לאשכול AlloyDB לגשת לסוד.

      gcloud secrets add-iam-policy-binding 'SECRET_NAME' \
          --member="serviceAccount:SERVICE_ACCOUNT_ID" \
          --role="roles/secretmanager.secretAccessor"
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SECRET_NAME: שם הסוד ב-Secret Manager.
    • SERVICE_ACCOUNT_ID: המזהה של חשבון השירות שיצרתם בשלב הקודם. חשוב לוודא שזה אותו חשבון שבו השתמשתם במהלך ההתקנה של AlloyDB Omni. האיסור הזה כולל את הסיומת המלאה PROJECT_ID.iam.gserviceaccount.com. לדוגמה: my-service@my-project.iam.gserviceaccount.com

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

הגדרת אימות באמצעות כותרות

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

  CREATE OR REPLACE FUNCTION HEADER_GEN_FUNCTION(
    model_id VARCHAR(100),
    input_text TEXT
  )
  RETURNS JSON
  LANGUAGE plpgsql
  AS $$
  #variable_conflict use_variable
  DECLARE
    api_key VARCHAR(255) := 'API_KEY';
    header_json JSON;
  BEGIN
    header_json := json_build_object(
      'Content-Type', 'application/json',
      'Authorization', 'Bearer ' || api_key
    );
    RETURN header_json;
  END;
  $$;

מחליפים את מה שכתוב בשדות הבאים:

  • HEADER_GEN_FUNCTION: השם של פונקציית יצירת הכותרת שאפשר להשתמש בה כשרושמים מודל.
  • API_KEY: מפתח ה-API של ספק המודל.

מודלים להטמעת טקסט

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

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

לדוגמה, כדי להפעיל את מודל textembedding-gecko שנרשם מראש, אפשר להפעיל את המודל ישירות באמצעות פונקציית ההטמעה:

SELECT
      google_ml.embedding(
        model_id => 'textembedding-gecko',
        content => 'AlloyDB is a managed, cloud-hosted SQL database service');

באופן דומה, כדי להפעיל את מודל gemini-1.5-pro:generateContent שנרשם מראש, אפשר להפעיל את המודל ישירות באמצעות פונקציית החיזוי:

 SELECT
        json_array_elements(
        google_ml.predict_row(
            model_id => 'gemini-1.5-pro:generateContent',
            request_body => '{
        "contents": [
            {
                "role": "user",
                "parts": [
                    {
                        "text": "For TPCH database schema as mentioned here https://www.tpc.org/TPC_Documents_Current_Versions/pdf/TPC-H_v3.0.1.pdf , generate a SQL query to find all supplier names which are located in the India nation."
                    }
                ]
            }
        ]
        }'))-> 'candidates' -> 0 -> 'content' -> 'parts' -> 0 -> 'text';

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

מודלים להטמעת טקסט עם תמיכה מובנית

ניהול נקודות הקצה של המודלים מספק תמיכה מובנית בחלק מהמודלים של Vertex AI ו-OpenAI. רשימת הדגמים עם תמיכה מובנית מופיעה כאן.

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

מודלים להטמעה ב-Vertex AI

בשלבים הבאים מוסבר איך לרשום מודלים של Vertex AI עם תמיכה מובנית. נקודת הקצה של המודל text-embedding-005 ו-text-multilingual-embedding-002 משמשת כדוגמה.

ב-AlloyDB Omni, חשוב לוודא שהגדרתם AlloyDB Omni לשליחת שאילתות למודלים של Vertex AI מבוססי-ענן.

  1. יוצרים את התוסף google_ml_integration ומפעילים אותו.

  2. מתחברים למסד הנתונים באמצעות psql.

  3. קוראים לפונקציה ליצירת מודל כדי להוסיף את נקודת הקצה של המודל:

    text-embedding-005

      CALL
        google_ml.create_model(
          model_id => 'text-embedding-005',
          model_request_url => 'publishers/google/models/text-embedding-005',
          model_provider => 'google',
          model_qualified_name => 'text-embedding-005',
          model_type => 'text_embedding',
          model_auth_type => 'alloydb_service_agent_iam');
    

    text-multilingual-embedding-002

      CALL
        google_ml.create_model(
          model_id => 'text-multilingual-embedding-002',
          model_request_url => 'publishers/google/models/text-multilingual-embedding-002',
          model_provider => 'google',
          model_qualified_name => 'text-multilingual-embedding-002',
          model_type => 'text_embedding',
          model_auth_type => 'alloydb_service_agent_iam'
          model_in_transform_fn => 'google_ml.vertexai_text_embedding_input_transform',
          model_out_transform_fn => 'google_ml.vertexai_text_embedding_output_transform');
    

כתובת ה-URL של הבקשה שהפונקציה יוצרת מתייחסת לפרויקט שמשויך לחשבון השירות של AlloyDB Omni. אם רוצים להתייחס לפרויקט אחר, צריך לציין את model_request_url באופן מפורש.

אם המודל מאוחסן בפרויקט ובאזור אחרים מאלה של אשכול AlloyDB, צריך להגדיר את כתובת ה-URL של הבקשה ל-projects/PROJECT_ID/locations/REGION_ID/publishers/google/models/MODEL_ID, כאשר REGION_ID הוא האזור שבו המודל מתארח ו-MODEL_ID הוא שם המודל המלא.

בנוסף, מקצים את התפקיד Vertex AI User (roles/aiplatform.user) לחשבון השירות של הפרויקט שבו מותקן AlloyDB Omni, כדי לאפשר גישה למודל שמארח בפרויקט השני.

מודל הטמעת טקסט של Open AI

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

בדוגמה הבאה מוסיפים את נקודת הקצה של מודל OpenAI‏ text-embedding-ada-002. אפשר לרשום את נקודות הקצה של מודל OpenAI text-embedding-3-small ו-text-embedding-3-large באמצעות אותם שלבים ולהגדיר את השמות המוסמכים של המודלים שספציפיים למודלים.

  1. מתחברים למסד הנתונים באמצעות psql.
  2. יוצרים את התוסף google_ml_integration ומפעילים אותו.
  3. מוסיפים את מפתח OpenAI API כסוד ל-Secret Manager לצורך אימות.
  4. קוראים לסוד שמאוחסן ב-Secret Manager:

    CALL
    google_ml.create_sm_secret(
      secret_id => 'SECRET_ID',
      secret_path => 'projects/PROJECT_ID/secrets/SECRET_MANAGER_SECRET_ID/versions/VERSION_NUMBER');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SECRET_ID: מזהה הסוד שהגדרתם ואחר כך משמש לרישום נקודת קצה של מודל, לדוגמה key1.
    • SECRET_MANAGER_SECRET_ID: מזהה הסוד שהוגדר ב-Secret Manager כשיוצרים את הסוד.
    • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
    • VERSION_NUMBER: מספר הגרסה של מזהה הסוד.
  5. קוראים לפונקציה ליצירת מודל כדי לרשום את נקודת הקצה של מודל text-embedding-ada-002:

    CALL
      google_ml.create_model(
        model_id => 'MODEL_ID',
        model_provider => 'open_ai',
        model_type => 'text_embedding',
        model_qualified_name => 'text-embedding-ada-002',
        model_auth_type => 'secret_manager',
        model_auth_id => 'SECRET_ID');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • MODEL_ID: מזהה ייחודי של נקודת הקצה של המודל שאתם מגדירים. מזהה המודל הזה משמש כהפניה למטא-נתונים שנקודת הקצה של המודל צריכה כדי ליצור הטמעות או להפעיל תחזיות.
    • SECRET_ID: מזהה הסוד שבו השתמשתם קודם בהליך google_ml.create_sm_secret().

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

מודל להטמעת טקסט באירוח בהתאמה אישית

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

בדוגמה הבאה מוסף מודל מותאם אישית של נקודת קצה custom-embedding-model שמתארח ב-Cymbal. הפונקציות cymbal_text_input_transform ו-cymbal_text_output_transform משמשות לשינוי פורמט הקלט והפלט של המודל לפורמט הקלט והפלט של פונקציית החיזוי.

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

  1. מתחברים למסד הנתונים באמצעות psql.

  2. יוצרים את התוסף google_ml_integration ומפעילים אותו.

  3. אופציונלי: מוסיפים את מפתח ה-API כסוד ל-Secret Manager לצורך אימות.

  4. קוראים לסוד שמאוחסן ב-Secret Manager:

    CALL
      google_ml.create_sm_secret(
        secret_id => 'SECRET_ID',
        secret_path => 'projects/project-id/secrets/SECRET_MANAGER_SECRET_ID/versions/VERSION_NUMBER');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SECRET_ID: מזהה הסוד שהגדרתם ואחר כך משמש לרישום נקודת קצה של מודל, לדוגמה key1.
    • SECRET_MANAGER_SECRET_ID: מזהה הסוד שהוגדר ב-Secret Manager כשיוצרים את הסוד.
    • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
    • VERSION_NUMBER: מספר הגרסה של מזהה הסוד.
  5. יוצרים את פונקציות הטרנספורמציה של הקלט והפלט על סמך החתימה הבאה של פונקציית החיזוי לנקודות קצה של מודלים להטמעת טקסט. מידע נוסף על יצירת פונקציות טרנספורמציה זמין במאמר דוגמה לפונקציות טרנספורמציה.

    אלה דוגמאות לפונקציות טרנספורמציה שספציפיות לנקודת הקצה של מודל הטמעת הטקסט custom-embedding-model:

    -- Input Transform Function corresponding to the custom model endpoint
    CREATE OR REPLACE FUNCTION cymbal_text_input_transform(model_id VARCHAR(100), input_text TEXT)
    RETURNS JSON
    LANGUAGE plpgsql
    AS $$
    DECLARE
      transformed_input JSON;
      model_qualified_name TEXT;
    BEGIN
      SELECT json_build_object('prompt', json_build_array(input_text))::JSON INTO transformed_input;
      RETURN transformed_input;
    END;
    $$;
    -- Output Transform Function corresponding to the custom model endpoint
    CREATE OR REPLACE FUNCTION cymbal_text_output_transform(model_id VARCHAR(100), response_json JSON)
    RETURNS REAL[]
    LANGUAGE plpgsql
    AS $$
    DECLARE
      transformed_output REAL[];
    BEGIN
      SELECT ARRAY(SELECT json_array_elements_text(response_json->0)) INTO transformed_output;
      RETURN transformed_output;
    END;
    $$;
    
  6. קוראים לפונקציה ליצירת מודל כדי לרשום את נקודת הקצה של מודל ההטמעה המותאם אישית:

    CALL
      google_ml.create_model(
        model_id => 'MODEL_ID',
        model_request_url => 'REQUEST_URL',
        model_provider => 'custom',
        model_type => 'text_embedding',
        model_auth_type => 'secret_manager',
        model_auth_id => 'SECRET_ID',
        model_qualified_name => 'MODEL_QUALIFIED_NAME',
        model_in_transform_fn => 'cymbal_text_input_transform',
        model_out_transform_fn => 'cymbal_text_output_transform');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • MODEL_ID: חובה. מזהה ייחודי לנקודת הקצה של המודל שאתם מגדירים – לדוגמה, custom-embedding-model. מזהה המודל הזה משמש כהפניה למטא-נתונים שנקודת הקצה של המודל צריכה כדי ליצור הטמעות או להפעיל תחזיות.
    • REQUEST_URL: חובה. נקודת הקצה הספציפית למודל כשמוסיפים הטמעת טקסט בהתאמה אישית ונקודות קצה של מודלים גנריים – לדוגמה, https://cymbal.com/models/text/embeddings/v1.
    • MODEL_QUALIFIED_NAME: חובה אם נקודת הקצה של המודל משתמשת בשם מלא. השם המוגדר במלואו אם לנקודת הקצה של המודל יש כמה גרסאות.
    • SECRET_ID: מזהה הסוד שבו השתמשתם קודם בהליך google_ml.create_sm_secret().

מודלים גנריים

בקטע הזה נסביר איך לרשום נקודת קצה של מודל כללי שזמינה אצל ספק מודלים מארח כמו Hugging Face,‏ OpenAI,‏ Vertex AI,‏ Anthropic או כל ספק אחר. בקטע הזה יש דוגמאות לרישום של נקודת קצה של מודל כללי שמתארח ב-Hugging Face, מודל כללי של gemini-pro מ-Vertex AI Model Garden ונקודת הקצה של מודל claude-haiku.

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

מידע נוסף על מודלים גנריים שעברו רישום מראש ועל מודלים עם תמיכה מובנית זמין במאמר מודלים נתמכים.

מודל Gemini

חלק ממודלי gemini-pro רשומים מראש, ולכן אפשר להתקשר ישירות למזהה המודל כדי להפעיל תחזיות. מוודאים שהגדרתם את AlloyDB Omni לשליחת שאילתות למודלים של Vertex AI מבוססי-ענן.

בדוגמה הבאה נעשה שימוש בנקודת הקצה של מודל gemini-1.5-pro:generateContent מ-Vertex AI Model Garden.

  1. מתחברים למסד הנתונים באמצעות psql.
  2. יוצרים את התוסף google_ml_integration ומפעילים אותו.
  3. מפעילים חיזויים באמצעות מזהה המודל שנרשם מראש:

    SELECT
        json_array_elements(
        google_ml.predict_row(
            model_id => 'gemini-1.5-pro:generateContent',
            request_body => '{
        "contents": [
            {
                "role": "user",
                "parts": [
                    {
                        "text": "For TPCH database schema as mentioned here https://www.tpc.org/TPC_Documents_Current_Versions/pdf/TPC-H_v3.0.1.pdf , generate a SQL query to find all supplier names which are located in the India nation."
                    }
                ]
            }
        ]
        }'))-> 'candidates' -> 0 -> 'content' -> 'parts' -> 0 -> 'text';
    

מודל כללי ב-Hugging Face

בדוגמה הבאה מוסיפים את נקודת הקצה של מודל הסיווג המותאם אישית facebook/bart-large-mnli שמתארח ב-Hugging Face.

  1. מתחברים למסד הנתונים באמצעות psql.
  2. יוצרים את התוסף google_ml_integration ומפעילים אותו.
  3. מוסיפים את מפתח OpenAI API כסוד ל-Secret Manager לצורך אימות. אם כבר יצרתם סוד למודל אחר של OpenAI, אתם יכולים להשתמש באותו סוד.
  4. קוראים לסוד שמאוחסן ב-Secret Manager:

    CALL
      google_ml.create_sm_secret(
        secret_id => 'SECRET_ID',
        secret_path => 'projects/project-id/secrets/SECRET_MANAGER_SECRET_ID/versions/VERSION_NUMBER');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SECRET_ID: מזהה הסוד שהגדרתם ומשמש בהמשך כשרושמים נקודת קצה של מודל.
    • SECRET_MANAGER_SECRET_ID: מזהה הסוד שהוגדר ב-Secret Manager כשיוצרים את הסוד.
    • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
    • VERSION_NUMBER: מספר הגרסה של מזהה הסוד.
  5. קוראים לפונקציה ליצירת מודל כדי לרשום את נקודת הקצה של מודל facebook/bart-large-mnli:

    CALL
      google_ml.create_model(
        model_id => 'MODEL_ID',
        model_provider => 'hugging_face',
        model_request_url => 'REQUEST_URL',
        model_qualified_name => 'MODEL_QUALIFIED_NAME',
        model_auth_type => 'secret_manager',
        model_auth_id => 'SECRET_ID');
    

    מחליפים את מה שכתוב בשדות הבאים:

    • MODEL_ID: מזהה ייחודי לנקודת הקצה של המודל שאתם מגדירים – לדוגמה, custom-classification-model. מזהה המודל הזה משמש כהפניה למטא-נתונים שנקודת הקצה של המודל צריכה כדי ליצור הטמעות או להפעיל תחזיות.
    • REQUEST_URL: נקודת הקצה הספציפית למודל כשמוסיפים הטמעת טקסט בהתאמה אישית ונקודות קצה של מודלים גנריים, לדוגמה https://api-inference.huggingface.co/models/facebook/bart-large-mnli.
    • MODEL_QUALIFIED_NAME: השם המוגדר במלואו של גרסת נקודת הקצה של המודל, לדוגמה facebook/bart-large-mnli.
    • SECRET_ID: מזהה הסוד שבו השתמשתם קודם בהליך google_ml.create_sm_secret().

מודל כללי של Anthropic

בדוגמה הבאה מוסיפים את נקודת הקצה של מודל claude-3-opus-20240229. ניהול נקודות קצה של מודלים מספק את פונקציית הכותרת שנדרשת לרישום מודלים של Anthropic.

מוודאים שהגדרתם את AlloyDB Omni לשליחת שאילתות למודלים של Vertex AI מבוססי-ענן.

  1. מתחברים למסד הנתונים באמצעות psql.
  2. יוצרים את התוסף google_ml_integration ומפעילים אותו.

    Secret Manager

    1. מוסיפים את טוקן ה-Bearer כמפתח סודי ל-Secret Manager לצורך אימות.
    2. קוראים לסוד שמאוחסן ב-Secret Manager:

      CALL
        google_ml.create_sm_secret(
          secret_id => 'SECRET_ID',
          secret_path => 'projects/project-id/secrets/SECRET_MANAGER_SECRET_ID/versions/VERSION_NUMBER');
      

      מחליפים את מה שכתוב בשדות הבאים:

      • SECRET_ID: מזהה הסוד שהגדרתם ומשמש בהמשך כשרושמים נקודת קצה של מודל.
      • SECRET_MANAGER_SECRET_ID: מזהה הסוד שהוגדר ב-Secret Manager כשיוצרים את הסוד.
      • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
      • VERSION_NUMBER: מספר הגרסה של מזהה הסוד.
    3. קוראים לפונקציה ליצירת מודל כדי לרשום את נקודת הקצה של מודל claude-3-opus-20240229.

      CALL
        google_ml.create_model(
          model_id => 'MODEL_ID',
          model_provider => 'anthropic',
          model_request_url => 'REQUEST_URL',
          model_auth_type => 'secret_manager',
          model_auth_id => 'SECRET_ID',
          generate_headers_fn => 'google_ml.anthropic_claude_header_gen_fn');
      

      מחליפים את מה שכתוב בשדות הבאים:

      • MODEL_ID: מזהה ייחודי לנקודת הקצה של המודל שאתם מגדירים – לדוגמה, anthropic-opus. מזהה המודל הזה משמש כהפניה למטא-נתונים שנקודת הקצה של המודל צריכה כדי ליצור הטמעות או להפעיל תחזיות.
      • REQUEST_URL: נקודת הקצה הספציפית למודל כשמוסיפים הטמעת טקסט בהתאמה אישית ונקודות קצה של מודלים גנריים, לדוגמה https://api.anthropic.com/v1/messages.

    כותרת אימות

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

        CREATE OR REPLACE FUNCTION anthropic_sample_header_gen_fn(model_id VARCHAR(100), request_body JSON)
        RETURNS JSON
        LANGUAGE plpgsql
        AS $$
        #variable_conflict use_variable
        BEGIN
              RETURN json_build_object('x-api-key', 'ANTHROPIC_API_KEY', 'anthropic-version', 'ANTHROPIC_VERSION')::JSON;
        END;
        $$;
      

      מחליפים את מה שכתוב בשדות הבאים:

      • ANTHROPIC_API_KEY: מפתח ה-API של Anthropic.
      • ANTHROPIC_VERSION(אופציונלי): גרסה ספציפית של המודל שרוצים להשתמש בה – לדוגמה, 2023-06-01.
    2. קוראים לפונקציה ליצירת מודל כדי לרשום את נקודת הקצה של מודל claude-3-opus-20240229.

      CALL
        google_ml.create_model(
          model_id => 'MODEL_ID',
          model_provider => 'anthropic',
          model_request_url => 'REQUEST_URL',
          generate_headers_fn => 'google_ml.anthropic_claude_header_gen_fn');
      

      מחליפים את מה שכתוב בשדות הבאים:

      • MODEL_ID: מזהה ייחודי לנקודת הקצה של המודל שאתם מגדירים – לדוגמה, anthropic-opus. מזהה המודל הזה משמש כהפניה למטא-נתונים שנקודת הקצה של המודל צריכה כדי ליצור הטמעות או להפעיל תחזיות.
      • REQUEST_URL: נקודת הקצה הספציפית למודל כשמוסיפים הטמעת טקסט בהתאמה אישית ונקודות קצה של מודלים גנריים, לדוגמה https://api.anthropic.com/v1/messages.

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

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