Tensorflow JS tfjs | Невозможно загрузить модель с помощью tf.loadLayersModel
При выполнении следующего кода, встроенного в html, с использованием стека WAMP
const model = tf.loadLayersModel('js/model.json');
Я обнаружил следующие ошибки в Chrome
> Uncaught (in promise) TypeError: Failed to fetch
> platform_browser.ts:28 GET http://localhost/poemgenerator/js/group1-shard3of22.bin net::ERR_EMPTY_RESPONSE
> Uncaught (in promise) TypeError: Failed to fetch
У меня есть все group1-shard__of22.bin в указанном месте
Во время каждого запуска кода ERR_EMPTY_RESPONSE отображается в разных файлах.
Файлы tfjs загружены с использованием
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.7.2/dist/tf.min.js"></script>
PS:
При выполнении кода IDM начинает загрузку всех файлов group1-shard__of22.bin
I Загружаемая модель была создана на Python и является моделью tf.keras. который был преобразован с помощью конвертера tfjs
Обновить:
Я использовал замененный приведенный выше код на
async function predict(){
const model = await tf.loadLayersModel('js/model.json');
model.summary()
}
А также удалил IDM, но он показал другие ошибки:
> errors.ts:48 Uncaught (in promise) Error: Provided weight data has no target variable: lstm_3/lstm_cell_3/kernel
> (index):68 Uncaught TypeError: model.summary is not a function
1 ответ
Поскольку Tensorflow лучше всего работает в асинхронном режиме, вам следует использовать асинхронную функцию с ожиданием при загрузке модели:
async function predict(){
const model = await tf.loadLayersModel('js/model.json');
// do prediction
}