Executando tarefas
Decision Optimization usa APIs assíncronas dowatsonx.ai Runtime para permitir que os trabalhos sejam executados em paralelo.
Para resolver um problema, é possível criar uma nova tarefa da implementação do modelo e associar dados a ela. Veja etapas de implementação e o Exemplo de API REST. Você não é cobrado por implementar um modelo. Apenas a resolução de um modelo com alguns dados é cobrado com base no tempo de execução.
Para resolver mais de uma tarefa por vez, especifique mais de um nó ao criar a sua implementação. Por exemplo neste Exemplo de API de REST, incremente o número dos nós mudando o valor da propriedade dos nós: "nodes" : 1.
PODs (nós)
Quando um trabalho é criado e enviado, a forma como ele é tratado depende da configuração atual e dos trabalhos que estão em execução na instância dowatsonx.ai Runtime. Esse processo é mostrado no diagrama a seguir:
Conforme descrito no fluxograma anterior, os trabalhos são gerenciados da seguinte forma.
- A nova tarefa é enviada para a fila.
- Se um POD for iniciado, mas estiver inativo (não executando um job), ele começará imediatamente a processar esse job..
- Caso contrário, se o número máximo de nós não for atingido, um novo POD será iniciado (Iniciar um POD pode levar alguns segundos). O job é então atribuído a este novo POD para processamento.
- Caso contrário, o job espera na fila até que um dos PODs em execução seja concluído e possa selecionar o job em espera.
Veja a seguir a configuração dos pods de cada tamanho:
| Definição | Nome | Descrição |
|---|---|---|
| 2 vCPU e 8 GB | S | Pequeno |
| 4 vCPU e 16 GB | M | Médio |
| 8 vCPU e 32 GB | L | Grande |
| 16 vCPU e 64 GB | XL | Muito grande |
Para todas as configurações, 1 vCPU e 512 MB são reservados para uso interno.
Além do tempo de resolução, o preço depende do tamanho selecionado através de um multiplicador.
Na configuração de implementação, também é possível configurar o número máximo de nós a serem usados
Os pods inativos são interrompidos automaticamente após um tempo limite determinado. Se uma nova tarefa for enviada quando nenhum POD estiver ativo, levará algum tempo (aproximadamente 30 segundos) para o POD reiniciar.
Precificação baseada em tempo de execução (CUH)
Somente o tempo de resolução da tarefa é cobrado: o tempo inativo para POD não é cobrado..
Dependendo do tamanho do POD usado, um multiplicador diferente é usado para calcular o número de Horas de Unidades de Capacidade (CUH) usadas
Exemplo da API REST
Para obter o procedimento completo de implantação de um modelo e links para a documentação do Swagger, consulte Exemplo de API REST.
exemplo de API Python
Além das APIs REST, uma API Python é fornecida com o tempo de execuçãowatsonx.ai para que você possa criar, implantar e usar facilmente um modelo de Decision Optimization partir de um " notebook.
Para obter mais informações, consulte Python client example.
Um exemplo em notebook que descreve e documenta todas as etapas está disponível no hub de recursos.