Exemplos de personalizações de modelos de ambiente (antes de 25.1 )

Siga os exemplos que mostram como incluir bibliotecas customizadas por meio do conda ou do pip ao criar um modelo de ambiente, usando os modelos fornecidos para Python e R.

Importante:

Esses exemplos se aplicam apenas até o tempo de execução 24.1. Para exemplos que se aplicam ao Runtime 25.1 e versões mais recentes, consulte Exemplos de personalizações de modelos de ambiente (em 25.1 ).

Nota:
  • Você pode usar mamba no lugar de conda nos exemplos a seguir. Lembre-se de marcar a caixa de seleção para instalar a partir de mamba se você adicionar canais ou pacotes de mamba ao modelo de ambiente existente.
  • O processo de criação de tempos de execução de implantação personalizados do watsonx.ai Runtime pode ser diferente. Se você quiser criar tempos de execução de implantação personalizados do watsonx.ai Runtime, consulte Personalização de tempos de execução de implantação do watsonx.ai Runtime.

Existem exemplos para:

Dicas e sugestões:

Incluindo pacotes conda

Para obter versões mais recentes de pandas-profiling:

dependencies:
  - pandas-profiling

Esta entrada é equivalente a executar conda install pandas-profiling em um caderno.

Adição de pacotes pip

Também é possível customizar um ambiente usando pip se um pacote específico não estiver disponível nos canais do conda :

dependencies:
  - pip:
    - ibm_watsonx_ai

Esta entrada é equivalente a executar pip install ibm_watsonx_ai em um caderno.

A customização realmente fará mais do que apenas instalar o pacote pip especificado. O comportamento padrão de conda é também procurar uma nova versão do próprio pip e, em seguida, instalá-lo. Verificar todas as dependências implícitas em conda muitas vezes leva vários minutos e também gigabytes de memória. A customização a seguir encurtará o caminho para a instalação de pip:

channels:
  - empty
  - nodefaults

dependencies:
  - pip:
    - ibm_watsonx_ai

O conda canal empty não fornece nenhum pacote. Não há pacote pip em particular. O conda não tentará instalar o pip e usará a versão já pré-instalada. Observe que a palavra-chave nodefaults na lista de canais precisa de pelo menos um outro canal na lista Caso contrário, o conda ignorará silenciosamente a palavra-chave e usará os canais padrão

Combinando os pacotes conda e pip

É possível listar vários pacotes com um pacote por linha. Uma customização única pode ter pacotes conda e pacotes pip .

dependencies:
  - pandas-profiling
  - scikit-learn=0.20
  - pip:
    - ibm_watsonx_ai
    - sklearn-pandas==1.8.0

Observe que a notação de modelo necessária é sensível a espaços extras. Cada item na lista de pacotes conda deve ter dois espaços iniciais. Cada item na lista de pacotes pip deve ter quatro espaços iniciais. A versão de um pacote conda deve ser especificada usando um único símbolo de igual (=), enquanto a versão de um pacote pip deve ser incluída usando dois símbolos de igual (==).

Incluindo pacotes complexos com dependências internas

Quando você inclui muitos pacotes ou um pacote complexo com muitas dependências internas, a instalação do conda pode demorar ou até mesmo parar sem retornar nenhuma mensagem de erro. Para evitar isso:

  • Especifique as versões dos pacotes que você deseja incluir Isso reduz o espaço de procura para conda para resolver dependências.
  • Aumente o tamanho da memória do ambiente.
  • Use um canal específico em vez dos canais padrão do conda definidos no arquivo .condarc . Você evitará ter que fazer longas pesquisas em canais extensos.

Exemplo de uma customização que não usa os canais conda padrão:

# get latest version of the prophet package from the conda-forge channel
channels:
  - conda-forge
  - nodefaults

dependencies:
  - prophet

Definindo Variáveis de Ambiente

Você pode definir variáveis de ambiente em seu ambiente adicionando uma variables seção ao modelo de personalização do software, conforme mostrado no exemplo a seguir:

variables:
  my_var: my_value
  HTTP_PROXY: https://myproxy:3128
  HTTPS_PROXY: https://myproxy:3128
  NO_PROXY: cluster.local

O exemplo também mostra que você pode usar a seção variables para definir um servidor proxy para um ambiente.

Limitação: não é possível substituir variáveis de ambiente existentes, por exemplo LD_LIBRARY_PATH, usando essa abordagem.

Melhores práticas

Para evitar problemas com pacotes ausentes e dependências conflitantes, inicie instalando manualmente os pacotes necessários por meio de um bloco de notas em um ambiente de teste. Desta forma, você pode verificar interativamente se os pacotes podem ser instalados sem erros. Após verificar se os pacotes estão instalados corretamente, crie uma customização para seu ambiente de desenvolvimento ou produção e inclua os pacotes no modelo de customização.