Commit 46543538 authored by lintangsutawika's avatar lintangsutawika
Browse files

add siqa

parent 4277840b
include: ../_siqa_alt_yaml
group: siqa_alt_ov_06
task: siqa_alt_ov_06c
doc_to_text: !function ../styles.template_06
doc_to_choice: !function ../styles.choice_06c
doc_to_decontamination_query: !function ../styles.template_06
include: ../_siqa_alt_yaml
group: siqa_alt_ov_07
task: siqa_alt_ov_07a
doc_to_text: !function ../styles.template_07
doc_to_choice: !function ../styles.choice_07a
doc_to_decontamination_query: !function ../styles.template_07
include: ../_siqa_alt_yaml
group: siqa_alt_ov_07
task: siqa_alt_ov_07b
doc_to_text: !function ../styles.template_07
doc_to_choice: !function ../styles.choice_07b
doc_to_decontamination_query: !function ../styles.template_07
include: ../_siqa_alt_yaml
group: siqa_alt_ov_07
task: siqa_alt_ov_07c
doc_to_text: !function ../styles.template_07
doc_to_choice: !function ../styles.choice_07c
doc_to_decontamination_query: !function ../styles.template_07
include: ../_siqa_alt_yaml
group: siqa_alt_ov_08
task: siqa_alt_ov_08a
doc_to_text: !function ../styles.template_08
doc_to_choice: !function ../styles.choice_08a
doc_to_decontamination_query: !function ../styles.template_08
include: ../_siqa_alt_yaml
group: siqa_alt_ov_08
task: siqa_alt_ov_08b
doc_to_text: !function ../styles.template_08
doc_to_choice: !function ../styles.choice_08b
doc_to_decontamination_query: !function ../styles.template_08
include: ../_siqa_alt_yaml
group: siqa_alt_ov_08
task: siqa_alt_ov_08c
doc_to_text: !function ../styles.template_08
doc_to_choice: !function ../styles.choice_08c
doc_to_decontamination_query: !function ../styles.template_08
import string
from functools import partial
def doc_to_text_base(alphabet, style, doc):
choices = [doc["answerA"], doc["answerB"], doc["answerC"]]
num = len(choices)
letter_list = [style.format(letter) for letter in alphabet[0:num]]
if "\t" in style:
choice_string = "{}{}"
else:
choice_string = "{} {}"
doc_to_text = "\n".join(
[
"Question: " + doc["context"] + " " + doc["question"],
]
+ [choice_string.format(i, j) for i, j in zip(letter_list, choices)]
+ ["Answer:"]
)
return doc_to_text
# Full continuation
def choice_A(doc):
return doc["choices"]["text"]
# Letters only
def choice_B(alphabet, style, doc):
choices = [doc["answerA"], doc["answerB"], doc["answerC"]]
num = len(choices)
letter_list = [style.format(letter) for letter in alphabet[0:num]]
if "\t" in style:
letter_list = [letter.replace("\t", "") for letter in letter_list]
return letter_list
# Letters + Full continuation
def choice_C(alphabet, style, doc):
choices = [doc["answerA"], doc["answerB"], doc["answerC"]]
num = len(choices)
letter_list = [style.format(letter) for letter in alphabet[0:num]]
if "\t" not in style:
letter_list = [letter + " " for letter in letter_list]
return [letter + choice for letter, choice in zip(letter_list, choices)]
template_01 = partial(doc_to_text_base, string.ascii_lowercase, "({})")
choice_01a = choice_A
choice_01b = partial(choice_B, string.ascii_lowercase, "({})")
choice_01c = partial(choice_C, string.ascii_lowercase, "({})")
template_02 = partial(doc_to_text_base, string.ascii_lowercase, "{})")
choice_02a = choice_A
choice_02b = partial(choice_B, string.ascii_lowercase, "{})")
choice_02c = partial(choice_C, string.ascii_lowercase, "{})")
template_03 = partial(doc_to_text_base, string.ascii_lowercase, "{}.")
choice_03a = choice_A
choice_03b = partial(choice_B, string.ascii_lowercase, "{}.")
choice_03c = partial(choice_C, string.ascii_lowercase, "{}.")
template_04 = partial(doc_to_text_base, string.ascii_lowercase, "{}\t")
choice_04a = choice_A
choice_04b = partial(choice_B, string.ascii_lowercase, "{}\t")
choice_04c = partial(choice_C, string.ascii_lowercase, "{}\t")
template_05 = partial(doc_to_text_base, string.ascii_uppercase, "({})")
choice_05a = choice_A
choice_05b = partial(choice_B, string.ascii_uppercase, "({})")
choice_05c = partial(choice_C, string.ascii_uppercase, "({})")
template_06 = partial(doc_to_text_base, string.ascii_uppercase, "{})")
choice_06a = choice_A
choice_06b = partial(choice_B, string.ascii_uppercase, "{})")
choice_06c = partial(choice_C, string.ascii_uppercase, "{})")
template_07 = partial(doc_to_text_base, string.ascii_uppercase, "{}.")
choice_07a = choice_A
choice_07b = partial(choice_B, string.ascii_uppercase, "{}.")
choice_07c = partial(choice_C, string.ascii_uppercase, "{}.")
template_08 = partial(doc_to_text_base, string.ascii_uppercase, "{}\t")
choice_08a = choice_A
choice_08b = partial(choice_B, string.ascii_uppercase, "{}\t")
choice_08c = partial(choice_C, string.ascii_uppercase, "{}\t")
task: social_iqa
dataset_path: social_i_qa
dataset_name: null
output_type: multiple_choice
training_split: train
validation_split: validation
doc_to_choice: ["{{answerA}}", "{{answerB}}", "{{answerC}}"]
doc_to_target: "{{label}}"
should_decontaminate: true
metric_list:
- metric: acc
aggregation: mean
higher_is_better: true
- metric: acc_norm
aggregation: mean
higher_is_better: true
- metric: brier_score
aggregation: brier_score
higher_is_better: false
include: _siqa_alt_yaml
group: siqa_alt_pv
task: siqa_alt_pv_01
doc_to_text: "{{context}} {{question}}"
doc_to_decontamination_query: "{{context}} {{question}}"
include: _siqa_alt_yaml
group: siqa_alt_pv
task: siqa_alt_pv_02
doc_to_text: "Q: {{context}} {{question}}\nA:"
doc_to_decontamination_query: "Q: {{context}} {{question}}\nA:"
include: _siqa_alt_yaml
group: siqa_alt_pv
task: siqa_alt_pv_03
doc_to_text: "Question: {{context}} {{question}}\nAnswer:"
doc_to_decontamination_query: "Question: {{context}} {{question}}\nAnswer:"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment