-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KeyError: 'slots' #20
Comments
Hi, what was the command you ran? Please check these few lines to make sure and print what you have for your unified_meta. |
Hi, running those lines gave this as output for unified_meta:
In the definition of the function:
What is considered as meta within the datasets? And does it exist in specific ones, and not the others? Because i'm only using 5 of them, within this command: |
The problem here is that some datasets you used do not have the DST labels to be trained as defined similarly to MultiWOZ. You can first run only using Multiwoz and check what it has in the unified_meta or you can check the DST data loader of Multiwoz as well. |
Hi Jason, I have encountered the same issue. I only run the Multiwoz datasets (--dataset='["multiwoz"]' ) and I print out the unified_meta and here is the output: {'others': None, 'num_labels': 0}. Could you kindly advise on this? I have tried Multiwoz 2.0 and Multiwoz 2.1 and both encountered the same issue. Here are the error messages: Thanks a lot, Rich |
Can you provide the full command you were running? |
gpu=$1 CUDA_VISIBLE_DEVICES=$gpu python my_tod_pretraining.py |
./run_tod_lm_pretraining.sh 2 bert bert-base-uncased save/pretrain/ToD-BERT-JNT --only_last_turn --add_rs_loss |
Hi Jason, I have pasted the full command as above. Thanks a lot for your prompt reply. Rich |
Are you trying to run a pretraining task or DST task? If the pretraining task, you need to use task=usdl with run_tod_lm_pretraining.sh If DST task, you need to run the command here |
Oh I see... I am running a DST task. Thanks a lot for your help! |
Hi Jason, I tried using only multiwoz, but unified_meta remained the same. Any more things I could check? Thank you |
@aliyabannaeva Can you check if you can run this command? If not, please copy and paste the error message here, thanks. |
Hi, i'm getting an error i cannot seem to get past. I've included it below:
Traceback (most recent call last): File "main.py", line 109, in <module> trn_loader = get_loader(args, "train", tokenizer, datasets, unified_meta) File "/content/ToD-BERT/utils/utils_general.py", line 58, in get_loader dataset = globals()["Dataset_"+task](data_info, tokenizer, args, unified_meta, mode, args["max_seq_length"]) File "/content/ToD-BERT/utils/dataloader_dst.py", line 20, in __init__ self.slots = list(unified_meta["slots"].keys()) KeyError: 'slots'
Is this to do with a specific dataset i need to include in the list of datasets to use? Because i do not want to use them all,just the multiwozs.
The text was updated successfully, but these errors were encountered: