我有一个模型,保存在azure数据湖的一个容器中的project_name中,当我从数据库加载一个tensorflow模型时遇到了问题,之前在jupyter notebook中测试时,一切都运行良好,我必须迁移数据库中的代码。
这是我运行的代码。
model = tf.keras.models.load_model("abfss://dev@abcproddatalake.dfs.core.windows.net/hkay/project_name/model/keras2.tf", compile=False)
这就是我得到的错误。
UnimplementedError Traceback (most recent call last)
<command-3129204037083358> in <module>
3
4 ## Loading a model
----> 5 model = tf.keras.models.load_model("abfss://dev@abcproddatalake.dfs.core.windows.net/hkay/project_name/model/keras2.tf", compile=False)
/local_disk0/.ephemeral_nfs/envs/pythonEnv-03228642-df50-44d1-8e0e-f760ea5a0429/lib/python3.8/site-packages/keras/utils/traceback_utils.py in error_handler(*args, **kwargs)
68 # To get the full stack trace, call:
69 # `tf.debugging.disable_traceback_filtering()`
---> 70 raise e.with_traceback(filtered_tb) from None
71 finally:
72 del filtered_tb
/local_disk0/.ephemeral_nfs/envs/pythonEnv-03228642-df50-44d1-8e0e-f760ea5a0429/lib/python3.8/site-packages/tensorflow/python/lib/io/file_io.py in file_exists_v2(path)
288 """
289 try:
--> 290 _pywrap_file_io.FileExists(compat.path_to_bytes(path))
291 except errors.NotFoundError:
292 return False
UnimplementedError: File system scheme 'abfss' not implemented (file: 'abfss://dev@abcproddatalake.dfs.core.windows.net/hkay/project_name/model/keras2.tf')
当我在jupyter notebook中运行它的时候它运行得很好,模型在我使用jupyter的时候保存在本地。
连接是工作的,因为我通过阅读路径中的文件测试了连接。这个型号的大小是1.6GB。我不知道为什么它不工作。有人知道吗?
1条答案
按热度按时间wgx48brx1#
不幸的是,Keras不理解URI。它被设计为只能处理本地文件,因此您需要使用本地路径保存或加载数据。
尝试使用
dbutils.fs.cp
,它会将数据从存储URLabfss://dev@axxx
复制到本地路径。将文件复制到
/tmp/model.tf
并加载。你可以检查天气模型复制或不使用下面的代码.
装载型号: