-
Notifications
You must be signed in to change notification settings - Fork 0
/
flan_preprocessing_constants.py
671 lines (665 loc) · 51.1 KB
/
flan_preprocessing_constants.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
ALL_FLAN_TASKS = {'aeslc_10templates',
'ag_news_subset_10templates',
'anli_r1_10templates',
'anli_r2_10templates',
'anli_r3_10templates',
'arc_challenge_10templates',
'arc_easy_10templates',
'bool_q_10templates',
'cb_10templates',
'cnn_dailymail_10templates',
'cola_10templates',
'common_gen_10templates',
'copa_10templates',
'coqa_10templates',
'cosmos_qa_10templates',
'dart_10templates',
'definite_pronoun_resolution_10templates',
'drop_10templates',
'e2e_nlg_10templates',
'fix_punct_10templates',
'gigaword_10templates',
'glue_mrpc_10templates',
'glue_qqp_10templates',
'hellaswag_10templates',
'imdb_reviews_10templates',
'math_dataset_10templates',
'mnli_matched_10templates',
'mnli_mismatched_10templates',
'multi_news_10templates',
'multirc_10templates',
'natural_questions_10templates',
'openbookqa_10templates',
'opinion_abstracts_idebate_10templates',
'opinion_abstracts_rotten_tomatoes_10templates',
'para_crawl_enes_10templates',
'paws_wiki_10templates',
'piqa_10templates',
'qnli_10templates',
'quac_10templates',
'record_10templates',
'rte_10templates',
'samsum_10templates',
'sentiment140_10templates',
'snli_10templates',
'squad_v1_10templates',
'squad_v2_10templates',
'sst2_10templates',
'story_cloze_10templates',
'stsb_10templates',
'trec_10templates',
'trivia_qa_10templates',
'true_case_10templates',
'web_nlg_en_10templates',
'wic_10templates',
'wiki_lingua_english_en_10templates',
'wmt14_enfr_10templates',
'wmt16_translate_csen_10templates',
'wmt16_translate_deen_10templates',
'wmt16_translate_fien_10templates',
'wmt16_translate_roen_10templates',
'wmt16_translate_ruen_10templates',
'wmt16_translate_tren_10templates',
'wnli_10templates',
'word_segment_10templates',
'wsc_10templates',
'yelp_polarity_reviews_10templates'}
ALL_FLAN_NLU_TASKS = ['multirc_10templates', 'cb_10templates', 'cola_10templates', 'glue_qqp_10templates',
'piqa_10templates', 'cosmos_qa_10templates', 'yelp_polarity_reviews_10templates',
'paws_wiki_10templates', 'mnli_mismatched_10templates', 'record_10templates',
'glue_mrpc_10templates',
'imdb_reviews_10templates', 'openbookqa_10templates', 'anli_r1_10templates',
'anli_r3_10templates',
'arc_easy_10templates', 'wic_10templates', 'ag_news_subset_10templates',
'definite_pronoun_resolution_10templates', 'hellaswag_10templates', 'wnli_10templates',
'mnli_matched_10templates', 'wsc_10templates', 'arc_challenge_10templates', 'copa_10templates',
'rte_10templates', 'anli_r2_10templates', 'qnli_10templates', 'sentiment140_10templates',
'stsb_10templates', 'snli_10templates', 'story_cloze_10templates', 'trec_10templates',
'bool_q_10templates', 'sst2_10templates']
ALL_FLAN_NLU_TASKS = ['multirc_10templates', 'cb_10templates', 'cola_10templates', 'glue_qqp_10templates', 'yelp_polarity_reviews_10templates', 'paws_wiki_10templates', 'mnli_mismatched_10templates', 'glue_mrpc_10templates', 'imdb_reviews_10templates', 'anli_r1_10templates', 'anli_r3_10templates', 'wic_10templates', 'ag_news_subset_10templates', 'wnli_10templates', 'mnli_matched_10templates', 'wsc_10templates', 'rte_10templates', 'anli_r2_10templates', 'qnli_10templates', 'sentiment140_10templates', 'stsb_10templates', 'snli_10templates', 'trec_10templates', 'bool_q_10templates', 'sst2_10templates']
ALL_GLUE_TASKS = ["cola", "sst2", "qqp", "mnli", "mnli_matched", "mnli_mismatched", "qnli", "wnli", "rte", "mrpc"]
DATASET_TASKNAME_TO_ROOT_TASKNAME = {'aeslc_10templates': 'aeslc', 'arc_challenge_10templates': 'arc',
'cnn_dailymail_10templates': 'cnn_dailymail',
'wmt14_enfr_10templates': 'wmt14_enfr',
'para_crawl_enes_10templates': 'para_crawl',
'wiki_lingua_english_en_10templates': 'wiki_lingua_english_en',
'paws_wiki_10templates': 'paws_wiki', 'arc_easy_10templates': 'arc',
'hellaswag_10templates': 'hellaswag',
'natural_questions_10templates': 'natural_questions',
'cosmos_qa_10templates': 'cosmos_qa', 'record_10templates': 'record',
'wnli_10templates': 'wnli', 'rte_10templates': 'rte', 'quac_10templates': 'quac',
'squad_v2_10templates': 'squad_v2', 'fix_punct_10templates': 'fix_punct',
'copa_10templates': 'copa', 'coqa_10templates': 'coqa',
'opinion_abstracts_idebate_10templates': 'opinion_abstracts_idebate',
'opinion_abstracts_rotten_tomatoes_10templates': 'opinion_abstracts_rotten_tomatoes',
'mnli_matched_10templates': 'mnli', 'trec_10templates': 'trec',
'multi_news_10templates': 'multi_news', 'story_cloze_10templates': 'story_cloze',
'squad_v1_10templates': 'squad_v1', 'ag_news_subset_10templates': 'ag_news_subset',
'cola_10templates': 'cola', 'wsc_10templates': 'wsc', 'sst2_10templates': 'sst2',
'wmt16_translate_tren_10templates': 'wmt16_translate',
'samsum_10templates': 'samsum',
'openbookqa_10templates': 'openbookqa', 'sentiment140_10templates': 'sentiment140',
'bool_q_10templates': 'bool_q', 'multirc_10templates': 'multirc',
'e2e_nlg_10templates': 'e2e_nlg', 'common_gen_10templates': 'common_gen',
'gigaword_10templates': 'gigaword',
'wmt16_translate_fien_10templates': 'wmt16_translate', 'stsb_10templates': 'stsb',
'wmt16_translate_roen_10templates': 'wmt16_translate',
'wmt16_translate_ruen_10templates': 'wmt16_translate',
'anli_r1_10templates': 'anli',
'wmt16_translate_csen_10templates': 'wmt16_translate', 'wic_10templates': 'wic',
'glue_mrpc_10templates': 'glue_mrpc', 'cb_10templates': 'cb',
'piqa_10templates': 'piqa', 'anli_r3_10templates': 'anli',
'glue_qqp_10templates': 'glue_qqp', 'snli_10templates': 'snli',
'math_dataset_10templates': 'math_dataset', 'web_nlg_en_10templates': 'web_nlg_en',
'dart_10templates': 'dart', 'word_segment_10templates': 'word_segment',
'true_case_10templates': 'true_case', 'qnli_10templates': 'qnli',
'imdb_reviews_10templates': 'imdb_reviews', 'anli_r2_10templates': 'anli',
'definite_pronoun_resolution_10templates': 'definite_pronoun_resolution',
'drop_10templates': 'drop',
'yelp_polarity_reviews_10templates': 'yelp_polarity_reviews',
'wmt16_translate_deen_10templates': 'wmt16_translate',
'trivia_qa_10templates': 'trivia_qa', 'mnli_mismatched_10templates': 'mnli'}
ROOT_TASKNAME_TO_KEYWORDS = {
'rte': ['options_', 'premise', 'hypothesis', 'answer'],
'wsc': ['text2', 'options_', 'answer', 'text1', 'context'],
'wsc273': ['options_', 'answer', 'context'],
'wic': ['sentence2', 'options_', 'sentence1', 'answer', 'word'],
'record': ['passage', 'query', 'answer', 'options_str'],
'cosmos_qa': ['options_', 'answer', 'context', 'question'],
'ag_news_subset': ['options_', 'answer', 'title', 'text'],
'bool_q': ['text', 'title', 'options_', 'question', 'answer'],
'definite_pronoun_resolution': ['options_', 'answer', 'pronoun', 'sentence'],
'glue_mrpc': ['options_', 'answer', 'sentence1', 'sentence2'],
'glue_qqp': ['question1', 'answer', 'question2', 'options_'],
'imdb_reviews': ['options_', 'answer', 'text'],
'paws_wiki': ['options_', 'answer', 'sentence1', 'sentence2'],
'sentiment140': ['options_', 'answer', 'text'],
'story_cloze': ['options_', 'answer', 'context'],
'copa': ['options_', 'premise', 'answer', 'question'],
'winogrande': ['options_', 'answer', 'context'],
'yelp_polarity_reviews': ['options_', 'answer', 'text'],
'arc': ['options_', 'answer', 'question'],
'anli': ['options_', 'answer', 'hypothesis', 'context'],
'multirc': ['response', 'options_', 'question', 'paragraph', 'answer'],
'cb': ['options_', 'premise', 'hypothesis', 'answer'],
'cola': ['options_', 'answer', 'sentence'],
'sst2': ['options_', 'answer', 'sentence'],
'mnli': ['options_', 'premise', 'hypothesis', 'answer'],
'qnli': ['options_', 'answer', 'sentence', 'question'],
'wnli': ['options_', 'answer', 'sentence1', 'sentence2'],
'snli': ['options_', 'premise', 'hypothesis', 'answer'],
'trec': ['options_', 'answer', 'text'],
'stsb': ['options_', 'answer_str', 'sentence1', 'sentence2'],
'hellaswag': ['options_', 'answer', 'context'],
'piqa': ['options_', 'answer', 'goal'],
'openbookqa': ['options_', 'answer', 'fact', 'question'],
}
NLU_REGEX_PATTERN = {
"rte": [
r"^(?P<premise>.+?)\n\nBased on the paragraph above can we conclude that \"(?P<hypothesis>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\n\nBased on that paragraph can we conclude that this sentence is true\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\n\nCan we draw the following conclusion\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\nDoes this next sentence follow, given the preceding text\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\nCan we infer the following\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Read the following paragraph and determine if the hypothesis is true:\n\n(?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Read the text and determine if the sentence is true:\n\n(?P<premise>.+?)\n\nSentence: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Can we draw the following hypothesis from the context\? \n\nContext:\n\n(?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Determine if the sentence is true based on the text below:\n(?P<hypothesis>.+?)\n\n(?P<premise>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
],
"wsc": [
(r"^(?P<context>.+?)\n\nAre \"(?P<text1>.+?)\" and \"(?P<text2>.+?)\" the same entity\?\n\n(?P<options_>OPTIONS:\n-.+)$","{answer}"),
(r"^(?P<context>.+?)\n\nDo \"(?P<text1>.+?)\" and \"(?P<text2>.+?)\" have the same meaning\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Given the following context\n\n(?P<context>.+?)\n\nAre \"(?P<text1>.+?)\" and \"(?P<text2>.+?)\" the same\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\n\nDo \"(?P<text2>.+?)\" and \"(?P<text1>.+?)\" mean the same thing\?\n\n(?P<options_>OPTIONS:\n-.+)$","{answer}"),
(r"^(?P<context>.+?)\n\nAre \"(?P<text2>.+?)\" and \"(?P<text1>.+?)\" the same thing in the aforementioned sentence\?\n\n(?P<options_>OPTIONS:\n-.+)$","{answer}"),
(r"^Context:(?P<context>.+?)\n\nIs \"(?P<text2>.+?)\" the same as \"(?P<text1>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$","{answer}"),
(r"^Consider this sentence: (?P<context>.+?)\n\nAre \"(?P<text2>.+?)\" and \"(?P<text1>.+?)\" the same\?\n\n(?P<options_>OPTIONS:\n-.+)$","{answer}"),
(r"^Are \"(?P<text1>.+?)\" and \"(?P<text2>.+?)\" the same in this sentence\?\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Is \"(?P<text1>.+?)\" the same as \"(?P<text2>.+?)\" in this sentence\?\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Do \"(?P<text1>.+?)\" and \"(?P<text2>.+?)\" point to the same thing in the following sentence\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}")
],
"wsc273": [
(r"^(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Complete the passage\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^How does this following sentence end\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^What is the most logical completion for the following text\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^How does this text end\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^What happens next\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Complete the following sentence\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Fill in the remainder of the sentence\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^What is the next event\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Complete the rest of the sentence\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}")
],
"wic": [
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\nDoes the word \"(?P<word>.+)\" mean the same thing in the above two sentences\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Sentence 1: (?P<sentence1>.+)\nSentence 2: (?P<sentence2>.+)\nDoes (?P<word>.+) mean the same thing in these two sentences\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Here is one sentence: (?P<sentence1>.+)\nHere is another sentence: (?P<sentence2>.+)\nDoes the term (?P<word>.+) mean the same thing in both these sentences\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^In these two sentences \(1\) (?P<sentence1>.+) \(2\) (?P<sentence2>.+), does the word (?P<word>.+) mean the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Does word \"(?P<word>.+)\" have the same meaning in the following two sentences\?\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Is the word \"(?P<word>.+)\" used in the same way in the following two sentences\?\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Does the word \"(?P<word>.+)\" have the same definition in the next two sentences\?\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Is (?P<word>.+) used to mean the same thing in the next two sentences\?\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Does \"(?P<word>.+)\" mean the same thing in these two sentences\?\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Does the word \"(?P<word>.+)\" mean the same thing in \"(?P<sentence1>.+)\" and \"(?P<sentence2>.+)\"\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}")
],
"record": [
(r"^Complete the passage\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$", "{answer}"),
(
r"^Find the right ending to this passage\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^What's the most logical way to complete this passage\?\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Write the next sentence\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(r"^How does this story end\?\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Write the last sentence in this story\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Compose the next sentence for this paragraph\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^What is the most logical completion of this news story\?\.\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}"),
(r"^How does the sentence end\?\n\n(?P<passage>.+)\n\n(?P<query>.+)\n\n(?P<options_str>OPTIONS:\n-.+)$",
"{answer}")
],
"cosmos_qa": [
(r"^(?P<context>.+?)\n\nQuestion: (?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\n\n(?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\n\nAnswer the following question: (?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<context>.+?)\n\nBased on the preceding passage, answer the following question (?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<context>.+?)\n\nGive answer the following question using evidence from the above passage: (?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Context:(?P<context>.+?)\nQuestion (?P<question>.+?)\nAnswer:\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(
r"^Read the following article and answer the question.\n\n(?P<context>.+?)\n\n(?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Answer the question about text:\n\n(?P<context>.+?)\n\n(?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
],
"ag_news_subset": [
(r"^(?P<title>.+?)\n\n(?P<text>.+?)\n\nWhat is this text about\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<title>.+?)\n\n(?P<text>.+?)\n\nWhich topic is this article about\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<text>.+?)\nWhich is the best summary of this article\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<text>.+?)\nWhat is this text about\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<text>.+?)\n\nWhat best summarizes the content of the above article\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Which is this about\?\n\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Which is an appropriate title for this article\?\n\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Select the topic that this about:\n\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
],
"bool_q": [
r"^(?P<text>.+?)\n\nCan we conclude that (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\nIs it true that (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\n(?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Text: (?P<text>.+?)\n\nQuestion: (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\nWhat's the best answer to this question: (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\nBased on the above text, what's the best answer to this question: (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\nAnswer this question, making sure that the answer is supposed by the text: (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\nIs the following statement correct based on the text\n\n(?P<question>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<title>.+?)\n\n(?P<text>.+?)\n\nIs this statement correct \"(?P<question>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Is it true that (?P<question>.+?) based on the following text\?\n\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$"
],
"definite_pronoun_resolution": [
(r"^(?P<sentence>.+?)\n\nWho is (?P<pronoun>.+?) referring to\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<sentence>.+?)\n\nWho is \"(?P<pronoun>.+?)\" in this prior sentence\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<sentence>.+?)\n\nWho is (?P<pronoun>.+?) referring to in this sentence\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<sentence>.+?)\nTell me who (?P<pronoun>.+?) is.\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<sentence>.+?)\nBased on this sentence, who is (?P<pronoun>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Who is (?P<pronoun>.+?) in the following sentence\?\n\n(?P<sentence>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Which entity is (?P<pronoun>.+?) this sentence\?\n\n(?P<sentence>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Who is (?P<pronoun>.+?) referring to in the following sentence\?\n(?P<sentence>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Which person is (?P<pronoun>.+?) referring to in the following sentence\?\n(?P<sentence>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<sentence>.+?)\nWho is \"(?P<pronoun>.+?)\"\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}")
],
"glue_mrpc": [
(
r"^Here are two sentences:\n(?P<sentence1>.+)\n(?P<sentence2>.+)\nDo they have the same meaning\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Here are two sentences:\n\n(?P<sentence1>.+)\n\n(?P<sentence2>.+)\nAre the two sentences saying the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\nDo the above sentences mean the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n\n(?P<sentence2>.+)\n\nPlease tell me if the sentences above mean the same\.\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\nAre these sentences conveying the same meaning\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\nIf the first sentence is true, is the second one also true\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\nAre these two sentences paraphrases of each other\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Do the following two sentences have the same meaning\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Do these two sentences mean the same thing\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Do these sentences have the same meaning\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}")
],
"glue_qqp": [
(
r"^(?P<question1>.+)\n(?P<question2>.+)\nWould you say that these questions are the same\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<question1>.+)\n(?P<question2>.+)\nDo those questions have the same meaning\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<question1>.+)\n(?P<question2>.+)\n\nAre these two questions inquiring about the same information\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<question1>.+)\n\n(?P<question2>.+)\n\nPlease tell me if those questions are the same\.\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<question1>.+)\n\n(?P<question2>.+)\n\nAre these two questions paraphrases of each other\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^First question: (?P<question1>.+)\nSecond question: (?P<question2>.+)\nAre these two questions asking the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Question 1: (?P<question1>.+)\nQuestion 2: (?P<question2>.+)\nAre questions 1 and 2 asking the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Question 1: (?P<question1>.+)\nQuestion 2: (?P<question2>.+)\n\nWould the answer to these two questions be the same\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Are the following two questions the same\?\n(?P<question1>.+)\n(?P<question2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Do these questions have the same meaning\?\n(?P<question1>.+)\n(?P<question2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}")
],
"imdb_reviews": [
(r"^(?P<text>.+)\nWhat is the sentiment of this review\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<text>.+)\nWould you say this review is positive or negative\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<text>.+)\nHow would you describe the sentiment of this review\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<text>.+)\n\nIs the sentiment of this review positive or negative\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<text>.+)\n\nDid this review think positively or negatively of the movie\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Please tell me the sentiment of the following review: (?P<text>.+)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Determine the sentiment:\n\n(?P<text>.+)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
],
"paws_wiki": [
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\n\nDo these sentences mean the same thing\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence1>.+)\n(?P<sentence2>.+)\n\nAre these two sentences paraphrases of each other\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^1\. (?P<sentence1>.+)\n2\. (?P<sentence2>.+)\n\nAre these two sentences paraphrases of each other\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^\(1\) (?P<sentence1>.+)\n\(2\) (?P<sentence2>.+)\n\nDo these two sentences mean the same thing\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Sentence 1: (?P<sentence1>.+)\nSentence 2: (?P<sentence2>.+)\n\nDo these two sentences convey the same information\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Do these two sentences from wikipedia have the same meaning\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Same meaning\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Are these paraphrases\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(
r"^Do these mean the same\?\n(?P<sentence1>.+)\n(?P<sentence2>.+)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
],
"sentiment140": {
r"^(?P<text>.+?)\nWhat is the sentiment of this tweet\?\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\nHow would the sentiment of this tweet be described\?\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<text>.+?)\n\nDescribe the sentiment embodied by this tweet\.\n(?P<options_>OPTIONS:\n-.+)$",
r"^Tweet: (?P<text>.+?)\nPredict the sentiment of this tweet\.\n(?P<options_>OPTIONS:\n-.+)$",
r"^What is the sentiment of the following tweet\?\nTweet:(?P<text>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
r"^How would one describe the sentiment of this tweet\?\n(?P<text>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
},
"story_cloze": {
r"^(?P<context>.+?)\n\nPredict the next sentence\.\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<context>.+?)\n\nWhat is the next sentence\?\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<context>.+?)\n\nWhat is a natural next sentence\?\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<context>.+?)\n\nWrite the next sentence\.\n(?P<options_>OPTIONS:\n-.+)$",
r"^Context: (?P<context>.+?)\n\nNow do a next sentence writing task\.\n(?P<options_>OPTIONS:\n-.+)$",
r"^Story: (?P<context>.+?)\n\nWhat happened next\?\n(?P<options_>OPTIONS:\n-.+)$",
r"^Write the next sentence in this story\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
r"^Continue the following story\.\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
},
"copa": [
r"^(?P<premise>.+?) What is the (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Here is a premise:(?P<premise>.+?)\n\nWhat is the (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\n\nWhat is the (?P<question>.+?) of the preceding sentence\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\n\nWhat is a plausible (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Based on the following sentence, what is the (?P<question>.+?)\?\n\n(?P<premise>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^(?P<premise>.+?)\n\n(?P<question>.+?): \n\n(?P<options_>OPTIONS:\n-.+)$",
r"^What is the (?P<question>.+?) of the following sentence\?\n\n(?P<premise>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Answer the following question about this sentence:\n\n(?P<premise>.+?)\n\nWhat is the (?P<question>.+?)\?\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"winogrande": [
r"^How does the sentence end\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Write the next sentence\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Continue the following story\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Complete the following sentence\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Continue writing the following text\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"yelp_polarity_reviews": [
r"^(?P<text>.+?)\nIs this review positive or negative\?\n(?P<options_>OPTIONS:.+)$",
r"^(?P<text>.+?)\nWhat is the sentiment of this review\?\n(?P<options_>OPTIONS:.+)$",
r"^(?P<text>.+?)\nWas this review given positively or negatively\?\n(?P<options_>OPTIONS:.+)$",
r"^(?P<text>.+?)\nHow would this review be described in terms of sentiment\?\n(?P<options_>OPTIONS:.+)$",
r"^Is the following review positive or negative\?\n\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:.+)$",
r"^What is the sentiment of the following review\?\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:.+)$",
r"^How might one describe the sentiment of this review\?\n(?P<text>.+?)\n\n(?P<options_>OPTIONS:.+)$",
],
"arc": [
r"^(?P<question>.+?)\n\n(?P<options_>OPTIONS:.+)$",
r"^Question: (?P<question>.+?)\n\nAnswer:\n(?P<options_>OPTIONS:.+)$",
r"^Question: (?P<question>.+?)\n\nWhat is the correct answer to the question from the following choices\?\n(?P<options_>OPTIONS:.+)$",
r"^Q: (?P<question>.+?)\nWhat is the correct answer to this question\?\n(?P<options_>OPTIONS:.+)$",
r"^What is the answer\?\n\n(?P<question>.+?)\n\n(?P<options_>OPTIONS:.+)$",
r"^Answer the question\n\n(?P<question>.+?)\n\n(?P<options_>OPTIONS:.+)$",
r"^(?P<question>.+?)\n\nPick the answer from these options\n\n(?P<options_>OPTIONS:.+)$",
],
"anli": [
(r"^(?P<context>.+?)\n\nBased on the paragraph above can we conclude that \"(?P<hypothesis>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\n\nBased on that paragraph can we conclude that this sentence is true\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\n\nCan we draw the following conclusion\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\nDoes this next sentence follow, given the preceding text\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^(?P<context>.+?)\nCan we infer the following\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Read the following paragraph and determine if the hypothesis is true:\n\n(?P<context>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Read the text and determine if the sentence is true:\n\n(?P<context>.+?)\n\nSentence: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Can we draw the following hypothesis from the context\? \n\nContext:\n\n(?P<context>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Determine if the sentence is true based on the text below:\n(?P<hypothesis>.+?)\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
],
"multirc": [
(
r"^(?P<paragraph>.+?)\n\nQuestion: \"(?P<question>.+?)\"\n\nResponse: \"(?P<response>.+?)\"\n\nDoes the response correctly answer the question\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nQuestion: \"(?P<question>.+?)\"\n\nResponse: \"(?P<response>.+?)\"\n\nBased on the paragraph, is the response to the question is factually correct\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nQuestion: \"(?P<question>.+?)\"\n\nAnswer: \"(?P<response>.+?)\"\n\nIs this answer correct\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Paragraph: (?P<paragraph>.+?)\n\nQuestion: \"(?P<question>.+?)\"\n\nAnswer: \"(?P<response>.+?)\"\n\nBased on the paragraph, is this answer correct\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nBased on the paragraph, does the response \"(?P<response>.+?)\" correctly answer the question \"(?P<question>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nAccording to the above paragraph, the correct answer to the question \"(?P<question>.+?)\" is \"(?P<response>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nAfter reading the above, is \"(?P<response>.+?)\" the correct answer to the question \"(?P<question>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<paragraph>.+?)\n\nQuestion: \"(?P<question>.+?)\"\n\nAnswer: \"(?P<response>.+?)\"\n\nIs this answer to the question correct\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
],
"cb": [
(
r"^(?P<premise>.+?)\n\nBased on the paragraph above can we conclude that \"(?P<hypothesis>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<premise>.+?)\n\nBased on that paragraph can we conclude that this sentence is true\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<premise>.+?)\n\nCan we draw the following conclusion\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<premise>.+?)\nDoes this next sentence follow, given the preceding text\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^(?P<premise>.+?)\nCan we infer the following\?\n(?P<hypothesis>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Read the following paragraph and determine if the hypothesis is true:\n\n(?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Read the text and determine if the sentence is true:\n\n(?P<premise>.+?)\n\nSentence: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Can we draw the following hypothesis from the context\? \n\nContext:\n\n(?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Determine if the sentence is true based on the text below:\n(?P<hypothesis>.+?)\n\n(?P<premise>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
],
"cola": [
(
r"^Sentence: \"(?P<sentence>.+?)\"\nWould a linguist rate this sentence to be acceptable linguistically\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^(?P<sentence>.+?)\n\nHow would you consider the linguistic integrity of the preceding sentence\?\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Test sentence: \"(?P<sentence>.+?)\"\nIs this test sentence a correct grammatical English sentence\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Sentence: \"(?P<sentence>.+?)\"\nWould a linguist rate this sentence to be acceptable linguistically\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(r"^Is the following sentence linguistically acceptable\?\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Would the following sentence, by the strictest standards, be considered correct by a linguist\?\n\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Is the next sentence syntactically and semantically acceptable\?\n\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
(
r"^Would a linguist find the following sentence to be a valid English sentence grammatically\?\n\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"{answer}"),
],
"sst2": [
(r"^Review:\n(?P<sentence>.+?)\nIs this movie review sentence negative or positive\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Short movie review: (?P<sentence>.+?)\nDid the critic thinking positively or negatively of the movie\?\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Sentence from a movie review: (?P<sentence>.+?)\nWas the movie seen positively or negatively based on the preceding review\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^\"(?P<sentence>.+?)\"\nHow would the sentiment of this sentence be perceived\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Is the sentiment of the following sentence positive or negative\?\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^What is the sentiment of the following movie review sentence\?\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Would the following phrase be considered positive or negative\?\n\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Does the following review have a positive or negative opinion of the movie\?\n\n(?P<sentence>.+?)\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
],
"mnli": [
r"Premise: (?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)\n\nDoes the premise entail the hypothesis\?\n\n(?P<options_>OPTIONS:\n-.+)",
r"Premise: (?P<premise>.+?)\nHypothesis: (?P<hypothesis>.+?)\nIs the hypothesis entailed by the premise\?\n(?P<options_>OPTIONS:\n-.+)",
r"Here is a premise:\n(?P<premise>.+?)\n\nHere is a hypothesis:\n(?P<hypothesis>.+?)\n\nIs it possible to conclude that if the premise is true, then so is the hypothesis\?\n(?P<options_>OPTIONS:\n-.+)",
r"Sentence 1: (?P<premise>.+?)\n\nSentence 2: (?P<hypothesis>.+?)\nIs this second sentence entailed by the first sentence\?\n\n(?P<options_>OPTIONS:\n-.+)",
r"Sentence 1: (?P<premise>.+?)\n\nSentence 2: (?P<hypothesis>.+?)\n\nIf the first sentence is true, then is the second sentence true\?\n(?P<options_>OPTIONS:\n-.+)",
r"Based on the premise \"(?P<premise>.+?)\", can we conclude the hypothesis \"(?P<hypothesis>.+?)\" is true\?\n\n(?P<options_>OPTIONS:\n-.+)",
r"Premise: \"(?P<premise>.+?)\" If this premise is true, what does that tell us about whether it entails the hypothesis \"(?P<hypothesis>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)",
r"Premise:\n\"(?P<premise>.+?)\" Based on this premise, is the hypothesis \"(?P<hypothesis>.+?)\" true\?\n(?P<options_>OPTIONS:\n-.+)",
r"If (?P<premise>.+?), can we conclude that \"(?P<hypothesis>.+?)\"\?\n(?P<options_>OPTIONS:\n-.+)",
r"(?P<premise>.+?)\n\nDoes it follow that \"(?P<hypothesis>.+?)\"\?\n(?P<options_>OPTIONS:\n-.+)"
],
"qnli": [
r"^Does the sentence \"(?P<sentence>.+?)\" answer the question \"(?P<question>.+?)\"\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Does the sentence \"(?P<sentence>.+?)\" provide a valid answer to the question \"(?P<question>.+?)\"\n(?P<options_>OPTIONS:\n-.+)$",
r"^Is \"(?P<sentence>.+?)\" a good answer to the question \"(?P<question>.+?)\"\n(?P<options_>OPTIONS:\n-.+)$",
r"^Does \"(?P<sentence>.+?)\" correctly answer the question of (?P<question>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
r"^Does \"(?P<sentence>.+?)\" contain the correct answer to \"(?P<question>.+?)\"\n(?P<options_>OPTIONS:\n-.+)$",
r"^Q: (?P<question>.+?)\n A: (?P<sentence>.+?)\n Does the answer correctly answer the question\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Question: (?P<question>.+?)\nAnswer: (?P<sentence>.+?)\n Is the question answered in a satisfactory fashion\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Question: (?P<question>.+?)\n\nIs (?P<sentence>.+?) a good answer to this question\?\n\n(?P<options_>OPTIONS:\n-.+)$",
r"^Question: (?P<question>.+?)\n\nIs \"(?P<sentence>.+?)\" the correct answer\?\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"wnli": [
(r"^If \"(?P<sentence1>.+?)\", can we conclude that \"(?P<sentence2>.+?)\"\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^If \"(?P<sentence1>.+?)\", does it follow that \"(?P<sentence2>.+?)\"\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^If \"(?P<sentence1>.+?)\", is \"(?P<sentence2>.+?)\" correct\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Let's say that \"(?P<sentence1>.+?)\"\n\nCan we now say that \"(?P<sentence2>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^\"(?P<sentence1>.+?)\" is a true sentence\.\n\nDoes this mean that \"(?P<sentence2>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Does \"(?P<sentence2>.+?)\" appear to be an accurate statement based on \"(?P<sentence1>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Can we conclude that \"(?P<sentence2>.+?)\" if the statement \"(?P<sentence1>.+?)\" is true\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Is it possible to draw the conclusion that \"(?P<sentence2>.+?)\" if \"(?P<sentence1>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Is \"(?P<sentence2>.+?)\" true if \"(?P<sentence1>.+?)\"\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}"),
(r"^Sentence 1: \"(?P<sentence1>.+?)\"\n\n Sentence 2: \"(?P<sentence2>.+?)\"\n\nIs sentence 2 true, based on sentence 1\?\n\n(?P<options_>OPTIONS:\n-.+)$", "{answer}")
],
"snli": [
"^If \"(?P<premise>.+?)\", does this mean that \"(?P<hypothesis>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^If \"(?P<premise>.+?)\", can we conclude \"(?P<hypothesis>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^If \"(?P<premise>.+?)\", does it logically follow that \"(?P<hypothesis>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Based on the sentence \"(?P<premise>.+?)\", is the sentence \"(?P<hypothesis>.+?)\" a true sentence\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Premise: (?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)\n\n.Can we conclude that the hypothesis is true if the premise is true\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Premise: (?P<premise>.+?)\n\nHypothesis: (?P<hypothesis>.+?)\n\n.Given the premise, can we conclude the hypothesis\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Here is a premise: \"(?P<premise>.+?)\"\n\nHere is a hypothesis: \"(?P<hypothesis>.+?)\"\n\n.Does the premise tell us whether the hypothesis is true\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Is it possible to conclude that \"(?P<premise>.+?)\" if \"(?P<hypothesis>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Is the premise \"(?P<premise>.+?)\" true if \"(?P<hypothesis>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"trec": [
"^What type of thing is the question \"(?P<text>.+?)\" asking about\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Is the question \"(?P<text>.+?)\" asking about an entity, an abbreviation, a description, a human, a location, or a numeric entity\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Would the answer to the question \"(?P<text>.+?)\" be an entity, an abbreviation, a description, a human, a location, or a numeric value\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^What kind of thing would the answer to the question \"(?P<text>.+?)\" be an entity, an abbreviation, a description, a human, a location, or a numeric value\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^What is \"(?P<text>.+?)\" asking about\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^From the following options, what is the question \"(?P<text>.+?)\" asking about\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^(?P<text>.+?)\n\nWhat kind of thing would answer this question\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Here is a question: (?P<text>.+?)\n\nWould the answer to this question be an entity, an abbreviation, a description, a human, a location, or a numeric value\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Q: (?P<text>.+?)\n\nWhich one of the following options would the answer to this be\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"stsb": [
"^(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\nRate the textual similarity of these two sentences on a scale from 0 to 5, where 0 is \"no meaning overlap\" and 5 is \"means the same thing\"\\.\n\n(?P<options_>OPTIONS:\n-.+)$",
"^(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\nOn a scale from 0 to 5, where 0 is \"no meaning overlap\" and 5 is \"means the same thing\", how closely does the first sentence resemble the second one\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Sentence 1: (?P<sentence1>.+?)\n\n Sentence 2: (?P<sentence2>.+?)\n\nFrom 0 to 5 \\(0=\"no meaning overlap\" and 5=\"means the same thing\"\\), how similar are the two sentences\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^How similar are the following two sentences\\?\n\n(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\nGive the answer on a scale from 0 - 5, where 0 is \"not similar at all\" and 5 is \"means the same thing\"\\.\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Do the following sentences say the same thing\\?\n\n(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\nReturn your answer on a scale from 0 to 5, where 0 is \"not similar\" and 5 is \"very similar\"\\.\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Rate the similarity of the following two sentences on a scale from 0 to 5, where 0 is \"no meaning overlap\" and 5 is \"means the same thing\"\\?\n\n(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^On a scale from 0-5, where 0 is \"not similar\" and 5 is \"very similar\", how similar is the sentence \"(?P<sentence1>.+?)\" to the sentence \"(?P<sentence2>.+?)\"\\?\n\n(?P<options_>OPTIONS:\n-.+)$",
"^How similar are these two sentences, on a scale from 0-5 \\(0 is \"not similar\" and 5 is \"very similar\"\\)\\?\n\n(?P<sentence1>.+?)\n(?P<sentence2>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"hellaswag": [
"^What happens next in this paragraph\\?\n\n(?P<context>.+?)\n(?P<options_>OPTIONS:\n-.+)$",
"^Continue writing the next sentence in this paragraph:\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Continue writing the next sentence\\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^This is a test of commonsense. Complete the next sentence:\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Write the next sentence in this paragraph:\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^How does the next paragraph end\\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^What most naturally follows\\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^What happens next\\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^What is the most logical next event\\?\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
"^Write the next sentence in the following story\\.\n\n(?P<context>.+?)\n\n(?P<options_>OPTIONS:\n-.+)$",
],
"piqa": [
"^Here is a goal: (?P<goal>.+?)\\n\\nHow would you accomplish this goal\\?\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Here is a goal: (?P<goal>.+?)\\n\\nWhich way makes more sense to accomplish this goal\\?\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Goal: (?P<goal>.+?)\\n\\nWhich of the following methods is more reasonable for accomplishing this goal\\?\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Objective: (?P<goal>.+?)\\n\\nWhich of the following solutions is more sound in terms of naive physics reasoning\\?\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^How do you do this: (?P<goal>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^What is the best way to: (?P<goal>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Which of the following solutions is better for the following goal:\\n(?P<goal>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^How would someone go about accomplishing this goal\\?\\n(?P<goal>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
],
"openbookqa": [
"^(?P<fact>.+?)\\n(?P<question>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Read this fact: \"(?P<fact>.+?)\"\\n\\nNow answer this question: \"(?P<question>.+?)\"\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Given the fact \"(?P<fact>.+?)\", what is the answer to the question or completion \"(?P<question>.+?)\"\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Knowing that \"(?P<fact>.+?)\", how would one answer \"(?P<question>.+?)\"\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Use evidence from the fact that (?P<fact>.+?) to answer this question: \"(?P<question>.+?)\"\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Fact: (?P<fact>.+?)\\nQuestion: (?P<question>.+?)\\n\\nWhat\\'s the answer\\?\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
"^Use this fact to answer the question: (?P<fact>.+?)\\n\\n(?P<question>.+?)\\n\\n(?P<options_>OPTIONS:\\n-.+)$",
]
}