Sklenka281 2025-08-05 17:47 采纳率: 0%
浏览 8

TBSI项目复现过程的问题


(tbsi) aust-ai@amax:~/TBSI$ python tracking/train.py --script tbsi_track --config vitb_256_tbsi_32x4_4e4_lasher_15ep_in1k --save_dir ./output/vitb_256_tbsi_32x4_4e4_lasher_15ep_in1k --mode multiple --nproc_per_node 4
/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launch.py:181: FutureWarning: The module torch.distributed.launch is deprecated
and will be removed in future. Use torchrun.
Note that --use-env is set by default in torchrun.
If your script expects `--local-rank` argument to be set, please
change it to read from `os.environ['LOCAL_RANK']` instead. See 
https://pytorch.org/docs/stable/distributed.html#launch-utility for 
further instructions

  warnings.warn(
WARNING:torch.distributed.run:
*****************************************
Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed. 
*****************************************
usage: run_training.py [-h] --script SCRIPT --config CONFIG [--cudnn_benchmark CUDNN_BENCHMARK]
                       [--local_rank LOCAL_RANK] [--save_dir SAVE_DIR] [--seed SEED] [--use_lmdb {0,1}]
                       [--script_prv SCRIPT_PRV] [--config_prv CONFIG_PRV] [--use_wandb {0,1}]
                       [--distill {0,1}] [--script_teacher SCRIPT_TEACHER] [--config_teacher CONFIG_TEACHER]
run_training.py: error: unrecognized arguments: --local-rank=0
usage: run_training.py [-h] --script SCRIPT --config CONFIG [--cudnn_benchmark CUDNN_BENCHMARK]
                       [--local_rank LOCAL_RANK] [--save_dir SAVE_DIR] [--seed SEED] [--use_lmdb {0,1}]
                       [--script_prv SCRIPT_PRV] [--config_prv CONFIG_PRV] [--use_wandb {0,1}]
                       [--distill {0,1}] [--script_teacher SCRIPT_TEACHER] [--config_teacher CONFIG_TEACHER]
run_training.py: error: unrecognized arguments: --local-rank=3
usage: run_training.py [-h] --script SCRIPT --config CONFIG [--cudnn_benchmark CUDNN_BENCHMARK]
                       [--local_rank LOCAL_RANK] [--save_dir SAVE_DIR] [--seed SEED] [--use_lmdb {0,1}]
                       [--script_prv SCRIPT_PRV] [--config_prv CONFIG_PRV] [--use_wandb {0,1}]
                       [--distill {0,1}] [--script_teacher SCRIPT_TEACHER] [--config_teacher CONFIG_TEACHER]
run_training.py: error: unrecognized arguments: --local-rank=2
usage: run_training.py [-h] --script SCRIPT --config CONFIG [--cudnn_benchmark CUDNN_BENCHMARK]
                       [--local_rank LOCAL_RANK] [--save_dir SAVE_DIR] [--seed SEED] [--use_lmdb {0,1}]
                       [--script_prv SCRIPT_PRV] [--config_prv CONFIG_PRV] [--use_wandb {0,1}]
                       [--distill {0,1}] [--script_teacher SCRIPT_TEACHER] [--config_teacher CONFIG_TEACHER]
run_training.py: error: unrecognized arguments: --local-rank=1
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 2) local_rank: 0 (pid: 3292375) of binary: /home/aust-ai/.conda/envs/tbsi/bin/python
Traceback (most recent call last):
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launch.py", line 196, in <module>
    main()
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launch.py", line 192, in main
    launch(args)
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launch.py", line 177, in launch
    run(args)
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/run.py", line 785, in run
    elastic_launch(
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launcher/api.py", line 134, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/home/aust-ai/.conda/envs/tbsi/lib/python3.8/site-packages/torch/distributed/launcher/api.py", line 250, in launch_agent
    raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError: 
============================================================
lib/train/run_training.py FAILED
------------------------------------------------------------
Failures:
[1]:
  time      : 2025-08-05_17:38:23
  host      : amax
  rank      : 1 (local_rank: 1)
  exitcode  : 2 (pid: 3292376)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
[2]:
  time      : 2025-08-05_17:38:23
  host      : amax
  rank      : 2 (local_rank: 2)
  exitcode  : 2 (pid: 3292377)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
[3]:
  time      : 2025-08-05_17:38:23
  host      : amax
  rank      : 3 (local_rank: 3)
  exitcode  : 2 (pid: 3292378)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
------------------------------------------------------------
Root Cause (first observed failure):
[0]:
  time      : 2025-08-05_17:38:23
  host      : amax
  rank      : 0 (local_rank: 0)
  exitcode  : 2 (pid: 3292375)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
============================================================
(tbsi) aust-ai@amax:~/TBSI$ 

在复现TBSI项目的时候,一开始提示PyTorch版本和服务器的4090不兼容,然后pytorch升级到2.0.1后,就开始这样报错了,用改之后还是一直报错,有同志帮忙解决一下吗

  • 写回答

4条回答 默认 最新

  • 紫雾凌寒 新星创作者: 人工智能技术领域 2025-08-05 17:47
    关注

    让 “紫雾凌寒” 来帮你回答,本回答结合 DeepSeek

    如果还有问题,请评论或点击头像私信,如果有帮助到您, 请关注、采纳、点赞

    1. 关键点分析
      - 这是一个在TBSI项目复现过程中执行特定训练脚本的命令。
      - 命令行中指定了使用Python运行tracking/train.py脚本,并通过--script参数指定为tbsi_track,通过--config参数指定了配置文件为vitb_256_tbsi_32x
      - 可能出现的问题包括:脚本本身存在语法错误、配置文件格式不正确、依赖的库未安装或版本不兼容等。
    2. 解决方案
      - 检查脚本语法

      • 打开tracking/train.py文件,仔细检查代码是否存在语法错误。例如,是否有未闭合的括号、引号不匹配等问题。可以使用Python的语法检查工具,如flake8等(如果已安装)。
      • 检查配置文件
      • 确认vitb_256_tbsi_32x配置文件的格式是否正确。它可能是某种特定格式的配置文件,例如JSON、YAML等。
      • 检查配置文件中的参数是否正确,是否与脚本中的参数解析逻辑相匹配。例如,如果配置文件中指定了某些模型参数,脚本是否正确读取并使用这些参数。
      • 检查依赖库
      • 确保运行该脚本所需的所有依赖库都已安装。可以查看项目的文档,了解具体需要哪些库。
      • 例如,如果项目依赖于特定版本的torch,可以使用以下命令检查torch的安装情况:
        python import torch print(torch.__version__)
      • 如果依赖库未安装,可以使用pip进行安装。例如,如果需要安装numpy库,可以运行pip install numpy
      • 调试输出
      • 在脚本中添加一些调试输出语句,例如在关键的函数调用或参数处理处打印相关信息。
      • 例如,在tracking/train.py中可以添加:
        ```python
        import sys

      def main():
      print(“Starting to process the script with config:”, sys.argv)
      # 原有代码
      if name == “main”:
      main()
      `` - 这样可以在运行命令时看到传入脚本的参数等信息,帮助定位问题。 3. **多种解决方案的优缺点**: - **检查脚本语法**: - **优点**:简单直接,能快速发现明显的语法错误,是解决问题的基础步骤。 - **缺点**:对于复杂的逻辑错误难以发现,需要对代码逻辑有一定理解。 - **检查配置文件**: - **优点**:配置文件错误是常见问题,仔细检查能快速定位问题所在,尤其是配置参数与脚本逻辑不匹配的情况。 - **缺点**:如果配置文件格式复杂,可能需要花费较多时间理解其结构和参数含义。 - **检查依赖库**: - **优点**:确保运行环境正确,能解决因库缺失或版本不兼容导致的问题。 - **缺点**:可能需要安装多个库,并且在不同环境中安装库可能会遇到权限等问题。 - **调试输出**: - **优点**:能直观看到脚本运行时的参数传递等情况,有助于快速定位问题在哪个环节出现。 - **缺点**:需要修改脚本代码,可能会影响脚本的原始结构,并且如果调试输出过多可能会干扰正常运行日志。 4. **总结**: - 针对运行python tracking/train.py –script tbsi_track –config vitb_256_tbsi_32x`出现的问题,首先从代码语法、配置文件、依赖库以及调试输出等方面进行排查。通过逐步检查这些方面,能够较为全面地找出导致问题的原因,进而解决在TBSI项目复现过程中遇到的运行错误。

    希望以上解答对您有所帮助。如果您有任何疑问,欢迎在评论区提出。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月5日