You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to run the DuoRat code from the Docker container, and experience issues with loading the jsonnet files
root@duorat:/app# python scripts/train.py --config configs/duorat/duorat-finetune-bert-large.jsonnet --logdir logdir/duorat-bert
Traceback (most recent call last):
File "scripts/train.py", line 519, in <module>
main()
File "scripts/train.py", line 486, in main
config = json.loads(_jsonnet.evaluate_file(args.config))
RuntimeError: RUNTIME ERROR: couldn't open import "../../data/train.libsonnet": no match locally or in the Jsonnet library paths.
configs/duorat/duorat-base.libsonnet:5:17-52 object <anonymous>
configs/duorat/duorat-base.libsonnet:(4:11)-(7:6) object <anonymous>
During manifestation
And if I sanity check and look in the configs, I am able to find these files
I have of course already googled around to see what the source of this error could be, but I can't seem to find anything helpful enough. Would you advise maybe that I try to hardcode this, or do you have any intuition as to why I might be getting this error?
-- Edit with more details
I suspect the problem may have to do with this command, where /logdir and /data are remounted onto home.
Because I am not running the docker container locally, I did not use this command. Rather, I created an image with google cloud platform, and then I spin up the image as an interactive bash session to work with.
I tried making symlinks and also using mount where the docker command re-mounts them, but that hasn't fixed the problem. For example:
root@duorat:/app# mount $PWD/data/ /app/data
mount: /app/data/: mount point does not exist.
Thanks so much!
The text was updated successfully, but these errors were encountered:
Hi @hclent, thanks for checking out our code!
The problem you describe seems to be related to the fact that the data directory is empty. ../../data/train.libsonnet is a jsonnet file that defines which databases and examples are considered training data. We put this information with the Spider data itself rather than in the config folder. Since the data folder is unavailable, the train.libsonnet file can't be loaded by the jsonnet interpreter, and the script crashes.
Now, it seems the solution is to make the data available in that /app/data folder.
I'm not sure what your google cloud setup is, but I think your last mount command fails because the /app/data folder doesn't exist. You should try creating it with mkdir. docker does that for you, but when you use mount you have to do it yourself. Furthermore, since mount is from a different time where the typical workflow was to mount partitions and not folders, you need to specify the method by which the folder should be mounted. I recommend to try:
Hey there!
I am trying to run the DuoRat code from the Docker container, and experience issues with loading the jsonnet files
And if I sanity check and look in the configs, I am able to find these files
I have of course already googled around to see what the source of this error could be, but I can't seem to find anything helpful enough. Would you advise maybe that I try to hardcode this, or do you have any intuition as to why I might be getting this error?
-- Edit with more details
I suspect the problem may have to do with this command, where /logdir and /data are remounted onto home.
Because I am not running the docker container locally, I did not use this command. Rather, I created an image with google cloud platform, and then I spin up the image as an interactive bash session to work with.
I tried making symlinks and also using
mount
where the docker command re-mounts them, but that hasn't fixed the problem. For example:Thanks so much!
The text was updated successfully, but these errors were encountered: