tensorflow グラフの model.json ファイルを AWS S3 バケットのプライベート リポジトリにアップロードし、loadGraphModel
(重みマニフェスト値のバイナリ ファイル group1-shard1of1 と共に) を使用してグラフをロードしようとしています。ノードで実行するコードは次のとおりです(バケットパスと署名キーは非公開にしています)
TFJSConverter = require('@tensorflow/tfjs-converter')
const MODEL_URL = "https://[BucketName].s3.amazonaws.com/[PathToModel]/model.json?[credentials]&[securitykey]";
global.fetch = require('node-fetch')
TFJSConverter.loadGraphModel(MODEL_URL)
ただし、loadGraphModel 関数は「.json」で終わるモデル URL を探します。そうでない場合は、モデルの完全な URL を検索し、署名のない weights_manifest.json という名前の重量マニフェスト ファイルをチェックします。次に、エラー リクエストが続きます。
UnhandledPromiseRejectionWarning: エラー: https://[BucketName].s3.amazonaws.com/[PathToModel]/model.json?[credentials]&[securitykey],https://[BucketName].s3.amazonaws.com/ へのリクエスト[PathToModel]/weights_manifest.jsonがステータス コード 403 で失敗しました。この URL が、ロードするモデルのモデル JSON を指していることを確認してください。
署名付き URL が実際に機能することを確認しましたが、署名付き URL の解決策はありますか?
インストールされているバージョン: @tensorflow/tfjs-converter@1.1.2 ノード v10.15.3
どうもありがとう!