Produza HTML e Markdown

O Vertex AI Pipelines oferece um conjunto de tipos de visualização predefinidos para avaliar o resultado de uma tarefa de pipeline (por exemplo, Metrics, ClassificationMetrics). No entanto, existem muitos casos em que é necessária uma visualização personalizada. Os pipelines do Vertex AI oferecem duas abordagens principais para gerar artefactos de visualização personalizados: ficheiros Markdown e HTML.

Importe dependências necessárias

No seu ambiente de programação, importe as dependências necessárias.

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

HTML de saída

Para exportar um ficheiro HTML, defina um componente com o artefacto Output[HTML]. Também tem de escrever conteúdo HTML no caminho do artefacto. Neste exemplo, usa uma variável de string para representar 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)

Artefacto HTML na Google Cloud consola:

Artefacto HTML na consola

Informações do artefacto HTML na Google Cloud consola:

Informações do artefacto HTML na consola

Clique em "Ver HTML" para abrir o ficheiro HTML num novo separador

Informações do artefacto HTML na consola

Produzir Markdown

Para exportar um ficheiro Markdown, defina um componente com o Output[Markdown] artifact. Também tem de escrever conteúdo Markdown no caminho do artefacto. Neste exemplo, usa uma variável de string para representar conteú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)

Artefacto de remarcação na Google Cloud consola:

Artefacto Markdown na consola

Informações de artefactos de remarcação na Google Cloud consola:

Informações de artefactos Markdown na consola

Crie o seu pipeline

Depois de definir o componente com o artefacto 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, pode ver o gráfico desta execução na Google Cloud consola. Este gráfico inclui os artefactos HTML e Markdown que declarou nos componentes correspondentes. Pode selecionar estes artefactos para ver uma visualização detalhada.