Gerenciando especificações ou estruturas de software desatualizadas

Use estas diretrizes quando estiver atualizando ativos que se referem a especificações ou frameworks de software desatualizados.

Em alguns casos, a atualização de ativos é sem costura. Em outros casos, deve-se retreinar ou reimplementar os ativos. Para diretrizes gerais, consulte Migrando ativos que se referem a especificações de software descontinuadas ou Migrando ativos que se referem a versões de framework descontinuadas.

Para obter mais informações, consulte as seções a seguir:

Gerenciando ativos que se referem a especificações de software descontinuadas

  • Durante a migração, os ativos que se referem à especificação de software descontinuada são mapeados para uma especificação de software padrão suportada (somente nos casos em que o tipo de modelo ainda é suportado).
  • Quando você cria novas implementações dos ativos migrados, a especificação de software atualizada é usada nos metadados do ativo.
  • As implementações existentes dos ativos migrados são atualizadas para usar a nova especificação de software. Se a implementação ou a pontuação falhar devido a incompatibilidades de versão ou da versão da biblioteca, siga as instruções em Atualizando especificações de software. Se o problema persistir, siga os passos que estão listados em Atualizando um modelo de aprendizado de máquina.

Migrando ativos que se referem a versões de estrutura descontinuadas

  • Durante a migração, os tipos de modelo não são atualizados. Você deve atualizar manualmente as informações sobre o tipo de modelo. Para obter mais informações, consulte Atualizando um modelo de aprendizado de máquina.
  • Após a migração, as implementações existentes são removidas e novas implementações para a estrutura descontinuada não são permitidas.

Atualização de especificações de software

É possível atualizar especificações de software a partir da UI ou usando a API. Para obter mais informações, consulte as seções a seguir:

Atualização de especificações de software da UI

  1. A partir do espaço de implementação, clique no modelo (certifica-se de que ele não possui implementações ativas.)
  2. Clique no símbolo i para verificar detalhes do modelo.
  3. Use a lista suspensa para atualizar a especificação do software

Consulte a imagem de exemplo:

Atualização de especificações de software através da UI

Atualização de especificações de software usando a API

Você pode atualizar uma especificação de software usando o comando API Patch:

Para o campo software_spec , digite /software_spec. Para o campo value , use o ID ou o nome da nova especificação do software.

Consulte este exemplo:

curl -X PATCH '<deployment endpoint url>/ml/v4/models/6f01d512-fe0f-41cd-9a52-1e200c525c84?space_id=f2ddb8ce-7b10-4846-9ab0-62454a449802&project_id=<project_id>&version=<YYYY-MM-DD>' \n--data-raw '[
   {
      "op":"replace",
      "path":"/software_spec",
      "value":{
         "id":"6f01d512-fe0f-41cd-9a52-1e200c525c84"   // or "name":"tensorflow_rt22.1-py3.9"
      }
   }
]'

Para obter mais informações, consulte Atualizando um ativo usando o comando da API de correção.

Atualização de um modelo de aprendizagem de máquina

Siga estas etapas para atualizar um modelo construído com uma estrutura descontinuada.

Opção 1: salvar o modelo com uma estrutura compatível

  1. Faça o download do modelo usando o tempo de execução ' watsonx.ai ' API de núcleo comum de dados e IA ' ou o ' watsonx.ai ' biblioteca do cliente Python .

    O exemplo a seguir mostra como fazer download de seu modelo:

    client.repository.download(<model-id>, filename="xyz.tar.gz")
    
  2. Edite metadados de modelo com o tipo de modelo e versão que é suportado na liberação atual. Para obter mais informações, consulte Especificações de software e especificações de hardware para implementações.

    O exemplo a seguir mostra como editar metadados de modelo:

    model_metadata = {
       client.repository.ModelMetaNames.NAME: "example model",
       client.repository.ModelMetaNames.DESCRIPTION: "example description",
       client.repository.ModelMetaNames.TYPE: "<new model type>",
       client.repository.ModelMetaNames.SOFTWARE_SPEC_UID:
       client.software_specifications.get_uid_by_name("<new software specification name>")
    }
    
  3. Salve o modelo no repositório de tempo de execução watsonx.ai. O exemplo a seguir mostra como salvar o modelo no repositório:

    model_details = client.repository.store_model(model="xyz.tar.gz", meta_props=model_metadata)
    
  4. Implemente o modelo.

  5. Pontue o modelo para gerar previsões.

Se a implementação ou pontuação falhar, o modelo não é compatível com a nova versão que foi usada para salvar o modelo. Neste caso, use Opção 2.

Opção 2: treinar novamente o modelo com uma estrutura compatível

  1. Retreinar o modelo com um tipo de modelo e versão que é suportado na versão atual.
  2. Salve o modelo com a versão e o tipo suportados do modelo.
  3. Implemente e pontue o modelo.

Também é possível atualizar um modelo usando a API. Para obter mais informações, consulte Atualizando um ativo usando o comando da API de correção.

Atualizando uma função Python

Siga estas etapas para atualizar uma função Python que foi criada com uma estrutura obsoleta.

Opção 1: Salvar a função Python com uma especificação de tempo de execução ou software compatível

  1. Faça o download da função Python usando a API REST do tempo de execução watsonx.ai ou a biblioteca do clientePython watsonx.ai.
  2. Salve a função Python com um tempo de execução ou uma versão de especificação software suportados. Para obter mais informações, consulte Especificações de software e especificações de hardware para implementações.
  3. Implemente a função Python.
  4. Escore a função Python para gerar predições.

Se a sua função Python falhar durante a pontuação, a função não é compatível com a nova versão de especificação de tempo de execução ou software que foi usada para salvar a função Python . Neste caso, use Opção 2.

Opção 2: modificar o código de função e salvá-lo com uma especificação de tempo de execução ou software compatível

  1. Modifique o código da função Python para torná-lo compatível com a nova versão de especificação de tempo de execução ou software. Em alguns casos, você deve atualizar bibliotecas dependentes que estão instaladas dentro do código de função Python .
  2. Salve a função Python com o novo tempo de execução ou nova versão de especificação software.
  3. Implemente e escore a função Python.

Também é possível atualizar uma função usando a API. Para obter mais informações, consulte Atualizando um ativo usando o comando da API de correção.

Novo treinamento de um fluxo do SPSS Modeler

Alguns modelos que foram criados com o SPSS Modeler no IBM watsonx.ai Studio Cloud antes de 1º de setembro de 2020 não podem mais ser implementados usando watsonx.ai Runtime. Esse problema é causado por um upgrade da versão do Python nos tempos de execução suportados do SPSS Modeler Se estiver usando um dos seis nós a seguir no seu fluxo SPSS Modeler, você deverá reconstruir e reimplantar seus modelos com o SPSS Modeler e watsonx.ai Runtime:

  • XGBoost Tree
  • XGBoost Linear
  • SVM de classe única
  • HDBSCAN
  • Modelagem do KDE
  • Mistura Gaussiana

Para retreinar o seu fluxo de SPSS Modeler , siga estas etapas:

  • Se estiver usando a interface de usuário do watsonx.ai Studio, abra o fluxo do SPSS Modeler no watsonx.ai Studio, treine novamente e salve o modelo no watsonx.ai Runtime. Depois de salvar o modelo para o projeto, é possível promotá-lo para um espaço de implementação e criar uma nova implementação.
  • Se estiver usando a API REST ou o clientePython, treine novamente o modelo usando o SPSS Modeler e salve o modelo no repositório watsonx.ai Runtime com o tipo de modelo " spss-modeler-18.2.