Polyglot
Стринговите за вашата апликација и веб-локација на 43 јазици, преведени од вашиот сопствен модел и проверени стринг по стринг.
- Linux or macOS
- Python 3.9+
- Local LLM
- 6 file formats

Што прави
Polyglot ги зема англиските низи што вашата апликација и сајт веќе ги имаат и ги пишува на до 42 дополнителни јазици, во датотеките и папките што секоја платформа ги очекува, користејќи модел што го извршувате сами. Секоја низа се враќа проверена: ако се изгуби резервирано место, ознака или име што го чувате, или одговорот не е во писмото на јазикот, низата се бара повторно, а низата што сè уште не поминува се остава надвор и се пријавува наместо да се испрати расипана.
- Форматите што ги користите. JSON пораки (i18next, vue-i18n, next-intl, react-intl), Flutter ARB, Android strings.xml, Apple .strings, gettext .po и Markdown документи, запишани во values-de, de.lproj, app_de.arb или locale/de.
- Проверка низа по низа. %1$s, {name}, {{count}}, HTML ознаки, преломи на редови, URL адреси и вашите зачувани имиња мора да се вратат точно; точното писмо, без празни или одвезени одговори, ништо што останало на англиски.
- Вистински множни форми. Рускиот добива еден, малку, многу и друг, арапскиот шест форми, јапонскиот единствена форма: Android множните форми и ICU пораки ги следат правилата на секој јазик посебно.
- Само она што е променето. Секој добар превод се памети, па уредувањето на една англиска низа испраќа една низа, а не целата датотека.
- Вашиот тон и вашиот терминолошки речник. Опис на производот, тон, имиња што никогаш не се преведуваат и речник одат во секое барање, а вашите коментари патуваат како белешки.
- Вашиот модел, вашата машина. Секој OpenAI-compatible сервер: vLLM, llama.cpp, Ollama или LM Studio, или хостиран API ако изберете. Нема сметка по збор.
Тестирано на вистински модел
- Вистински модел, шест формати, пет писма: примерна апликација со 70 низи во JSON, Flutter ARB, Android, Apple .strings, gettext и Markdown, на германски, руски, јапонски, арапски и шпански, со отворен модел со 27 милијарди параметри на наша сопствена машина: 346 од 350 низи ги поминаа проверките при влез, за 7.5 минути на зафатен споделен сервер.
- Четири не поминаа поради грешки во нашите проверки, а не на моделот: германски заемка, е-пошта и јапонска множнина. Ги поправивме проверките; следното пуштање испрати само тие четири низи и запиша сите 350 за 45 секунди.
- Множните форми точни од прв пат: еден, малку, многу и друг за руски, шест форми за арапски, единствена за јапонски.
- Сите 42 јазици: примерните 22 веб-стрингови на секој јазик што Polyglot го познава, од амхарски до традиционален кинески: 924 од 924 стрингови напишани, за 15 минути.
- Она што проверките не го гледаат: на кмерски, „Не сте на мрежа“ се врати како „сте на мрежа“. Тоа е беспрекорен кмерски, па помина. Затоа документацијата бара мајчин говорител за стринговите што најмногу значат.
Што има внатре
Преведувачот
Партици до вашиот модел, проверки, повторни обиди со наведен проблем, меморија за преводи, јазици паралелно.
Шест формати
Читатели и пишувачи што ги задржуваат escape-секвенците, папките и правилата за множина на секоја платформа.
Проверките
Користливи и самостојно: проверете превод што веќе го имате во споредба со англискиот извор.
Примерна апликација
Една мала апликација во сите шест формати со нејзината конфигурација, за да пробате пред својата.
Барања
- Linux или macOS со Python 3.9 или понова верзија; ништо за инсталирање од pip.
- OpenAI-компатибилен сервер за модели со повеќејазичен инструкциски модел; нашиот е отворен модел со 27 милијарди параметри.
Добро е да се знае
- Проверките фаќаат што ја крши апликацијата, а не погрешното значење: нека мајчин говорител го прочита вашиот опис на производ, paywall и правниот текст.
- gettext внесовите за множина остануваат на англиски во оваа верзија.
- Брзината е на вашиот модел.
- Проверките се бесплатни и со отворен код: translation-checks на GitHub. Комплетот го додава преведувачот, шесте формати, множинските форми, меморијата и една година ажурирања.
From our field notes
Прашања
Кои јазици?
Арапски, амхарски, бугарски, чешки, германски, грчки, шпански, персиски, фински, филипински, француски, шкотски гелски, хебрејски, хаитски креолски, унгарски, ерменски, индонезиски, италијански, јапонски, кмерски, канадски, корејски, македонски, малезиски, холандски, норвешки, оромски, пенџапски, полски, португалски (Бразил), романски, руски, словачки, словенечки, српски, шведски, тајландски, турски, украински, виетнамски и кинески, поедноставен и традиционален, од англиски.
Дали му треба GPU?
На самиот Polyglot не му треба; вашиот сервер за модели одлучува. Мал модел работи на CPU, бавно; GPU го претвора голем файл на многу јазици во прашање на минути.
Што се случува со низа што моделот ја погрешува?
Таа се бара повторно самостојно, со наведен проблем. Ако сè уште не успее, се остава надвор од датотеката, па вашата апликација го прикажува англискиот за таа една низа, а извршувањето ја наведува со причината. Ништо расипано не се запишува.
Дали можам да користам хостиран API наместо тоа?
Да: било која услуга со OpenAI-compatible chat endpoint. Внесете ја нејзината основна URL адреса и името на моделот во polyglot.json, а клучот во датотека.
Ажурирано: