Polyglot
Nizki v vaših aplikacijah in na straneh v 43 jezikih, prevedeni z vašim lastnim modelom in preverjeni niz za nizom.
- Linux or macOS
- Python 3.9+
- Local LLM
- 6 file formats

Kaj počne
Polyglot prevzame angleške nize, ki jih vaša aplikacija in spletno mesto že vsebujeta, ter jih zapiše v do 42 drugih jezikov v datoteke in mape, ki jih vsaka platforma pričakuje, z uporabo modela, ki ga poganjate sami. Vsak niz je preverjen: če izgine rezervirani znak, oznaka ali ime, ki ga obdržite, ali če odgovor ni v pisavi jezika, se niz ponovno zahteva, niz, ki še vedno ne uspe, pa se izpusti in poroča namesto da bi bil dostavljen pokvarjen.
- Formati, ki jih uporabljate. JSON sporočilne datoteke (i18next, vue-i18n, next-intl, react-intl), Flutter ARB, Android strings.xml, Apple .strings, gettext .po in Markdown dokumenti, zapisani v values-de, de.lproj, app_de.arb ali locale/de.
- Preverjeno niz za nizom. %1$s, {name}, {{count}}, HTML oznake, prelomi vrstic, URL-ji in vaša obdržana imena se morajo vrniti natančno; pravilna pisava, brez praznih ali razraslih odgovorov, ničesar ne sme ostati v angleščini.
- Prave množinske oblike. Ruščina ima eno, malo, veliko in drugo obliko, arabščina šest oblik, japonščina eno samo obliko: Androidove množine in ICU sporočila sledijo pravilom vsakega jezika posebej.
- Samo tisto, kar se je spremenilo. Vsak dober prevod se zapomni, zato urejanje enega angleškega niza pošlje en sam niz, ne celotne datoteke.
- Vaš ton in vaši izrazi. Opis izdelka, ton, imena, ki se nikoli ne prevajajo, in slovar se vključijo v vsako zahtevo, vaši komentarji pa potujejo naprej kot opombe.
- Vaš model, vaš stroj. Poljuben OpenAI-compatible strežnik: vLLM, llama.cpp, Ollama ali LM Studio, ali gostovani API, če se tako odločite. Brez računa na besedo.
Preizkušeno na resničnem modelu
- Resničen model, šest formatov, pet pisav: vzorčna aplikacija s 70 nizi v JSON, Flutter ARB, Android, Apple .strings, gettext in Markdown, prevedena v nemščino, ruščino, japonščino, arabščino in španščino, z odprtim modelom z 27 milijardami parametrov na našem lastnem stroju: 346 od 350 nizov je ob vhodu opravilo preverjanje v 7,5 minute na zasedenem skupnem strežniku.
- Štirje, ki niso uspeli, so bile napake v naših preverjanjih, ne v modelu: nemška izposojenka, e-poštni naslov in japonsko sporočilo z množino. Popravili smo preverjanja; naslednji zagon je poslal samo te štiri nize in v 45 sekundah zapisal vseh 350.
- Množinske oblike pravilne ob prvem poskusu: ena, malo, veliko in druga oblika za ruščino, šest oblik za arabščino, ena sama za japonščino.
- Vseh 42 jezikov: 22 spletnih nizov iz primera v vsak jezik, ki ga Polyglot pozna, od amharščine do tradicionalne kitajščine: 924 od 924 nizov prevedenih v 15 minutah.
- In kaj preverjanja ne morejo videti: v kmerščini se je "You are offline" vrnilo kot "you are online". Prevod je brezhibna kmerščina, zato je prešel. Zato dokumentacija zahteva maternega govorca za nize, ki so najpomembnejši.
Kaj je vključeno
Prevajalnik
Skupine posreduje vašemu modelu, preverja, ponovni poskusi z navedenim problemom, prevajalski spomin, jeziki vzporedno.
Šest formatov
Bralniki in zapisovalniki, ki ohranijo ubežne znake, mape in pravila za množino vsake platforme.
Preverjanja
Uporabna tudi samostojno: preverite obstoječi prevod glede na angleški izvirnik.
Primer aplikacije
Ena majhna aplikacija v vseh šestih formatih s svojo konfiguracijo, da jo preizkusite pred svojo.
Zahteve
- Linux ali macOS s Pythonom 3.9 ali novejšim; ni treba ničesar nameščati prek pip.
- Strežnik modela, združljiv z OpenAI-compatible, z večjezičnim navodilnim modelom; naš je odprt model z 27 milijardami parametrov.
Dobro vedeti
- Preverjanja ujamejo tisto, kar pokvari aplikacijo, ne pa napačnega pomena: naj materni govorec prebere opis izdelka v vaši trgovini, plačilno steno in pravna besedila.
- Vnosi za množino gettext v tej različici ostanejo v angleščini.
- Hitrost je odvisna od vašega modela.
- Preverjanja so brezplačna in odprtokodna: translation-checks na GitHubu. Komplet dodaja prevajalnik, šest formatov, oblike množine, spomin in leto posodobitev.
From our field notes
Vprašanja
Kateri jeziki?
Arabic, Amharic, Bulgarian, Czech, German, Greek, Spanish, Persian, Finnish, Filipino, French, Scottish Gaelic, Hebrew, Haitian Creole, Hungarian, Armenian, Indonesian, Italian, Japanese, Khmer, Kannada, Korean, Macedonian, Malay, Dutch, Norwegian, Oromo, Punjabi, Polish, Portuguese (Brazil), Romanian, Russian, Slovak, Slovenian, Serbian, Swedish, Thai, Turkish, Ukrainian, Vietnamese and Chinese, Simplified and Traditional, from English.
Ali potrebuje GPU?
Polyglot sam ne; odloči vaš strežnik modela. Majhen model teče na procesorju, počasi; GPU naredi veliko datoteko v mnogih jezikih v nekaj minutah.
Kaj se zgodi z nizom, ki ga model napačno prevede?
Za ta niz se znova zaprosi posebej, z navedenim problemom. Če še vedno spodleti, je izpuščen iz datoteke, zato vaša aplikacija za ta en niz prikaže angleško različico, izvedba pa ga navede z razlogom. Nič pokvarjenega ni zapisano.
Lahko namesto tega uporabim gostovani API?
Da: katero koli storitev s končno točko klepeta, združljivo z OpenAI. V datoteko polyglot.json vpišite osnovni URL in ime modela, ključ pa shranite v datoteko.
Posodobljeno: