Ошибка при попытке загрузить модель tenorflowJS из локальной среды, Fetch API не может загрузить downloads: // model.Схема URL должна быть "https" для ошибки запроса CORS - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь загрузить модель tensflow js, которая сохраняется в каталоге загрузок, как указано в руководствах tenorflowjs.Но я сталкиваюсь с ошибкой cors, пожалуйста, найдите изображение ниже.

Код:

<html>

<head>


<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.0.0/dist/tf.min.js"></script>

<script>

async function app() {

const t = await tf.loadLayersModel('downloads://model');
console.log("done");
console.log(t);
}

app();


</script>
<script>

</script>

</head>

<body>

</body>
</html>

enter image description here

Любые указатели о том, как решитьthis.

Пробовал отключать cors для chrome, но все равно не работал.

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

Fetch API не может загружать загрузки: // модель.Схема URL должна быть «https» для ошибки запроса CORS

Ошибка говорит сама за себя.Согласно официальным документам, вот что мы можем прочитать для параметра url

Строковый путь к JSON ModelAndWeightsConfig, описывающий модель в каноническом формате TensorFlow.js.Для схем file: // (tfjs-node-only), http: // и https: // путь может быть либо абсолютным, либо относительным.

download ничего не значит,по крайней мере, при загрузке модели.Вместо этого он используется при загрузке модели в файловую систему.

Поэтому, если вы загружаете свою модель в браузер, сначала рассмотрите возможность обслуживания модели на сервере и используйте синтаксис, такой как

* 1015.*

Если вы работаете в среде сервера nodejs, доступ к файлу можно получить напрямую, используя file идентификатор

const t = await tf.loadLayersModel('file://path/to/downloads/model.json');
0 голосов
/ 07 мая 2019

Указанный вами протокол выглядит недействительным.Вы можете указать file:// или просто опустить его должно работать.А также вам нужно указать путь к файлу model.json, созданному tfjs-converter .Таким образом, в целом код для загрузки модели может выглядеть следующим образом.

const t = await tf.loadLayersModel('file:///path/to/downloads/model.json');
...