Polyglot
Șirurile de text pentru aplicația și site-ul tău în 43 de limbi, traduse de propriul tău model și verificate șir cu șir.
- Linux or macOS
- Python 3.9+
- Local LLM
- 6 file formats

Ce face
Polyglot preia șirurile în engleză pe care aplicația și site-ul tău le au deja și le scrie în până la 42 de alte limbi, în fișierele și folderele pe care le așteaptă fiecare platformă, folosind un model pe care îl rulezi tu însuți. Fiecare șir este verificat la întoarcere: dacă un placeholder, o etichetă sau un nume pe care îl păstrezi se pierde, sau răspunsul nu este în alfabetul limbii respective, șirul este cerut din nou, iar un șir care eșuează în continuare este eliminat și raportat, în loc să fie livrat defect.
- Formatele pe care le folosești. Fișiere de mesaje JSON (i18next, vue-i18n, next-intl, react-intl), Flutter ARB, Android strings.xml, Apple .strings, gettext .po și documente Markdown, scrise în values-de, de.lproj, app_de.arb sau locale/de.
- Verificare șir cu șir. %1$s, {name}, {{count}}, etichetele HTML, întreruperile de linie, URL-urile și numele păstrate trebuie să se întoarcă exact; alfabetul corect, fără răspunsuri goale sau excesive, nimic lăsat în engleză.
- Forme reale de plural. Rusa are una, câteva, multe și altele, araba șase forme, japoneza o singură formă: pluralurile Android și mesajele ICU urmează regulile proprii fiecărei limbi.
- Doar ce s-a schimbat. Fiecare traducere bună este reținută, astfel încât editarea unui singur șir în engleză trimite un singur șir, nu întregul fișier.
- Tonul și termenii tăi. O descriere a produsului, un ton, nume care nu se traduc niciodată și un glosar intră în fiecare cerere, iar comentariile tale circulă alături ca note.
- Modelul tău, mașina ta. Orice server OpenAI-compatible: vLLM, llama.cpp, Ollama sau LM Studio, sau o API găzduită dacă alegi. Fără facturare per cuvânt.
Testat pe un model real
- Un model real, șase formate, cinci alfabeturi: o aplicație de exemplu cu 70 de șiruri în JSON, Flutter ARB, Android, Apple .strings, gettext și Markdown, în germană, rusă, japoneză, arabă și spaniolă, cu un model deschis de 27 de miliarde de parametri pe mașina noastră: 346 din 350 de șiruri au trecut verificările la intrare, în 7,5 minute pe un server partajat aglomerat.
- Cele patru care nu au trecut au fost erori în verificările noastre, nu ale modelului: un împrumut din germană, o adresă de e-mail și un mesaj de plural în japoneză. Am corectat verificările; rula următoare a trimis doar acele patru șiruri și a scris toate cele 350 în 45 de secunde.
- Forme de plural corecte din prima: una, câteva, multe și altele pentru rusă, șase forme pentru arabă, una singură pentru japoneză.
- Toate cele 42 de limbi: cele 22 de șiruri web din exemplu în fiecare limbă pe care Polyglot o cunoaște, din amhară până la chineză tradițională: 924 din 924 de șiruri scrise, în 15 minute.
- Și ce nu văd verificările: în khmeră, „You are offline” a fost tradus ca „you are online”. Este o khmeră impecabilă, deci a trecut. De aceea documentația cere un vorbitor nativ pentru șirurile cele mai importante.
Ce conține
Traducătorul
Loturi către modelul tău, verificări, reîncercări cu problema specificată, o memorie de traduceri, limbi în paralel.
Șase formate
Cititoare și scriitoare care păstrează secvențele de evadare, folderele și regulile de plural ale fiecărei platforme.
Verificările
Utilizabile independent: verifică o traducere pe care o ai deja față de sursa în engleză.
O aplicație de exemplu
O aplicație mică în toate cele șase formate, cu configurația ei, pentru a testa înainte de a folosi propria ta aplicație.
Cerințe
- Linux sau macOS cu Python 3.9 sau mai nou; nimic de instalat din pip.
- Un server de model compatibil cu OpenAI cu un model de instrucțiuni multilingv; al nostru este un model deschis cu 27 de miliarde de parametri.
Bine de știut
- Verificările prind ceea ce strică o aplicație, nu sensul greșit: pune un vorbitor nativ să citească fișa ta de produs, paywall-ul și textele legale.
- În această versiune, intrările de plural gettext rămân în engleză.
- Viteza depinde de modelul tău.
- Verificările sunt gratuite și open source: translation-checks pe GitHub. Kitul adaugă traducătorul, cele șase formate, formele de plural, memoria și un an de actualizări.
From our field notes
Întrebări
Ce limbi?
Din engleză: arabă, amhară, bulgară, cehă, germană, greacă, spaniolă, persană, finlandeză, filipineză, franceză, gaelică scoțiană, ebraică, creolă haitiană, maghiară, armeană, indoneziană, italiană, japoneză, khmeră, kannada, coreeană, macedoneană, malaeză, olandeză, norvegiană, oromo, punjabă, poloneză, portugheză (Brazilia), română, rusă, slovacă, slovenă, sârbă, suedeză, thailandeză, turcă, ucraineană, vietnameză și chineză, simplificată și tradițională.
Necesită un GPU?
Polyglot în sine nu; serverul tău de model decide. Un model mic rulează pe un CPU, lent; un GPU face ca un fișier mare în multe limbi să fie gata în câteva minute.
Ce se întâmplă cu un șir de caractere pe care modelul îl greșește?
Acesta este solicitat din nou, separat, cu problema specificată. Dacă eșuează în continuare, este exclus din fișier, astfel încât aplicația dumneavoastră afișează textul în engleză pentru acel șir, iar execuția îl listează împreună cu motivul. Nu se scrie nimic defect.
Pot folosi în schimb o API găzduită?
Da: orice serviciu cu un endpoint de chat compatibil cu OpenAI. Introduceți URL-ul de bază și numele modelului în polyglot.json, iar cheia într-un fișier.
Actualizat: