Todos os produtos
Search
Central de documentação

Platform For AI:PMML processor

Última atualização: Aug 24, 2026

O processador PMML integrado implanta modelos no formato PMML como serviços online e fornece inferência online em tempo real.

Informações básicas

Use o processador PMML para implantar um modelo PMML exportado para o . Você também pode converter um modelo treinado com um framework open source, como Sklearn ou Xgboost, para o formato PMML e implantá-lo no . Para obter mais informações, consulte Export a general-purpose model.

Para saber mais sobre modelos PMML, acesse Introdução aos modelos PMML.

Estratégias de imputação de valores ausentes

O processador PMML oferece estratégias padrão de imputação para valores ausentes. Caso um campo de recurso no arquivo do modelo PMML não especifique uma política isMissing, o sistema utiliza os seguintes valores padrão.

Tipo de dados

Valor padrão

BOOLEAN

false

DOUBLE

0,0

FLOAT

0,0

INT

0

STRING

""

Etapa 1: Implantar o service

Ao implantar um service de modelo PMML com o cliente eascmd, defina o tipo do processor como pmml. O exemplo a seguir apresenta o arquivo de configuração do service.

{
  "name": "eas_lr_example",
  "processor": "pmml",
  "model_path": "http://examplebucket.oss-cn-shanghai.aliyuncs.com/models/lr.pmml",
  "metadata": {
    "instance": 1,
    "cpu": 1
  }
}

Para obter mais detalhes sobre como implantar um service usando o cliente eascmd, consulte Deploy a service using EASCMD or DSW.

Você também pode implantar um service de modelo PMML pelo console. Para mais informações, consulte Deploy a service from the console.

Etapa 2: Chamar o service

Siga as etapas abaixo para chamar o service.

  1. Após a implantação do service PMML, acesse a página Elastic Algorithm Service (EAS). Localize o service desejado e clique em Invocation Information na coluna Service Type para visualizar o endpoint de acesso ao service e o token de autenticação.

    Construa a requisição do service.

    Um service PMML utiliza arquivos JSON simples para entrada e saída. Uma única requisição aceita múltiplas amostras, e cada amostra contém dados de recursos no formato chave-valor. O exemplo abaixo ilustra o corpo da requisição.

    [
        {
            "address": 12,
            "age": 22,
            "ed": 4,
            "marital": 3.0,
            "region": 2.0,
            "tenure": 4.0
        },
        {
            "address": 2,
            "age": 34,
            "ed": 6,
            "marital": 1.3,
            "region": 2.1,
            "tenure": 4.2
        }
    ]
    Nota

    Ao enviar a requisição, remova as quebras de linha e espaços do arquivo JSON para reduzir o tráfego de rede e melhorar o desempenho do service.

  2. Envie a requisição ao service.

    Dois métodos são suportados:

    Importante

    Passar o token diretamente no cabeçalho HTTP transmite essa credencial em texto plano pela rede. Os SDKs fornecidos pelo assinam a requisição com o token antes do envio, garantindo maior segurança.

    • Utilize o comando curl para executar um teste rápido de requisição no service.

      O service disponibiliza um endpoint HTTP. Ao enviar uma requisição, passe o token de autenticação diretamente no cabeçalho HTTP, conforme o exemplo a seguir.

      // Send the request.
      curl -v 18284888792***.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml_test \
            -H 'Authorization: YmE3NDkyMzdiMzNmMGM3ZmE4ZmNjZDk0M2NiMDA***' \
            -d '[{"region": 2.0, "marital":3.0,"tenure":4.0, "age":22,"address":12,"ed":4},{"region": 2.1, "marital":1.3,"tenure":4.2, "age":34,"address":2,"ed":6}]'

      No comando anterior:

      • 18284888792*.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml_test**: Substitua pelo endpoint obtido na etapa 1.

      • Authorization: Defina como o token de autenticação obtido na etapa 1.

      O exemplo a seguir mostra o resultado retornado.

      [{"p_0":0.2856724025030001,"p_1":0.7143275974969999},{"p_0":0.18324957921381624,"p_1":0.8167504207861838}]
    • Envie a requisição utilizando o SDK do Python. Para mais detalhes, consulte Python SDK usage guide.

      Confira o código de exemplo abaixo.

      #!/usr/bin/env python
      
      from eas_prediction import PredictClient
      from eas_prediction import StringRequest
      
      if __name__ == '__main__':
          # Replace with the endpoint and service name that you obtained in step 1.
          client = PredictClient('1828488879222***.cn-shanghai.pai-eas.aliyuncs.com', 'pmml_test')
          # Replace with the authentication token that you obtained in step 1.
          client.set_token('YmE3NDkyMzdiMzNmMGM3ZmE4ZmNjZDk0M2NiMDA***')
          client.init()
      
          req = StringRequest('[{"region": 2.0, "marital":3.0,"tenure":4.0, "age":22,"address":12,"ed":4},{"region": 2.1, "marital":1.3,"tenure":4.2, "age":34,"address":2,"ed":6}]')
          for x in range(100):
              resp = client.predict(req)
              print(resp)

    Para informações sobre SDKs cliente em outras linguagens, consulte Service invocation SDKs.

Referências