【Python】Pyinstaller打包sh文件报错[77353] Failed to execute script ‘GCN-TSA‘ due to unhandled exception解决方案

慈云数据 6个月前 (05-28) 技术支持 39 0

【Python】pyinstaller打包sh文件报错[77353] Failed to execute script ‘GCN-TSA’ due to unhandled exception!

大家好 我是寸铁👊

总结了一篇【Python】pyinstaller打包sh文件报错[77353] Failed to execute script ‘GCN-TSA’ due to unhandled exception!解决方案

喜欢的小伙伴可以点点关注 💝

前言

在使用pyinstaller打包sh文件后运行sh文件报错如下:

在这里插入图片描述

具体如下:

File "",line 1006,in _find_and_load_unlockedFile "",line 688,in _load_unlocked
File "PyInstaller/loader/pyimod02_importers.py",line 419,in exec_moduleFile "torch_geometric/nn/pool/select/__init_-.py",line 7,in File "",line 1027,in _find_and_load
File "",line 1006,in _find_and_load_unlocked
File "",line 688, in _load_unlocked
File "PyInstaller/loader/pyimod02_importers.py",line 419,in exec_module
File "torch_geometric/nn/pool/select/base.py",line 68, in File "torch/jit/script.py",line 1375,in scriptFile "torch/jit/_recursive.py",line 59,
in _compile_and_register_classFile "torch/jit/frontend.py",line 26ó,in get_jit_class_defFile "torch/_sources.py",line 32,
in get_source_lines_and_fileISError: 
Can't get source for , TorchScript requires sour:
access in order to carry out compilation, make sure original .py files are available.
[77353] Failed to execute script 'GCN-TSA' due to unhandled exception!

解决方案

  • 在要打包的pytorch程序中的导入包的最上面添加如下代码:
    def script_method(fn, _rcb=None):
        return fn
    def script(obj, optimize=True, _frames_up=0, _rcb=None):
        return obj
    import torch.jit
    script_method1 = torch.jit.script_method
    script1 = torch.jit.script
    torch.jit.script_method = script_method
    torch.jit.script = script
    

    如下:

    • 将上面的代码放在导入包的前面

      在这里插入图片描述


      • 再重新使用pyinstaller打包sh文件
        pyinstaller --onefile xx.py
        

        • 最后,运行一下sh文件

          现在运行后的结果与之前的不同,看了一下是因为没有GPU,这个结果是对的,pytorch跑深度学习是需要GPU的,因此,需要把sh文件放到有GPU显卡的服务器

          在这里插入图片描述

          • 打包成sh后在有Gpu的服务器上跑深度学习
            ./test.sh
            

            成功跑起来!!!

            在这里插入图片描述


            看到这里的小伙伴,恭喜你又掌握了一个技能👊

            希望大家能取得胜利,坚持就是胜利💪

            我是寸铁!我们下期再见💕


            往期好文💕

            保姆级教程

            【保姆级教程】Windows11下go-zero的etcd安装与初步使用

            【保姆级教程】Windows11安装go-zero代码生成工具goctl、protoc、go-zero

            【Go-Zero】手把手带你在goland中创建api文件并设置高亮


            报错解决

            【Go-Zero】Error: user.api 27:9 syntax error: expected ‘:‘ | ‘IDENT‘ | ‘INT‘, got ‘(‘ 报错解决方案及api路由注意事项

            【Go-Zero】Error: only one service expected goctl一键转换生成rpc服务错误解决方案

            【Go-Zero】【error】 failed to initialize database, got error Error 1045 (28000):报错解决方案

            【Go-Zero】Error 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)报错解决方案

            【Go-Zero】type mismatch for field “Auth.AccessSecret“, expect “string“, actual “number“报错解决方案

            【Go-Zero】Error: user.api 30:2 syntax error: expected ‘)‘ | ‘KEY‘, got ‘IDENT‘报错解决方案

            【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案


            Go面试向

            【Go面试向】defer与time.sleep初探

            【Go面试向】defer与return的执行顺序初探

            【Go面试向】Go程序的执行顺序

            【Go面试向】rune和byte类型的认识与使用

            【Go面试向】实现map稳定的有序遍历的方式

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon