Todos os produtos
Search
Central de documentação

Platform For AI:Notebook

Última atualização: Jun 27, 2026

O componente Notebook no Machine Learning Designer permite escrever, depurar e executar código diretamente em um pipeline, sem interromper seu contexto ou estado. Ele se integra a instâncias do Data Science Workshop (DSW) para desenvolvimento interativo e converte arquivos de Notebook em jobs do Deep Learning Containers (DLC) para execuções em produção.

Como funciona

O componente Notebook oferece dois modos:

Modo

Quando usar

Recurso cobrado

Development

Escreva e depure código interativamente em uma instância DSW vinculada ao pipeline

Duração da execução da instância DSW

Running

Execute o Notebook como parte de uma execução de pipeline ou job agendado

Duração da execução do job DLC

No modo Development, inicie uma instância DSW a partir do nó do Notebook. A instância carrega automaticamente os dados de saída e o estado dos componentes anteriores, permitindo inspecionar resultados upstream, desenvolver lógica e transmitir resultados downstream — tudo isso sem sair da tela do pipeline.

No modo Running, acionar o pipeline (manualmente ou por meio de um agendamento do DataWorks) inicia um job DLC que executa o arquivo de Notebook convertido pelo Jupyter nbconvert.

Importante

Se você utilizar um grupo de recursos com pagamento conforme o uso, as cobranças serão baseadas na duração da execução. Consulte Faturamento do DSW e Faturamento do DLC.

Descrição do componente

O componente Notebook possui quatro portas de entrada e quatro portas de saída:

Porta

Direção

Tipo de armazenamento

Nomes

Entrada

In

Tabela OSS ou MaxCompute

input1, input2, input3, input4

Saída (OSS)

Out

OSS

output1, output2

Saída (MaxCompute)

Out

Tabela MaxCompute

output3, output4

Use o pacote pai-notebook-utils para acessar as configurações das portas e parâmetros personalizados diretamente no Notebook.

Instale pai-notebook-utils

Execute o seguinte comando no seu Notebook ou no Init Command:

pip install --upgrade https://pai-sdk.oss-cn-shanghai.aliyuncs.com/pai_notebook_utils/dist/pai_notebook_utils-0.0.1-py2.py3-none-any.whl

Acessar portas e parâmetros

Todas as três funções estão disponíveis na classe NotebookUtils:

from pai_notebook.utils.notebook_utils import NotebookUtils

node_inputs = NotebookUtils.get_inputs()      # list of input port configs
node_outputs = NotebookUtils.get_outputs()    # list of output port configs
custom_params = NotebookUtils.get_custom_params()  # dict of custom parameters

Portas de entrada

A função get_inputs() retorna uma lista. Cada item contém:

Campo

Descrição

name

Nome da porta: input1, input2, input3 ou input4

type

Tipo da porta, como DataSet ou Model

location_type

Tipo de armazenamento: MaxComputeTable ou OSS

value

Configuração da porta como um MAP

Entrada de tabela MaxComputelocation_type é MaxComputeTable; value contém project, table e endpoint:

from pai_notebook.utils.notebook_utils import NotebookUtils

node_inputs = NotebookUtils.get_inputs()

for node_input in node_inputs:
    if node_input.location_type == "MaxComputeTable":
        input_name = node_input.name
        table_name = node_input.value["table"]
        project = node_input.value["project"]
        endpoint = node_input.value["endpoint"]
        print(f"input_name: {input_name}, project: {project}, table_name: {table_name}, endpoint: {endpoint}")

Entrada OSSlocation_type é OSS; o caminho do OSS é montado em um caminho local. O campo value contém key, bucket, endpoint e mountPath:

from pai_notebook.utils.notebook_utils import NotebookUtils

node_inputs = NotebookUtils.get_inputs()

for node_input in node_inputs:
    if node_input.location_type == "OSS":
        input_name = node_input.name
        key = node_input.value["key"]
        bucket = node_input.value["bucket"]
        endpoint = node_input.value["endpoint"]
        mount_path = node_input.value["mountPath"]
        print(f"input_name: {input_name}, bucket: {bucket}, key: {key}, endpoint: {endpoint}, mount path: {mount_path}")
Importante

Caso o caminho do OSS seja alterado após o início da instância DSW, o mountPath ficará indisponível. Reinicie a instância DSW para remontar o novo caminho.

Portas de saída

A função get_outputs() retorna uma lista. Cada item contém:

Campo

Descrição

name

Nome da porta: output1, output2, output3 ou output4

location_type

Tipo de armazenamento: MaxComputeTable ou OSS

value

Configuração da porta como um MAP (mesma estrutura de campos das portas de entrada)

  • Saídas OSS (output1, output2): os dados são gravados no caminho configurado do OSS. Se o Job Output Path não estiver definido, o sistema gera o caminho automaticamente a partir do caminho padrão global. O diretório OSS é montado em /ml/output/ no contêiner do job: output1 mapeia para /ml/output/output1/ e output2 mapeia para /ml/output/output2/. O resultado da execução do Notebook (HTML) é salvo em /ml/output/result/.

  • Saídas MaxCompute (output3, output4): o workspace deve estar associado a um mecanismo de computação MaxCompute.

from pai_notebook.utils.notebook_utils import NotebookUtils

node_outputs = NotebookUtils.get_outputs()

for node_output in node_outputs:
    output_name = node_output.name
    if node_output.location_type == "MaxComputeTable":
        table_name = node_output.value["table"]
        project = node_output.value["project"]
        endpoint = node_output.value["endpoint"]
        print(f"output_name: {output_name}, project: {project}, table_name: {table_name}, endpoint: {endpoint}")
    elif node_output.location_type == "OSS":
        key = node_output.value["key"]
        bucket = node_output.value["bucket"]
        endpoint = node_output.value["endpoint"]
        mount_path = node_output.value["mountPath"]
        print(f"output_name: {output_name}, bucket: {bucket}, key: {key}, endpoint: {endpoint}, mount path: {mount_path}")
    else:
        print(json.dumps(node_output.value, indent=4))

Parâmetros personalizados

Configure parâmetros personalizados como pares chave-valor no nó do Notebook. Referencie variáveis globais usando o formato ${globalParamName}. Por exemplo, defina uma chave de parâmetro como modelVersion e seu valor como ${globalModelVersion}. Durante a execução, get_custom_params() retorna o valor resolvido:

from pai_notebook.utils.notebook_utils import NotebookUtils

custom_params = NotebookUtils.get_custom_params()
print(custom_params)
# Example output: {'modelVersion': '2.1.0', 'batchSize': '32'}

Os parâmetros personalizados seguem o formato de pares chave-valor e podem ser compartilhados entre o pipeline e a instância DSW, facilitando a modificação de parâmetros.

Configuração do Notebook

Adicione o componente Notebook a um pipeline no Machine Learning Designer e configure os seguintes parâmetros no painel direito.

Importante

Antes de iniciar uma instância DSW, configure o Pipeline Data Path durante a criação do pipeline. O caminho do arquivo de Notebook é gerado a partir dessa configuração.

Categoria Parâmetro Obrigatório Descrição Padrão
Notebook Config DSW Instance Não Controle de status e inicialização da instância DSW vinculada a este nó Not Running
Notebook File Sim Caminho para o arquivo de Notebook, no formato <pipeline data path>/notebook/${pipeline ID}/${node ID}/main.ipynb. Encontre o ID do pipeline na aba Pipeline Attributes; o sistema gera o ID do nó. <pipeline data path>/notebook/${pipeline ID}/${node ID}/main.ipynb
Job Output Path Não Diretório OSS montado em /ml/output/ no contêiner do job. As portas de saída gravam em subdiretórios (output1/, output2/); os resultados da execução são salvos em result/ no formato HTML. Caminho de dados do pipeline
Custom Parameters Não Pares chave-valor compartilhados entre o pipeline e a instância DSW. Referencie variáveis globais usando ${globalParamName}. Nenhum
Init Command Não Comando shell executado antes do Notebook, como pip install pandas. Nenhum
Automatic shutdown time Não A instância DSW desliga automaticamente após esta duração para evitar cobranças excessivas. 1 hora
Run Config Select Resource Group Public Resource Group Não Configure o tipo de nó (CPU/GPU), configurações de VPC, grupo de segurança, vSwitch, gateway de acesso à internet e imagem do nó. Tipo ECS padrão: ecs.c6.large.
Dedicated resource group Não Configure vCPUs, memória, memória compartilhada, GPUs e número de instâncias. Nenhum
Node Image Não Imagem oficial, imagem personalizada ou endereço de imagem pública. Oficial

Próximos passos