RuntimeError: Failed to import transformers.models.clip.processing_clip because of the following error (look up to see its traceback):
[Errno 2] No such file or directory: 'C:\\Users\\xxx\\AppData\\Local\\Temp\\_MEI135322\\transformers\\__init__.py'
我正在尝试使用具有 Sentence_transformers 库的脚本的 pyinstaller 创建一个 .exe 文件。
这是我用来运行 pyinstaller 的一行命令(调整可读性):
pyinstaller --onefile \
--hidden-import=torch \
--collect-data torch \
--copy-metadata torch \
--collect-data tqdm \
--copy-metadata tqdm \
--collect-data regex \
--copy-metadata regex \
--collect-data sacremoses \
--copy-metadata sacremoses \
--collect-data requests \
--copy-metadata requests \
--collect-data packaging \
--copy-metadata packaging \
--collect-data filelock \
--copy-metadata filelock \
--collect-data numpy \
--copy-metadata numpy \
--collect-data tokenizers \
--copy-metadata tokenizers \
--collect-data importlib_metadata \
--copy-metadata importlib_metadata \
--hidden-import="sklearn" \
--copy-metadata huggingface-hub \
--copy-metadata safetensors \
--copy-metadata PyYAML \
--hidden-import="sklearn.neighbors._typedefs" \
--hidden-import="matplotlib" \
--additional-hooks-dir=. \
my_script.py
我找不到更多有关此错误的资源,我希望我可以从这里获得一些线索。如果我在这个问题中遗漏了任何重要信息,请告诉我。感谢所给出的任何建议。谢谢你。
_MEI135322 文件夹是由 pyinstaller 创建的临时文件,其中包含运行 exe 文件所需的所有文件。在运行可执行文件时查看文件夹,我发现文件夹中没有“transformers”文件。
这就是我所做的:
仔细检查我是否在cmd中使用“pip list”安装了句子转换器和转换器。
在cmd中使用“pip showtransformers”或“pipshowsentence-transformers”获取这些模块的安装路径。
找到模块的完整路径后,将 --add-data "
我之前确实使用过 --hidden-import ,但我不确定为什么它在打包过程中没有包含它。上述步骤通过将 pyinstaller 直接定向到模块的位置为我解决了这个问题。希望这有帮助。