Automatic correction of README.md metadata. Contact [email protected] for any question
b52a505
language: | |
- fa | |
- multilingual | |
thumbnail: https://upload.wikimedia.org/wikipedia/commons/a/a2/Farsi.svg | |
tags: | |
- multiple-choice | |
- wikibert | |
- persian | |
- farsi | |
pipeline_tag: text-classification | |
license: cc-by-nc-sa-4.0 | |
datasets: | |
- parsinlu | |
metrics: | |
- accuracy | |
# Multiple-Choice Question Answering (مدل برای پاسخ به سوالات چهار جوابی) | |
This is a wikibert-based model for multiple-choice question answering. | |
Here is an example of how you can run this model: | |
```python | |
from typing import List | |
import torch | |
from transformers import AutoConfig, AutoModelForMultipleChoice, AutoTokenizer | |
model_name = "persiannlp/wikibert-base-parsinlu-multiple-choice" | |
tokenizer = AutoTokenizer.from_pretrained(model_name) | |
config = AutoConfig.from_pretrained(model_name) | |
model = AutoModelForMultipleChoice.from_pretrained(model_name, config=config) | |
def run_model(question: str, candicates: List[str]): | |
assert len(candicates) == 4, "you need four candidates" | |
choices_inputs = [] | |
for c in candicates: | |
text_a = "" # empty context | |
text_b = question + " " + c | |
inputs = tokenizer( | |
text_a, | |
text_b, | |
add_special_tokens=True, | |
max_length=128, | |
padding="max_length", | |
truncation=True, | |
return_overflowing_tokens=True, | |
) | |
choices_inputs.append(inputs) | |
input_ids = torch.LongTensor([x["input_ids"] for x in choices_inputs]) | |
output = model(input_ids=input_ids) | |
print(output) | |
return output | |
run_model(question="وسیع ترین کشور جهان کدام است؟", candicates=["آمریکا", "کانادا", "روسیه", "چین"]) | |
run_model(question="طامع یعنی ؟", candicates=["آزمند", "خوش شانس", "محتاج", "مطمئن"]) | |
run_model( | |
question="زمینی به ۳۱ قطعه متساوی مفروض شده است و هر روز مساحت آماده شده برای احداث، دو برابر مساحت روز قبل است.اگر پس از (۵ روز) تمام زمین آماده شده باشد، در چه روزی یک قطعه زمین آماده شده ", | |
candicates=["روز اول", "روز دوم", "روز سوم", "هیچکدام"]) | |
``` | |
For more details, visit this page: https://github.com/persiannlp/parsinlu/ |