Ajuste de escala de uma implementação
Quando você cria uma implementação online para um modelo ou função a partir de um espaço de implementação ou programaticamente, uma única cópia do ativo é implementada por padrão. Para aumentar a escalabilidade e a disponibilidade, é possível aumentar o número de cópias (réplicas), editando a configuração da implementação. Mais cópias permitem um volume maior de solicitações de pontuação.
As implementações podem ser escaladas das maneiras a seguir:
- Atualize a configuração para uma implementação em um espaço de implementação.
- Programaticamente, usando a biblioteca de cliente Python do watsonx.ai Runtime ou as APIs REST do watsonx.ai Runtime.
Você pode escalar até dez cópias usando a interface do usuário. Se for necessário um número maior de cópias, use a API para dimensionar sua implementação.
Antes de iniciar
Você deve configurar suas credenciais de tarefa gerando uma chave de API. Para obter mais informações, consulte Gerenciamento de credenciais de tarefas.
Alterando o número de cópias de uma implementação on-line a partir de um espaço
- Clique na guia Implementação de seu espaço de implementação
- No menu Ação para seu nome de implementação, selecione Editar.
- Na caixa de diálogo Editar implementação , altere o número de cópias e clique em Salvar..
Aumentando o número de réplicas de uma implementação programaticamente
Para visualizar ou executar uma amostra de trabalho de ajuste de escala de uma implementação programaticamente, é possível aumentar o número de réplicas nos metadados para uma implementação.
Exemplo de Python
Este exemplo usa o cliente Python para configurar o número de réplicas para 3.
change_meta = {
client.deployments.ConfigurationMetaNames.HARDWARE_SPEC: {
"name":"S",
"num_nodes":3}
}
client.deployments.update(<deployment_id>, change_meta)
O valor HARDWARE_SPEC inclui um nome porque a API requer que um nome ou um ID seja fornecido.
Exemplo da API REST
curl --request PATCH \ --url 'https://<HOSTNAME>/ml/v4/deployments/<DEPLOYMENT_ID>?version=2024-01-29&space_id=<SPACE_ID>' \ --header 'Authorization: Bearer $token' \ --header 'Content-Type: application/json' \ --data '[ { "op": "replace", "path": "/hardware_spec", "value": { "num_nodes": 1, "name": "WX-S" } } ]'
Deve-se especificar um nome para o valor hardware_spec, mas o argumento não é aplicado para a ajuste de escala.