tensorflow_hub 在加载链接时抛出此错误:“SentencepieceOp”

问题描述 投票:0回答:2

我尝试在 PyCharm 中运行以下代码行,并且我已安装并导入了tensorflow_hub。

use = hub.load("https://tfhub.dev/google/universal-sentence-encoder-multilingual-large/3")

对于以下错误有什么建议吗?因为我的项目需要这个。

Traceback (most recent call last):
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3820, in _get_op_def
    return self._op_def_cache[type]
KeyError: 'SentencepieceOp'

在处理上述异常的过程中,又发生了一个异常:

Traceback (most recent call last):
  File "C:/Users/Jon10/OneDrive/Documents/Computer Science/Dissertation/PythonPractice/TFTest/test.py", line 28, in <module>
    use = hub.load("https://tfhub.dev/google/universal-sentence-encoder-multilingual-large/3")
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_hub\module_v2.py", line 102, in load
    obj = tf_v1.saved_model.load_v2(module_path, tags=tags)
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\saved_model\load.py", line 517, in load
    return load_internal(export_dir, tags)
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\saved_model\load.py", line 541, in load_internal
    export_dir)
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\saved_model\load.py", line 114, in __init__
    meta_graph.graph_def.library))
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\saved_model\function_deserialization.py", line 312, in load_function_def_library
    copy, copy_functions=False)
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\framework\function_def_to_graph.py", line 61, in function_def_to_graph
    fdef, input_shapes, copy_functions)
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\framework\function_def_to_graph.py", line 214, in function_def_to_graph_def
    op_def = ops.get_default_graph()._get_op_def(node_def.op)  # pylint: disable=protected-access
  File "C:\Users\Jon10\miniconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3824, in _get_op_def
    c_api.TF_GraphGetOpDef(self._c_graph, compat.as_bytes(type), buf)
tensorflow.python.framework.errors_impl.NotFoundError: Op type not registered 'SentencepieceOp' in binary running on DESKTOP-..... Make sure the Op and Kernel are registered in the binary running in this process. Note that if you are loading a saved graph which used ops from tf.contrib, accessing (e.g.) `tf.contrib.resampler` should be done before importing the graph, as contrib ops are lazily registered when the module is first accessed.
python tensorflow pycharm tensorflow-hub
2个回答
8
投票

您需要安装tensorflow_text,并在使用hub.load之前导入它


0
投票

我在 Kubuntu (Linux) 上遇到了同样的问题。

然后我已经安装了

tensorflow-text

pip3 install tensorflow-text

我在调用

hub.load
之前像这样导入它:

import tensorflow_text as text

并且成功了。

© www.soinside.com 2019 - 2024. All rights reserved.