Criação de implementações on-line
Crie uma implementação on-line para modelos de aprendizado de máquina, ativos de IA generativos ou funções Python para gerar previsões ou resultados em tempo real. Por exemplo, crie uma implementação on-line para um modelo de classificação que seja treinado para prever se um cliente do banco se inscreve em uma promoção Enviar novos dados do cliente para o terminal de implementação retorna uma predição em tempo real.
Tipos de ativos implementáveis para implementações on-line
É possível criar implementações on-line para esses tipos de ativos:
- Funções
- Modelos
Modelos que são importados de um arquivo
Modelos que são criados com estruturas suportadas
Maneiras de criar uma implementação on-line
É possível criar uma implementação online de uma destas maneiras:
- Use uma abordagem sem código para Criar uma implementação on-line a partir de um espaço de implementação
- Use o código para Criar uma implementação on-line programaticamente usando blocos de notas.
Depois que você cria uma implementação on-line, é gerado um endpoint URL. Você pode usar o endpoint URL para testar a implementação ou para incluir a implementação em seus aplicativos.
Criando uma implementação on-line a partir de um espaço de implementação
Siga estas etapas para criar sua implementação on-line a partir de um espaço de implementação:
Promova ou inclua o ativo que você deseja implementar em um espaço Para obter mais informações, consulte Ativos em um espaço de implementação.
Na página Ativos, clique em Implementar no menu Ação.
Na página de detalhes da implementação, clique em Nova implementação
Escolha On-line como o tipo de implementação.
Forneça um nome e uma descrição opcional para a implementação
Use o campo Nome do serviço para especificar um nome para sua implementação em vez de ID de implementação.
Observação:- O nome de serviço deve ser distinto dentro do namespace
- O nome do servidor deve conter apenas esses caracteres: [a-z,0-9, _] e deve ter um máximo de 36 caracteres de comprimento
- O nome do serviço funciona apenas como parte da previsão URL. Às vezes, pode ser necessário usar o ID de implementação.
Opcional: selecione uma especificação de hardware se estiver implementando funções Python , modelos Tensorflow ou modelos com especificações de software customizadas. Por exemplo, se você estiver escalando uma implementação, poderá desejar aumentar os recursos de hardware.
Restrição:Não é possível criar ou selecionar especificações de hardware personalizadas na interface do usuário em um espaço de implementação. Para saber mais sobre as maneiras de criar e selecionar uma especificação de hardware, consulte Gerenciamento de especificações de hardware para implementações.
Opcional: selecione uma especificação de software que seja compatível com seu ativo. É possível selecionar as especificações de software apenas para funções
Clique em Criar para criar a implementação.
Testando uma implementação on-line
Siga estas etapas para testar sua implementação on-line:
- Na guia Implemenções de seu espaço, clique no nome da implementação.
- Clique na guia Teste para inserir dados e obter uma predição ou outra resposta do ativo implementado.
A maneira como você fornece dados de teste para uma implementação on-line depende do tipo de ativo implementado. Para a maioria dos ativos, é possível inserir dados de teste diretamente em um formulário, fazer upload de um arquivo que contém dados de teste ou colar os dados de teste como código JSON.. Se o seu modelo implementado tiver um esquema definido, os dados de teste deverão usar o mesmo esquema Por exemplo, para um modelo de classificação, insira os dados de teste usando as mesmas colunas, omitindo a coluna de predição Por exemplo, a seguir está a interface de teste para um modelo de classificação:

Código JSON de amostra para testar uma implementação
Ao enviar o código JSON como a carga útil ou dados de entrada para uma implementação, seus dados de entrada devem corresponder aos requisitos do ativo implementado.
Por exemplo, para um modelo com um esquema, o fields deve corresponder aos cabeçalhos da coluna para os dados e o values deve conter os dados (na mesma ordem).. Use este formato:
{"input_data":[{
"fields": [<field1>, <field2>, ...],
"values": [[<value1>, <value2>, ...]]
}]}
Consulte este exemplo:
{"input_data":[{
"fields": ["PassengerId","Pclass","Name","Sex","Age","SibSp","Parch","Ticket","Fare","Cabin","Embarked"],
"values": [[1,3,"Braund, Mr. Owen Harris",0,22,1,0,"A/5 21171",7.25,null,"S"]]
}]}
Entretanto, para inserir dados de entrada para um modelo de prompt implementado, a estrutura espelha a entrada e a saída para solicitar o modelo. Por exemplo, consulte o fragmento de código a seguir:
{
"parameters": {
"prompt_variables": {
"input": "input text goes here."
}
}
}
Para formatar a entrada JSON:
- Todas as strings são envoltas em aspas duplas. A notação Python para dicionários parece similar, mas as strings Python em aspas simples não são aceitas nos dados JSON.
- Indique os valores omissos com
null
Recuperando o terminal para uma implementação on-line
Siga estas etapas para recuperar o endpoint URL para sua implementação on-line, de modo que você possa acessar a implementação a partir de seus aplicativos:
- Na guia Implemenções de seu espaço, clique no nome da implementação.
- Na guia Referência da API , localize os links de terminal privado e público Também é possível localizar fragmentos de códigos em várias linguagens de programação, como Python, Java e mais, para incluir os detalhes do terminal em um aplicativo.
Se você incluiu Nome do serviço quando criou sua implementação online, verá duas URLs de terminal. O primeiro URL contém a ID de implantação e o segundo URL contém seu nome de serviço. É possível usar uma dessas URLs com sua implementação.
Acessando os detalhes de implementação on-line
Siga estas etapas para revisar ou atualizar detalhes de implementação:
- Na guia Implementações de seu espaço, clique em um nome de implementação.
- Clique na guia Detalhes da implementação para acessar informações relacionadas à sua implementação on-line. Se sua organização estiver usando qualquer um dos casos de uso para controlar e controlar ativos, as informações de implementação para um ativo rastreado serão registradas em uma planilha no caso de uso associado.
Configurando gateways de API para fornecer pontos de extremidade estáveis
Watson Machine Learning fornece pontos finais estáveis para evitar tempo de inatividade. No entanto, você poderá enfrentar tempo de inatividade se mudar para uma nova instância do Cloud Pak for Data ou adicionar uma instância.
Os gateways API fornecem um endereço URL estável que pode ser usado com o seu endpoint API Watson Machine Learning. Você pode usar um gateway de API com seus pontos de extremidade de implantação para lidar com o tempo de inatividade, caso ele ocorra nos seguintes casos:
- Se você tiver mais de uma instância do Cloud Pak for Data em uma configuração de alta disponibilidade e uma das instâncias disponíveis falhar. Nesse caso, você pode usar um gateway de API para alternar automaticamente para outra instância, evitando assim uma falha completa.
- Se você tiver mais de um aplicativo que usa o mesmo endpoint e o endpoint de implantação não estiver disponível. Por exemplo, se você excluir acidentalmente a implantação. Nesse caso, você pode atualizar o endpoint no gateway da API para garantir que os aplicativos continuem a utilizá-lo.
Criando implementação on-line programaticamente usando blocos de notas
É possível criar uma implementação on-line programaticamente usando:
- Watson Machine Learning .
- biblioteca de clientePythonwatsonx.
Para acessar blocos de notas de amostra que usam demonstrar como criar e gerenciar implementações usando o cliente Watson Machine Learning Python , consulte Exemplos e amostras de aprendizado de máquina.
Testando sua implementação on-line programaticamente
Para testar sua implantação online programaticamente, você deve preparar uma carga útil que corresponda ao esquema dos requisitos do modelo existente do ativo implantado. Por exemplo, os dados de entrada (carga útil) para um modelo de classificação devem corresponder ao esquema do modelo implementado. A amostra a seguir para um modelo de classificação fornece dados de teste com colunas e valores que correspondem exatamente ao esquema do modelo:
model_details = client.repository.get_details("<model_id>") # retrieves details and includes schema
columns_in_schema = []
for i in range(0, len(model_details['entity']['schemas']['input'][0].get('fields'))):
columns_in_schema.append(model_details['entity']['schemas']['input'][0].get('fields')[i]['name'])
X = X[columns_in_schema] # where X is a pandas dataframe that contains values to be scored
#(...)
scoring_values = X.values.tolist()
array_of_input_fields = X.columns.tolist()
payload_scoring = {"input_data": [{"fields": [array_of_input_fields],"values": scoring_values}]}
Recuperando o terminal para uma implementação on-line programaticamente
Para recuperar o endpoint URL de sua implementação on-line a partir de um notebook:
- Liste as implantações chamando o método do clientePython '
client.deployments.list(). - Localize a linha com a sua implementação O ponto de extremidade de implantação URL está listado na coluna
url.
Saiba mais
Para saber como criar uma implementação em lote, consulte Criando uma implementação em lote..
Para saber como gerenciar tarefas de implementação e atualizar, escalar ou excluir uma implementação online, consulte Gerenciando ativos.
Para saber mais sobre endpoints de implantação, consulte URLs de endpoints.