Я точно следовал этому руководству, и у меня возникает ошибка соединения:
https://www.knowru.com/blog/how-create-restful-api-for-machine-learning-credit-model-in-r/
Я запускаю следующий код:
library(plumber)
r <- plumb("deploy_ml_credit_model.R")
r$run(host = "127.0.0.1", port = 3582, swagger = FALSE)
Я иду к терминалу в R и запускаю
curl -X POST -d '{"Status.of.existing.checking.account": "A11", "Duration.in.month": 24, "Credit.history": "A32", "Savings.account.bonds": "A63"}' -H 'Content-Type: application/json' 127.0.0.1:3582
Я получаю следующую ошибку:
C:\Users\USER\Desktop\creditdata>curl -X POST -d '{"Status.of.existing.checking.account": "A11", "Duration.in.month":
24, "Credit.history": "A32", "Savings.account.bonds": "A63"}' -H 'Content-Type: application/json' 127.0.0.1:3582
curl: (6) Could not resolve host: A11,
curl: (6) Could not resolve host: Duration.in.month
curl: (6) Could not resolve host: 24,
curl: (6) Could not resolve host: Credit.history
curl: (6) Could not resolve host: A32,
curl: (6) Could not resolve host: Savings.account.bonds
curl: (3) [globbing] unmatched close brace/bracket in column 4
curl: (6) Could not resolve host: application
{"error":["404 - Resource Not Found"]}
Я искал решение в Интернете и, похоже, не могу найти способ обойти это.
Я иду на http://localhost:3582/ и вижу {"error":["404 - Resource Not Found"]}
Когда я установил swagger = TRUE
, я могу перейти на 127.0.0.1:3582/__swagger__/
и увидеть веб-страницу, но не могу ввести данные и т. Д.
Я также пытался подключиться с помощью Python:
import requests
import json
response = requests.post(
“localhost:3582”
, headers={“Content-Type”: “application/json”}
, data=json.dumps({
"Status.of.existing.checking.account": "A11"
, "Duration.in.month": 24
, "Credit.history": "A32"
, "Savings.account.bonds": "A63"
})
)
print response.json()
И я получил следующую ошибку:
File "<ipython-input-12-84b178a53d7e>", line 4
“localhost:3582”
^
SyntaxError: invalid character in identifier
Я пробовал несколько различных комбинаций для строки 127.0.0.1
. Замена на localhost
, переход на другие порты, установка непосредственно на 127.0.0.1:3582/__swagger__/predict
и т. Д. Все возвращают ошибку.