Cada recurso de metadatos está asociado a un MetadataSchema específico.
Para simplificar el proceso de creación de recursos de metadatos, Vertex ML Metadata publica tipos predefinidos llamados esquemas del sistema para conceptos comunes de aprendizaje automático. Los esquemas del sistema se encuentran en el espacio de nombres system
. Puede acceder a los esquemas del sistema como recursos MetadataSchema en la API Vertex ML Metadata. Los esquemas siempre tienen versiones. El formato de los esquemas del sistema es un subconjunto de la especificación OpenAPI 3.0.
Cómo usar los esquemas del sistema
Vertex AI usa esquemas del sistema para crear recursos de metadatos con los que monitorizar tus flujos de trabajo de aprendizaje automático. Después, puede filtrar y agrupar recursos en consultas de metadatos
mediante el campo schema_title
. Para obtener más información sobre cómo usar las funciones de filtro, consulta Analizar metadatos de Vertex ML.
También puede usar esquemas del sistema a través de la API Vertex ML Metadata para crear recursos de metadatos directamente. Puedes identificar un esquema del sistema por su título y su versión. Los campos de los esquemas del sistema siempre se consideran opcionales. No tienes que limitarte a los campos predefinidos de los esquemas del sistema, sino que también puedes registrar metadatos arbitrarios adicionales en cualquier recurso de metadatos. Para obtener más información sobre cómo usar esquemas del sistema para crear recursos de metadatos, consulta Monitorizar metadatos de Vertex ML.
Ver tus esquemas
Para ver una lista de todos los esquemas registrados, utiliza el siguiente comando.
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: tu región.
- PROJECT_ID: tu ID de proyecto.
Método HTTP y URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/default/metadataSchemas?pageSize=100&filter=schema_title=%22system*%22+OR+schema_title=%22google*%22
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
{ "metadataSchemas": [ { "name": "projects/PROJECT_ID/locations/LOCATION_ID/metadataStores/default/metadataSchemas/system-resolver-execution-v0-0-1", "schemaVersion": "0.0.1", "schema": "title: system.ResolverExecution\ntype: object\n", "schemaType": "EXECUTION_TYPE", "createTime": "2022-07-27T17:41:35.634Z" }, { "name": "projects/PROJECT_ID/locations/LOCATION_ID//metadataStores/default/metadataSchemas/system-html-v0-0-1", "schemaVersion": "0.0.1", "schema": "title: system.HTML\ntype: object\n", "schemaType": "ARTIFACT_TYPE", "createTime": "2022-07-27T17:41:35.602Z" } }
Concordancia estricta de esquemas
Vertex ML Metadata admite dos marcas que permiten a los autores de esquemas aplicar una coincidencia estricta de esquemas.
additionalProperties
El valor de additionalProperties
puede ser true o false. De acuerdo con el esquema JSON, additionalProperties
tiene el valor predeterminado true. Esta marca se define en el nivel superior del esquema. Si se le asigna el valor false, no se permite ninguna propiedad opcional. Por ejemplo, en el siguiente esquema, solo se aceptan los campos payload_format
y container_format
en los metadatos basados en este esquema.
title: system.Dataset
version: 0.0.1
type: object
additionalProperties: false
properties:
container_format:
type: string
payload_format:
type: string
El esquema anterior acepta los siguientes metadatos:
fields {
key: 'container_format'
value: { string_value: 'Text' }
}
fields {
key: 'payload_format'
value: { string_value: 'CSV' }
}
Sin embargo, se rechazarán los siguientes metadatos:
fields {
key: 'container_format'
value: { string_value: 'Text' }
}
fields {
key: 'payload_format'
value: { string_value: 'CSV' }
}
fields {
key: 'optional_field'
value: { string_value: 'optional_value' }
}
obligatorio
La palabra clave required
acepta una matriz de cero o más cadenas. De acuerdo con el esquema JSON, las propiedades definidas por la palabra clave properties no son obligatorias. Puede proporcionar una lista de propiedades obligatorias mediante la required
palabra clave. Por ejemplo, el siguiente esquema siempre requiere container_format
.
También funciona en propiedades anidadas. Por ejemplo, lo siguiente hace que container_format
sea obligatorio.
title: system.Dataset
version: 0.0.1
type: object
required: ['container_format']
properties:
container_format:
type: string
payload_format:
type: string
El esquema anterior acepta los siguientes metadatos:
fields {
key: 'container_format'
value: { string_value: 'Text' }
}
Sin embargo, se rechazarán los siguientes metadatos:
fields {
key: 'payload_format'
value: { string_value: 'CSV' }
}
El esquema admite propiedades anidadas en las que las propiedades tienen un campo de tipo object. En un esquema anidado, el nodo de propiedades anidadas puede tener una palabra clave required
. Por ejemplo:
title: system.Dataset
version: 0.0.1
type: object
properties:
container_format:
type: string
payload:
type: string
nested_property:
type: object
required: ['property_1']
properties:
property_1:
type: integer
property_2:
type: integer
El esquema anterior acepta los siguientes metadatos, ya que el campo nested_property
no es obligatorio.
fields {
key: 'container_format'
value: { string_value: 'Text' }
}
Los siguientes metadatos también son válidos.
fields {
key: 'nested_property'
value: {
struct_value {
fields {
key: 'property_1'
value: { number_value: 1 }
}
fields {
key: 'property_2'
value: { number_value: 1 }
}
}
}
}
Sin embargo, se rechazarán los siguientes metadatos:
fields {
key: 'nested_property'
value: {
struct_value {
fields {
key: 'property_2'
value: { number_value: 1 }
}
}
}
}
Ejemplos de esquemas del sistema
Los siguientes ejemplos son esquemas de sistema habituales que se pueden usar inmediatamente.
Artefacto
system.Artifact
es un esquema genérico que puede contener metadatos sobre cualquier artefacto.
No se han definido campos específicos en este esquema.
title: system.Artifact
version: 0.0.1
type: object
Conjunto de datos
system.Dataset
representa un contenedor de datos que ha consumido o generado un paso del flujo de trabajo de aprendizaje automático. Un conjunto de datos puede apuntar a una ubicación de archivo o a una consulta, como un URI de BigQuery.
title: system.Dataset
version: 0.0.1
type: object
properties:
container_format:
type: string
description: "Format of the container. Examples include 'TFRecord', 'Text', or 'Parquet'."
payload_format:
type: string
description: "Format of the payload. For example, 'proto:TFExample', 'CSV', or 'JSON'."
Modelo
system.Model
representa un modelo entrenado. El URI del modelo puede apuntar a una ubicación de archivo (PPP, segmento de Cloud Storage o unidad local) o a un recurso de API, como el recurso Model de la API de Vertex AI.
title: system.Model
version: 0.0.1
type: object
properties:
framework:
type: string
description: "The framework type. For example: 'TensorFlow' or 'Scikit-Learn'."
framework_version:
type: string
description: "The framework version. For example: '1.15' or '2.1'."
payload_format:
type: string
description: "The format of the Model payload, for example: 'SavedModel' or 'TFLite'."
Métricas
system.Metrics
representa las métricas de evaluación producidas durante un flujo de trabajo de aprendizaje automático.
Las métricas dependen de la aplicación y del caso práctico, y pueden ser métricas escalares sencillas, como la precisión, o métricas complejas que se almacenan en otras partes del sistema.
title: system.Metrics
version: 0.0.1
type: object
properties:
type:
accuracy:
type: number
description: "Optional summary metric describing accuracy of a model."
precision:
type: number
description: "Optional summary metric describing precision of a model."
recall:
type: number
description: "Optional summary metric describing the recall of a model."
f1score:
type: number
description: "Optional summary metric describing the f1-score of a model."
mean_absolute_error:
type: number
description: "Optional summary metric describing the mean absolute error of a model."
mean_squared_error:
type: number
description: "Optional summary metric describing the mean-squared error of a model."
¿Qué debo hacer ahora?
- Empieza a monitorizar metadatos con Vertex ML Metadata.
- Consulta los conceptos y el modelo de datos de Vertex ML Metadata.