GOOGLE ADS

dimanche 17 avril 2022

auto-py-to-exe ne peut pas se débarrasser des erreurs de torche et de torchvision

Solution du problème

Il semble que vous ayez tenté d'inclure pytorch en tant qu'importation masquée, ce qui est bien.

3717974 INFO: Analyzing hidden import 'pytorch'
3717979 ERROR: Hidden import 'pytorch' not found

Cependant, il semble que le nom réel du module soit juste torchet non pytorchce que vous aviez. Vous pouvez également inclure des portions spécifiques, telles que

--hidden-import 'torch.jit'

J'ai également remarqué quelques avertissements liés à la torche et au tenseur.

3764103 WARNING: lib not found: torch_python.dll dependency of C:\Users\video\AppData\Local\Programs\Python\Python37\lib\site-packages\torch\_C.cp37-win_amd64.pyd
3764968 WARNING: lib not found: c10.dll dependency of C:\Users\video\AppData\Local\Programs\Python\Python37\lib\site-packages\torchvision\_C.pyd
3764981 WARNING: lib not found: torch_cpu.dll dependency of C:\Users\video\AppData\Local\Programs\Python\Python37\lib\site-packages\torchvision\_C.pyd
3765185 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Users\video\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\client\_pywrap_tf_session.pyd

Je n'ai pas créé d'exécutable avec ces bibliothèques auparavant, mais pour le jouer en toute sécurité, j'inclus toujours chaque bibliothèque que je touche (c'est-à-dire que j'ai importé quelque chose dans le code) dans la section des importations masquées. Vous pouvez essayer de modifier le fichier.spec qui a été généré dans votre répertoire de projet ( référence ) au lieu de taper chacun sur la ligne de commande.

Enfin, si les correctifs ci-dessus produisent toujours l'erreur, essayez de déboguer les importations dont PyInstaller pense avoir besoin.

Modifier : pour résoudre le problème lié à "lib not found", veuillez ajouter les indicateurs suivants à la commande PyInstaller (ou inclure dans le fichier de spécification). Il peut y en avoir plusieurs ou différents pour votre cas spécifique.

--add-data="c:\users\yourusername\appdata\local\programs\python\python37\lib\site-packages\tensorflow;."
--add-data="c:\users\yourusername\appdata\local\programs\python\python37\lib\site-packages\torch\_C.cp37-win_amd64.pyd;."

Référence

Aucun commentaire:

Enregistrer un commentaire

Comment utiliseriez-vous .reduce() sur des arguments au lieu d'un tableau ou d'un objet spécifique ?

Je veux définir une fonction.flatten qui aplatit plusieurs éléments en un seul tableau. Je sais que ce qui suit n'est pas possible, mais...