evalscope 0.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. evalscope/__init__.py +3 -0
  2. evalscope/backend/__init__.py +3 -0
  3. evalscope/backend/base.py +27 -0
  4. evalscope/backend/opencompass/__init__.py +3 -0
  5. evalscope/backend/opencompass/api_meta_template.py +64 -0
  6. evalscope/backend/opencompass/backend_manager.py +247 -0
  7. evalscope/backend/opencompass/tasks/__init__.py +1 -0
  8. evalscope/backend/opencompass/tasks/eval_api.py +30 -0
  9. evalscope/backend/opencompass/tasks/eval_datasets.py +71 -0
  10. evalscope/backend/vlm_eval_kit/__init__.py +1 -0
  11. evalscope/backend/vlm_eval_kit/backend_manager.py +153 -0
  12. evalscope/benchmarks/__init__.py +4 -0
  13. evalscope/benchmarks/arc/__init__.py +5 -0
  14. evalscope/benchmarks/arc/ai2_arc.py +148 -0
  15. evalscope/benchmarks/arc/arc_adapter.py +231 -0
  16. evalscope/benchmarks/bbh/__init__.py +6 -0
  17. evalscope/benchmarks/bbh/bbh_adapter.py +308 -0
  18. evalscope/benchmarks/bbh/cot_prompts/boolean_expressions.txt +23 -0
  19. evalscope/benchmarks/bbh/cot_prompts/causal_judgement.txt +25 -0
  20. evalscope/benchmarks/bbh/cot_prompts/date_understanding.txt +33 -0
  21. evalscope/benchmarks/bbh/cot_prompts/disambiguation_qa.txt +37 -0
  22. evalscope/benchmarks/bbh/cot_prompts/dyck_languages.txt +72 -0
  23. evalscope/benchmarks/bbh/cot_prompts/formal_fallacies.txt +44 -0
  24. evalscope/benchmarks/bbh/cot_prompts/geometric_shapes.txt +78 -0
  25. evalscope/benchmarks/bbh/cot_prompts/hyperbaton.txt +28 -0
  26. evalscope/benchmarks/bbh/cot_prompts/logical_deduction_five_objects.txt +37 -0
  27. evalscope/benchmarks/bbh/cot_prompts/logical_deduction_seven_objects.txt +37 -0
  28. evalscope/benchmarks/bbh/cot_prompts/logical_deduction_three_objects.txt +37 -0
  29. evalscope/benchmarks/bbh/cot_prompts/movie_recommendation.txt +42 -0
  30. evalscope/benchmarks/bbh/cot_prompts/multistep_arithmetic_two.txt +25 -0
  31. evalscope/benchmarks/bbh/cot_prompts/navigate.txt +43 -0
  32. evalscope/benchmarks/bbh/cot_prompts/object_counting.txt +37 -0
  33. evalscope/benchmarks/bbh/cot_prompts/penguins_in_a_table.txt +41 -0
  34. evalscope/benchmarks/bbh/cot_prompts/reasoning_about_colored_objects.txt +63 -0
  35. evalscope/benchmarks/bbh/cot_prompts/ruin_names.txt +44 -0
  36. evalscope/benchmarks/bbh/cot_prompts/salient_translation_error_detection.txt +40 -0
  37. evalscope/benchmarks/bbh/cot_prompts/snarks.txt +30 -0
  38. evalscope/benchmarks/bbh/cot_prompts/sports_understanding.txt +10 -0
  39. evalscope/benchmarks/bbh/cot_prompts/temporal_sequences.txt +77 -0
  40. evalscope/benchmarks/bbh/cot_prompts/tracking_shuffled_objects_five_objects.txt +40 -0
  41. evalscope/benchmarks/bbh/cot_prompts/tracking_shuffled_objects_seven_objects.txt +40 -0
  42. evalscope/benchmarks/bbh/cot_prompts/tracking_shuffled_objects_three_objects.txt +40 -0
  43. evalscope/benchmarks/bbh/cot_prompts/web_of_lies.txt +28 -0
  44. evalscope/benchmarks/bbh/cot_prompts/word_sorting.txt +17 -0
  45. evalscope/benchmarks/benchmark.py +65 -0
  46. evalscope/benchmarks/ceval/__init__.py +5 -0
  47. evalscope/benchmarks/ceval/ceval_adapter.py +340 -0
  48. evalscope/benchmarks/ceval/ceval_exam.py +159 -0
  49. evalscope/benchmarks/cmmlu/__init__.py +5 -0
  50. evalscope/benchmarks/cmmlu/cmmlu.py +166 -0
  51. evalscope/benchmarks/cmmlu/cmmlu_adapter.py +369 -0
  52. evalscope/benchmarks/competition_math/__init__.py +5 -0
  53. evalscope/benchmarks/competition_math/competition_math.py +88 -0
  54. evalscope/benchmarks/competition_math/competition_math_adapter.py +470 -0
  55. evalscope/benchmarks/data_adapter.py +263 -0
  56. evalscope/benchmarks/general_qa/__init__.py +5 -0
  57. evalscope/benchmarks/general_qa/general_qa_adapter.py +186 -0
  58. evalscope/benchmarks/gsm8k/__init__.py +5 -0
  59. evalscope/benchmarks/gsm8k/gsm8k.py +127 -0
  60. evalscope/benchmarks/gsm8k/gsm8k_adapter.py +236 -0
  61. evalscope/benchmarks/hellaswag/__init__.py +5 -0
  62. evalscope/benchmarks/hellaswag/hellaswag.py +116 -0
  63. evalscope/benchmarks/hellaswag/hellaswag_adapter.py +222 -0
  64. evalscope/benchmarks/humaneval/__init__.py +5 -0
  65. evalscope/benchmarks/humaneval/humaneval.py +82 -0
  66. evalscope/benchmarks/humaneval/humaneval_adapter.py +21 -0
  67. evalscope/benchmarks/mmlu/__init__.py +5 -0
  68. evalscope/benchmarks/mmlu/mmlu.py +174 -0
  69. evalscope/benchmarks/mmlu/mmlu_adapter.py +375 -0
  70. evalscope/benchmarks/race/__init__.py +5 -0
  71. evalscope/benchmarks/race/race.py +118 -0
  72. evalscope/benchmarks/race/race_adapter.py +229 -0
  73. evalscope/benchmarks/trivia_qa/__init__.py +5 -0
  74. evalscope/benchmarks/trivia_qa/trivia_qa.py +104 -0
  75. evalscope/benchmarks/trivia_qa/trivia_qa_adapter.py +207 -0
  76. evalscope/benchmarks/truthful_qa/__init__.py +5 -0
  77. evalscope/benchmarks/truthful_qa/truthful_qa.py +167 -0
  78. evalscope/benchmarks/truthful_qa/truthful_qa_adapter.py +351 -0
  79. evalscope/cache.py +98 -0
  80. evalscope/cli/__init__.py +1 -0
  81. evalscope/cli/base.py +20 -0
  82. evalscope/cli/cli.py +26 -0
  83. evalscope/cli/start_perf.py +37 -0
  84. evalscope/cli/start_server.py +138 -0
  85. evalscope/config.py +165 -0
  86. evalscope/constants.py +150 -0
  87. evalscope/evaluator/__init__.py +3 -0
  88. evalscope/evaluator/evaluator.py +689 -0
  89. evalscope/evaluator/rating_eval.py +178 -0
  90. evalscope/evaluator/reviewer/__init__.py +1 -0
  91. evalscope/evaluator/reviewer/auto_reviewer.py +411 -0
  92. evalscope/metrics/__init__.py +1 -0
  93. evalscope/metrics/bundled_rouge_score/__init__.py +14 -0
  94. evalscope/metrics/bundled_rouge_score/rouge_scorer.py +342 -0
  95. evalscope/metrics/code_metric.py +104 -0
  96. evalscope/metrics/math_accuracy.py +60 -0
  97. evalscope/metrics/metrics.py +405 -0
  98. evalscope/metrics/rouge_metric.py +129 -0
  99. evalscope/models/__init__.py +4 -0
  100. evalscope/models/custom/__init__.py +4 -0
  101. evalscope/models/custom/custom_model.py +53 -0
  102. evalscope/models/dummy_chat_model.py +50 -0
  103. evalscope/models/model.py +88 -0
  104. evalscope/models/model_adapter.py +586 -0
  105. evalscope/models/openai_model.py +103 -0
  106. evalscope/models/template.py +1446 -0
  107. evalscope/perf/__init__.py +0 -0
  108. evalscope/perf/_logging.py +32 -0
  109. evalscope/perf/api_plugin_base.py +60 -0
  110. evalscope/perf/custom_api.py +87 -0
  111. evalscope/perf/dashscope_api.py +84 -0
  112. evalscope/perf/dataset_plugin_base.py +64 -0
  113. evalscope/perf/datasets/__init__.py +0 -0
  114. evalscope/perf/datasets/line_by_line.py +18 -0
  115. evalscope/perf/datasets/longalpaca_12k.py +20 -0
  116. evalscope/perf/datasets/openqa.py +22 -0
  117. evalscope/perf/how_to_analysis_result.py +24 -0
  118. evalscope/perf/http_client.py +756 -0
  119. evalscope/perf/openai_api.py +130 -0
  120. evalscope/perf/plugin_registry.py +35 -0
  121. evalscope/perf/query_parameters.py +42 -0
  122. evalscope/perf/server_sent_event.py +43 -0
  123. evalscope/preprocess/__init__.py +1 -0
  124. evalscope/preprocess/tokenizers/__init__.py +0 -0
  125. evalscope/preprocess/tokenizers/gpt2_tokenizer.py +221 -0
  126. evalscope/registry/__init__.py +1 -0
  127. evalscope/registry/tasks/arc.yaml +29 -0
  128. evalscope/registry/tasks/bbh.yaml +27 -0
  129. evalscope/registry/tasks/bbh_mini.yaml +27 -0
  130. evalscope/registry/tasks/ceval.yaml +27 -0
  131. evalscope/registry/tasks/ceval_mini.yaml +27 -0
  132. evalscope/registry/tasks/cmmlu.yaml +27 -0
  133. evalscope/registry/tasks/eval_qwen-7b-chat_v100.yaml +28 -0
  134. evalscope/registry/tasks/general_qa.yaml +27 -0
  135. evalscope/registry/tasks/gsm8k.yaml +29 -0
  136. evalscope/registry/tasks/mmlu.yaml +29 -0
  137. evalscope/registry/tasks/mmlu_mini.yaml +27 -0
  138. evalscope/run.py +404 -0
  139. evalscope/run_arena.py +204 -0
  140. evalscope/run_ms.py +140 -0
  141. evalscope/summarizer.py +144 -0
  142. evalscope/third_party/__init__.py +1 -0
  143. evalscope/third_party/toolbench_static/__init__.py +3 -0
  144. evalscope/third_party/toolbench_static/eval.py +219 -0
  145. evalscope/third_party/toolbench_static/infer.py +278 -0
  146. evalscope/third_party/toolbench_static/llm/__init__.py +1 -0
  147. evalscope/third_party/toolbench_static/llm/swift_infer.py +45 -0
  148. evalscope/third_party/toolbench_static/toolbench_static.py +50 -0
  149. evalscope/tools/__init__.py +1 -0
  150. evalscope/tools/combine_reports.py +140 -0
  151. evalscope/tools/gen_mmlu_subject_mapping.py +90 -0
  152. evalscope/tools/rewrite_eval_results.py +95 -0
  153. evalscope/utils/__init__.py +4 -0
  154. evalscope/utils/arena_utils.py +247 -0
  155. evalscope/utils/completion_parsers.py +87 -0
  156. evalscope/utils/logger.py +64 -0
  157. evalscope/utils/task_cfg_parser.py +10 -0
  158. evalscope/utils/task_utils.py +19 -0
  159. evalscope/utils/utils.py +625 -0
  160. evalscope/version.py +4 -0
  161. evalscope-0.5.0.dist-info/METADATA +566 -0
  162. evalscope-0.5.0.dist-info/RECORD +165 -0
  163. evalscope-0.5.0.dist-info/WHEEL +5 -0
  164. evalscope-0.5.0.dist-info/entry_points.txt +3 -0
  165. evalscope-0.5.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,41 @@
1
+ Answer questions about a table of penguins and their attributes.
2
+
3
+ Q: Here is a table where the first line is a header and each subsequent line is a penguin: name, age, height (cm), weight (kg) Louis, 7, 50, 11 Bernard, 5, 80, 13 Vincent, 9, 60, 11 Gwen, 8, 70, 15 For example: the age of Louis is 7, the weight of Gwen is 15 kg, the height of Bernard is 80 cm. We now add a penguin to the table:
4
+ James, 12, 90, 12
5
+ How many penguins are less than 8 years old?
6
+ Options:
7
+ (A) 1
8
+ (B) 2
9
+ (C) 3
10
+ (D) 4
11
+ (E) 5
12
+ A: Let's think step by step.
13
+ This question focuses on age. We know the following: Louis is 7 years old, Bernard is 5 years old, Vincent is 9 years old, and Gwen is 8 years old.
14
+ Now, we add James to this table: James is 12 years old.
15
+ The penguins that are less than 8 years old are Louis and Bernard.
16
+ There are 2 penguins less than 8 years old. So the answer is (B).
17
+
18
+ Q: Here is a table where the first line is a header and each subsequent line is a penguin: name, age, height (cm), weight (kg) Louis, 7, 50, 11 Bernard, 5, 80, 13 Vincent, 9, 60, 11 Gwen, 8, 70, 15 For example: the age of Louis is 7, the weight of Gwen is 15 kg, the height of Bernard is 80 cm. Which is the youngest penguin?
19
+ Options:
20
+ (A) Louis
21
+ (B) Bernard
22
+ (C) Vincent
23
+ (D) Gwen
24
+ (E) James
25
+ A: Let's think step by step.
26
+ This question focuses on age. We know the following: Louis is 7 years old, Bernard is 5 years old, Vincent is 9 years old, and Gwen is 8 years old.
27
+ According to the table, Bernard (5) is the youngest amongst them.
28
+ The youngest penguin is Bernard. So the answer is (B).
29
+
30
+ Q: Here is a table where the first line is a header and each subsequent line is a penguin: name, age, height (cm), weight (kg) Louis, 7, 50, 11 Bernard, 5, 80, 13 Vincent, 9, 60, 11 Gwen, 8, 70, 15 For example: the age of Louis is 7, the weight of Gwen is 15 kg, the height of Bernard is 80 cm. What is the name of the second penguin sorted by alphabetic order?
31
+ Options:
32
+ (A) Louis
33
+ (B) Bernard
34
+ (C) Vincent
35
+ (D) Gwen
36
+ (E) James
37
+ A: Let's think step by step.
38
+ This question focuses on the name. We know the following: The names of the penguin in the table are Louis, Bernard, Vincent, and Gwen.
39
+ When we sort their names alphabetically, we get Bernard, Gwen, Louis, Vincent.
40
+ The name of the second penguin sorted by alphabetical order is Gwen.
41
+ The name of the second penguin sorted by alphabetic order is Gwen. So the answer is (D).
@@ -0,0 +1,63 @@
1
+ Answer extremely simple questions about the colors of objects on a surface.
2
+
3
+ Q: On the nightstand, there is a red pencil, a purple mug, a burgundy keychain, a fuchsia teddy bear, a black plate, and a blue stress ball. What color is the stress ball?
4
+ Options:
5
+ (A) red
6
+ (B) orange
7
+ (C) yellow
8
+ (D) green
9
+ (E) blue
10
+ (F) brown
11
+ (G) magenta
12
+ (H) fuchsia
13
+ (I) mauve
14
+ (J) teal
15
+ (K) turquoise
16
+ (L) burgundy
17
+ (M) silver
18
+ (N) gold
19
+ (O) black
20
+ (P) grey
21
+ (Q) purple
22
+ (R) pink
23
+ A: Let's think step by step.
24
+ According to this question, the color of the stress ball is blue. So the answer is (E).
25
+
26
+ Q: On the table, you see a bunch of objects arranged in a row: a purple paperclip, a pink stress ball, a brown keychain, a green scrunchiephone charger, a mauve fidget spinner, and a burgundy pen. What is the color of the object directly to the right of the stress ball?
27
+ Options:
28
+ (A) red
29
+ (B) orange
30
+ (C) yellow
31
+ (D) green
32
+ (E) blue
33
+ (F) brown
34
+ (G) magenta
35
+ (H) fuchsia
36
+ (I) mauve
37
+ (J) teal
38
+ (K) turquoise
39
+ (L) burgundy
40
+ (M) silver
41
+ (N) gold
42
+ (O) black
43
+ (P) grey
44
+ (Q) purple
45
+ (R) pink
46
+ A: Let's think step by step.
47
+ According to this question, the objects are arranged in a row, from left to right, as follows: (1) a purple paperclip, (2) a pink stress ball, (3) a brown keychain, (4) a green scrunchiephone charger, (5) a mauve fidget spinner, (6) a burgundy pen.
48
+ The stress ball is the second object on the list, namely (2). The object that is to the right of the stress ball corresponds to (3), which is a brown keychain.
49
+ The color of the keychain is brown. So the answer is (F).
50
+
51
+ Q: On the nightstand, you see the following items arranged in a row: a teal plate, a burgundy keychain, a yellow scrunchiephone charger, an orange mug, a pink notebook, and a grey cup. How many non-orange items do you see to the left of the teal item?
52
+ Options:
53
+ (A) zero
54
+ (B) one
55
+ (C) two
56
+ (D) three
57
+ (E) four
58
+ (F) five
59
+ (G) six
60
+ A: Let's think step by step.
61
+ According to this question, the objects are arranged in a row, from left to right, as follows: (1) a teal plate, (2) a burgundy keychain, (3) a yellow scrunchiephone charger, (4) an orange mug, (5) a pink notebook, (6) a grey cup.
62
+ The teal plate is the first item, namely (1). There is no item to the left of the teal item.
63
+ The number of non-orange items to the left of the teal item is zero. So the answer is (A).
@@ -0,0 +1,44 @@
1
+ Select the humorous edit that 'ruins' the input movie or musical artist name.
2
+
3
+ Q: Which of the following is a humorous edit of this artist or movie name: 'whitesnake'?
4
+ Options:
5
+ (A) whitesnape
6
+ (B) whitesnapke
7
+ (C) whitesnuake
8
+ (D) mwhitesnake
9
+ A: Let's think step by step.
10
+ The original name is "whitesnake". This is the name of an old English hard rock band. It is a compound word, formed by the words "white" and "snake".
11
+ (A) "whitesnape": It is formed by the combination of "white" and "snake"; therefore, "snake" has been changed to "snape". Snape makes a reference to the fictional character Severus Snape in the Harry Potter series, so (A) is indeed a meaningful and funny edit.
12
+ (B) "whitesnapke": It is formed by the combination of "white" and "snapke", but "snapke" is not an actual word; therefore, "whitesnapke" is not humorous.
13
+ (C) "whitesnuake": It is formed by the combination of "white" and "snuake", but "snuake" is not an actual word; therefore, "whitesnuake" is not humorous.
14
+ (D) "mwhitesnake": It is formed by the combination of "m", "white", and "snake", but the prefix "-m "seems arbitrary; therefore, "mwhitesnake" is not meaningful or humorous.
15
+ Above the above, the only humorous edit is (A). So the answer is (A).
16
+
17
+ Q: Which of the following is a humorous edit of this artist or movie name: 'one of our dinosaurs is missing'?
18
+ Options:
19
+ (A) ofne of our dinosaurs is missing
20
+ (B) one af our dinosaurs is missing
21
+ (C) one of our dinosaurs is pissing
22
+ (D) one of our dinosaur is missing
23
+ A: Let's think step by step.
24
+ The original name is "one of our dinosaurs is missing". This is the name of an old British movie.
25
+ (A) "ofne of our dinosaurs is missing": Here "one of" is changed to "ofne", but the word "ofne" is not an actual word.
26
+ (B) "one af our dinosaurs is missing": Here the word "of" is changed to "af", but the word "af" is not an actual word.
27
+ (C) "one of our dinosaurs is pissing": Here the word "missing" is changed to "pissing", and "one of our dinosaurs is pissing" is indeed a very whimsical and mischievous edit. This change truly ruins the original title of the movie.
28
+ (D) "one of our dinosaur is missing": Here the word "dinosaurs" is changed to "dinosaur", but "dinosaur" is singular but should be plural in the title; this change therefore feels arbitrary and not humorous.
29
+ Above the above, the only humorous edit is (C).
30
+ Above the above, the only humorous edit is (C). So the answer is (C).
31
+
32
+ Q: Which of the following is a humorous edit of this artist or movie name: 'counting crows'?
33
+ Options:
34
+ (A) countingy crows
35
+ (B) counting cows
36
+ (C) courting crows
37
+ (D) coutnting crows
38
+ A: Let's think step by step.
39
+ The original name is "counting crows". This is the name of an American rock band. Historically, the band name comes from the British nursery rhyme "One for Sorrow", which is about counting of magpies.
40
+ (A) "countingy crows": Here the word "counting" is changed to "countingy", but the word "countingy" is not an actual word.
41
+ (B) "counting cows": Here the word "crows" is changed to "cows", and this is indeed a playful and meaningful edit that ruins the original name of the band.
42
+ (C) "courting crows": Here the word "counting" is changed to "courting", and "courting" is an actual word; however, "courting crows" does not sound as humorous as "counting cows".
43
+ (D) "coutnting crows": Here the word "counting" is changed to "coutnting", but the word "coutnting" is not an actual word.
44
+ Above the above, the only humorous edit is (B). So the answer is (B).
@@ -0,0 +1,40 @@
1
+ Detect the type of error in an English translation of a German source sentence.
2
+
3
+ Q: The following translations from German to English contain a particular error. That error will be one of the following types: Named Entities: An entity (names, places, locations, etc.) is changed to a different entity. Numerical Values: Numerical values (ordinals or cardinals), dates, and/or units are changed. Modifiers or Adjectives: The modifiers and adjectives pertaining to a noun are changed. Negation or Antonyms: Introduce or remove a negation or change comparatives to their antonyms. Facts: Trivial factual errors not pertaining to the above classes are introduced in the translations. Dropped Content: A significant clause in the translation is removed. Please identify that error. Source: In der Liste der Baudenkmale in Lenzen (Elbe) sind alle Baudenkmale der brandenburgischen Stadt Lenzen (Elbe) und ihrer Ortsteile aufgelistet.
4
+ Translation: In the list of architectural monuments in Lenzen all architectural monuments of the Brandenburg city of Lenzen and its districts are listed.
5
+ The translation contains an error pertaining to
6
+ Options:
7
+ (A) Modifiers or Adjectives
8
+ (B) Numerical Values
9
+ (C) Negation or Antonyms
10
+ (D) Named Entities
11
+ (E) Dropped Content
12
+ (F) Facts
13
+ A: Let's think step by step.
14
+ We solve this question by first translating the source sentence to English and then by comparing our translation with the provided translation. According to Google Translate, the correct translation of the source sentence from German to English is "The list of monuments in Lenzen (Elbe) includes all the monuments in the Brandenburg town of Lenzen (Elbe) and its districts." On the other hand, the provided translation is "In the list of architectural monuments in Lenzen all architectural monuments of the Brandenburg city of Lenzen and its districts are listed." Note that Lenzen (Elbe) is changed to Lenzen in the original translation; so, there is a named entity error. Because an entity in the original source sentence is changed to a different entity in the translation, the translation contains an error pertaining to Named Entities. So the answer is (D).
15
+
16
+ Q: The following translations from German to English contain a particular error. That error will be one of the following types: Named Entities: An entity (names, places, locations, etc.) is changed to a different entity. Numerical Values: Numerical values (ordinals or cardinals), dates, and/or units are changed. Modifiers or Adjectives: The modifiers and adjectives pertaining to a noun are changed. Negation or Antonyms: Introduce or remove a negation or change comparatives to their antonyms. Facts: Trivial factual errors not pertaining to the above classes are introduced in the translations. Dropped Content: A significant clause in the translation is removed. Please identify that error. Source: Auf dieser Seite sind die Baudenkmäler der oberbayerischen Großen Kreisstadt Landsberg am Lech zusammengestellt.
17
+ Translation: On this page are compiled the architectural monuments of the town of Landsberg am Lech.
18
+ The translation contains an error pertaining to
19
+ Options:
20
+ (A) Modifiers or Adjectives
21
+ (B) Numerical Values
22
+ (C) Negation or Antonyms
23
+ (D) Named Entities
24
+ (E) Dropped Content
25
+ (F) Facts
26
+ A: Let's think step by step.
27
+ We solve this question by first translating the source sentence to English and then by comparing our translation with the provided translation. According to Google Translate, the correct translation of the source sentence from German to English is "The monuments of the Upper Bavarian district town of Landsberg am Lech are compiled on this page." On the other hand, the provided translation is "On this page are compiled the architectural monuments of the town of Landsberg am Lech." Note that an important detail about the location of Landsberg am Lech is omitted in the original translation: The translation should have said "Upper Bavarian district town of Landsberg am Lech". Because a significant clause in the translation was removed, the translation contains an error pertaining to Dropped Content. So the answer is (E).
28
+
29
+ Q: The following translations from German to English contain a particular error. That error will be one of the following types: Named Entities: An entity (names, places, locations, etc.) is changed to a different entity. Numerical Values: Numerical values (ordinals or cardinals), dates, and/or units are changed. Modifiers or Adjectives: The modifiers and adjectives pertaining to a noun are changed. Negation or Antonyms: Introduce or remove a negation or change comparatives to their antonyms. Facts: Trivial factual errors not pertaining to the above classes are introduced in the translations. Dropped Content: A significant clause in the translation is removed. Please identify that error. Source: Łeba ist eine Kleinstadt und ein Badeort im Powiat Lęborski der polnischen Woiwodschaft Pommern.
30
+ Translation: Eba is not a small town and seaside resort in the Powiat Léborski county of the Pomeranian Voivodeship of Poland.
31
+ The translation contains an error pertaining to
32
+ Options:
33
+ (A) Modifiers or Adjectives
34
+ (B) Numerical Values
35
+ (C) Negation or Antonyms
36
+ (D) Named Entities
37
+ (E) Dropped Content
38
+ (F) Facts
39
+ A: Let's think step by step.
40
+ We solve this question by first translating the source sentence to English and then by comparing our translation with the provided translation. According to Google Translate, the correct translation of the source sentence from German to English is "Łeba is a small town and seaside resort in the Powiat Lęborski of the Polish Pomeranian Voivodeship." On the other hand, the provided translation is "Łeba is not a small town and seaside resort in the Powiat Léborski county of the Pomeranian Voivodeship of Poland." Note that the provided sentence says, "Łeba is not a small town ..." However, the translation should have been "Łeba is a small town ..." Because a negation is introduced at the beginning of the sentence and has fundamentally changed the meaning of the original source, the translation contains an error pertaining to Negation or Antonyms. So the answer is (C).
@@ -0,0 +1,30 @@
1
+ Determine which of two sentences is sarcastic.
2
+
3
+ According to Cambridge University Dictionary, sarcasm is "the use of remarks that clearly mean the opposite of what they say, made in order to hurt someone's feelings or to criticize something in a humorous way." Sarcastic sentences often contain satirical or ironic utterances, hyperboles, ambivalent or witty remarks.
4
+
5
+ Q: Which statement is sarcastic?
6
+ Options:
7
+ (A) Yes, because having interests and actively researching them is a huge waste
8
+ (B) Yes, because having interests and actively researching them is a huge deal
9
+ A: Let's think step by step.
10
+ If we look at (A), it says that having interests and actively researching them is a huge waste, implying that it is a useless effort. However, we know that having interests and actively researching them is typically not a waste but rather is beneficial to the individual. The presence of such a juxtaposition in (A) suggests that it contains a taste of irony and sarcasm.
11
+ If we look at (B), it says that having interests and actively researching them is a huge deal, implying that it is an important and consequential effort. This is arguably a neutral and correct statement.
12
+ Above the above, the sarcastic option is (A). So the answer is (A).
13
+
14
+ Q: Which statement is sarcastic?
15
+ Options:
16
+ (A) No one is going to disagree with you on this. Avoiding ad hominem attacks really help your case
17
+ (B) No one is going to disagree with you on this. Ad hominem attacks really help your case
18
+ A: Let's think step by step.
19
+ If we look at (A), it says that avoiding ad hominem attacks really help your case, implying that ad hominem attacks are adverse and injurious. Because ad hominem attacks are adressed at a person rather than an idea, it is indeed true that avoiding them is often useful and helpful; so, (A) is a neutral (valid and agreeable) statement.
20
+ If we look at (B), it says that ad hominem attacks really help your case, implying that ad hominem attacks are a positive thing. However, we stated previously that ad hominem attacks are often not useful or constructive. The speaker in this sentence therefore seems to mean the opposite of what they are saying; so, there appears to have a taste of irony and sarcasm in (B).
21
+ Above the above, the sarcastic option is (B). So the answer is (B).
22
+
23
+ Q: Which statement is sarcastic?
24
+ Options:
25
+ (A) Consistency in the league's punishments? What do you think this is supposed to be, politics?
26
+ (B) Consistency in the league's punishments? What do you think this is supposed to be, moral?
27
+ A: Let's think step by step.
28
+ If we look at (A), it likens the consistency in the league's punishments with that in politics. Because politics or political affairs are often not considered to be consistent or dependable, this sentence appears to be satirical.
29
+ If we look at (B), it likens the consistency in the league's punishments with that in morality. Discussing the consistency of the league's punishments in the context of morality, ethics, or law makes sense and does not appear to make a satirical point about anything.
30
+ Above the above, the sarcastic option is (A). So the answer is (A).
@@ -0,0 +1,10 @@
1
+ Determine whether an artificially constructed sentence relating to sports is plausible or not.
2
+
3
+ Q: Is the following sentence plausible? "Bam Adebayo scored a reverse layup in the Western Conference Finals."
4
+ A: Let's think step by step. Bam Adebayo is an American basketball player. Scoring a reverse layup in the Western Conference Finals is part of the NBA Finals. So the answer is yes.
5
+
6
+ Q: Is the following sentence plausible? "Santi Cazorla scored a touchdown."
7
+ A: Let's think step by step. Santi Cazorla is a soccer player. Touchdown is part of American football and rugby. So the answer is no.
8
+
9
+ Q: Is the following sentence plausible? "DeMar DeRozan was called for the goal tend."
10
+ A: Let's think step by step. DeMar DeRozan is an American basketball player. Goal tending is part of basketball. So the answer is yes.
@@ -0,0 +1,77 @@
1
+ Task description: Answer questions about which times certain events could have occurred.
2
+
3
+ Q: Today, Emily went to the museum. Between what times could they have gone?
4
+ We know that:
5
+ Emily woke up at 1pm.
6
+ Elizabeth saw Emily reading at the library from 2pm to 4pm.
7
+ Jessica saw Emily watching a movie at the theater from 4pm to 5pm.
8
+ Leslie saw Emily waiting at the airport from 5pm to 6pm.
9
+ William saw Emily buying clothes at the mall from 6pm to 7pm.
10
+ The museum was closed after 7pm.
11
+ Between what times could Emily have gone to the museum?
12
+ Options:
13
+ (A) 1pm to 2pm
14
+ (B) 6pm to 7pm
15
+ (C) 5pm to 6pm
16
+ (D) 2pm to 4pm
17
+ A: Let's think step by step.
18
+ Wake-up time: 1pm.
19
+ 1pm-2pm: free.
20
+ 2pm-4pm: reading at the library.
21
+ 4pm-5pm: watching a movie at the theater.
22
+ 5pm-6pm: waiting at the airport.
23
+ 6pm-7pm: buying clothes at the mall.
24
+ The museum closure time: 7pm.
25
+ The only time when Emily could have gone to the museum was 1pm to 2pm. So the answer is (A).
26
+
27
+ Q: Today, Elizabeth went to the amusement park. Between what times could they have gone?
28
+ We know that:
29
+ Elizabeth woke up at 7am.
30
+ David saw Elizabeth fixing their computer at the electronic store from 1pm to 2pm.
31
+ Sarah saw Elizabeth playing tennis at the tennis court from 2pm to 3pm.
32
+ Susan saw Elizabeth walking towards the Statue of Liberty from 3pm to 6pm.
33
+ Andrew saw Elizabeth taking photos near the Eiffel Tower from 6pm to 9pm.
34
+ Emily saw Elizabeth getting a coffee at the cafe from 9pm to 10pm.
35
+ The amusement park was closed after 10pm.
36
+ Between what times could Elizabeth have gone to the amusement park?
37
+ Options:
38
+ (A) 7am to 1pm
39
+ (B) 9pm to 10pm
40
+ (C) 1pm to 2pm
41
+ (D) 3pm to 6pm
42
+ A: Let's think step by step.
43
+ Wake-up time: 7am.
44
+ 7am-1pm: free.
45
+ 1pm-2pm: fixing their computer at the electronic store.
46
+ 2pm-3pm: playing tennis at the tennis court.
47
+ 3pm-6pm: walking towards the Statue of Liberty.
48
+ 6pm-9pm: taking photos near the Eiffel Tower.
49
+ 9pm-10pm: getting a coffee at the cafe.
50
+ The amusement park closure time: 10pm.
51
+ The only time when Elizabeth could have gone to the amusement park was 7am to 1pm. So the answer is (A).
52
+
53
+ Q: Today, Tiffany went to the beach. Between what times could they have gone?
54
+ We know that:
55
+ Tiffany woke up at 5am.
56
+ Betty saw Tiffany getting a coffee at the cafe from 5am to 6am.
57
+ Jessica saw Tiffany working at the office from 6am to 9am.
58
+ John saw Tiffany stretching at a yoga studio from 9am to 12pm.
59
+ Sean saw Tiffany sitting on a rooftop from 12pm to 2pm.
60
+ Sarah saw Tiffany playing tennis at the tennis court from 2pm to 3pm.
61
+ The beach was closed after 4pm.
62
+ Between what times could Tiffany have gone to the beach?
63
+ Options:
64
+ (A) 9am to 12pm
65
+ (B) 12pm to 2pm
66
+ (C) 5am to 6am
67
+ (D) 3pm to 4pm
68
+ A: Let's think step by step.
69
+ Wake-up time: 5am.
70
+ 5am-6am: getting a coffee at the cafe.
71
+ 6am-9am: working at the office.
72
+ 9am-12pm: stretching at a yoga studio.
73
+ 12pm-2pm: sitting on a rooftop.
74
+ 2pm-3pm: playing tennis at the tennis court.
75
+ 3pm-4pm: free.
76
+ The beach closure time: 4pm.
77
+ The only time when Tiffany could have gone to the beach was 3pm to 4pm. So the answer is (D).
@@ -0,0 +1,40 @@
1
+ A task requiring determining the final positions of a set of objects given their initial positions and a description of a sequence of swaps.
2
+
3
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a yellow ball, Bob has a blue ball, and Claire has a pink ball.
4
+ As the game progresses, pairs of players trade balls. First, Claire and Alice swap balls. Then, Alice and Bob swap balls. Finally, Claire and Bob swap balls. At the end of the game, Bob has the
5
+ Options:
6
+ (A) yellow ball
7
+ (B) blue ball
8
+ (C) pink ball
9
+ A: Let's think step by step.
10
+ (0) At the start: Alice: yellow, Bob: blue, Claire: pink.
11
+ (1) Claire and Alice swap balls: Alice: pink, Bob: blue, Claire: yellow.
12
+ (2) Alice and Bob swap balls: Alice: blue, Bob: pink, Claire: yellow.
13
+ (3) Claire and Bob swap balls: Alice: blue, Bob: yellow, Claire: pink.
14
+ At the end of the game, Bob has the yellow ball. So the answer is (A).
15
+
16
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a white ball, Bob has a purple ball, and Claire has a pink ball.
17
+ As the game progresses, pairs of players trade balls. First, Bob and Alice swap balls. Then, Bob and Claire swap balls. Finally, Bob and Alice swap balls. At the end of the game, Alice has the
18
+ Options:
19
+ (A) white ball
20
+ (B) purple ball
21
+ (C) pink ball
22
+ A: Let's think step by step.
23
+ (0) At the start: Alice: white, Bob: purple, Claire: pink.
24
+ (1) Bob and Alice swap balls: Alice: purple, Bob: white, Claire: pink.
25
+ (2) Bob and Claire swap balls: Alice: purple, Bob: pink, Claire: white.
26
+ (3) Bob and Alice swap balls: Alice: pink, Bob: purple, Claire: white.
27
+ At the end of the game, Alice has the pink ball. So the answer is (C).
28
+
29
+ Q: Alice, Bob, and Claire are dancers at a square dance. At the start of a song, they each have a partner: Alice is dancing with Lola, Bob is dancing with Rodrigo, and Claire is dancing with Patrick.
30
+ Throughout the song, the dancers often trade partners. First, Alice and Bob switch partners. Then, Claire and Bob switch partners. Finally, Bob and Alice switch partners. At the end of the dance, Alice is dancing with
31
+ Options:
32
+ (A) Lola
33
+ (B) Rodrigo
34
+ (C) Patrick
35
+ A: Let's think step by step.
36
+ (0) At the start: Alice: Lola, Bob: Rodrigo, Claire: Patrick.
37
+ (1) Alice and Bob switch partners: Alice: Rodrigo, Bob: Lola, Claire: Patrick.
38
+ (2) Claire and Bob switch partners: Alice: Rodrigo, Bob: Patrick, Claire: Lola.
39
+ (3) Bob and Alice switch partners: Alice: Patrick, Bob: Rodrigo, Claire: Lola.
40
+ At the end of the dance, Alice is dancing with Patrick. So the answer is (C).
@@ -0,0 +1,40 @@
1
+ A task requiring determining the final positions of a set of objects given their initial positions and a description of a sequence of swaps.
2
+
3
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a yellow ball, Bob has a blue ball, and Claire has a pink ball.
4
+ As the game progresses, pairs of players trade balls. First, Claire and Alice swap balls. Then, Alice and Bob swap balls. Finally, Claire and Bob swap balls. At the end of the game, Bob has the
5
+ Options:
6
+ (A) yellow ball
7
+ (B) blue ball
8
+ (C) pink ball
9
+ A: Let's think step by step.
10
+ (0) At the start: Alice: yellow, Bob: blue, Claire: pink.
11
+ (1) Claire and Alice swap balls: Alice: pink, Bob: blue, Claire: yellow.
12
+ (2) Alice and Bob swap balls: Alice: blue, Bob: pink, Claire: yellow.
13
+ (3) Claire and Bob swap balls: Alice: blue, Bob: yellow, Claire: pink.
14
+ At the end of the game, Bob has the yellow ball. So the answer is (A).
15
+
16
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a white ball, Bob has a purple ball, and Claire has a pink ball.
17
+ As the game progresses, pairs of players trade balls. First, Bob and Alice swap balls. Then, Bob and Claire swap balls. Finally, Bob and Alice swap balls. At the end of the game, Alice has the
18
+ Options:
19
+ (A) white ball
20
+ (B) purple ball
21
+ (C) pink ball
22
+ A: Let's think step by step.
23
+ (0) At the start: Alice: white, Bob: purple, Claire: pink.
24
+ (1) Bob and Alice swap balls: Alice: purple, Bob: white, Claire: pink.
25
+ (2) Bob and Claire swap balls: Alice: purple, Bob: pink, Claire: white.
26
+ (3) Bob and Alice swap balls: Alice: pink, Bob: purple, Claire: white.
27
+ At the end of the game, Alice has the pink ball. So the answer is (C).
28
+
29
+ Q: Alice, Bob, and Claire are dancers at a square dance. At the start of a song, they each have a partner: Alice is dancing with Lola, Bob is dancing with Rodrigo, and Claire is dancing with Patrick.
30
+ Throughout the song, the dancers often trade partners. First, Alice and Bob switch partners. Then, Claire and Bob switch partners. Finally, Bob and Alice switch partners. At the end of the dance, Alice is dancing with
31
+ Options:
32
+ (A) Lola
33
+ (B) Rodrigo
34
+ (C) Patrick
35
+ A: Let's think step by step.
36
+ (0) At the start: Alice: Lola, Bob: Rodrigo, Claire: Patrick.
37
+ (1) Alice and Bob switch partners: Alice: Rodrigo, Bob: Lola, Claire: Patrick.
38
+ (2) Claire and Bob switch partners: Alice: Rodrigo, Bob: Patrick, Claire: Lola.
39
+ (3) Bob and Alice switch partners: Alice: Patrick, Bob: Rodrigo, Claire: Lola.
40
+ At the end of the dance, Alice is dancing with Patrick. So the answer is (C).
@@ -0,0 +1,40 @@
1
+ A task requiring determining the final positions of a set of objects given their initial positions and a description of a sequence of swaps.
2
+
3
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a yellow ball, Bob has a blue ball, and Claire has a pink ball.
4
+ As the game progresses, pairs of players trade balls. First, Claire and Alice swap balls. Then, Alice and Bob swap balls. Finally, Claire and Bob swap balls. At the end of the game, Bob has the
5
+ Options:
6
+ (A) yellow ball
7
+ (B) blue ball
8
+ (C) pink ball
9
+ A: Let's think step by step.
10
+ (0) At the start: Alice: yellow, Bob: blue, Claire: pink.
11
+ (1) Claire and Alice swap balls: Alice: pink, Bob: blue, Claire: yellow.
12
+ (2) Alice and Bob swap balls: Alice: blue, Bob: pink, Claire: yellow.
13
+ (3) Claire and Bob swap balls: Alice: blue, Bob: yellow, Claire: pink.
14
+ At the end of the game, Bob has the yellow ball. So the answer is (A).
15
+
16
+ Q: Alice, Bob, and Claire are playing a game. At the start of the game, they are each holding a ball: Alice has a white ball, Bob has a purple ball, and Claire has a pink ball.
17
+ As the game progresses, pairs of players trade balls. First, Bob and Alice swap balls. Then, Bob and Claire swap balls. Finally, Bob and Alice swap balls. At the end of the game, Alice has the
18
+ Options:
19
+ (A) white ball
20
+ (B) purple ball
21
+ (C) pink ball
22
+ A: Let's think step by step.
23
+ (0) At the start: Alice: white, Bob: purple, Claire: pink.
24
+ (1) Bob and Alice swap balls: Alice: purple, Bob: white, Claire: pink.
25
+ (2) Bob and Claire swap balls: Alice: purple, Bob: pink, Claire: white.
26
+ (3) Bob and Alice swap balls: Alice: pink, Bob: purple, Claire: white.
27
+ At the end of the game, Alice has the pink ball. So the answer is (C).
28
+
29
+ Q: Alice, Bob, and Claire are dancers at a square dance. At the start of a song, they each have a partner: Alice is dancing with Lola, Bob is dancing with Rodrigo, and Claire is dancing with Patrick.
30
+ Throughout the song, the dancers often trade partners. First, Alice and Bob switch partners. Then, Claire and Bob switch partners. Finally, Bob and Alice switch partners. At the end of the dance, Alice is dancing with
31
+ Options:
32
+ (A) Lola
33
+ (B) Rodrigo
34
+ (C) Patrick
35
+ A: Let's think step by step.
36
+ (0) At the start: Alice: Lola, Bob: Rodrigo, Claire: Patrick.
37
+ (1) Alice and Bob switch partners: Alice: Rodrigo, Bob: Lola, Claire: Patrick.
38
+ (2) Claire and Bob switch partners: Alice: Rodrigo, Bob: Patrick, Claire: Lola.
39
+ (3) Bob and Alice switch partners: Alice: Patrick, Bob: Rodrigo, Claire: Lola.
40
+ At the end of the dance, Alice is dancing with Patrick. So the answer is (C).
@@ -0,0 +1,28 @@
1
+ Evaluate a random boolean function expressed as a word problem.
2
+
3
+ Q: Question: Fidel tells the truth. Jerry says Fidel tells the truth. Vina says Jerry tells the truth. Millicent says Vina lies. Raymond says Millicent lies. Does Raymond tell the truth?
4
+ A: Let's think step by step.
5
+ (1) Fidel tells the truth. So, we know that Fidel tells the truth.
6
+ (2) Jerry says Fidel tells the truth. Since we know from (1) that Fidel tells the truth, if Jerry says that Fidel tells the truth, then Jerry tells the truth.
7
+ (3) Vina says Jerry tells the truth. Since we know from (2) that Jerry tells the truth, if Vina says Jerry tells the truth, then Vine tells the truth.
8
+ (4) Millicent says Vina lies. Since we know from (3) that Vina tells the truth, if Millicent says Vina lies, then Millicent lies.
9
+ (5) Raymond says Millicent lies. Since we know from (4) that Millicent lies, if Raymond says Millicent lies, then Raymond tells the truth.
10
+ Now, the question asks: Does Raymond tell the truth? We know from (5) that Raymond tells the truth. So the answer is Yes.
11
+
12
+ Q: Question: Kristian lies. Millie says Kristian lies. Maybelle says Millie tells the truth. Fidel says Maybelle lies. Leda says Fidel lies. Does Leda tell the truth?
13
+ A: Let's think step by step.
14
+ (1) Kristian lies. So, we know that Kristian lies.
15
+ (2) Millie says Kristian lies. Since we know from (1) that Kristian lies, if Millie says Kristian lies, then Millie tells the truth.
16
+ (3) Maybelle says Millie tells the truth. Since we know from (2) that Millie tells the truth, if Maybelle says Millie tells the truth, then Maybelle tells the truth.
17
+ (4) Fidel says Maybelle lies. Since we know from (3) that Maybelle tells the truth, if Fidel says Maybelle lies, then Fidel lies.
18
+ (5) Leda says Fidel lies. Since we know from (4) that Fidel lies, if Leda says Fidel lies, then Leda tells the truth.
19
+ Now, the question asks: Does Leda tell the truth? We know from (5) that Leda tells the truth. So the answer is Yes.
20
+
21
+ Q: Question: Kristian tells the truth. Michaela says Kristian lies. Raymond says Michaela tells the truth. Osvaldo says Raymond tells the truth. Jamey says Osvaldo tells the truth. Does Jamey tell the truth?
22
+ A: Let's think step by step.
23
+ (1) Kristian tells the truth. So, we know that Kristian tells the truth.
24
+ (2) Michaela says Kristian lies. Since we know from (1) that Kristian tells the truth, if Michaela says Kristian lies, then Michaela lies.
25
+ (3) Raymond says Michaela tells the truth. Since we know from (2) that Michaela lies, if Raymond says Michaela tells the truth, then Raymond lies.
26
+ (4) Osvaldo says Raymond tells the truth. Since we know from (3) that Raymond lies, if Osvaldo says Raymond tells the truth, then Osvaldo lies.
27
+ (5) Jamey says Osvaldo tells the truth. Since we know from (4) that Osvaldo lies, if Jamey says Osvaldo tells the truth, then Jamey lies.
28
+ Now, the question asks: Does Jamey tell the truth? We know from (5) that Jamey lies. So the answer is No.
@@ -0,0 +1,17 @@
1
+ Sort a list of words.
2
+
3
+ Q: Sort the following words alphabetically: List: oven costume counterpart
4
+ A: Let's think step by step.
5
+ The first letter: "oven": "o" (15). "costume": "c" (3). "counterpart": "c" (3). We now have: (3) ["costume" ? "counterpart"] < (15) "oven". Now let's sort this subpart ["costume" ? "counterpart"] by looking at their second letters.
6
+ The second letter: "costume": "o" (15). "counterpart": "o" (15). We now have: (15) ["costume" ? "counterpart"]. Now let's sort this subpart ["costume" ? "counterpart"] by looking at their third letters.
7
+ The third letter: "costume": "s" (19). "counterpart": "u" (21). We now have: (19) "costume" < (21) "counterpart". Hence, we have ["costume" < "counterpart"] < "oven". So the answer is costume counterpart oven.
8
+
9
+ Q: Sort the following words alphabetically: List: hypochlorite ponderosa phone credulity
10
+ A: Let's think step by step.
11
+ The first letter: "hypochlorite": "h" (8). "ponderosa": "p" (16). "phone": "p" (16). "credulity": "c" (3). We now have: (3) "credulity" < (8) "hypochlorite" < (16) ["ponderosa" ? "phone"]. Now let's sort this subpart ["ponderosa" ? "phone"] by looking at their second letters.
12
+ The second letter: "ponderosa": "o" (15). "phone": "h" (8). We now have: (8) "phone" < (15) "ponderosa". Hence, we have "credulity" < "hypochlorite" < ["phone" <"ponderosa"]. So the answer is credulity hypochlorite phone ponderosa.
13
+
14
+ Q: Sort the following words alphabetically: List: newt arson parthia seismography mugho aspect census
15
+ A: Let's think step by step.
16
+ The first letter: "newt": "n" (14). "arson": "a" (1). "parthia": "p" (16). "seismography": "s" (19). "mugho": "m" (13). "aspect": "a" (1). "census": "c" (3). We now have: (1) ["arson" ? "aspect"] < (3) "census" < (13) "mugho" < (14) "newt" < (16) "parthia" < (19) "seismography". Now let's sort this subpart ["arson" ? "aspect"] by looking at their second letters.
17
+ The second letter: "arson": "r" (18). "aspect": "s" (19). We now have: (18) "arson" < (19) "aspect". Hence, we have ["arson" < "aspect"] < "census" < "mugho" < "newt" < "parthia" < "seismography". So the answer is arson aspect census mugho newt parthia seismography.
@@ -0,0 +1,65 @@
1
+ # Copyright (c) Alibaba, Inc. and its affiliates.
2
+
3
+ import os.path
4
+ from typing import Optional
5
+
6
+ from evalscope.constants import DEFAULT_ROOT_CACHE_DIR
7
+
8
+
9
+ class Benchmark(object):
10
+ """
11
+ Wrapper for loading datasets from ModelScope or HuggingFace.
12
+ """
13
+
14
+ def __init__(self):
15
+ ...
16
+
17
+ @staticmethod
18
+ def load(dataset_name: str,
19
+ subset: str = None,
20
+ split: str = None,
21
+ token: str = None,
22
+ hub: str = 'ModelScope',
23
+ work_dir: Optional[str] = DEFAULT_ROOT_CACHE_DIR,
24
+ **kwargs):
25
+ """
26
+ Load a dataset from ModelScope or HuggingFace.
27
+
28
+ Args:
29
+ dataset_name (str): The dataset id or path.
30
+ If it is dataset id, should be in the format of `organization/name` for ModelScope and HuggingFace hub.
31
+ If it is dataset path, should be the path on local disk.
32
+ subset (str):
33
+ split:
34
+ token: sdk token for ModelScope, optional, default None
35
+ hub: `ModelScope` or `HuggingFace`
36
+ work_dir: the work directory for caching, optional
37
+
38
+ Returns:
39
+ A dict.
40
+ """
41
+ work_dir = os.path.join(work_dir, 'benchmarks', dataset_name.replace('/', '_'))
42
+ if hub == 'ModelScope':
43
+ from modelscope.msdatasets import MsDataset
44
+ dataset = MsDataset.load(dataset_name=dataset_name, subset_name=subset, split=split, token=token,
45
+ cache_dir=work_dir, **kwargs)
46
+
47
+ dataset.dataset_name = dataset_name.split('/')[-1]
48
+ dataset.subset_name = subset
49
+ dataset.split = split
50
+ return dataset
51
+ elif hub == 'HuggingFace':
52
+ # TODO: implement this by xingjun.wxj@alibaba-inc.com
53
+ raise NotImplementedError('HuggingFace hub is not supported yet.')
54
+ else:
55
+ raise ValueError(f'hub must be `ModelScope` or `HuggingFace`, but got {hub}')
56
+
57
+
58
+ if __name__ == '__main__':
59
+
60
+ ds = Benchmark.load(dataset_name='mmlu', subset='management', split=None)
61
+
62
+ n = 1
63
+ for i in ds:
64
+ print('>', n, ': ', i)
65
+ n += 1
@@ -0,0 +1,5 @@
1
+ # Copyright (c) Alibaba, Inc. and its affiliates.
2
+
3
+ from evalscope.benchmarks.ceval.ceval_adapter import CEVALAdapter, DATASET_ID, SUBSET_LIST, SUBJECT_MAPPING
4
+ from evalscope.benchmarks.ceval.ceval_adapter import CEVALAdapter as DataAdapterClass
5
+ from evalscope.models.model_adapter import MultiChoiceModelAdapter as ModelAdapterClass # noqa