Spaces:
Sleeping
Sleeping
| from ..schemas import Lang | |
| _KZ_ONLY = set("әғқңөұүһі") | |
| _CYR_RANGE = (ord("а"), ord("я")) | |
| def detect_language(text: str, hint: Lang | None = None) -> Lang: | |
| if hint in ("ru", "kk"): | |
| return hint | |
| t = text.lower() | |
| if any(c in _KZ_ONLY for c in t): | |
| return "kk" | |
| for c in t: | |
| if _CYR_RANGE[0] <= ord(c) <= _CYR_RANGE[1] or c == "ё": | |
| return "ru" | |
| return "unknown" | |