Vertex AI SDK כולל את המחלקה Model כדי לעבוד עם מודל שמאמנים ואז משתמשים בו לחיזויים. ה-SDK כולל גם את המחלקה ModelEvaluation להערכת מדדים במודלים מאומנים של AutoML. מידע נוסף על מודלים זמין במאמר אימון מודלים משלכם ושימוש בהם.
Model
המחלקות Model מייצגות מודל מאומן שרשום ב-מרשם המודלים של Vertex AI. אתם משתמשים במודל שעבר אימון כדי ליצור תחזיות.
משתמשים ב-aiplatform.Model() method כדי למצוא מודל ולהחזיר הפניה אליו. אפשר לציין מודל באמצעות השם או המזהה שלו.
יותר ממודל אחד בפרויקט יכולים לחלוק את אותו שם, ולכן מומלץ לציין מודל עם מזהה המודל שלו. דוגמת הקוד הבאה מראה איך להשתמש במזהה מודל כדי למצוא הפניה למודל קיים ולהחזיר אותה:
MODEL_ID="my-sample-model-ID"
model = aiplatform.Model(model_name=MODEL_ID)
אחרי שיש לכם הפניה למודל מאומן, אתם יכולים להשתמש במאפיינים ובשיטות של Model כדי לעבוד איתו ולקבל חיזויים.
יצירת מודל רשום
כדי ליצור משאב מודל שרשום במרשם המודלים של Vertex AI, מפעילים את השיטה run במחלקה של משימת אימון.
השיטות הבאות יוצרות מודל, מאמנות את המודל, רושמות את המודל ב-מרשם המודלים של Vertex AI ואז מחזירות הפניה למודל.
AutoMLForecastingTrainingJob.runAutoMLImageTrainingJob.runAutoMLTabularTrainingJob.runAutoMLTextTrainingJob.runAutoMLVideoTrainingJob.runCustomContainerTrainingJob.runCustomPythonPackageTrainingJob.runCustomTrainingJob.run
בדוגמת הקוד הבאה מוצג איך ליצור משאב CustomTrainingJob ואז להשתמש בשיטת run שלו כדי ליצור מודל, לאמן את המודל, לרשום את המודל ב-מרשם המודלים של Vertex AI ולהחזיר הפניה למודל:
# Create a custom training job using a script
job = aiplatform.CustomTrainingJob(
display_name="my-training-job",
script_path="task.py",
container_uri="us-docker.pkg.dev/vertex-ai/training/tf-cpu.2-8:latest",
requirements=["google-cloud-bigquery>=2.20.0", "db-dtypes", "protobuf<3.20.0"],
model_serving_container_image_uri="us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-8:latest",
)
# Create and train your model using a BigQuery dataset. The method
# returns a reference to the trained model.
model = job.run(
dataset=dataset,
model_display_name="my-model-name",
bigquery_destination=f"bq://{project_id}",
args=CMDARGS,
)
יצירת מודל לא רשום
כדי ליצור מודל שלא רשום ב-Vertex AI Model Registry, צריך להשתמש במחלקה CustomJob ובשיטה run שלה. השיטה
CustomJob.run
מאמנת מודל, אבל היא לא רושמת את המודל במרשם המודלים של Vertex AI ולא מחזירה הפניה למודל.
אם משתמשים במחלקה CustomJob, צריך להשתמש בסקריפט כדי לכתוב את המודל במיקום כמו קטגוריה של Cloud Storage. מידע נוסף זמין במאמר בנושא ייצוא של מודל ML שאומן.
רישום מודל
אם יש לכם מודל שלא רשום במרשם המודלים של Vertex AI, אתם צריכים לרשום אותו כדי שתוכלו לנהל את מחזור החיים של המודל. מרשם המודלים של Vertex AI הוא מאגר מרכזי שכולל סקירה כללית של המודלים שלכם, כדי שתוכלו לנהל אותם. מידע נוסף זמין במאמר מבוא למרשם המודלים של Vertex AI.
Vertex AI SDK כולל את השיטות הבאות לייבוא מודל למרשם המודלים של Vertex AI. כדי לקבל מידע נוסף על אחת מהשיטות, לוחצים עליה במדריך העזר ל-Vertex AI SDK.
Model.uploadModel.upload_scikit_learn_model_fileModel.upload_tensorflow_saved_modelModel.upload_xgboost_model_file
פריסת מודל
אחרי שרושמים מודל, צריך לפרוס אותו לנקודת קצה כדי להשתמש בו לחיזויים. משתמשים ב-method Model.deploy כדי לפרוס את המודל ב-Endpoint. למידע נוסף, קראו את המאמר פריסת מודל לנקודת קצה.
ModelEvaluation
כדי לקבל מדדי הערכה של מודלים של AutoML, כמו דיוק וזיכרון, שיעזרו לכם לקבוע את הביצועים של המודלים, תוכלו להשתמש במחלקה ModelEvaluation. מידע נוסף זמין במאמר הערכת מודלים ב-Vertex AI.
בדוגמת הקוד הבאה אפשר לראות איך מציגים רשימה של כל ההערכות של מודל עם מזהה מודל model-id שנמצא בפרויקט עם מזהה פרויקט my-project ובאזור us-central1:
model = aiplatform.Model('projects/my-project/locations/us-central1/models/{model-id}')
evaluations = model.list_model_evaluations()
בדוגמת הקוד הבאה אפשר לראות איך מקבלים את הערכת המודל של מודל עם מזהה מודל model-id שנמצא בפרויקט עם מזהה פרויקט my-project ובאזור us-central1:
model = aiplatform.Model('projects/my-project/locations/us-central1/models/{model-id}')
# Return the first evaluation with no arguments. You can also specify a model
# using its model ID.
evaluation = model.get_model_evaluation()
eval_metrics = evaluation.metrics
כדי ליצור הפניה להערכת מודל, משתמשים בשם המשאב או במזהה המודל ובמזהה ההערכה. בדוגמת הקוד הבאה אפשר לראות איך יוצרים הפניה להערכת מודל באמצעות שם המשאב שלו:
evaluation = aiplatform.ModelEvaluation(
evaluation_name='projects/my-project/locations/us-central1/
models/{model-id}/evaluations/{evaluation-id}')
eval_metrics = evaluation.metrics
בדוגמת הקוד הבאה אפשר לראות איך יוצרים הפניה להערכת מודל באמצעות מזהה המודל ומזהה ההערכה:
evaluation.metrics = aiplatform.ModelEvaluation(
evaluation_name={evaluation-id},
model_id={model-id})
eval_metrics = evaluation.metrics