HTML de salida y Markdown

Vertex AI Pipelines proporciona un conjunto de tipos de visualización predefinidos para evaluar el resultado de una tarea de flujo de procesamiento (por ejemplo, Metrics y ClassificationMetrics). Sin embargo, en muchos casos se necesita una visualización personalizada. Vertex AI Pipelines ofrece dos enfoques principales para generar artefactos de visualización personalizados: archivos Markdown y HTML.

Importar las dependencias necesarias

En tu entorno de desarrollo, importa las dependencias necesarias.

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 contenido HTML en la ruta del artefacto. En este ejemplo, se usa una variable de cadena para representar 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 Google Cloud consola:

Artefacto HTML en la consola

Información sobre el artefacto HTML en la Google Cloud consola:

Información de artefactos HTML en la consola

Haga clic en "Ver HTML" para abrir el archivo HTML en una pestaña nueva

Información de artefactos HTML en la consola

Markdown de salida

Para exportar un archivo Markdown, define un componente con el artefacto Output[Markdown]. También debes escribir contenido de Markdown en la ruta del artefacto. En este ejemplo, se usa una variable de cadena para representar 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 Google Cloud :

Artefacto de Markdown en la consola

Información de artefactos de Markdown en la Google Cloud consola:

Información de artefactos de Markdown en la consola

Crear un flujo de procesamiento

Una vez que hayas definido el componente con el artefacto HTML o Markdown, crea y ejecuta una canalización que utilice 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 Google Cloud . Este gráfico incluye los artefactos HTML y Markdown que has declarado en los componentes correspondientes. Puedes seleccionar estos artefactos para ver una visualización detallada.