Views
No views yet
mewaeltsegay/desta_1b for Tigrinya question answering using the TiQuAD dataset.mewaeltsegay/desta_1bLlamaForCausalLM| Split | EM | F1 | N |
|---|---|---|---|
| Validation | 42.3690 | 50.2434 | 1317 |
| Test | 42.4450 | 49.4997 | 1317 |
1import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4model_id = "mewaeltsegay/desta_1b_QA_v4552_Rosa"
5
6device = "cuda" if torch.cuda.is_available() else "cpu"
7
8tokenizer = AutoTokenizer.from_pretrained(model_id)
9model = AutoModelForCausalLM.from_pretrained(
10 model_id,
11 torch_dtype=torch.bfloat16,
12 device_map="auto",
13).to(device)
14
15model.eval()
16
17if torch.cuda.is_available():
18 print(f"VRAM: {torch.cuda.memory_allocated()/1e9:.1f} GB")
19print("✓ Ready")
20
21example = {"question": "ሌስተር ሲቲ ብኣርሰናል ብኽንደይ ተሳዒራ?", "context": "ቅንጥብጣብ\nብቕድሚ ትማሊ ኣብ ዝተኻየደ ግጥም ፕሪመር ሊግ እንግሊዝ፡ ኪውፒኣር ንኣስቶን ቪላ 2ብ0 ረቲዓ። እቲ ውጽኢት፡ ንኪውፒኣር ኣብዚ ዓመተ ስፖርት’ዚ ናይ ፈለማ ነጥቢ ካብ ሜዳኣ ወጻኢ ኮይኑ ተሰኒዱ ኣሎ። = ኣብ ዝሓለፈ መስኮት ምስግጋር ካብ ፊዮረንቲና ናብ ቸልሲ ዝተሰጋገረ ኳድራዶ ደጋፊ ማን ዩናይትድ ምዃኑ ተኣሚኑ። እቲ ኮሎምብያዊ ተጻዋታይ፡ ካብ ወዲ 10 ዓመት ጀሚሩ ብፍቕሪ ናይታ ማንቸስተራዊት ክለብ ከምዝተሓመሰን ሕጂ እውን ነታ ጋንታ ብልቡ ከምዝድግፍ ዓላሚ ሃገራዊት ጋንታ ኮሎምብያ ሓቢሩ። = ማርክ ሩይስ ምስ ቦሩስያ ዶርትመንድ ዘለዎ ውዕል ኣናዊሑ። ምንዋሕ ውዕል ናይቲ ተጻዋታይ ንሓያለ ሃደንቱ ክለባት ሕማቕ ዜና ኮይኑ ኣሎ። = ኣጥቃዒ ኒውካስል ሴም ደ ዮንግ ብሰንኪ ሕማም ሳምቡእ ንኣስታት ሸሞንተ ሳምንታት ካብ ጸወታ ከምዝርሕቕ ተሓቢሩ። = ኣርሰናል ንሌስተር ሲቲ 2ብ1 ኣብ ዝሰዓረትሉ ግጥም፡ ኣከፋፋሊኣ ኣሮን ራምሲ ማህሰይቲ ከምዝገጠሞ ኣሰልጣኒ ኣርሰን ቨንገር ኣፍሊጡ።", "answers": "2ብ1", "source": "original"}
22
23max_length = 1024
24newline_ids = tokenizer.encode("\n", add_special_tokens=False)
25stop_token_ids = [tokenizer.eos_token_id] + newline_ids
26
27
28
29def answer_question(context: str, question: str, max_new_tokens: int = 30) -> str:
30 prompt = f"ጽሑፍ: {context}\n\nሕቶ: {question}\n\nመልሲ:"
31 inputs = tokenizer(
32 prompt, return_tensors="pt",
33 truncation=True, max_length=max_length
34 )
35 inputs = {k: v.to(model.device) for k, v in inputs.items()}
36 with torch.no_grad():
37 out = model.generate(
38 **inputs,
39 max_new_tokens=max_new_tokens,
40 num_beams=4,
41 repetition_penalty=1.3,
42 no_repeat_ngram_size=3,
43 pad_token_id=tokenizer.pad_token_id,
44 eos_token_id=stop_token_ids,
45 early_stopping=True,
46 )
47 new = out[0][inputs["input_ids"].shape[1]:]
48 return tokenizer.decode(new, skip_special_tokens=True).strip()
49
50
51print("Inference ready.")
52
53# ሕቶ: ሌስተር ሲቲ ብኣርሰናል ብኽንደይ ተሳዒራ? መልሲ: 2ብ1
54
55f"ሕቶ: {example["question"]} መልሲ: {answer_question(example["context"], example["question"])}"
561@misc{desta-1b-2026,
2 title={DESTA-1B: Dedicated Eritrean Semitic Text Autoregressor},
3 author={Mewael Tsegay Desta},
4 year={2026},
5 publisher={Hugging Face},
6 howpublished={\url{https://huggingface.co/mewaeltsegay/desta_1b}}
7}