As we head into the holiday season, a quick update on what we’ve been up to on the development team since our last update in the summer.
For the most part, we have been occupied in optimizing and improving performance of our AI features and trying to make the feature set up to date across all apps. Along with the usual assortment of bug fixes.
We are still in the midst of some relatively major backend improvements that, while not providing immediately obvious benefits to you, will do so over time. Hopefully, our pace of front end improvements will pick up once we are done with our current phase of backend upgrades sometime in Q1 2025.
The major advance in this Changeset is the lesson pre-processing that now happens for all imports. Full text AI translations, word translations and splitting of Japanese should be happening on import and should happen relatively quickly. No longer should there be lessons in the Processing tab. Doing this up front means not only importing the lesson, but the speed of sentence and word translations should be noticeably faster and should be available offline as well.
Keep in mind that this processing has not been applied to Library lessons yet. But, over time, we should be doing that as well.
Let us know how we’re doing of course and hopefully you’re taking advantage of the shorter days, (those of you in the Northern Hemisphere!), to spend more time LingQing and pumping up your stats before your LingQ Annual Review arrives!
All Apps
Lesson preprocessing for sentence translations, context word translations, word splits in Asian languages
Optimized performance and workflow for lesson pre-processing
Updated challenges list
New book challenge
automatic (AI) reformatting of unformatted imports
YouTube import bug fixes
Web
in-app page titles reflect page content
Fixed text to speech audio playback speed selector in page view to match sentence view
Show merged hints in vocabulary lists
Improvements to highlight colours in dark mode and other alternate themes
Fixes to m4a audio import
Bugfixes for Whisper audio transcription
Fix to Korean TTS
iOS
Speaking activity in sentence mode review registers for Speaking statistic
1.75x audio playback speed added
Reading speed added to Stats
Keyboard shortcuts enabled
Show merged hints in vocabulary lists
Fix sentence mode vocabulary setting
Fix double TTS when tapping quickly
Android
Redesigned Stats page
Reading speed added to Stats
Show merged hints in vocabulary lists
1.75x audio playback speed added
Simplify Lesson feature added
Setting to stop lesson audio when tapping on word
Enable import of mp3 files for whisper transcription
At least with Japanese there is a huge issue regarding word splitting that is inflating the word count. This has been going on for a few weeks now and the fix was to click regenerate with AI but as of right now that no longer works. It keeps failing. This really interferes with the whole process of lingQ. I just wish something could finally be done to fix it because i really enjoy lingq but lately not so much.
Its doing it with all imported YT lessons lessons and ai generated audio text. That is what i use the most.
People have been in the forums talking about this for a month now. Idk if its with all languages but for sure at least Japanese its been pretty bad. Lessons that would normally only have 4% or 5% of unknown words now have around 20%-30% because the splitting tacts on random bits of grammar from the previous/following words, registering it as a new word. For some strange reason there will sometimes be even words that i have already lingQ’d or learned in the past will again be blue as if it was a new word.
This was never this bad before these recent updates. I have been using lingq since 2019 for reference. Here are some screenshots to show what i mean.
Here is a link to another thread talking about it since 20 days ago.
Re splitting fixes the issue but its very bothersome to have to do an extra step to fix the lessons that worked just fine before these new recent updates and last night the Re splitting with Ai was failing on me not to mention it takes time for that process when before you could just jump straight into a lesson.
With Korean, I am certain that some words i have marked as known in the past become ignored as they have the trash icon clicked. Thankfully it doesn’t affect the overall word count, but I thought i would mention it.
We have pushed some fixes to importing Japanese. Can you all try importing again and let us know if things are improved. They should be. Let us know any issues and also let us know how the splitting could be improved. Using AI we should be able to make it work better than it ever has.
Great to hear that AI issues are being tackled. For Chinese, the AI model has some quite basic problems: Some characters that have several meanings are parsed incorrectly, and the AI model can choose the less common reading even in very basic words, 行 in one of the most frequent words in Chinese, 行了,xíngle, ”OK”, gets parsed as the word for “bank”, háng; the verb suffix 着 , zhe, is parsed as the word zhāo, “touch, come in contact with”, the very common word for soup, 汤,tāng, gets parsed as shāng, an unusual reading of the character that basically only occurs in formal literary style as “torrential”.
Yes, the most frequent problems I encounter in Chinese parsing are when these common single-character words are mistakenly combined with something else into a multi-character word, and when non-Chinese names are split up weirdly.
(E.g. when reading Harry Potter, the AI often parses “Ron said” or “towards Ron”, etc. (or any other name) as a single word. Or, sticking with Harry Potter because I’m reading it: “Gryffindor” is transliterated as 格兰芬多, where the last character “duo” also means “many/much”; the AI often parses e.g. “Gryffindor team” as “Gryffin many teams”. It’s easy to ignore and/or correct when you’ve understood what’s happening, but still an annoyance.)
I wonder if there is a way to let the AI algorithm “know” that if a “word” translates to more than one word (“X said”, “many Y”, “towards Z”, etc.) there may be a mistake to be rectified…
Historically (going by multilingual indices), we’ve found gpt-4o-mini on the whole does the best. This is generally backed up by the research comparing different models in their multilingual performance.
Balancing overall API cost, speed and accuracy we find gpt-4o-mini holds out quite well. This makes sense given the corpus GPT-4/o was trained on.
An ongoing challenge is the lack of financial incentive for big tech to train truly multilingual models - the biggest limitation being that a lot more available internet data is English. There’s 8 to 20 times more available English training data than Spanish, Portuguese, Italian, French, Japanese, Russian or Chinese.
The Aya models (like Aya101 and 32B) are two such models developed specifically to be “massively multilingual”, but they are outperformed by the more generic models like Gemini 1.5-Flash, GPT-4o-mini and (more recently) DeepSeek v3, which all do relatively similarly.
This will definitely not always be the case - the landscape of models will continue to evolve rapidly over the coming years, so we can expect higher and higher quality with time. For now, we do see that some models are better than others for some languages (deepseek chat models are, as you would expect, better at Mandarin and Cantonese than openai/anthropic models). Language-specific model pairing is something we are currently adopting behind the scenes.
Please consider the Gemini 2.0 Flash model.
Its pricing is 2/3 of the GPT-4o-mini model, and its performance is much better than GPT’s one. I’ve been using this for a few months, and the performance gap is clear (including multilingual reasoning). The reason for this conclusion is as follows: I’ve tried the same job with GPT for a long time with prompting, but it always fails, but with Gemini, it works perfectly with relatively short and compact prompting.
LingQ’s default lesson pre-processor almost always omit or transform some part of the transcript, and sometimes it doesn’t work totally so the lesson becomes a pile of short, incomplete sentences.
However, when I use Gemini 2.0 Flash with my custom prompt, it works perfectly. You might get the same result with the error cases that users reported. Please consider using Gemini at least for English. It will improve the learning experience so much.
I’m a native Korean, and in a Korean LLM community, it is said that Gemini’s performance is better than GPT’s one when chatting in Korean, and I also agree with that.
It would be nice if you could give us a roadmap for 2025.
Hi! Thank you for encouraging us to take a closer look at Gemini 2.0 Flash for Korean and English - and I’m sorry the existing preprocessor is not working optimally. I’ll do further testing behind the scenes, but Gemini 2.0 Flash looks like a great option.
In terms of further updates, we’ll be continuing to upgrade AI functionality behind the scenes. AI providers continue to release models quickly - including faster distilled models like Phi-4 mini and Deepseek-r1 7b distills - so we’ll continue testing and upgrading models for translating and importing. The biggest update will be our language tutor chatbot, which is coming soon!
Let’s hope it’s not buggy like the YouTube import and Whisper transcription functions that never seem to work properly, or it will end up monopolising developers time to the detriment of other things that need improving (library and reader).
Quick follow-up on the December changelog: you mentioned the backend upgrades would wrap up in Q1 and that we could expect an uptick in frontend work afterward. Now that we’re in mid-April, some of us (myself included) are wondering what’s coming next, especially around the tutor-chatbot and any UI/UX improvements.
Any chance you could share an updated timeline or roadmap? Even a general sense of what’s coming would help us manage expectations.
Thanks as always for all the work you and your team do behind the scenes!