GUIDE.md: laajennettu tokenisaatio-osio suomi/englanti-vertailulla
Lisätty konkreettiset esimerkit Qwen2.5-Coder -tokenisaattorilla: - Koodi-esimerkki: print vs. tulosta - Kolme lauseparia taulukossa (The cat sat / Kissa istui jne.) - Merkkejä/token -sarake näyttää tehokkuuseron - Selitys miksi englanti on 30-50% tehokkaampaa - Miksi tämä merkitsee: nopeus, konteksti, ymmärrys Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -32,24 +32,52 @@ hitaus — GPU-palvelimella sama 0.5B-malli tuottaa ~100 tok/s.
|
|||||||
## Tokenit — kielimallin "sanat"
|
## Tokenit — kielimallin "sanat"
|
||||||
|
|
||||||
Malli ei näe tekstiä kirjaimina vaan **tokeneina**. Tokeni on yleensä
|
Malli ei näe tekstiä kirjaimina vaan **tokeneina**. Tokeni on yleensä
|
||||||
sanan osa, kokonainen sana tai välilyönti:
|
sanan osa, kokonainen sana tai välilyönti. Tokenisaatio tehdään
|
||||||
|
BPE-algoritmilla (Byte Pair Encoding) joka oppii yleisimmät
|
||||||
|
merkkijonot harjoitusdatasta.
|
||||||
|
|
||||||
|
### Esimerkki: koodi
|
||||||
|
|
||||||
```
|
```
|
||||||
"print('Hello')" → ["print", "('", "Hello", "')"] = 4 tokenia
|
"print('Hello')" → [print] [(' ] [Hello] [')] = 4 tokenia
|
||||||
"tulosta('Hei')" → ["tul", "osta", "('", "He", "i", "')"] = 6 tokenia
|
"tulosta('Hei')" → [tul] [osta] [(' ] [He] [i] [')] = 6 tokenia
|
||||||
```
|
```
|
||||||
|
|
||||||
**Miksi tällä on väliä?**
|
Koodi tokenisoidaan tehokkaasti koska `print`, `def`, `return` yms.
|
||||||
|
ovat kokonaisia tokeneita. Suomenkielinen `tulosta` joudutaan pilkkomaan
|
||||||
|
osiin koska se ei esiinny harjoitusdatassa kokonaisena.
|
||||||
|
|
||||||
1. **Kustannus:** Jokainen tokeni vaatii laskentaa. 100 tokenin vastaus
|
### Esimerkki: suomi vs. englanti
|
||||||
kestää 0.5B-mallilla ~15-30 sekuntia selaimessa.
|
|
||||||
|
|
||||||
2. **Konteksti-ikkuna:** Malli näkee kerrallaan rajallisen määrän tokeneita.
|
Sama lause kahdella kielellä Qwen2.5-Coder -tokenisaattorilla:
|
||||||
Qwen2.5:ssa ikkuna on 32 768 tokenia. Tähän mahtuu prompti + vastaus.
|
|
||||||
|
|
||||||
3. **Kielen tehokkuus:** Englanti tokenisoidaan tehokkaammin kuin suomi.
|
| | Teksti | Tokenit | Määrä | Merkkejä/token |
|
||||||
Sama lause vaatii suomeksi ~30-70% enemmän tokeneita. Siksi promptit
|
|---|---|---|---|---|
|
||||||
ovat englanniksi — malli saa enemmän informaatiota samassa token-budjetissa.
|
| EN | The cat sat on the mat | [The] [ cat] [ sat] [ on] [ the] [ mat] | **6** | 3.7 |
|
||||||
|
| FI | Kissa istui matolla | [K] [issa] [ ist] [ui] [ mat] [olla] | **6** | 3.2 |
|
||||||
|
| EN | Distributed computing in the browser | [Dist] [ributed] [ computing] [ in] [ the] [ browser] | **6** | 6.0 |
|
||||||
|
| FI | Hajautettu laskenta selaimessa | [H] [aj] [au] [tettu] [ las] [kenta] [ sel] [aim] [essa] | **9** | 3.3 |
|
||||||
|
| EN | Write a function that sorts a list | [Write] [ a] [ function] [ that] [ sorts] [ a] [ list] | **7** | 5.0 |
|
||||||
|
| FI | Kirjoita funktio joka lajittelee listan | [K] [irj] [oita] [ funkt] [io] [ joka] [ laj] [ittel] [ee] [ listan] | **10** | 4.0 |
|
||||||
|
|
||||||
|
**Huomaa miten:**
|
||||||
|
- Englannin yleiset sanat (`the`, `in`, `a`, `function`) ovat kokonaisia tokeneita
|
||||||
|
- Suomen sanat pilkotaan pienempiin osiin (`Hajautettu` → 4 tokenia, `Distributed` → 2)
|
||||||
|
- Suomi vaatii **30-50% enemmän tokeneita** saman merkityksen välittämiseen
|
||||||
|
- Koodiavainsanat (`function`, `list`, `sort`) ovat tehokkaita molemmilla kielillä
|
||||||
|
|
||||||
|
### Miksi tämä merkitsee?
|
||||||
|
|
||||||
|
**Jokainen tokeni = yksi laskentakierros.** Jos suomi vaatii 50% enemmän tokeneita:
|
||||||
|
|
||||||
|
1. **Hitaampi vastaus:** 100 tokenin englanninkielinen vastaus ≈ 150 tokenia suomeksi
|
||||||
|
→ 50% pidempi odotusaika
|
||||||
|
2. **Pienempi konteksti:** Sama merkityssisältö vie enemmän tilaa konteksti-ikkunasta
|
||||||
|
3. **Huonompi ymmärrys:** Pitkät sanat pilkotaan osiin jotka malli ei välttämättä
|
||||||
|
tunnista → hallusinaatiot lisääntyvät
|
||||||
|
|
||||||
|
**Siksi tekniset promptit ovat englanniksi** — malli saa enemmän informaatiota
|
||||||
|
samassa token-budjetissa ja ymmärtää ohjeet paremmin.
|
||||||
|
|
||||||
**Token-budjetti tässä järjestelmässä:**
|
**Token-budjetti tässä järjestelmässä:**
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user