Tibetan - Wikilangs Models
Comprehensive Research Report & Full Ablation Study
This repository contains NLP models trained and evaluated by Wikilangs, specifically on Tibetan Wikipedia data. We analyze tokenizers, n-gram models, Markov chains, vocabulary statistics, and word embeddings.
π Repository Contents
Models & Assets
- Tokenizers (8k, 16k, 32k, 64k)
- N-gram models (2, 3, 4, 5-gram)
- Markov chains (context of 1, 2, 3, 4 and 5)
- Subword N-gram and Markov chains
- Embeddings in various sizes and dimensions (aligned and unaligned)
- Language Vocabulary
- Language Statistics
Analysis and Evaluation
- 1. Tokenizer Evaluation
- 2. N-gram Model Evaluation
- 3. Markov Chain Evaluation
- 4. Vocabulary Analysis
- 5. Word Embeddings Evaluation
- 6. Morphological Analysis (Experimental)
- 7. Summary & Recommendations
- Metrics Glossary
- Visualizations Index
1. Tokenizer Evaluation
Results
| Vocab Size | Compression | Avg Token Len | UNK Rate | Total Tokens |
|---|---|---|---|---|
| 8k | 4.069x | 4.07 | 0.3678% | 233,845 |
| 16k | 4.567x | 4.57 | 0.4127% | 208,371 |
| 32k | 4.989x | 4.99 | 0.4509% | 190,738 |
| 64k | 5.306x π | 5.31 | 0.4795% | 179,358 |
Tokenization Examples
Below are sample sentences tokenized with each vocabulary size:
Sample 1: ΰ½ΰ½¦ΰ½Ίΰ½’ΰΌΰ½ΰ½ΌΰΌΰ½ΰ½²ΰΌΰ½¦ΰΎΰ½Όΰ½ΰΌΰ½¦ΰΎΰΎ±ΰ½Ίΰ½¦ΰΌΰ½¦ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰ½ΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌΰ½’ΰ½²ΰ½ΰ½¦ΰΌΰ½ΰ½
ΰ½²ΰ½ΰΌΰ½’ΰ½Ίΰ½ΰΌ ΰ½£ΰ½ΌΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½¦ΰΌ ΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ ΰ½ΰ½²ΰ½...
| Vocab | Tokens | Count |
|---|---|---|
| 8k | βΰ½ΰ½¦ΰ½Ίΰ½’ΰΌ ΰ½ΰ½ΌΰΌΰ½ΰ½²ΰΌ སΰΎΰ½Όΰ½ΰΌΰ½¦ΰΎΰΎ±ΰ½Ίΰ½¦ΰΌ སྲོΰ½ΰΌΰ½ΰ½ΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½’ΰ½²ΰ½ΰ½¦ΰΌΰ½ΰ½
ΰ½²ΰ½ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½£ΰ½ΌΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½¦ΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ βΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ΌΰΌ ΰ½ ΰ½ΰΌΰ½ΰ½ΰΎ±ΰ½ΰΌΰ½ΰ½ΰ½²ΰΌ ... (+5 more) |
15 |
| 16k | βΰ½ΰ½¦ΰ½Ίΰ½’ΰΌ ΰ½ΰ½ΌΰΌΰ½ΰ½²ΰΌ སΰΎΰ½Όΰ½ΰΌΰ½¦ΰΎΰΎ±ΰ½Ίΰ½¦ΰΌ སྲོΰ½ΰΌΰ½ΰ½ΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½’ΰ½²ΰ½ΰ½¦ΰΌΰ½ΰ½
ΰ½²ΰ½ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½£ΰ½ΌΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½¦ΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ βΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ΌΰΌ ΰ½ ΰ½ΰΌΰ½ΰ½ΰΎ±ΰ½ΰΌΰ½ΰ½ΰ½²ΰΌ ... (+5 more) |
15 |
| 32k | βΰ½ΰ½¦ΰ½Ίΰ½’ΰΌ ΰ½ΰ½ΌΰΌΰ½ΰ½²ΰΌ སΰΎΰ½Όΰ½ΰΌΰ½¦ΰΎΰΎ±ΰ½Ίΰ½¦ΰΌ སྲོΰ½ΰΌΰ½ΰ½ΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½’ΰ½²ΰ½ΰ½¦ΰΌΰ½ΰ½
ΰ½²ΰ½ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½£ΰ½ΌΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½¦ΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ βΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ΌΰΌ ΰ½ ΰ½ΰΌΰ½ΰ½ΰΎ±ΰ½ΰΌΰ½ΰ½ΰ½²ΰΌ ... (+5 more) |
15 |
| 64k | βΰ½ΰ½¦ΰ½Ίΰ½’ΰΌ ΰ½ΰ½ΌΰΌΰ½ΰ½²ΰΌ སΰΎΰ½Όΰ½ΰΌΰ½¦ΰΎΰΎ±ΰ½Ίΰ½¦ΰΌ སྲོΰ½ΰΌΰ½ΰ½ΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½’ΰ½²ΰ½ΰ½¦ΰΌΰ½ΰ½
ΰ½²ΰ½ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½£ΰ½ΌΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½¦ΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ βΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ΌΰΌ ΰ½ ΰ½ΰΌΰ½ΰ½ΰΎ±ΰ½ΰΌΰ½ΰ½ΰ½²ΰΌ ... (+5 more) |
15 |
Sample 2: ΰ½ΰΎ²ΰ½Όΰ½ ུΰΌΰ½¦ΰ½²ΰΌ ΰ½ΰ½²ΰΌΰ½£ΰ½ ΰ½²ΰΌΰ½£ΰΎ·ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌΰ½ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰΎ±ΰ½²ΰΌΰ½£ΰΎ·ΰΌΰ½’ΰ½Ίΰ½ΰΌ ΰ½ΰ½²ΰΌΰ½ΰ½ΊΰΌ ΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ ΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ΌΰΌΰ½ ΰ½ΰΌΰ½ΰ½ΰΎ±...
| Vocab | Tokens | Count |
|---|---|---|
| 8k | βΰ½ΰΎ² ོའུ༠སི༠βΰ½ΰ½²ΰΌ ལའི༠ལྷ༠སΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌ ΰ½’ΰ½Ίΰ½ΰΌ ... (+10 more) |
20 |
| 16k | βΰ½ΰΎ²ΰ½Όΰ½ ུ༠སི༠βΰ½ΰ½²ΰΌ ΰ½£ΰ½ ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½ΰ½²ΰΌΰ½ΰ½ΊΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ ... (+7 more) |
17 |
| 32k | βΰ½ΰΎ²ΰ½Όΰ½ ུ༠སི༠βΰ½ΰ½²ΰΌ ΰ½£ΰ½ ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½ΰ½²ΰΌΰ½ΰ½ΊΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ ... (+7 more) |
17 |
| 64k | βΰ½ΰΎ²ΰ½Όΰ½ ུ༠སི༠βΰ½ΰ½²ΰΌ ΰ½£ΰ½ ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰΎ²ΰ½Όΰ½ΰΌΰ½ΰΎ±ΰ½²ΰΌ ΰ½£ΰΎ·ΰΌΰ½’ΰ½Ίΰ½ΰΌ βΰ½ΰ½²ΰΌΰ½ΰ½ΊΰΌ βΰ½ΰ½’ΰΌΰ½’ིསΰΌΰ½ΰ½’ΰΌ ΰ½ ΰ½ΰΎ±ΰ½ΰ½¦ΰΌ ... (+7 more) |
17 |
Sample 3: ΰ½ΰΎ±ΰ½ΰΌΰ½ ΰ½ΰ½¦ΰΌΰ½ΰ½ΰ½ΰΌΰ½ΰ½¦ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌΰ½ΰ½΄ΰΌΰ½ΰ½Ίΰ½ΰΌ ΰ½ΰΎ±ΰΌΰ½ΰ½ΰΌΰ½£ΰ½¦ΰΌΰ½ ΰ½ΰ½¦ΰΌΰ½ΰΌΰ½¦ΰΎΰ½ΊΰΌΰ½ΰ½’ΰΌΰ½ΰΌΰ½ΰ½ΰΌΰΌ ΰ½ΰ½ΰ½¦ΰΌΰ½
ΰ½ΰΌΰ½ΰ½ΰΎ±ΰ½Ίΰ½ΰΌΰ½ΰ½ ΰ½²ΰΌΰ½ΰ½ΌΰΌΰ½ ΰ½...
| Vocab | Tokens | Count |
|---|---|---|
| 8k | βΰ½ΰΎ±ΰ½ΰΌ ΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰ½ΰ½ΰΌ ΰ½ΰ½¦ΰΌ སΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰ½΄ΰΌ ΰ½ΰ½Ίΰ½ΰΌ βΰ½ΰΎ±ΰΌΰ½ΰ½ΰΌ ལསΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰΌΰ½¦ΰΎΰ½ΊΰΌ ... (+15 more) |
25 |
| 16k | βΰ½ΰΎ±ΰ½ΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰ½ΰ½ΰΌ ΰ½ΰ½¦ΰΌ སΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰ½΄ΰΌ ΰ½ΰ½Ίΰ½ΰΌ βΰ½ΰΎ±ΰΌΰ½ΰ½ΰΌ ལསΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰΌΰ½¦ΰΎΰ½ΊΰΌ ΰ½ΰ½’ΰΌ ... (+13 more) |
23 |
| 32k | βΰ½ΰΎ±ΰ½ΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰ½ΰ½ΰΌΰ½ΰ½¦ΰΌ སΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰ½΄ΰΌ ΰ½ΰ½Ίΰ½ΰΌ βΰ½ΰΎ±ΰΌΰ½ΰ½ΰΌ ལསΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰΌΰ½¦ΰΎΰ½ΊΰΌ ΰ½ΰ½’ΰΌ ΰ½ΰΌΰ½ΰ½ΰΌΰΌ ... (+10 more) |
20 |
| 64k | βΰ½ΰΎ±ΰ½ΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰ½ΰ½ΰΌΰ½ΰ½¦ΰΌ སΰΎΰΎ²ΰ½΄ΰ½ΰΌ ΰ½ΰ½΄ΰΌ ΰ½ΰ½Ίΰ½ΰΌ βΰ½ΰΎ±ΰΌΰ½ΰ½ΰΌΰ½£ΰ½¦ΰΌΰ½ ΰ½ΰ½¦ΰΌ ΰ½ΰΌΰ½¦ΰΎΰ½ΊΰΌ ΰ½ΰ½’ΰΌ ΰ½ΰΌΰ½ΰ½ΰΌΰΌ βΰ½ΰ½ΰ½¦ΰΌΰ½
ΰ½ΰΌ ... (+7 more) |
17 |
Key Findings
- Best Compression: 64k achieves 5.306x compression
- Lowest UNK Rate: 8k with 0.3678% unknown tokens
- Trade-off: Larger vocabularies improve compression but increase model size
- Recommendation: 32k vocabulary provides optimal balance for production use
2. N-gram Model Evaluation
Results
| N-gram | Variant | Perplexity | Entropy | Unique N-grams | Top-100 Coverage | Top-1000 Coverage |
|---|---|---|---|---|---|---|
| 2-gram | Word | 35,575 | 15.12 | 163,426 | 8.0% | 26.6% |
| 2-gram | Subword | 468 π | 8.87 | 14,902 | 58.0% | 90.7% |
| 3-gram | Word | 208,497 | 17.67 | 499,603 | 3.7% | 11.0% |
| 3-gram | Subword | 3,697 | 11.85 | 87,521 | 25.1% | 62.9% |
| 4-gram | Word | 574,996 | 19.13 | 1,035,818 | 3.2% | 7.7% |
| 4-gram | Subword | 21,129 | 14.37 | 395,961 | 12.1% | 36.3% |
| 5-gram | Word | 554,814 | 19.08 | 896,814 | 3.6% | 8.0% |
| 5-gram | Subword | 85,765 | 16.39 | 872,546 | 6.0% | 20.2% |
Top 5 N-grams by Size
2-grams (Word):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰ½ ΰ½ΰ½ |
28,306 |
| 2 | ΰ½ ΰ½ΰ½ |
12,858 |
| 3 | ΰ½ ΰ½£ |
12,495 |
| 4 | ΰ½ΰ½ΰ½¦ ΰ½
ΰ½ |
12,121 |
| 5 | ΰ½ ΰ½ΰ½² |
11,602 |
3-grams (Word):
| Rank | N-gram | Count |
|---|---|---|
| 1 | སྀྱོའའΰ½ΰ½΄ΰ½ ΰ½ΰ½² |
4,094 |
| 2 | ΰ½ΰ½Ίΰ½¦ ΰ½ΰΎ± ΰ½ |
3,742 |
| 3 | ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ |
3,594 |
| 4 | ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ |
3,563 |
| 5 | ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² |
3,563 |
4-grams (Word):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ |
3,562 |
| 2 | ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ |
3,391 |
| 3 | ΰ½ΰ½²ΰ½ ΰ½ΰ½Ό ΰ½ ΰ½ ΰ½ΰ½ΰΎ±ΰ½ |
2,805 |
| 4 | ΰ½ΰ½Ό ΰ½ ΰ½ ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½² |
2,802 |
| 5 | ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ |
2,789 |
5-grams (Word):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰ½ΰ½²ΰ½ ΰ½ΰ½Ό ΰ½ ΰ½ ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½² |
2,802 |
| 2 | ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ |
2,789 |
| 3 | ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ |
2,779 |
| 4 | ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ |
2,777 |
| 5 | ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ |
2,776 |
2-grams (Subword):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ས ༠|
1,109,782 |
| 2 | ΰΌ _ |
814,181 |
| 3 | ΰ½ ΰΌ |
726,970 |
| 4 | ΰ½ ΰΌ |
605,125 |
| 5 | ΰΌ ΰ½ |
601,943 |
3-grams (Subword):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰΌ ΰ½ ΰΌ |
233,799 |
| 2 | འས ༠|
214,635 |
| 3 | ΰΌ _ ΰΌ |
181,451 |
| 4 | ས ༠འ|
169,152 |
| 5 | ΰΌ ΰ½ ΰ½ |
160,512 |
4-grams (Subword):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰΌ ΰ½ ΰ½ ΰΌ |
137,863 |
| 2 | ΰΌ ΰ½ ΰ½ ΰ½² ΰΌ |
114,983 |
| 3 | ΰ½ ΰΌ ΰΌ _ |
88,853 |
| 4 | ས ༠འ༠|
77,821 |
| 5 | ΰΌ ΰ½ ΰ½’ ΰΌ |
67,023 |
5-grams (Subword):
| Rank | N-gram | Count |
|---|---|---|
| 1 | ΰ½ ΰ½ ΰΌ ΰΌ _ |
50,908 |
| 2 | ΰΌ ΰ½ ΰ½ ΰΌ ΰΌ |
50,893 |
| 3 | ས ༠འའི ༠|
39,175 |
| 4 | ༠དྷྣ འས ༠|
29,571 |
| 5 | ༠སོ འས ༠|
28,140 |
Key Findings
- Best Perplexity: 2-gram (subword) with 468
- Entropy Trend: Decreases with larger n-grams (more predictable)
- Coverage: Top-1000 patterns cover ~20% of corpus
- Recommendation: 4-gram or 5-gram for best predictive performance
3. Markov Chain Evaluation
Results
| Context | Variant | Avg Entropy | Perplexity | Branching Factor | Unique Contexts | Predictability |
|---|---|---|---|---|---|---|
| 1 | Word | 0.9206 | 1.893 | 17.76 | 45,103 | 7.9% |
| 1 | Subword | 0.8281 | 1.775 | 6.83 | 8,393 | 17.2% |
| 2 | Word | 0.7033 | 1.628 | 3.81 | 800,524 | 29.7% |
| 2 | Subword | 0.4670 | 1.382 | 4.11 | 57,328 | 53.3% |
| 3 | Word | 0.2921 | 1.224 | 1.62 | 3,051,550 | 70.8% |
| 3 | Subword | 0.4481 | 1.364 | 3.28 | 235,662 | 55.2% |
| 4 | Word | 0.1112 π | 1.080 | 1.18 | 4,929,019 | 88.9% |
| 4 | Subword | 0.3733 | 1.295 | 2.38 | 773,603 | 62.7% |
Generated Text Samples (Word-based)
Below are text samples generated from each word-based Markov chain model:
Context Size 1:
འདིའΰ½ΰ½ΰ½²ΰ½¦ ΰ½ΰ½ΰ½ ΰ½€ΰ½Ό ΰ½ΰ½²ΰ½ ΰ½ΰ½¦ΰ½΄ΰ½ ΰ½’ΰΎ«ΰ½²ΰ½ ΰ½ΰ½΄ΰ½’ ΰ½£ΰ½ ΰ½ΰ½¦ΰ½΄ΰ½ ΰ½ ΰ½£ ΰ½ΰ½±ΰ½΄ ΰ½₯ΰ½² ΰ½ΰ½ΰ½ སུའΰ½ΰ½ΰ½²ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰ½ΰ½¦ ΰ½£ΰΎΰ½ΰ½¦ ΰ½’ΰ½²ΰ½ΰ½¦ སུ ΰ½ΰ½ΰ½΄ΰ½ΰ½¦ ΰ½ ΰ½ΰ½Ίΰ½ ΰ½ΰ½Ό ΰ½ΰ½ΰ½²ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰ½ ལསལ ΰ½ΰ½Όΰ½ ΰ½€ΰ½ ΰ½ΰ½ ΰ½ΰ½²ΰ½ ལུས ΰ½£ སོΰ½ΰ½¦ ΰ½ΰ½ ΰ½² ΰ½ΰ½²ΰ½ ΰ½ΰ½Ίΰ½£ དྷེས ΰ½ΰ½Όΰ½¦ ΰ½ΰ½’ྑུའΰ½ΰ½ ΰ½² སΰΎΰ½΄
Context Size 2:
ΰ½ ΰ½ΰ½ ΰ½ΰ½ΰ½ ΰ½ ΰ½ ΰ½ΰ½ΰ½²ΰ½¦ ΰ½ΰ½ΰ½²ΰ½¦ ΰ½ΰ½ΰ½²ΰ½¦ དོའཀདྷ ΰ½ΰ½Όΰ½ΰ½¦ ΰ½ΰ½² ΰ½ΰ½ΰ½² འཨ ΰ½ΰΎ·ΰ½² ΰ½₯ΰ½²ΰ½ΰΎ©ΰ½ ΰ½ΰ½ ΰ½ΰ½ΰ½ སΰΎΰΎ±ΰ½Ίΰ½£ ΰ½ΰ½²ΰ½ ΰ½ΰ½ΰΎ±ΰ½’ ΰ½ ΰ½’ΰ½² འསྀྱི ΰ½ΰ½ΰ½΄ΰ½ ΰ½’ΰΎΰΎ±ΰ½£ ΰ½ΰ½ ΰ½ΰ½Ί དྷུ ΰ½ΰ½ΰ½ ΰ½ΰ½Όΰ½ ΰ½£ ΰ½ΰ½ΰ½΄ΰ½ΰ½¦ ΰ½ΰ½’ ΰ½ΰ½£ ΰ½ΰΎ±ΰ½²ΰ½¦ ΰ½ΰ½ΰ½Ίΰ½¦ ΰ½ ΰ½ΰ½¦ ΰ½ ΰ½ΰΎ²ΰ½¦ ΰ½ΰ½΄ ΰ½ΰ½Ί ΰ½ ΰ½ΰ½Ίΰ½ ΰ½² ΰ½ΰΎ±ΰ½Ί ΰ½ΰΎ²ΰ½ ΰ½
Context Size 3:
སྀྱོའའΰ½ΰ½΄ΰ½ ΰ½ΰ½² ΰ½ΰ½ΰ½ ΰ½ ΰ½ΰΎ²ΰ½Ίΰ½£ ΰ½€ΰ½²ΰ½ ΰ½ΰ½ΰ½’ ΰ½ΰ½Ίΰ½¦ ΰ½ΰ½¦ΰ½΄ΰ½ΰ½¦ ΰ½ ΰ½ΰ½² ΰ½ ΰ½ΰ½Όΰ½ ΰ½ ΰ½ΰΎ±ΰ½ ΰ½ΰ½Όΰ½ΰ½¦ དΰ½ΰ½¦ ΰ½ ΰ½ΰ½Ίΰ½ΰ½Ίΰ½¦ ΰ½ΰΎ± ΰ½ ΰ½£ སོΰ½ΰ½¦ ΰ½ ΰ½ΰ½ΰ½ འདིའΰ½ΰ½Ό ΰ½’ΰ½ ΰ½ ΰ½ΰ½’ ΰ½ΰ½ΰΎ² དི ΰ½ΰ½ΰ½ ΰ½ΰ½΄ ΰ½ΰ½ ΰ½ ΰ½ΰ½Ίΰ½£ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ ΰ½£ΰΎΰ½Ί ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½Ί ΰ½’ΰΎ‘ΰ½Ό ΰ½’ΰΎΰ½Ί
Context Size 4:
ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰΎ±ΰ½²ΰ½ ΰ½ΰ½²ΰ½ ΰ½² དྷླུའའΰ½ΰΎ²ΰ½²ΰ½ ΰ½ΰ½΄ΰ½ སིས ΰ½ΰ½²ΰ½ ΰ½ΰ½Ίΰ½’ΰ½ΰ½²ΰ½ ΰ½ΰ½Ό ΰ½ ΰ½ ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½² ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰΎ±ΰ½² ΰ½ΰΎ±ΰ½Όΰ½ΰ½¦ ΰ½ΰΎ² ΰ½ΰ½ΰ½΄ΰ½ bdrc buddhist digitalΰ½ΰ½Ό ΰ½ ΰ½ ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½² ΰ½ΰ½ΰΎ±ΰ½ ΰ½ΰ½ΰ½²ΰ½ ΰ½² ΰ½ΰ½ΰ½’ ΰ½ΰ½ ΰ½ ΰ½ΰ½΄ΰ½ ΰ½ΰ½ΰ½²ΰ½ΰ½¦ ΰ½ΰ½Ί སདྷ ΰ½’ΰΎΰΎ±ΰ½£ ΰ½ΰ½Ό ΰ½’ΰΎΰΎ± ΰ½ΰ½ ΰ½ΰ½΄ ΰ½ΰ½Ίΰ½ΰ½¦
Generated Text Samples (Subword-based)
Below are text samples generated from each subword-based Markov chain model:
Context Size 1:
ΰΌΰ½ΰ½΄ΰΌΰ½ΰ½ΌΰΌΰ½¦ΰΎ¦ΰΎ±ΰ½ΰ½¦ΰΌΰ½ΰ½¦ΰ½£ΰΌΰ½ΰΎ²ΰ½²ΰΌΰ½ΰ½¦ΰΌΰ½ΰ½²ΰ½¦ΰΌ_ΰ½ΰ½ΰ½ΰΌΰ½ΰΎ±ΰ½²ΰ½¦ΰΌ_ΰ½ΰ½ΰ½ΰ½¦ΰΌΰ½ΰ½Ίΰ½ΰΌΰ½ΰ½²ΰΌΰ½‘ΰ½Όΰ½ΰΌΰ½ ΰΌ_ΰΌ_
Context Size 2:
སΰΌΰ½ΰ½ΰ½Όΰ½¦ΰΌΰ½ΰΎ±ΰ½²ΰΌΰ½£ΰΎ·ΰ½¦ΰΌΰ½ΰΌΰ½Ί_ΰ½’ΰΎ£ΰ½ΰ½¦ΰΌ_ΰ½ΰ½Ίΰ½ΰ½¦ΰΌΰ½ΰ½ΰ½²ΰ½ΰΌΰ½ΰ½ ΰ½²ΰΌΰ½¦ΰΎ‘ུΰ½ΰΌΰ½‘ΰ½²ΰ½ΰΌΰΌ_ΰ½ΰΌΰ½ΰ½ΰ½²ΰ½¦ΰΌ_ΰ½ΰΎ²ΰ½ΰ½¦ΰΌΰ½ΰ½’
Context Size 3:
ΰΌΰ½ΰΌΰ½£ΰΌΰ½ΰΎ²ΰ½²ΰ½¦ΰΌΰ½ΰΌΰ½ΰ½²ΰΌ_ΰ½£ΰ½Όΰ½ ΰ½²ΰΌΰ½’ΰΎΰΎ±ΰ½΄ΰ½ΰ½ΰ½¦ΰΌΰ½ΰΌΰ½ΰΎ³ΰ½²ΰ½ΰΌΰ½ΰ½ΰ½ΰΌΰ½ΰ½ΌΰΌΰ½ΰ½ΰΎ±ΰ½²ΰ½ΰ½¦ΰΌ_ΰΌΰ½ΰΎ±ΰ½¦ΰΌΰ½ΰΎ±ΰ½ΰΌΰ½’ུΰ½ΰΌΰΌ_ΰ½ΰ½²ΰΌΰ½ΰ½
Context Size 4:
ΰΌΰ½ΰ½ΰΌΰΌ_ΰΌΰ½ΰ½ΰ½΄ΰΌΰ½¦ΰΎΰ½Όΰ½ΰ½¦ΰΌΰ½’ΰΎΰΎ±ΰ½¦ΰΌΰ½ΰ½ΰ½ΊΰΌΰ½ΰ½ ΰ½²ΰΌΰ½ΰ½΄ΰ½£ΰΌΰ½ΰ½»ΰΌΰ½¦ΰ½Ίΰ½’ΰΌΰ½ΰ½ΌΰΌΰ½ ΰ½ΰ½Όΰ½’ΰΌΰ½‘ΰ½ΰΌΰΌ_ΰ½ΰ½ΰ½²ΰΌΰ½ΰΌ_སΰΎΰ½Όΰ½ΰΌΰ½ΰΌΰ½¦ΰΎΰΎ²ΰ½΄ΰ½ΰΌΰ½
Key Findings
- Best Predictability: Context-4 (word) with 88.9% predictability
- Branching Factor: Decreases with context size (more deterministic)
- Memory Trade-off: Larger contexts require more storage (773,603 contexts)
- Recommendation: Context-3 or Context-4 for text generation
4. Vocabulary Analysis
Statistics
| Metric | Value |
|---|---|
| Vocabulary Size | 18,977 |
| Total Tokens | 7,591,805 |
| Mean Frequency | 400.05 |
| Median Frequency | 5 |
| Frequency Std Dev | 3886.00 |
Most Common Words
| Rank | Word | Frequency |
|---|---|---|
| 1 | ΰ½ | 277,831 |
| 2 | ΰ½ΰ½ | 165,810 |
| 3 | ΰ½£ | 150,300 |
| 4 | ΰ½ | 127,823 |
| 5 | ΰ½ΰ½ ΰ½² | 118,705 |
| 6 | ΰ½ | 92,873 |
| 7 | ΰ½ΰ½Ί | 80,387 |
| 8 | ΰ½ΰ½² | 78,884 |
| 9 | ΰ½ΰΎ±ΰ½² | 76,665 |
| 10 | ΰ½ΰ½΄ | 73,981 |
Least Common Words (from vocabulary)
| Rank | Word | Frequency |
|---|---|---|
| 1 | སུΰ½ΰΎ¦ΰΎ·ΰ½ ΰ½² | 2 |
| 2 | ΰ½ΰ½²ΰ½ΰΎ² | 2 |
| 3 | jayasena | 2 |
| 4 | ཀུΰ½ΰΎ‘ྷཿསདྷྦྦ | 2 |
| 5 | ΰ½§ΰΎ²ΰ½Όΰ½Ύ | 2 |
| 6 | ΰ½ΰ½’ΰΎΰ½± | 2 |
| 7 | caryΔ | 2 |
| 8 | gΔ«ti | 2 |
| 9 | caryΔgΔ«tivαΉtti | 2 |
| 10 | ΰ½ΰ½ΰΎ²ΰΎΰ½ | 2 |
Zipf's Law Analysis
| Metric | Value |
|---|---|
| Zipf Coefficient | 2.0091 |
| RΒ² (Goodness of Fit) | 0.961368 |
| Adherence Quality | excellent |
Coverage Analysis
| Top N Words | Coverage |
|---|---|
| Top 100 | 47.6% |
| Top 1,000 | 90.6% |
| Top 5,000 | 99.1% |
| Top 10,000 | 99.7% |
Key Findings
- Zipf Compliance: RΒ²=0.9614 indicates excellent adherence to Zipf's law
- High Frequency Dominance: Top 100 words cover 47.6% of corpus
- Long Tail: 8,977 words needed for remaining 0.3% coverage
5. Word Embeddings Evaluation
5.1 Cross-Lingual Alignment
5.2 Model Comparison
| Model | Dimension | Isotropy | Semantic Density | Alignment R@1 | Alignment R@10 |
|---|---|---|---|---|---|
| mono_32d | 32 | 0.8542 π | 0.3709 | N/A | N/A |
| mono_64d | 64 | 0.8068 | 0.3078 | N/A | N/A |
| mono_128d | 128 | 0.6072 | 0.2915 | N/A | N/A |
| aligned_32d | 32 | 0.8542 | 0.3660 | 0.0160 | 0.1720 |
| aligned_64d | 64 | 0.8068 | 0.3152 | 0.0740 | 0.2780 |
| aligned_128d | 128 | 0.6072 | 0.2869 | 0.1820 | 0.3900 |
Key Findings
- Best Isotropy: mono_32d with 0.8542 (more uniform distribution)
- Semantic Density: Average pairwise similarity of 0.3231. Lower values indicate better semantic separation.
- Alignment Quality: Aligned models achieve up to 18.2% R@1 in cross-lingual retrieval.
- Recommendation: 128d aligned for best cross-lingual performance
6. Morphological Analysis (Experimental)
This section presents an automated morphological analysis derived from the statistical divergence between word-level and subword-level models. By analyzing where subword predictability spikes and where word-level coverage fails, we can infer linguistic structures without supervised data.
6.1 Productivity & Complexity
| Metric | Value | Interpretation | Recommendation |
|---|---|---|---|
| Productivity Index | 5.000 | High morphological productivity | Reliable analysis |
| Idiomaticity Gap | -0.603 | Low formulaic content | - |
6.2 Affix Inventory (Productive Units)
These are the most productive prefixes and suffixes identified by sampling the vocabulary for global substitutability patterns. A unit is considered an affix if stripping it leaves a valid stem that appears in other contexts.
No productive affixes detected.
6.3 Bound Stems (Lexical Roots)
Bound stems are high-frequency subword units that are semantically cohesive but rarely appear as standalone words. These often correspond to the 'core' of a word that requires inflection or derivation to be valid.
No significant bound stems detected.
6.4 Affix Compatibility (Co-occurrence)
This table shows which prefixes and suffixes most frequently co-occur on the same stems, revealing the 'stacking' rules of the language's morphology.
No significant affix co-occurrences detected.
6.5 Recursive Morpheme Segmentation
Using Recursive Hierarchical Substitutability, we decompose complex words into their constituent morphemes. This approach handles nested affixes (e.g., prefix-prefix-root-suffix).
Insufficient data for recursive segmentation.
6.6 Linguistic Interpretation
Automated Insight: The language Tibetan shows high morphological productivity. The subword models are significantly more efficient than word models, suggesting a rich system of affixation or compounding.
7. Summary & Recommendations
Production Recommendations
| Component | Recommended | Rationale |
|---|---|---|
| Tokenizer | 64k BPE | Best compression (5.31x) |
| N-gram | 2-gram | Lowest perplexity (468) |
| Markov | Context-4 | Highest predictability (88.9%) |
| Embeddings | 100d | Balanced semantic capture and isotropy |
Appendix: Metrics Glossary & Interpretation Guide
This section provides definitions, intuitions, and guidance for interpreting the metrics used throughout this report.
Tokenizer Metrics
Compression Ratio
Definition: The ratio of characters to tokens (chars/token). Measures how efficiently the tokenizer represents text.
Intuition: Higher compression means fewer tokens needed to represent the same text, reducing sequence lengths for downstream models. A 3x compression means ~3 characters per token on average.
What to seek: Higher is generally better for efficiency, but extremely high compression may indicate overly aggressive merging that loses morphological information.
Average Token Length (Fertility)
Definition: Mean number of characters per token produced by the tokenizer.
Intuition: Reflects the granularity of tokenization. Longer tokens capture more context but may struggle with rare words; shorter tokens are more flexible but increase sequence length.
What to seek: Balance between 2-5 characters for most languages. Arabic/morphologically-rich languages may benefit from slightly longer tokens.
Unknown Token Rate (OOV Rate)
Definition: Percentage of tokens that map to the unknown/UNK token, indicating words the tokenizer cannot represent.
Intuition: Lower OOV means better vocabulary coverage. High OOV indicates the tokenizer encounters many unseen character sequences.
What to seek: Below 1% is excellent; below 5% is acceptable. BPE tokenizers typically achieve very low OOV due to subword fallback.
N-gram Model Metrics
Perplexity
Definition: Measures how "surprised" the model is by test data. Mathematically: 2^(cross-entropy). Lower values indicate better prediction.
Intuition: If perplexity is 100, the model is as uncertain as if choosing uniformly among 100 options at each step. A perplexity of 10 means effectively choosing among 10 equally likely options.
What to seek: Lower is better. Perplexity decreases with larger n-grams (more context). Values vary widely by language and corpus size.
Entropy
Definition: Average information content (in bits) needed to encode the next token given the context. Related to perplexity: perplexity = 2^entropy.
Intuition: High entropy means high uncertainty/randomness; low entropy means predictable patterns. Natural language typically has entropy between 1-4 bits per character.
What to seek: Lower entropy indicates more predictable text patterns. Entropy should decrease as n-gram size increases.
Coverage (Top-K)
Definition: Percentage of corpus occurrences explained by the top K most frequent n-grams.
Intuition: High coverage with few patterns indicates repetitive/formulaic text; low coverage suggests diverse vocabulary usage.
What to seek: Depends on use case. For language modeling, moderate coverage (40-60% with top-1000) is typical for natural text.
Markov Chain Metrics
Average Entropy
Definition: Mean entropy across all contexts, measuring average uncertainty in next-word prediction.
Intuition: Lower entropy means the model is more confident about what comes next. Context-1 has high entropy (many possible next words); Context-4 has low entropy (few likely continuations).
What to seek: Decreasing entropy with larger context sizes. Very low entropy (<0.1) indicates highly deterministic transitions.
Branching Factor
Definition: Average number of unique next tokens observed for each context.
Intuition: High branching = many possible continuations (flexible but uncertain); low branching = few options (predictable but potentially repetitive).
What to seek: Branching factor should decrease with context size. Values near 1.0 indicate nearly deterministic chains.
Predictability
Definition: Derived metric: (1 - normalized_entropy) Γ 100%. Indicates how deterministic the model's predictions are.
Intuition: 100% predictability means the next word is always certain; 0% means completely random. Real text falls between these extremes.
What to seek: Higher predictability for text generation quality, but too high (>98%) may produce repetitive output.
Vocabulary & Zipf's Law Metrics
Zipf's Coefficient
Definition: The slope of the log-log plot of word frequency vs. rank. Zipf's law predicts this should be approximately -1.
Intuition: A coefficient near -1 indicates the corpus follows natural language patterns where a few words are very common and most words are rare.
What to seek: Values between -0.8 and -1.2 indicate healthy natural language distribution. Deviations may suggest domain-specific or artificial text.
RΒ² (Coefficient of Determination)
Definition: Measures how well the linear fit explains the frequency-rank relationship. Ranges from 0 to 1.
Intuition: RΒ² near 1.0 means the data closely follows Zipf's law; lower values indicate deviation from expected word frequency patterns.
What to seek: RΒ² > 0.95 is excellent; > 0.99 indicates near-perfect Zipf adherence typical of large natural corpora.
Vocabulary Coverage
Definition: Cumulative percentage of corpus tokens accounted for by the top N words.
Intuition: Shows how concentrated word usage is. If top-100 words cover 50% of text, the corpus relies heavily on common words.
What to seek: Top-100 covering 30-50% is typical. Higher coverage indicates more repetitive text; lower suggests richer vocabulary.
Word Embedding Metrics
Isotropy
Definition: Measures how uniformly distributed vectors are in the embedding space. Computed as the ratio of minimum to maximum singular values.
Intuition: High isotropy (near 1.0) means vectors spread evenly in all directions; low isotropy means vectors cluster in certain directions, reducing expressiveness.
What to seek: Higher isotropy generally indicates better-quality embeddings. Values > 0.1 are reasonable; > 0.3 is good. Lower-dimensional embeddings tend to have higher isotropy.
Average Norm
Definition: Mean magnitude (L2 norm) of word vectors in the embedding space.
Intuition: Indicates the typical "length" of vectors. Consistent norms suggest stable training; high variance may indicate some words are undertrained.
What to seek: Relatively consistent norms across models. The absolute value matters less than consistency (low std deviation).
Cosine Similarity
Definition: Measures angular similarity between vectors, ranging from -1 (opposite) to 1 (identical direction).
Intuition: Words with similar meanings should have high cosine similarity. This is the standard metric for semantic relatedness in embeddings.
What to seek: Semantically related words should score > 0.5; unrelated words should be near 0. Synonyms often score > 0.7.
t-SNE Visualization
Definition: t-Distributed Stochastic Neighbor Embedding - a dimensionality reduction technique that preserves local structure for visualization.
Intuition: Clusters in t-SNE plots indicate groups of semantically related words. Spread indicates vocabulary diversity; tight clusters suggest semantic coherence.
What to seek: Meaningful clusters (e.g., numbers together, verbs together). Avoid over-interpreting distances - t-SNE preserves local, not global, structure.
General Interpretation Guidelines
- Compare within model families: Metrics are most meaningful when comparing models of the same type (e.g., 8k vs 64k tokenizer).
- Consider trade-offs: Better performance on one metric often comes at the cost of another (e.g., compression vs. OOV rate).
- Context matters: Optimal values depend on downstream tasks. Text generation may prioritize different metrics than classification.
- Corpus influence: All metrics are influenced by corpus characteristics. Wikipedia text differs from social media or literature.
- Language-specific patterns: Morphologically rich languages (like Arabic) may show different optimal ranges than analytic languages.
Visualizations Index
| Visualization | Description |
|---|---|
| Tokenizer Compression | Compression ratios by vocabulary size |
| Tokenizer Fertility | Average token length by vocabulary |
| Tokenizer OOV | Unknown token rates |
| Tokenizer Total Tokens | Total tokens by vocabulary |
| N-gram Perplexity | Perplexity by n-gram size |
| N-gram Entropy | Entropy by n-gram size |
| N-gram Coverage | Top pattern coverage |
| N-gram Unique | Unique n-gram counts |
| Markov Entropy | Entropy by context size |
| Markov Branching | Branching factor by context |
| Markov Contexts | Unique context counts |
| Zipf's Law | Frequency-rank distribution with fit |
| Vocab Frequency | Word frequency distribution |
| Top 20 Words | Most frequent words |
| Vocab Coverage | Cumulative coverage curve |
| Embedding Isotropy | Vector space uniformity |
| Embedding Norms | Vector magnitude distribution |
| Embedding Similarity | Word similarity heatmap |
| Nearest Neighbors | Similar words for key terms |
| t-SNE Words | 2D word embedding visualization |
| t-SNE Sentences | 2D sentence embedding visualization |
| Position Encoding | Encoding method comparison |
| Model Sizes | Storage requirements |
| Performance Dashboard | Comprehensive performance overview |
About This Project
Data Source
Models trained on wikipedia-monthly - a monthly snapshot of Wikipedia articles across 300+ languages.
Project
A project by Wikilangs - Open-source NLP models for every Wikipedia language.
Maintainer
Citation
If you use these models in your research, please cite:
@misc{wikilangs2025,
author = {Kamali, Omar},
title = {Wikilangs: Open NLP Models for Wikipedia Languages},
year = {2025},
doi = {10.5281/zenodo.18073153},
publisher = {Zenodo},
url = {https://huggingface.co/wikilangs}
institution = {Omneity Labs}
}
License
MIT License - Free for academic and commercial use.
Links
- π Website: wikilangs.org
- π€ Models: huggingface.co/wikilangs
- π Data: wikipedia-monthly
- π€ Author: Omar Kamali
- π€ Sponsor: Featherless AI
Generated by Wikilangs Models Pipeline
Report Date: 2026-01-03 19:39:42



















