Vertex AI Pipelines proporciona un conjunto de tipos de visualizaciones predefinidos para evaluar el resultado de un trabajo de canalización (por ejemplo, Metrics
o ClassificationMetrics
). Sin embargo, existen muchos casos en los que se necesita una visualización personalizada. Vertex AI Pipelines proporciona dos enfoques principales para generar artefactos de visualización personalizados: Markdown y archivos HTML.
Importa las dependencias requeridas
En tu entorno de desarrollo, importa las dependencias requeridas.
from kfp import dsl
from kfp.dsl import (
Output,
HTML,
Markdown
)
HTML de salida
Para exportar un archivo HTML, define un componente con el artefacto Output[HTML]
.
También debes escribir el contenido HTML en la ruta del artefacto. En este ejemplo, se usa una variable de string para representar el contenido HTML.
@dsl.component
def html_visualization(html_artifact: Output[HTML]):
public_url = 'https://user-images.githubusercontent.com/37026441/140434086-d9e1099b-82c7-4df8-ae25-83fda2929088.png'
html_content = \
'<html><head></head><body><h1>Global Feature Importance</h1>\n<img src="{}" width="97%"/></body></html>'.format(public_url)
with open(html_artifact.path, 'w') as f:
f.write(html_content)
Artefacto HTML en la consola de Google Cloud:
Información del artefacto HTML en la consola de Google Cloud:
Haz clic en “Ver HTML” para abrir un archivo HTML en una pestaña nueva.
Markdown de salida
Para exportar un archivo de Markdown, define un componente con el artefacto Output[Markdown]
. También debes escribir el contenido de Markdown en la ruta del artefacto. En este ejemplo, se usa una variable de string para representar el contenido de Markdown.
@dsl.component
def markdown_visualization(markdown_artifact: Output[Markdown]):
import urllib.request
with urllib.request.urlopen('https://gist.githubusercontent.com/zijianjoy/a288d582e477f8021a1fcffcfd9a1803/raw/68519f72abb59152d92cf891b4719cd95c40e4b6/table_visualization.md') as table:
markdown_content = table.read().decode('utf-8')
with open(markdown_artifact.path, 'w') as f:
f.write(markdown_content)
Artefacto de Markdown en la consola de Google Cloud:
Información del artefacto de Markdown en la consola de Google Cloud:
Crea tu canalización
Una vez que hayas definido tu componente con el artefacto de HTML o Markdown, crea y ejecuta una canalización que use el componente.
@dsl.pipeline(
name=f'metrics-visualization-pipeline')
def metrics_visualization_pipeline():
html_visualization_op = html_visualization()
markdown_visualization_op = markdown_visualization()
Después de enviar la ejecución de la canalización, puedes ver el gráfico de esta ejecución en la consola de Google Cloud. Este gráfico incluye los artefactos HTML y de Markdown que declaraste en los componentes correspondientes. Puedes seleccionar estos artefactos para ver la visualización detallada.