BhashaBench-Multi (Krishi)#
Overview#
BhashaBench-Multi (Krishi) is a domain-specific multiple-choice benchmark evaluating LLM knowledge of agriculture (Krishi) across 22 Indic languages. Each question originates in English and is machine translated (with LLM-judged translation quality scores) into the target language; this adapter uses the translated question/choices.
Task Description#
Task Type: Domain-Specific Multiple-Choice Question Answering
Input: A agriculture (Krishi) question with 4 answer choices, in one of 22 Indic languages
Output: Correct answer letter
Languages: Assamese, Bengali, Bodo, Dogri, Gujarati, Hindi, Kannada, Kashmiri, Konkani, Maithili, Malayalam, Manipuri, Marathi, Nepali, Oriya, Punjabi, Sanskrit, Santhali, Sindhi, Tamil, Telugu, Urdu
Key Features#
~14,963 questions per language across 22 Indic languages per domain (~330k total per domain)
Machine-translated from English with LLM-judged translation quality scores
22 scheduled languages of India, all in native script; no English split
Four domains available as separate benchmarks: Ayurveda, Finance, Krishi, Legal
Evaluation Notes#
Default configuration uses 0-shot evaluation (test split, the only split available)
Use
subset_listto evaluate specific languages (e.g.,['Hindi', 'Tamil']), orlimitto cap sample count — each domain is ~14,963 questions per language across 22 languages (~330k total), so evaluating every language’s full split is a large runNo English split exists for this dataset
Properties#
Property |
Value |
|---|---|
Benchmark Name |
|
Dataset ID |
|
Paper |
N/A |
Tags |
|
Metrics |
|
Default Shots |
0-shot |
Evaluation Split |
|
Data Statistics#
Metric |
Value |
|---|---|
Total Samples |
338,910 |
Prompt Length (Mean) |
411.84 chars |
Prompt Length (Min/Max) |
207 / 2882 chars |
Per-Subset Statistics:
Subset |
Samples |
Prompt Mean |
Prompt Min |
Prompt Max |
|---|---|---|---|---|
|
15,405 |
402.14 |
224 |
2265 |
|
15,405 |
406.38 |
224 |
1506 |
|
15,405 |
417.81 |
207 |
2186 |
|
15,405 |
403.83 |
220 |
1988 |
|
15,405 |
397.6 |
224 |
1380 |
|
15,405 |
407.8 |
224 |
1572 |
|
15,405 |
407.21 |
224 |
1407 |
|
15,405 |
442.73 |
245 |
2668 |
|
15,405 |
402.57 |
222 |
1969 |
|
15,405 |
393.7 |
224 |
1783 |
|
15,405 |
429.89 |
224 |
1661 |
|
15,405 |
436.33 |
240 |
2882 |
|
15,405 |
406.47 |
224 |
1520 |
|
15,405 |
402.05 |
224 |
1440 |
|
15,405 |
392.2 |
221 |
1366 |
|
15,405 |
404.2 |
222 |
1536 |
|
15,405 |
411.22 |
224 |
1412 |
|
15,405 |
440.59 |
234 |
2773 |
|
15,405 |
392.36 |
224 |
1233 |
|
15,405 |
441.53 |
224 |
2165 |
|
15,405 |
412.75 |
224 |
1432 |
|
15,405 |
409.12 |
224 |
2132 |
Sample Example#
Subset: Assamese
{
"input": [
{
"id": "70df7242",
"content": "Answer the following multiple choice question. The entire content of your response should be of the following format: 'ANSWER: [LETTER]' (without quotes) where [LETTER] is one of A,B,C,D.\n\nইয়াকোনো বিশেষ স্থান আৰু সময়ত বায়ুমণ্ডলৰ অৱস্থা বা পৰিস্থিতি বুলি কোৱা হয়।\n\nA) জলবায়ু\nB) আবহাওয়া\nC) পৰ্যাৱৰণ\nD) বায়ুমণ্ডল"
}
],
"choices": [
"জলবায়ু",
"আবহাওয়া",
"পৰ্যাৱৰণ",
"বায়ুমণ্ডল"
],
"target": "B",
"id": 0,
"group_id": 0,
"metadata": {
"language": "Assamese",
"topic": null
}
}
Prompt Template#
Prompt Template:
Answer the following multiple choice question. The entire content of your response should be of the following format: 'ANSWER: [LETTER]' (without quotes) where [LETTER] is one of {letters}.
{question}
{choices}
Usage#
Using CLI#
evalscope eval \
--model YOUR_MODEL \
--api-url OPENAI_API_COMPAT_URL \
--api-key EMPTY_TOKEN \
--datasets bhasha_bench_multi_krishi \
--limit 10 # Remove this line for formal evaluation
Using Python#
from evalscope import run_task
from evalscope.config import TaskConfig
task_cfg = TaskConfig(
model='YOUR_MODEL',
api_url='OPENAI_API_COMPAT_URL',
api_key='EMPTY_TOKEN',
datasets=['bhasha_bench_multi_krishi'],
dataset_args={
'bhasha_bench_multi_krishi': {
# subset_list: ['Assamese', 'Bengali', 'Bodo'] # optional, evaluate specific subsets
}
},
limit=10, # Remove this line for formal evaluation
)
run_task(task_cfg=task_cfg)