记录一个debug时的经验:
VS code extension名称 | 版本 |
---|---|
Python | v2024.8.1 |
Python Debugger | v2024.6.0 |
我配置的project运行 train.py 时需要在 terminal 输入参数 hydra.run.dir=xxx
我想用 vscode debug 查看内部代码,按以往的经验需要将args
写入launch.json
,但这次出现了问题。
我以往的写法如下,会一直显示 ValueError: HydraConfig was not set
:
bash
"args": [
"--config-dir",
".",
"hydra.run.dir",
"data/xxx"
即使将参数利用 sys.argv.append('hydra.run.dir=data/xxx')
写入代码里也依然报这个错误。
查了很久发现,发现原因是:hydra
库接收 key=value
格式的参数,所以应该写为:
bash
"args": [
"--config-dir=.",
"hydra.run.dir='data/xxx'"
这样就可以正常debug了。