Configurar o ambiente sem servidor

Esta página explica como configurar o ambiente sem servidor para notebooks e tarefas de trabalho. Para notebooks, use o painel lateral ambiente para selecionar um ambiente base, instalar dependências, configurar memória e aplicar políticas de uso. Para tarefas de trabalho, configure o ambiente ao criar ou editar uma tarefa.

Para expandir o painel lateral Environment, clique no botão Environment localizado à direita do notebook.

Painel de ambiente sem servidor

Selecionar um ambiente base

Um ambiente base determina as bibliotecas pré-instaladas e a versão do ambiente disponíveis para seu notebook sem servidor. O seletor de ambiente base no painel lateral ambiente é onde você escolhe seu ambiente. Para ver detalhes sobre cada versão do ambiente, consulte versões de ambiente sem servidor. O Databricks recomenda usar a versão mais recente para obter os recursos de notebook mais atualizados.

O seletor de ambiente base inclui as seguintes opções:

  • Padrão: o ambiente base sem servidor padrão com bibliotecas fornecidas pelo Databricks.
  • ML (Beta): um ambiente base com o Python e pacotes do sistema do Databricks Runtime para Machine Learning pré-instalado. Use esse ambiente para migrar o Databricks Runtime clássico para cargas de trabalho Machine Learning para computação sem servidor. Consulte o ambiente base do ML.
  • IA: um ambiente base com otimização de IA com bibliotecas de ML (machine learning) pré-instaladas. Essa opção aparece somente quando um acelerador (GPU) é selecionado.
  • Mais: expande para mostrar opções adicionais:
    • Versões anteriores de ambientes Standard, ML e IA.
    • Personalizado: especifique um ambiente personalizado usando um arquivo YAML.
  • Ambientes de workspace: lista todos os ambientes base compatíveis configurados para seu workspace por um administrador.

Para selecionar um ambiente base:

  1. Na interface do notebook, clique no painel lateral Environmentenvironment.
  2. Em Ambiente base, selecione um ambiente no menu suspenso.
  3. Clique em Aplicar.

Adicionar dependências ao notebook

Como o serverless não oferece suporte a políticas de computação nem a scripts de inicialização, você deve instalar dependências personalizadas usando o painel lateral Ambiente. Você pode instalar dependências individualmente ou usar um ambiente base compartilhável para instalar várias dependências.

O Azure Databricks mantém em cache o ambiente virtual do seu notebook, fazendo com que as dependências não sejam reinstaladas sempre que você reabrir um notebook ou retomar o uso após um período de inatividade. Tarefas de trabalho que compartilham o mesmo conjunto de dependências também se beneficiam desse cache em uma execução.

Para instalar individualmente uma dependência:

  1. Na interface do usuário do notebook, clique no painel lateral Ambienteenvironment.

  2. Na seção Dependências , clique em Adicionar Dependência e insira o caminho da dependência no campo. Você pode especificar uma dependência em qualquer formato que seja válido em um arquivo requirements.txt. Arquivos wheel do Python ou projetos de Python (por exemplo, o diretório que contém um pyproject.toml ou um setup.py) podem estar localizados em arquivos de área de trabalho ou volumes do Unity Catalog.

    • Se estiver usando um arquivo de workspace, o caminho deverá ser absoluto e começar com /Workspace/.
    • Se estiver usando um arquivo em um volume do Catálogo do Unity, o caminho deverá estar no seguinte formato: /Volumes/<catalog>/<schema>/<volume>/<path>.whl.
  3. Clique em Apply para instalar as dependências e reiniciar o processo de Python.

Important

Não instale o PySpark ou qualquer biblioteca que instale o PySpark como uma dependência em seus notebooks sem servidor. Isso interromperá sua sessão e resultará em um erro. Se isso ocorrer, remova a biblioteca e redefina seu ambiente.

Para exibir dependências instaladas, clique na guia Instalado no painel lateral Ambientes . Abra os logs de instalação do pip para o ambiente de notebook clicando em logs do pip na parte inferior do painel.

Note

Os administradores do workspace podem configurar repositórios de pacotes privados ou autenticados como a fonte pip padrão para notebooks e trabalhos sem servidor. Isso permite que os usuários instalem pacotes de repositórios internos sem especificar index-url ou extra-index-url. Consulte Configurar repositórios de pacotes Python padrão.

Criar uma especificação de ambiente personalizado

Você pode criar e reutilizar especificações de ambiente personalizadas.

  1. Em um notebook sem servidor, selecione um ambiente base e instale as dependências desejadas.
  2. Clique no botão do menu kebab Ícone do menu kebab. na parte inferior do painel do ambiente e, em seguida, clique em Exportar ambiente.
  3. Salve a especificação como um arquivo de workspace ou em um volume do Catálogo do Unity.

Para usar sua especificação de ambiente personalizada em um notebook, selecione Personalizado no menu suspenso Ambiente base e, em seguida, use o ícone de pasta. para selecionar seu arquivo YAML.

Criar ferramentas comuns para compartilhar em seu workspace

Este exemplo armazena um utilitário em um arquivo de workspace e o instala como uma dependência de notebook sem servidor:

  1. Crie uma pasta com a estrutura a seguir. Verifique se outros usuários têm acesso de leitura nesse caminho:

    helper_utils/
    ├── helpers/
    │   └── __init__.py   # your common functions live here
    ├── pyproject.toml
    
  2. Preencha o pyproject.toml assim:

    [project]
    name = "common_utils"
    version = "0.1.0"
    
  3. Adicione uma função ao init.py arquivo. Por exemplo:

    def greet(name: str) -> str:
        return f"Hello, {name}!"
    
  4. Na interface do notebook, clique no painel lateral Ambienteícone Ambiente.

  5. Na seção Dependências , clique em Adicionar Dependência e, em seguida, insira o caminho do arquivo util. Por exemplo: /Workspace/helper_utils.

  6. Clique em Aplicar.

Agora você pode usar a função em seu notebook:

from helpers import greet
print(greet('world'))

A saída é:

Hello, world!

Usar o AI Runtime (GPU sem servidor)

Important

O AI Runtime está em Visualização Pública.

Siga estas etapas para configurar o AI Runtime, alimentado pela computação de GPU sem servidor, em seu bloco de anotações Azure Databricks:

  1. Em um notebook de programação, clique no menu suspenso de computação na parte superior e selecione GPU sem servidor.
  2. Clique no ícone Ambiente. Para abrir o painel lateral ambiente .
  3. Selecione A10 no campo Acelerador .
  4. No ambiente base, selecione Standard para o ambiente padrão ou IA para o ambiente otimizado para IA com bibliotecas de ML (machine learning) pré-instaladas.
  5. Clique em Aplicar e confirme se deseja aplicar o AI Runtime ao seu ambiente de notebook.

Para obter mais detalhes, consulte AI Runtime.

Usar computação sem servidor de memória alta

Important

Esse recurso está em uma versão prévia.

Se você encontrar erros de falta de memória no notebook, configure-o para usar uma configuração de memória maior. Essa configuração de tamanho de memória aumenta o tamanho da memória REPL usada ao executar o código no notebook. Isso não afeta o tamanho da memória da sessão do Spark. O uso sem servidor com memória alta tem uma taxa de emissão de DBU maior do que a memória padrão.

As opções de memória disponíveis são:

  • Padrão: memória total de 16 GB.
  • Alta: memória total de 32 GB.

Para definir a configuração de memória do notebook:

  1. Na interface do notebook, clique no painel lateral Ambienteambiente.
  2. Em Memória, selecione Memória alta.
  3. Clique em Aplicar.

Essa configuração de memória também se aplica às tarefas de trabalho do notebook que são executadas usando as preferências de memória do notebook. Atualizar a preferência de memória no notebook afeta a próxima execução do trabalho.

Selecionar uma política de uso sem servidor

Important

Esse recurso está em uma versão prévia.

As políticas de uso de serverless permitem que sua organização aplique tags personalizadas no uso de serverless para atribuição de cobrança granular.

Se o espaço de trabalho usar políticas de uso serverless, selecione a política que você deseja aplicar ao notebook. Se um usuário for atribuído a apenas uma política de uso sem servidor, essa política se aplicará por padrão.

Depois de se conectar à computação sem servidor, selecione uma política no painel lateral Environment:

  1. Na interface do notebook, clique no painel lateral Ambienteambiente.
  2. Na política de uso sem servidor , selecione a política de uso sem servidor que você deseja aplicar ao seu notebook.
  3. Clique em Aplicar.

Depois de aplicada, todo uso de notebook passa a usar as tags personalizadas da política.

Note

Se o notebook for proveniente de um repositório Git ou não tiver uma política de uso sem servidor atribuída, ele usará como padrão sua última política de uso sem servidor escolhida quando ele for anexado ao uso de computação sem servidor.

Incluir o ambiente nas exportações de arquivo de origem

Para notebooks Python, você pode ativar ou desativar Incluir nas exportações de arquivos-fonte na configuração do ambiente. Quando habilitado, o ambiente base e as dependências são armazenados no formato PEP 723 nas exportações de arquivo de origem. Isso ajuda a manter a configuração do ambiente quando os notebooks são armazenados em pastas Git ou baixados como arquivos de origem.

Por exemplo, um notebook que usa o Standard v5 exporta sua configuração de ambiente como metadados embutidos na parte superior do arquivo:

# Databricks notebook source
# /// script
# [tool.databricks.environment]
# environment_version = "5"
# ///
print("Hello World!")

Redefinir as dependências do ambiente

Se o notebook estiver conectado à computação sem servidor, o Databricks armazenará automaticamente em cache o conteúdo do ambiente virtual do notebook. Isso significa que você geralmente não precisa reinstalar as dependências de Python especificadas no painel lateral Environment ao abrir um notebook existente, mesmo que ele tenha sido desconectado devido à inatividade.

O armazenamento em cache de ambientes virtuais em Python também se aplica a tarefas. Quando um trabalho é executado, qualquer tarefa que compartilhe o mesmo conjunto de dependências que uma tarefa concluída na mesma execução é concluída mais rapidamente, pois o cache já contém as dependências necessárias.

Note

Se você alterar a implementação de um pacote de Python personalizado usado em um trabalho sem servidor, também deverá atualizar seu número de versão para que os trabalhos possam pegar a implementação mais recente.

Para limpar o cache do ambiente e executar uma nova instalação das dependências especificadas no painel lateral ambiente de um notebook anexado à computação sem servidor, clique na seta ao lado de Aplicar e clique em Redefinir para padrões.

Se você instalar pacotes que quebram ou alteram o notebook principal ou o ambiente do Apache Spark, remova os pacotes ofensivos e redefina o ambiente. Iniciar uma nova sessão não limpa todo o cache do ambiente.

Configurar o ambiente para tarefas de trabalho

Cada tarefa de trabalho é executada em um ambiente isolado que inclui um ambiente base e quaisquer bibliotecas adicionais que você especificar. O ambiente base define a versão do runtime do Python e do Scala e as bibliotecas pré-instaladas. As tarefas herdam o conjunto padrão de bibliotecas instaladas da versão do ambiente. Para ver o que está incluído, consulte a seção bibliotecas do Python instaladas ou bibliotecas instaladas do Java e do Scala da versão do ambiente que você está usando.

Você pode complementar as bibliotecas pré-instaladas com bibliotecas de arquivos do espaço de trabalho, volumes do Unity Catalog ou repositórios públicos de pacotes. Somente as dependências necessárias para a tarefa são instaladas em runtime.

Important

O uso da computação sem servidor para tarefas JAR está na Prévia Pública.

Important

A seleção de um ambiente de base gerenciada está na versão beta. A lista suspensa Ambiente base na caixa de diálogo Configurar ambiente permite selecionar entre ambientes fornecidos pelo Databricks (como Standard e ML) ou ambientes configurados no espaço de trabalho. Sem esse recurso, a caixa de diálogo mostra, em vez disso, um menu suspenso de versão do ambiente. Os administradores do workspace podem habilitar esse recurso na página Visualizações .

Caixa de diálogo Configurar ambiente mostrando a lista suspensa Ambiente base expandida, com as seções Ambientes do Databricks e Ambientes do espaço de trabalho

Configurar o ambiente por tipo de tarefa

A forma como você configura ambientes em um trabalho depende do tipo de tarefa:

Tarefas do notebook

As tarefas do notebook usam por padrão o Ambiente do notebook, que usa o ambiente base configurado no próprio notebook e suas dependências. Você pode substituir isso por um ambiente de nível de trabalho.

Menu suspenso Ambiente e Bibliotecas para uma tarefa de notebook mostrando as opções Ambiente do Notebook e Ambiente de Trabalhos

Para configurar um ambiente no nível do trabalho:

  1. Na configuração da tarefa, clique no menu suspenso Ambiente e Bibliotecas .
  2. No Ambiente de Trabalhos, clique no ícone de lápis ao lado de Padrão ou clique em + Adicionar novo ambiente de trabalhos.
  3. Na caixa de diálogo Configurar ambiente, selecione no menu suspenso Ambiente base:
    • ambientes Databricks: opções fornecidas por Azure Databricks, como Standard e ML.
    • Ambientes de workspace: ambientes personalizados configurados pelo administrador do workspace. Consulte Gerenciar ambientes base do espaço de trabalho.
    • Mais: versões anteriores e Personalizadas (especifique um arquivo YAML).
  4. Em Dependências, adicione bibliotecas adicionais. Você pode especificar uma biblioteca em qualquer formato válido em um arquivo requirements.txt ou usar um caminho absoluto para um arquivo de workspace ou volume do Catálogo do Unity.
  5. Clique em Confirmar.

Note

Se o espaço de trabalho não tiver o ambiente base do espaço de trabalho para a visualização de trabalhos habilitado, a caixa de diálogo Configurar ambiente exibe uma lista suspensa Versão do ambiente em vez de Ambiente base.

Para configurar o ambiente, selecione uma versão e clique em + Adicionar biblioteca. Você pode especificar um caminho de arquivo do workspace (começando com /Workspace/), um caminho de volume do Catálogo do Unity (começando com /Volumes/) ou uma referência de arquivo de requisitos (por exemplo, -r /Workspace/path/to/requirements.txt).

Python script e tarefas de roda de Python

As tarefas de script do Python e de wheel do Python exigem a configuração de um ambiente.

seção Ambiente e Bibliotecas para uma tarefa de wheel do Python mostrando o link “Adicionar dependência”

  1. Na configuração da tarefa, em Ambiente e Bibliotecas, clique em + Adicionar dependência.
  2. Na caixa de diálogo Configurar ambiente, selecione no menu suspenso Ambiente base:
    • ambientes Databricks: opções fornecidas por Azure Databricks, como Standard e ML.
    • Ambientes de workspace: ambientes personalizados configurados pelo administrador do workspace. Consulte Gerenciar ambientes base do espaço de trabalho.
    • Mais: versões anteriores e Personalizadas (especifique um arquivo YAML).
  3. Em Dependências, adicione bibliotecas adicionais.
  4. Clique em Confirmar.

Note

Se o seu espaço de trabalho não tiver o ambiente base do espaço de trabalho para a visualização de trabalhos habilitado, a caixa de diálogo Configurar ambiente mostra uma lista suspensa Versão do ambiente em vez de Ambiente base.

Para configurar o ambiente, selecione uma versão e clique em + Adicionar biblioteca. Você pode especificar um caminho de arquivo do workspace (começando com /Workspace/), um caminho de volume do Catálogo do Unity (começando com /Volumes/) ou uma referência de arquivo de requisitos (por exemplo, -r /Workspace/path/to/requirements.txt).

Tarefas do dbt

As tarefas DBT usam um ambiente no nível do trabalho para a configuração da biblioteca.

Menu suspenso Ambiente e Bibliotecas para uma tarefa dbt mostrando opções de Ambiente de Trabalhos

Para configurar um ambiente no nível do trabalho:

  1. Na configuração da tarefa, clique no menu suspenso Ambiente e Bibliotecas .
  2. No Ambiente de Trabalhos, clique no ícone de lápis ao lado de um ambiente existente ou clique em + Adicionar novo ambiente de trabalhos.
  3. Na caixa de diálogo Configurar ambiente, selecione no menu suspenso Ambiente base:
    • ambientes Databricks: opções fornecidas por Azure Databricks, como Standard e ML.
    • Ambientes de workspace: ambientes personalizados configurados pelo administrador do workspace. Consulte Gerenciar ambientes base do espaço de trabalho.
    • Mais: versões anteriores e Personalizadas (especifique um arquivo YAML).
  4. Em Dependências, adicione bibliotecas adicionais. Você pode especificar uma biblioteca em qualquer formato válido em um arquivo requirements.txt ou usar um caminho absoluto para um arquivo de workspace ou volume do Catálogo do Unity.
  5. Clique em Confirmar.

Note

Se o seu espaço de trabalho não tiver o ambiente base do espaço de trabalho para a visualização de trabalhos habilitado, a caixa de diálogo Configurar ambiente mostra uma lista suspensa Versão do ambiente em vez de Ambiente base.

Para configurar o ambiente, selecione uma versão e clique em + Adicionar biblioteca. Você pode especificar um caminho de arquivo do workspace (começando com /Workspace/), um caminho de volume do Catálogo do Unity (começando com /Volumes/) ou uma referência de arquivo de requisitos (por exemplo, -r /Workspace/path/to/requirements.txt).

Tarefas JAR

Ambientes de base do espaço de trabalho não são compatíveis com tarefas JAR. Para configurar o ambiente para uma tarefa JAR:

Seção Ambiente e Bibliotecas para uma tarefa JAR mostrando o link Adicionar dependência JAR

  1. Na configuração da tarefa, em Ambiente e Bibliotecas, clique em + Adicionar dependência JAR.
  2. Na caixa de diálogo Configurar ambiente :
    • Opcionalmente, insira um caminho para um arquivo YAML no campo ambiente base .
    • Selecione uma versão do ambiente no menu suspenso Versão do ambiente.
    • Em Dependências JAR, adicione os caminhos aos arquivos JAR.
  3. Clique em Confirmar.

Para criar um ambiente base baseado em YAML personalizado, consulte Criar uma especificação de ambiente personalizada.

Compatibilidade de ambiente e computação

O ambiente base selecionado deve ser compatível com o tipo de computação da tarefa. Por exemplo, um ambiente criado para computação de GPU não é compatível com a computação de CPU. Na interface de usuário de trabalhos, ambientes incompatíveis ficam indisponíveis no menu suspenso do ambiente base.

Quando você configura uma tarefa de notebook, o tipo de computação (CPU ou GPU) e o ambiente base podem vir das configurações de trabalho ou do notebook.

  • Se você definir uma GPU (acelerador de hardware) no nível do trabalho, também deverá selecionar um ambiente base no nível do trabalho. Você não pode usar o ambiente do notebook com um acelerador de nível de trabalho.
  • Se você tiver tarefas de trabalho que fazem referência a um notebook e atualizar o tipo de computação do notebook referenciado (por exemplo, da CPU à GPU), as tarefas existentes poderão se tornar incompatíveis com o ambiente configurado. Examine as configurações de ambiente do seu trabalho depois de alterar a configuração de computação do notebook.
  • Para usuários da API: se você definir o ambiente base no nível do job, mas o notebook definir o tipo de computação, o Azure Databricks valida a compatibilidade em tempo de execução, e não no momento da criação do job. Se a configuração for incompatível, a execução falhará com um erro.