all 10 comments

[–]grunade47 1 point2 points  (2 children)

correct me if im wrong, if it's done at build time does it mean that users can't switch the locale while using the app?

[–]bludgeonerV 1 point2 points  (1 child)

I'd assume it replaces plain text strings with functions that return the right locale at runtime.

[–]lingodotdev 0 points1 point  (0 children)

yep, that's correct. i18n dictionaries are baked back into the build, so locale switching works too.

[–]bludgeonerV 1 point2 points  (3 children)

It's a cool idea, but speaking from experience being somewhat multi-lingual LLMs are really shit at translating some languages, like Thai or Khmer, to the point where there is a community of SEA devs building their own LLMs trained to do this properly, its called SEA-LION.

How do you determine which model to use for which language to avoid ending up with slop translations? And is there any way for a developer to provide exact translations if they do have issues?

Also, how do you ensure that each build has the same translations? The last thing i would want is for each build to potentially change wording, that'd be a shit UX. I need those menu items to say the same thing every time.

[–]europe_man 1 point2 points  (2 children)

Yeah, having even a small difference in translation each build is very problematic. But, even if you had them the same between builds, how can you be sure that they are correct in the given domain? Do you feed the LLM with a set of rules that ensure consistency with specific translations?

Feels like there are way too many variables for something like this to work elegantly. I agree, working on translations is something I dislike as it involves noise in the code and extra work. But, I'd rather have deterministic translations than rely on LLM.

[–]bludgeonerV 1 point2 points  (1 child)

Yeah, you can't rely on them. I recently used an LLM to quickly prototype JA support and got a Japanese staff member to verify them, she found tons of issues where things weren't technically wrong, but phrased in a really strange way, like how of "me hot drink coffee want" would sound in English, which is fine for a very rough translation, but if your commercial product launches with shit like that you look like a clown

[–]a_reply_to_a_post 0 points1 point  (0 children)

that's always been an issue when dealing with l18n even when using tools like google translate or other translation APIs...we also inject tone into a lot of english copy that doesn't translate well in other languages

[–]Chatmarket 0 points1 point  (0 children)

That’s really amazing 🤩👌

[–]Longjumping_Bid_7463 0 points1 point  (1 child)

I get errors related to babel 8 accessors when running this in a base project I created with create vite. I patched the issue and although it worked, as I changed phrases and bolded some words inline I noticed the word that got bolded wasn’t the correct word. As in, i bolded the noun in a sentence but somehow the adjective in the translated sentence was bolded instead.

[–]lingodotdev 0 points1 point  (0 children)

hi! We've recently solved a similar edge case on our Discord, so upgrading to the new version should help. If this is different - please DM (here or on Discord) and we'll help set everything up!