pemistahl / lingua-py

The most accurate natural language detection library for Python, suitable for short text and mixed-language text
Apache License 2.0
1.08k stars 44 forks source link

Incorrect language detection for Kazakh texts #160

Closed kazuser closed 11 months ago

kazuser commented 11 months ago

Lingua-py writes "MONGOLIAN", but this is KAZAKH :(

Text:

Language.MONGOLIAN Адамдар жүретін жолдардағы пандустар көлбеуін төменде көрсетілгеннен асырмай алу қажет Language.MONGOLIAN Балаларды жүзуге үй-рету бассейнінің үй-жайы Language.MONGOLIAN Биіктігі 50 м астам ғимараттардың өрт бөлігінде екі өрт лифтілерін көздеу қажет Language.MONGOLIAN Киноэкран өлшемдері сызбада көрсетілген мұндағы Language.MONGOLIAN Көшіру-көбейту қызметінің үй-жайлары Language.MONGOLIAN Мүмкіндігі шектеулі келушілер үшін қолжетімділік Language.MONGOLIAN Мұқабалық - түптеу үй-жайлары Language.MONGOLIAN Үйірме бөлмелері және музыка кластары Language.MONGOLIAN Үстел үсті ойындар үйжайлары Language.MONGOLIAN Үш сағат ішінде сыртынан өрт сөндіруге кететін су шығынын



from lingua import Language, LanguageDetectorBuilder

aDetector = LanguageDetectorBuilder.from_all_languages().build()
aText = "%text%"
aLang = aDetector.detect_language_of(aText)
print(aLang, aText)
kazuser commented 11 months ago

:(

Language.ENGLISH нормаланбайды I



from lingua import Language, LanguageDetectorBuilder

aDetector = LanguageDetectorBuilder.from_languages(Language.ENGLISH, Language.KAZAKH).build()
aText = "нормаланбайды I"
aLang = aDetector.detect_language_of(aText)
print(aLang, aText)
kazuser commented 11 months ago

Language.ENGLISH III не нормируется I, II



from lingua import Language, LanguageDetectorBuilder

aDetector = LanguageDetectorBuilder.from_languages(Language.ENGLISH, Language.RUSSIAN).build()
aText = "III не нормируется I, II"
aLang = aDetector.detect_language_of(aText)
print(aLang, aText)
pemistahl commented 11 months ago

Hi @kazuser, thank you for reporting these issues. I accidentally assumed that the characters ӨөҮү are unique to Mongolian but I've learned that they also occur in Kazakh. The fix for this will be part of the next release which will be published shortly.