Не удалось загрузить API веб-службы студии машинного обучения Azure. Из R (слой кадрирования http2) - PullRequest
0 голосов
/ 13 марта 2019

Я делаю решение для машинного обучения, обучая модель на лазурном ML.Затем моя задача - использовать ключ API, настроенный в Azure ML, для получения результатов прогнозов в режиме реального времени.Так как я добавил эту часть, визуализация, сделанная с блестящим, становится время от времени ошибкой.Он работает на сервере Ubuntu.

Функции, отображаемые в списке, являются функциями модели с условным вменением.

Ошибка говорит: слой кадрирования http2.

    library("RCurl")
    library("rjson")

    # Accept SSL certificates issued by public Certificate Authorities
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl")))

h = basicTextGatherer()
hdr = basicHeaderGatherer()

req =  list(
  Inputs = list(
    "input1"= list(
      list(
        'CORRESPON' = "0",
        'HORA' = "13",
        'GRUPO' = "",
        'dewPoint' = "40.53",
        'precipType' = "NA",
        'DIA_Semana' = "Jueves",
        'DIA_mes' = "11",
        'Municipio' = "Almeria",
        'Total_Ambos' = "189880",
        'Comunidad' = "Andalucia",
        'Provincia' = "Almeria"
      )
    )
  ),
  GlobalParameters = setNames(fromJSON('{}'), character(0))
)

body = enc2utf8(toJSON(req))
api_key = "set-your-api-key" # Replace this with the API key for the web service
authz_hdr = paste('Bearer', api_key, sep=' ')

h$reset()
curlPerform(url = "https://ussouthcentral.services.azureml.net/workspaces/cc79cb484e71444e8f7cbe8bc07fdc94/services/5790601c0f4a482d9e8a9f566359320f/execute?api-version=2.0&format=swagger",
            httpheader=c('Content-Type' = "application/json", 'Authorization' = authz_hdr),
            postfields=body,
            writefunction = h$update,
            headerfunction = hdr$update,
            verbose = TRUE
)

headers = hdr$value()
httpStatus = headers["status"]
if (httpStatus >= 400)
{
  print(paste("The request failed with status code:", httpStatus, sep=" "))

  # Print the headers - they include the requert ID and the timestamp, which are useful for debugging the failure
  print(headers)
}

print("Result:")
result = h$value()
print(fromJSON(result))

кстати, я хотел бы знать, есть ли какой-нибудь возможный способ добавить больше входных данных при вводе из R. Я попытался реплицировать input2 (например, input1, который появляется выше) и передавая векторы, но ничего из этого не пыталсяполучают любой результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...