4 ms·
We let models localize into 16 languages. How we made it read native.
- stuess 2mo agoSharing this in hopes it helps other founders who are scared l10n is expensive/bad quality when using Claude Code and other coding agents, it doesn't have to be.
- i18nagentai 2mo ago[flagged]
- applfanboysbgon 2mo agoIt is absolutely revolting to see LLM translation being sold as "better than professionals". Yeah, yeah, I saw you attached a caveat to it. No. You don't need to be dishonest. LLM translation is shit but it's borderline free, and you want the benefit of translation without having to pay for it. Who can argue with the economics of "free", after all? I would leave it at that, but then I consider what you're actually using it for... > two-person founding team running a language-learning app in dozens of languages, so the copy is read by people who are unusually sensitive to it. They aren't "unusually sensitive to it". Language learners don't fucking know what native speech in the target language sounds like, they're learning it! Nor does your two person team. How could you possibly claim to objectively evaluate how good translations are in dozens of languages you don't speak? 58, according to your site! This is beyond scummy even for the usual AI boosters, and will deceive people trying to learn, who don't know better, with low-grade slop. Disgusting.
- thaumasiotes 2mo ago> LLM translation is shit but it's borderline free I don't think this is true. LLM translation will generally satisfy the core goals of (1) communicating the information that's present in the source document; and (2) not communicating information that isn't present in the source document. There are some style issues -- I have a comment sidethread complaining about them -- but those are very much second-order effects compared to "can I get a foreigner to understand what my document says?"
- applfanboysbgon 2mo agoPossibly, if it's a strictly formulated medical, business, or legal document (but if it's a medical, business, or legal document, being right 99% of the time isn't good enough!). Google Translate could already do that much, incidentally. If it's not a formal document - if it's anything vaguely resembling casual speech or literary writing - an LLM will butcher it in all kinds of ways no matter how much context it has.
- tetromino_ 2mo ago> LLM translation is shit Compared to who? Compared to a professional with a language degree, with a feel and love for both languages and an understanding of the subject area, LLM translation is shit, no question. But such professionals don't get hired by startups to localize their websites, too expensive. When comparing to paid- by-the-word contractors who do website localization, I am not so sure that LLM is worse - because in practice too many biologically-human-localized websites and apps are translated horrifically.
- applfanboysbgon 2mo agoMy experience with dirt cheap contractors you're talking about is that they simply throw what you put into Google Translate / an LLM themselves. So yes, strictly speaking, doing that yourself is better than paying someone else to do it for you. But it's not better than hiring a real professional, so let's not pretend it is. It is what it is: cheap. Be up front about that. And I think using machine translation, and being honest about it, is completely understandable for some tiny startup that just wants their website localized. I think it is completely and totally unacceptable for a language learning application, though.
- stuess 2mo agoThe point I'm making isn't (in life or in this blog post) that LLMs do a better job than humans. My point is that LLMs can get pretty close with the right context, and in some circumstances they can build context better than the typical human translator would. Most CAT tools do vet for ML/LLM translations these days, so "cheap" human translation is mostly ML-assisted and human-edited, but my entire point is that they're not to blame, the majority of translation fails happens because of the lack of context, not because the human didn't try. It's about setting the site and l10n infrastructure out in a way that gives them the freedom to translate in the way that makes most sense for their language without being forced into "English in a costume". It is unfortunately a fact that one can be both things: a startup and a language learning app. But my entire point wasn't about LLMs vs. humans, it was about laying out the architecture in a way that enables great l10n, whether we do that with LLMs today or humans tomorrow once we can afford it.
- hidalgoerrant 2mo agoLanguage learners need to be able to use the site in their native language. The whole world doesn’t feel comfortable using English as a second language to learn another language. None of my students use English to learn Spanish or Mandarin Chinese. They use their mother tongues so they don’t have to add to their cognitive load by processing another language on top of the one they're already learning. The localized sites are exactly what they can judge as native speakers. They’re judging copy in their own language, not the language they’re learning. We noticed that a good share of our learners were already using Google Translate built into their browsers to access the site in their native languages. The quality is atrocious, so what we’re offering is a step change from that. We offer 58 languages to learners. Only 16 have been localized. That means the chrome of the website and apps -- the learner’s native language -- not the video content they watch in the target language they’re learning. Between my co-founder and me plus people who have kindly offered to review the site we can judge seven of those localizations well enough to see that they’re orders of magnitude better than what Google Translate would concoct for them.
- stuess 2mo agoSo our approach here to vet these: Between the two of us, we do speak 7 languages well enough to judge a localized site, and we have people around us for review on some more. We run our workflow for a new localized version of say, German, then judge the quality and add rules to our prompt, guidance and voice guide for issues we spot, never hand-editing the actual strings. We then re-run it until it's in a place where we feel this feels fairly native (feels transcreated, not calqued) and serves its purpose well). Once we had that done in a good amount of locales, we started running it in languages we can't judge ourselves. Here we do depend on people on the app/website to spot and help us if we got it wrong somewhere, so it's a living process that evolves. Here's an example of how that guidance and prompt evolved over time, in case you're interested: https://gist.github.com/tobyurff/2b461c259c34dfc6758a39329822dab8 https://gist.github.com/tobyurff/2b461c259c34dfc6758a3932982...
- Anduia 2mo agoI'm so confused with the "Upgrade" example. Why does it lose the title case and why does it end up phrased as "upgrade to" instead of "Upgrade"?
- hidalgoerrant 2mo agoEnglish can use "upgrade" as an intentionally underspecified one-word label. On, say, a paywall, Spanish would naturally use a construction like "pasar a [otro plan]," and French “passer à [une autre offre].” The preposition a/à is how that particular meaning is expressed in those languages. So it isn’t randomly translating “upgrade" as "upgrade to." The context tells you that "upgrade” means "move to a different plan," rather than "update the software." You're right about the random capitalization though - it wasn't intentional and we'll edit that bit to avoid confusion.
- thaumasiotes 2mo agoHuh. This article is about the issue of picking which translation of a word to use according to what the word means in context... a task that LLMs should ace. I was hoping this was about using an LLM to produce text in the house style. That's also a task they should be good at, but that clearly doesn't happen by default. Here's a two-page public announcement from Ironhide Games, who make Kingdom Rush. They're apologizing over a direction they chose for the upcoming 6th game in the series: https://cdn.discordapp.com/attachments/524968371494846484/1530199721832878110/POST_1.jpg?ex=6a74870b&is=6a73358b&hm=4b46db94d660e295ccccc83425bdc3bbc1e78df8281f17ea94321eacbc7c7638& https://cdn.discordapp.com/attachments/524968371494846484/15... https://cdn.discordapp.com/attachments/524968371494846484/1530199722185461842/POST_2.jpg?ex=6a74870b&is=6a73358b&hm=12f4b2ac2fb61b6096f7f73e6f25e48327705cd67882601573c011f42e13735a& https://cdn.discordapp.com/attachments/524968371494846484/15... To me the main message is twofold: - "People complained, and we're going in a different direction." - "We had this translated from Spanish by an LLM." The 11 paragraphs of text are superfluous, because... (1) anything you could learn from them you could also learn from the two-bullet-point summary on the second page; and (2) the text style clearly doesn't reflect anything that the spokesperson for Ironhide Games wrote. This is a document written specifically to prevent any information from coming through other than the two bullet points in the summary. And that's a style that companies often invoke on purpose. PR statements are vetted for this kind of thing, which is why everyone hates them. But it appears to be the only style that LLMs want to produce, whether they're making a PR statement or not, and I feel sure that almost none of the people using them for translations actually want this. I also feel sure that the "LLM style" is specifically intended by the LLM providers, and that it wouldn't exist if they didn't spend enormous effort causing it to.
- stuess 2mo agoThis is interesting! Exactly our experience, you do have to guide LLMs on author the source text in the way we would write, with few-shot examples in the prompt. And then prompt them to transcreate so it doesn't calque (read as a literal translation rather than something a native speaker would have written for other native speakers). Both of this can be solved for reasonably well with the right prompt guidance IMHO. In my experience, there's two key incredients to get to a good results (with humans OR LLMs doing the work), I've worked on plenty of sites that had human l10n before LLMs came about. If you're interested in the actual prompt we're using for our voice that includes instructions on how to avoid sounding like bad LLM copy, I've popped that here in a Github Gist: https://gist.github.com/tobyurff/2b461c259c34dfc6758a39329822dab8 https://gist.github.com/tobyurff/2b461c259c34dfc6758a3932982... Hope it helps, I might turn that into a blog post one day as well, seems like this could be useful to others!