אתם יכולים להשתמש ב-Vertex ML Metadata כדי לעקוב אחרי המטא-נתונים שנוצרו על ידי מערכות למידת המכונה (ML) ולנתח אותם. מעקב אחרי המטא-נתונים האלה מאפשר לנתח את ההתנהגות של מערכת ה-ML בקלות רבה יותר. הנתונים האלה יכולים לעזור לכם להבין שינויים בביצועים של המערכת, או להשוות בין הארטיפקטים שהמערכת ללמידת מכונה (ML) יצרה.
אם אתם חדשים ב-Vertex ML Metadata, כדאי לקרוא את המבוא ל-Vertex ML Metadata כדי לקבל מידע נוסף על מעקב וניתוח של מטא-נתונים בתהליך העבודה של ML.
כדי לנתח את נתוני Vertex ML Metadata, אפשר להריץ שאילתות בדרכים הבאות:
- שאילתה לכל הארטיפקטים, ההפעלות או ההקשרים שתואמים לקריטריוני הסינון.
- שאילתה לגבי פריטי קלט ופלט של ביצוע, יחד עם האירועים שמשמשים לקישור הפריטים לביצוע.
- שאילתה לתרשים משנה של שושלת הקשר. השאילתה הזו מחזירה את הארטיפקטים וההרצות של הקונטקסט, יחד עם האירועים שמקשרים בין הארטיפקטים להרצות.
שאילתות לגבי ארטיפקטים, הפעלות והקשרים
אתם יכולים להשתמש ב-Vertex AI SDK ל-Python או ב-API בארכיטקטורת REST כדי לשלוח שאילתות לגבי רשומות של ארטיפקטים, ביצועים והקשרים באמצעות מסננים, כדי ליצור שאילתות כמו הבאות:
- אילו גרסאות של מודל שאומן עברו סף איכות מסוים?
- באיזה מערך נתונים נעשה שימוש בצינור נתונים מסוים?
בקטעים הבאים מוסבר איך יוצרים מסננים ואיך שולחים שאילתות לגבי ארטיפקטים, הרצות והקשרים.
סקירה כללית של תחביר המסננים
בקטעים הבאים מוסבר איך להשתמש במסננים כדי לשלוח שאילתות לגבי ארטיפקטים, הפעלות והקשרים.
שדות
השדות הבאים נתמכים כשמסננים ארטיפקטים, הפעלות והקשרים.
| פריט מידע שנוצר בתהליך | הרצה | הקשר | |
|---|---|---|---|
name |
|||
display_name |
|||
schema_title |
|||
create_time |
|||
update_time |
|||
metadata |
|||
state |
|||
uri |
צריך להוסיף מרכאות למסנן. צריך להוסיף לוכסן לפני כל מרכאות שכלולות במסנן.
אופרטורים להשוואה
אפשר להשתמש באופרטורים הבאים להשוואה במסננים: =, !=, <, >, >=, <=.
לדוגמה, המסנן הבא מוצא את כל הארטיפקטים שבהם השם המוצג הוא my_artifact.
REST
display_name=\"my_artifact\"
Python
"display_name=\"my_artifact\""
בשדות מחרוזת, אפשר להשתמש בסינון עם תווים כלליים לחיפוש באמצעות התו *.
בשדות של חותמות זמן כמו create_time ו-update_time, צריך להשתמש בפורמט RFC 3339 כדי לציין את התאריך. לדוגמה:
REST
create_time=\"2021-05-11T12:30:00-08:00\"
Python
"create_time=\"2021-05-11T12:30:00-08:00\""
אופרטורים לוגיים
אפשר להשתמש באופרטורים לוגיים AND ו-OR כדי לשלב מסננים וליצור שאילתה מורכבת.
בדוגמה הבאה אפשר לראות איך שולחים שאילתה לגבי ארטיפקטים מהסוג ai_platform.model ושדה metadata עם ערך מספרי precision שגדול מ-0.9.
REST
schema_title=\"ai_platform.Model\"+AND+metadata.precision.number_value>0.9
Python
"create_time=\"schema_title=\"ai_platform.Model\" AND metadata.precision.number_value>0.9"
סינון לפי מטא-נתונים באמצעות אופרטור המעבר
השדה metadata הוא מופע של google.protobuf.Struct שהפורמט שלו מוגדר בסכימה שצוינה בשדה schema_title. google.protobuf.Struct הוא מבנה נתונים שממפה מפתחות למופעים של google.protobuf.Value. במבנה הנתונים google.protobuf.Value, הערכים מאוחסנים בשדות שונים בהתאם לסוג הנתונים שלהם. לדוגמה:
- מחרוזות מאוחסנות כ-
metadata.FIELD_NAME.string_value, - מספרים נשמרים כ-
metadata.FIELD_NAME.number_value, - ערכים בוליאניים מאוחסנים כ-
metadata.FIELD_NAME.bool_value.
כדי לסנן לפי metadata, צריך להשתמש באופרטור המעבר כדי לעבור לשדה שרוצים לסנן. אופרטור המעבר משתמש בפורמט הבא.
REST
metadata.FIELD_NAME.TYPE_NAME=\"FILTER_VALUE\"
Python
"metadata.FIELD_NAME.TYPE_NAME=\"FILTER_VALUE\""
לדוגמה, נניח שיש מבנה מטא-נתונים כמו זה:
{
"field_1": 5,
"field_2": "example",
"field_3": {
...
},
"field_4": [],
"field_5": true,
}
השאילתות הבאות ממחישות איך להשתמש באופרטור המעבר כדי לסנן את המטא-נתונים שבדוגמה.
מסננים רשומות שבהן הערך של
metadata.field_1קטן מ-5.
REST
metadata.field_1.number_value<5Python
"metadata.field_1.number_value<5"סינון רשומות שכוללות את
metadata.field_2עם ערך ששווה ל-example.
REST
metadata.field_2.string_value=\"example\"
Python
"metadata.field_2.string_value=\"example\""
מסננים את הרשומות שבהן
metadata.field_5עם ערך ששווה ל-true.
REST
metadata.field_5.bool_value=true
Python
"metadata.field_5.bool_value=true"
סינון הקשרים לפי יחסי ההיררכיה שלהם
אפשר להשתמש באופרטור has כדי למצוא הקשרים שהם ההורה או הצאצא של הקשר שצוין.
האופרטור has הוא בפורמט הבא:
"parent_contexts:\"CONTEXT_RESOURCE_NAME\"""child_contexts:\"CONTEXT_RESOURCE_NAME\""
שם ההקשר צריך להיות השם המלא של משאב ההקשר, כמו בדוגמה הבאה:
project/PROJECT/locations/LOCATION/metadataStores/METADATA-STORE/contexts/CONTEXT.
בדוגמאות הבאות אפשר לראות איך משתמשים באופרטור has:
סינון של כל ההקשרים שהם צאצאים של צינור הנתונים שצוין.
REST
parent_contexts:\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\"
Python
"parent_contexts:\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\""
סינון של כל ההקשרים שהם הורה של צינור הנתונים שצוין.
REST
child_contexts:\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\"
Python
"child_contexts:\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\""
סינון הקשרים, ההרצות והארטיפקטים לפי שיוך ושיוך למקור
אפשר להשתמש בפונקציה in_context() כדי לסנן ארטיפקטים או הפעלות שמשויכים להקשר. אפשר להשתמש בפונקציה with_execution() כדי לסנן חפצים או הקשרים ספציפיים שמשויכים להרצה. באופן דומה, אפשר להשתמש בפונקציה with_artifact() כדי לסנן לפי ביצועים או הקשרים ספציפיים שמשויכים לארטיפקט.
פונקציות הסינון משמשות בפורמט הבא.
"in_context(\"CONTEXT_RESOURCE_NAME\")""with_execution(\"EXECUTION_RESOURCE_NAME\")""with_artifact(\"ARTIFACT_RESOURCE_NAME\")"
ההקשר, הביצוע ושמות הארטיפקטים צריכים להיות השם המלא של המשאב, כמו בדוגמה הבאה.
project/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA-STORE/contexts/CONTEXTproject/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA-STORE/executions/EXECUTIONproject/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA-STORE/artifacts/ARTIFACT
בדוגמה הבאה מוצג סינון של אובייקטים שנמצאים בצינור העיבוד שצוין.
REST
in_context(\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\")
Python
"in_context(\"project/12345/locations/us-central1/metadataStores/default/contexts/pipeline_1\")"
אפשר להשתמש בתו כללי * בפונקציות של המסנן כדי לסנן פרמטרים של כל משאב. לדוגמה, אפשר להשתמש בפילטר הבא כדי לסנן את כל ההרצות שפועלות על ארטיפקט מסוג system.model.
REST
with_artifact(\"*\",\"schema_title='name.model'\")
Python
"with_artifact(\"*\",\"schema_title='name.model'\")"
אלה פרמטרים נתמכים נוספים שאפשר לסנן לפיהם
-
input=true/false: סינון של סוגי פריטי קלט או פלט. -
event_time: סינון של זמני אירועים של הפעלות או של פריטי Artifact. - כל שאר שדות הסינון הנתמכים
אפשר לשלב בין השדות באמצעות אופרנדים לוגיים כדי ליצור שאילתות סינון מורכבות. הערה: העומק המקסימלי של פונקציות מקוננות שנתמך הוא 5.
שאילתת מידע על פריטים שנוצרו מפגישות
ארטיפקטים, כמו מערכי נתונים ומודלים, מייצגים נתונים שמשמשים בתהליך העבודה של ה-ML או נוצרים על ידו. כדי לשלוח שאילתות לגבי פריטי מידע, פועלים לפי ההוראות הבאות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: מזהה הפרויקט.
- METADATA_STORE: המזהה של מאגר המטא-נתונים שבו נוצר הארטיפקט.
מאגר המטא-נתונים שמוגדר כברירת מחדל נקרא
default. - PAGE_SIZE: (אופציונלי) המספר המקסימלי של ארטיפקטים שצריך להחזיר. אם לא מציינים ערך, השירות מחזיר עד 100 רשומות.
- PAGE_TOKEN: (אופציונלי) אסימון דף מקריאה קודמת של MetadataService.ListArtifacts. מציינים את האסימון הזה כדי לקבל את דף התוצאות הבא.
FILTER: מציין את התנאים שנדרשים כדי לכלול ארטיפקט במערכת התוצאות.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/artifacts?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
הפלט שיוצג אמור להיות דומה לזה שמופיע בהמשך. ARTIFACT_ID הוא המזהה של רשומת הארטיפקט.
{
"artifacts": [
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/default/artifacts/ARTIFACT_ID",
"displayName": "Example artifact",
"uri": "gs://your_bucket_name/artifacts/dataset.csv",
"etag": "67891011",
"createTime": "2021-05-18T00:33:13.833Z",
"updateTime": "2021-05-18T00:33:13.833Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the example artifact."
},
{
"name": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"displayName": "Another example artifact",
"uri": "gs://your_bucket_name/artifacts/dataset-2.csv",
"etag": "67891012",
"createTime": "2021-05-18T00:29:24.344Z",
"updateTime": "2021-05-18T00:29:24.344Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the other example artifact."
}
]
}
Python
Python
project: . אפשר למצוא את המזהים האלה בדף welcome במסוף Google Cloud .-
location: ראו רשימה של מיקומים זמינים. -
display_name_filter: מסנן שיוחל על השם לתצוגה בזמן הצגת רשימת המשאבים בפורמט display_name="my_filter" . -
create_date_filter: מסנן שיוחל על השם create_date בזמן הצגת המשאבים בפורמט "create_time>\"2022-06-11T12:30:00-08:00\"",.
שאילתה לגבי ביצועים
הפעלה מייצגת שלב בתהליך העבודה של למידת מכונה, כמו עיבוד מוקדם של נתונים או אימון של מודל. כדי לשלוח שאילתות לגבי ביצועים, פועלים לפי ההוראות הבאות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: .
- METADATA_STORE: המזהה של מאגר המטא-נתונים שבו נוצרת ההפעלה.
מאגר המטא-נתונים שמוגדר כברירת מחדל נקרא
default. - PAGE_SIZE: (אופציונלי) המספר המקסימלי של ארטיפקטים שצריך להחזיר. אם לא מציינים ערך, השירות מחזיר עד 100 רשומות.
- PAGE_TOKEN: (אופציונלי) אסימון דף מקריאה קודמת של MetadataService.ListArtifacts. מציינים את האסימון הזה כדי לקבל את דף התוצאות הבא.
FILTER: מציין את התנאים שנדרשים כדי לכלול ביצוע במערך התוצאות.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/executions?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
הפלט שיוצג אמור להיות דומה לזה שמופיע בהמשך. EXECUTION_ID הוא המזהה של רשומת ההרצה.
{
"executions": [
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"displayName": "Example execution 1",
"etag": "67891011",
"createTime": "2021-05-18T00:06:56.177Z",
"updateTime": "2021-05-18T00:06:56.177Z",
"schemaTitle": "system.Run",
"schemaVersion": "0.0.1",
"metadata": {},
"description": "Description of the example execution."
},
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"displayName": "Example execution 2",
"etag": "67891011",
"createTime": "2021-05-18T00:04:49.659Z",
"updateTime": "2021-05-18T00:04:49.659Z",
"schemaTitle": "system.Run",
"schemaVersion": "0.0.1",
"metadata": {},
"description": "Description of the example execution."
}
]
}
Python
Python
project: . אפשר למצוא את המזהים האלה בדף welcome במסוף Google Cloud .-
location: ראו רשימה של מיקומים זמינים. -
display_name_filter: מסנן שיוחל על השם לתצוגה בזמן הצגת רשימת המשאבים בפורמט display_name="my_filter" . -
create_date_filter: מסנן שיוחל על השם create_date בזמן הצגת המשאבים בפורמט "create_time>\"2022-06-11T12:30:00-08:00\"",.
שאילתות לגבי הקשרים
הקשרים מאפשרים לקבץ קבוצות של הפעלות, ארטיפקטים והקשרים אחרים. כדי לשלוח שאילתות לגבי הקשרים, פועלים לפי ההוראות הבאות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: .
- METADATA_STORE: המזהה של מאגר המטא-נתונים שבו נוצר ההקשר.
מאגר המטא-נתונים שמוגדר כברירת מחדל נקרא
default. - PAGE_SIZE: (אופציונלי) המספר המקסימלי של ארטיפקטים שצריך להחזיר. אם לא מציינים ערך, השירות מחזיר עד 100 רשומות.
- PAGE_TOKEN: (אופציונלי) אסימון דף מקריאה קודמת של MetadataService.ListArtifacts. מציינים את האסימון הזה כדי לקבל את דף התוצאות הבא.
FILTER: מציין את התנאים שנדרשים כדי לכלול הקשר במערך התוצאות.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/contexts?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
הפלט שיוצג אמור להיות דומה לזה שמופיע בהמשך. CONTEXT_ID הוא המזהה של רשומת ההקשר.
{
"contexts": [
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/contexts/CONTEXT_ID",
"displayName": "Experiment 1",
"etag": "67891011",
"createTime": "2021-05-18T22:36:02.153Z",
"updateTime": "2021-05-18T22:36:02.153Z",
"parentContexts": [],
"schemaTitle": "system.Experiment",
"schemaVersion": "0.0.1",
"metadata": {}
},
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/contexts/CONTEXT_ID",
"displayName": "Pipeline run 1",
"etag": "67891011",
"createTime": "2021-05-18T22:35:02.600Z",
"updateTime": "2021-05-18T22:35:02.600Z",
"parentContexts": [],
"schemaTitle": "system.PipelineRun",
"schemaVersion": "0.0.1",
"metadata": {}
}
]
}
שאילתה לגבי פריטי מידע שנוצר בתהליך הפיתוח (Artifact) של הקלט והפלט של הרצה
כדי לשלוח שאילתה לגבי הארטיפקטים וההפעלות בהקשר שצוין, וגם לגבי האירועים שמקשרים בין הארטיפקטים להפעלות, צריך לפעול לפי ההוראות הבאות.
Agent Platform SDK ל-Python
פריטים שנוצרו מקלט
בדוגמה הזו של Python SDK מתבצעת שאילתה לגבי ארטיפקטים של קלט של ביצוע.
Python
ארטיפקטים של פלט
בדוגמה הזו של Python SDK נשלחת שאילתה לגבי פריטי פלט של ביצוע.
Python
REST
דוגמת ה-REST הזו כוללת שאילתה לגבי קלט ופלט של ארטיפקטים של ביצוע.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: .
- METADATA_STORE: המזהה של מאגר המטא-נתונים שבו נוצרת ההפעלה.
מאגר המטא-נתונים שמוגדר כברירת מחדל נקרא
default. - EXECUTION_ID: המזהה של רשומת הביצוע.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/executions/EXECUTION_ID:queryExecutionInputsAndOutputs
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
הפלט שיוצג אמור להיות דומה לזה שמופיע בהמשך. EXECUTION_ID הוא המזהה של רשומת ההרצה. אם לא מציינים מזהה ביצוע, Vertex ML Metadata יוצר מזהה ייחודי לביצוע הזה. ARTIFACT_ID הוא המזהה של רשומת הארטיפקט.
{
"artifacts": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"displayName": "Example artifact",
"uri": "gs://your_bucket_name/artifacts/dataset.csv",
"etag": "678901011",
"createTime": "2021-05-18T00:29:24.344Z",
"updateTime": "2021-05-18T00:29:24.344Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the example artifact."
},
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"displayName": "Example artifact 2",
"uri": "gs://your_bucket_name/artifacts/dataset.csv",
"etag": "678901011",
"createTime": "2021-05-18T00:33:13.833Z",
"updateTime": "2021-05-18T00:33:13.833Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the example artifact."
}
],
"executions": [
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"displayName": "Example execution 1",
"etag": "678901011",
"createTime": "2021-05-18T00:04:49.659Z",
"updateTime": "2021-05-18T00:04:49.659Z",
"schemaTitle": "system.Run",
"schemaVersion": "0.0.1",
"metadata": {},
"description": "Description of the example execution."
}
],
"events": [
{
"artifact": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"execution": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"eventTime": "2021-05-18T00:04:49.659Z",,
"type": "INPUT",
},
{
"artifact": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"execution": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"eventTime": "2021-05-18T00:04:49.659Z",,
"type": "OUTPUT",
}
]
}
שאילתה לגבי תת-גרף של שושלת של הקשר
כדי לשלוח שאילתה לגבי הארטיפקטים וההפעלות בהקשר שצוין, וגם לגבי האירועים שמקשרים בין הארטיפקטים להפעלות, צריך לפעול לפי ההוראות הבאות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: .
- METADATA_STORE: המזהה של מאגר המטא-נתונים שבו נוצרת ההפעלה.
מאגר המטא-נתונים שמוגדר כברירת מחדל נקרא
default. - CONTEXT_ID: (אופציונלי) המזהה של רשומת ההקשר.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/METADATA_STORE/contexts/CONTEXT_ID:queryContextLineageSubgraph
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
הפלט שיוצג אמור להיות דומה לזה שמופיע בהמשך. EXECUTION_ID הוא המזהה של רשומת ההרצה. אם לא מציינים מזהה ביצוע, Vertex ML Metadata יוצר מזהה ייחודי לביצוע הזה. ARTIFACT_ID הוא המזהה של רשומת הארטיפקט.
{
"artifacts": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"displayName": "Example artifact",
"uri": "gs://your_bucket_name/artifacts/dataset.csv",
"etag": "678901011",
"createTime": "2021-05-18T00:29:24.344Z",
"updateTime": "2021-05-18T00:29:24.344Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the example artifact."
},
{
"name": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"displayName": "Example artifact 2",
"uri": "gs://your_bucket_name/artifacts/dataset.csv",
"etag": "678901011",
"createTime": "2021-05-18T00:33:13.833Z",
"updateTime": "2021-05-18T00:33:13.833Z",
"state": "LIVE",
"schemaTitle": "system.Dataset",
"schemaVersion": "0.0.1",
"metadata": {
"payload_format": "CSV"
},
"description": "Description of the example artifact."
}
],
"executions": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"displayName": "Example execution 1",
"etag": "678901011",
"createTime": "2021-05-18T00:04:49.659Z",
"updateTime": "2021-05-18T00:04:49.659Z",
"schemaTitle": "system.Run",
"schemaVersion": "0.0.1",
"metadata": {},
"description": "Description of the example execution."
}
],
"events": [
{
"artifact": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"execution": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"eventTime": "2021-05-18T00:04:49.659Z",,
"type": "INPUT",
},
{
"artifact": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/artifacts/ARTIFACT_ID",
"execution": "projects/PROJECT_ID/locations/LOCATION/metadataStores/METADATA_STORE/executions/EXECUTION_ID",
"eventTime": "2021-05-18T00:04:49.659Z",,
"type": "OUTPUT",
}
]
}