HTML de saída e Markdown

O Vertex AI Pipelines fornece um conjunto de tipos de visualização predefinidos para avaliar o resultado de um job de pipeline (por exemplo, Metrics, ClassificationMetrics). No entanto, há muitos casos em que a visualização personalizada é necessária. O Vertex AI Pipelines fornece duas abordagens principais para produzir artefatos de visualização personalizada: arquivos Markdown e HTML.

Importar as dependências necessárias

No seu ambiente de desenvolvimento, importe as dependências necessárias.

from kfp import dsl
from kfp.dsl import (
    Output,
    HTML,
    Markdown
)

HTML de saída

Para exportar um arquivo HTML, defina um componente com o artefato Output[HTML]. Você também precisa gravar conteúdo HTML no caminho do artefato. Neste exemplo, você usa uma variável de string para representar o conteúdo 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)

Artefato HTML no console do Google Cloud:

Artefato HTML no console

Informações sobre o artefato HTML no console do Google Cloud:

Informações sobre artefatos HTML no console

Clique em "Visualizar HTML" para abrir o arquivo HTML em uma nova guia

Informações sobre artefatos HTML no console

Marcação de saída

Para exportar um arquivo Markdown, defina um componente com o artefato Output[Markdown]. Você também precisa gravar conteúdo Markdown no caminho do artefato. Neste exemplo, você usa uma variável de string para representar o conteúdo do 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)

Artefato Markdown no console do Google Cloud:

Artefato de marcação no console

Informações sobre o artefato Markdown no console do Google Cloud:

Informações sobre os artefatos de marcação no console

Criar o pipeline

Depois de definir seu componente com o artefato HTML ou Markdown, crie e execute um pipeline que use o componente.

@dsl.pipeline(
    name=f'metrics-visualization-pipeline')
def metrics_visualization_pipeline():
    html_visualization_op = html_visualization()
    markdown_visualization_op = markdown_visualization()

Depois de enviar a execução do pipeline, é possível visualizar o gráfico dessa execução no Console do Google Cloud. Esse gráfico inclui os artefatos HTML e Markdown declarados nos componentes correspondentes. Selecione esses artefatos para ter uma visualização detalhada.