Локальный ИИ · English tutor · CEFR · voice
Локальный ИИ-репетитор по английскому языку: разговор, произношение и словарь без облака
Английский — один из лучших сценариев для домашнего локального ИИ: ребёнок может каждый день разговаривать вслух, получать мягкие исправления, тренировать словарь, listening и письмо, а вся история занятий, голосовые записи и прогресс остаются дома. Но хороший English tutor — это не просто Whisper + LLM + TTS. Нужны CEFR-уровни, отдельная политика исправлений, словарь с интервальным повторением и специальный pronunciation pipeline.
Почему английский особенно хорошо подходит локальному ИИ
Язык требует частой практики. Не обязательно час с преподавателем два раза в неделю: полезны короткие ежедневные диалоги, повторение слов, чтение вслух и небольшие writing tasks. Именно здесь локальный ИИ даёт сильное преимущество — с ним можно говорить сколько угодно, без поминутной оплаты API и без передачи детских голосовых данных в облако.
Это не дубль статьи про голосового ИИ-репетитора
VAD, STT, LLM, TTS, задержка и turn-taking.
CEFR, correction policy, vocabulary, SRS, listening, writing и pronunciation assessment.
Свежие проекты уже строят именно такой сценарий
faster-whisper, llama.cpp, local TTS, CEFR A1–C2, role-play, vocabulary quiz и native-language fallback.
GitHub →Локальный Whisper, Ollama и разговорная практика с регулировкой сложности по уровню.
GitHub →SQLite, AI chat, click-to-define и spaced repetition для слов.
GitHub →Self-hosted language learning, mastery across skills, pronunciation rubric и полностью локальный путь.
GitHub →Пользовательский спрос тоже очевиден: в 2026 году в LocalLLaMA отдельно спрашивают полностью offline voice-to-voice tutor с bilingual input, corrections и нулевыми API-costs.
Полная архитектура локального English tutor
CEFR лучше использовать как каркас, а не как красивую наклейку «B1»
CEFR Companion Volume Совета Европы даёт уровни A1–C2 и дескрипторы по разным видам языковой деятельности. Для тьютора это гораздо полезнее, чем один общий score.
Знакомство, семья, школа, базовые вопросы.
Магазин, хобби, планы, простые описания.
Истории, мнения, путешествия, объяснение опыта.
Дискуссия, нюансы, длинные высказывания.
Сложные тексты, стилистика и тонкие оттенки.
У ребёнка не должно быть одного «уровня английского»
Например, ученик может уверенно читать на A2/B1, но говорить на A1. Если свести всё к одному числу, tutor будет выбирать неправильную сложность.
Как сделать входную диагностику без часового экзамена
Для ребёнка лучше adaptive placement на 10–15 минут. Система начинает с простого материала и быстро повышает/понижает сложность.
- 2 минуты разговора.Имя, возраст, школа, интересы — оценить базовую свободность.
- Короткий listening.2–3 фразы с вопросами по смыслу.
- Grammar probes.Несколько конструкций разных уровней.
- Vocabulary probes.Recognition + active recall.
- Чтение вслух.Отдельно собрать pronunciation sample.
- Мини-writing.3–5 предложений, если возраст позволяет.
Результат — не «твой уровень 43%», а профиль: speaking A1+, listening A2, vocabulary A2, Present Simple unstable, pronunciation intelligible but stress weak.
Свободный разговор: основа ежедневной практики
Conversation mode должен поддерживать настоящий turn-taking, а не превращаться в устный учебник. Хороший tutor задаёт короткие вопросы, реагирует на содержание и не прерывает каждую фразу ради исправления.
Yesterday I go to swimming pool with my friend.
Nice! What did you do there?
Yesterday I went to the swimming pool. Past Simple → go → went.
Ключевой UX: голосовой ответ продолжает разговор, а correction появляется отдельно на экране. Так ребёнок не теряет нить беседы.
Role-play даёт разговору понятную цель
Role-play позволяет заранее задать target vocabulary и grammar, а затем измерить, использовал ли ребёнок их в живой речи.
Русский fallback полезен, если он не превращает урок в переводчик
На начальном уровне ребёнок иногда реально не может сформулировать вопрос по-английски. Полностью запрещать русский — значит просто остановить диалог.
LangTeacher реализует похожий паттерн code-switching: native-language help допускается как аварийная поддержка, но tutor возвращает разговор на target language.
Исправлять каждую ошибку — плохая идея
Если ученик говорит медленно и после каждого предложения получает пять замечаний, он быстро перестаёт говорить. Correction policy должна зависеть от уровня и режима.
Приоритет — понятность и базовые конструкции.
Повторяющиеся grammar patterns и natural phrasing.
Collocations, register, нюансы и advanced grammar.
Не прерывать поток речи.
Babblr и LangTeacher используют level-aware correction; это хороший product pattern: исправление — часть педагогики, а не автоматический grammar lint каждого предложения.
Grammar engine должен видеть повторяющиеся patterns
Одна ошибка he go может быть случайностью. Пять одинаковых ошибок —
уже устойчивый pattern.
После нескольких повторов pattern попадает в Student DB и начинает влиять на следующие role-play и review tasks.
Персональный словарь должен рождаться из реального общения
Лучшие слова для повторения — не обязательно те, что были в абстрактном списке по теме. Если ребёнок трижды пытался сказать «соревнование» и не знал competition, это сильный кандидат в активный словарь.
Tokori строит похожую local-first механику: слово из чата можно открыть, определить и сохранить в vocab deck, а затем повторять.
{
"lemma": "competition",
"cefr": "A2-B1",
"status": "learning",
"active_use_count": 1,
"recognition_count": 4,
"examples": [
"I have a swimming competition on Saturday."
],
"source": "conversation_2026-09-21",
"next_review": "2026-09-23"
}
Интервальное повторение: слово нужно возвращать в новых фразах
Вместо одной карточки «competition — соревнование» tutor может повторять тот же item разными способами.
Choose the correct meaning.
I have a ___ on Saturday.
«У меня завтра соревнование».
Answer a question using the word.
Таким образом SRS планирует memory item, а local LLM создаёт новый контекст. Это уже отдельная архитектура от обычных flashcards.
Listening: не только «проиграть TTS и спросить перевод»
Хорошая listening-практика должна управлять скоростью, длиной, vocabulary load и типом задания.
Sotto отдельно развивает adaptive listening, в том числе на материале слов, которые уже due for review. Это хороший пример связи listening с Student DB.
Writing: сначала черновик ребёнка, потом feedback
Для writing tutor действует тот же anti-answer принцип: не писать готовый текст вместо ученика.
Например: My weekend.
5–8 предложений самостоятельно.
Grammar, vocabulary, spelling, cohesion.
Исправить самому.
Что стало лучше и что повторить.
Особенно полезно не переписывать весь текст, а отмечать 2–3 приоритетных ошибки, соответствующих текущему уровню.
Почему Whisper нельзя использовать как основной оценщик произношения
Whisper — очень хороший ASR. Но его задача — понять, какие слова сказал пользователь, а не выставить оценку артикуляции.
Контекст и language model помогают восстановить ожидаемое слово.
Нужны phone-level acoustic evidence, timing, stress, rhythm и intonation.
Это приводит к важной ошибке: ребёнок может произнести слово неточно, а Whisper всё равно правильно его транскрибирует. Если сравнить только transcript с эталоном, система ошибочно скажет «произношение идеальное».
Forced alignment: где в аудио находится каждый ожидаемый звук
Если ученик читает известную фразу, система заранее знает ожидаемый текст. Forced alignment совмещает эту транскрипцию с аудио и определяет временные границы слов/фонем.
Montreal Forced Aligner определяет forced alignment как получение time-aligned транскрипции из аудио и текста с использованием pronunciation dictionary. WhisperX использует похожую идею для более точных word-level timestamps поверх Whisper.
Phoneme scoring и Goodness of Pronunciation
Классический подход к automatic pronunciation assessment — GOP (Goodness of Pronunciation): акустическая модель сравнивает evidence ожидаемого phoneme с альтернативами и получает phone-level score.
Ребёнок вообще сказал нужную фразу?
Где находится каждый звук?
Какие звуки акустически получились?
Например /θ/ регулярно заменяется на /s/.
Одна практическая рекомендация.
Свежие работы 2026 продолжают улучшать pronunciation assessment: например, context-aware CTC пытается уменьшить ограничения традиционных GOP/CTC-подходов.
Практический локальный вариант — использовать готовый pronunciation component вроде OpenPronounce или строить собственный Wav2Vec2/CTC + G2P pipeline.
Pronunciation — это не только отдельные звуки
CEFR Companion Volume отдельно выделяет sound articulation и prosodic features, поэтому хороший tutor не должен сводить pronunciation к одному phone accuracy.
Цель — понятная речь, а не «звучать как носитель»
Современная шкала CEFR по phonological competence специально ушла от идеи, что рост уровня обязательно означает всё большую похожесть на native speaker. Ключевой ориентир — intelligibility и способность эффективно передавать смысл.
Это особенно важно для ребёнка: pronunciation feedback должен быть нейтральным, конкретным и функциональным.
Для детской речи автоматическая оценка требует дополнительной осторожности
Acoustic models часто обучены главным образом на взрослой речи. Детский голос, шум в комнате и нестабильная артикуляция могут ухудшать alignment и scoring.
Исследование Interspeech 2024 специально изучало влияние ошибок forced alignment на автоматическую оценку детской речи и показало, что alignment error вносит заметный шум в pronunciation scores. Это ещё один аргумент не показывать ложную сверхточность.
Как показывать pronunciation feedback ребёнку
Хороший интерфейс не должен превращаться в лабораторный спектрограф. Ребёнку нужна одна понятная цель за попытку.
Проблема вероятна в начале слова.
Язык слегка между зубами, воздух проходит вперёд.
Показывать только при достаточной confidence.
Короткая серия, а не 20 повторов.
Для младшего ученика лучше формулировка «попробуй этот звук ещё раз», чем псевдонаучный рейтинг 63.7/100.
Какой TTS нужен English tutor
TTS здесь не просто озвучивает ответ. Он становится моделью звучания, поэтому важны естественность, стабильная скорость и возможность менять темп.
Для учебного режима полезны параметры speech_rate,
pause_after_sentence и repeat_slow.
При этом медленное повторение не должно быть единственной формой listening.
Какой STT нужен для разговора
Для conversation loop подходят faster-whisper или whisper.cpp: они дают качественную локальную транскрипцию и хорошо вписываются в offline stack.
Какая LLM нужна для английского тьютора
Для ежедневного разговора важнее не максимальный benchmark-score, а стабильная работа с instruction following, английским, русским fallback, короткими ответами и structured output.
{
"spoken_reply": "Nice! What happened next?",
"corrections": [
{
"original": "Yesterday I go",
"better": "Yesterday I went",
"skill_id": "en.past.irregular.go",
"priority": "high"
}
],
"vocabulary_candidates": ["competition"],
"session_language": "en"
}
Что хранить в Student DB
Сырые аудиофайлы лучше хранить ограниченное время или только по отдельному согласию. Для долгосрочного прогресса обычно достаточно derived events и нескольких benchmark recordings.
Как может выглядеть нормальное 20-минутное занятие
Свободный разговор на знакомую тему.
Одна grammar/vocab цель из Student DB.
Использовать цель в живой ситуации.
1–2 фразы или один устойчивый sound pattern.
Короткий новый аудиофрагмент.
2–4 due vocabulary/grammar items.
Не обязательно каждый день включать все блоки. Planner может менять пропорции по возрасту, уровню и текущим слабым местам.
Практический локальный стек
Conversation, corrections, vocab, progress.
Локальная транскрипция речи.
Conversation tutor и structured analysis.
Озвучивание и listening.
Word/phone timing для read-aloud tasks.
Phoneme-level feedback.
Vocabulary и grammar review.
Student DB и локальная история.
Школьная программа и объяснения.
Собирает lesson plan и target skills.
LangTeacher уже показывает, что связка faster-whisper + llama.cpp + local TTS работает как полностью offline voice tutor. Остальные слои нужны, чтобы превратить разговорного бота в полноценную учебную систему.
Как собрать MVP без переусложнения
- Сделать voice conversation.Push-to-talk проще, чем сразу hands-free.
- Добавить CEFR preset.A1/A2/B1 с разной длиной реплик и словарём.
- Разделить spoken reply и correction card.Не ломать разговор исправлениями.
- Хранить grammar patterns.Начать с 10–20 самых частых конструкций.
- Добавить personal vocabulary.Слова из реальных сессий.
- Подключить FSRS.Возвращать слова и конструкции позже.
- Добавить role-play.3–5 сценариев по уровню.
- Добавить listening.Один TTS-голос, затем расширять.
- Pronunciation — отдельным этапом.Сначала read-aloud с известным текстом и confidence gating.
- После этого — adaptive planner.Автоматически собирать ежедневное занятие.
Типичные ошибки
Частые вопросы
Можно ли сделать English tutor полностью без Интернета?
Да. STT, LLM, TTS, Student DB, FSRS и pronunciation components могут работать на локальном ПК. Модели нужно скачать заранее.
Подойдёт ли Whisper для оценки произношения?
Для транскрипции — да. Для полноценной pronunciation assessment — нет. Нужен отдельный phoneme/prosody pipeline, потому что ASR оптимизирован на распознавание слов.
Нужно ли стремиться к британскому или американскому акценту?
Нет как к обязательной цели. CEFR делает акцент на intelligibility и effective communication, а не на максимально точное копирование одного native accent.
Можно ли ребёнку иногда говорить по-русски?
Да как controlled fallback. Tutor кратко помогает по-русски и возвращает диалог на английский.
Как часто исправлять грамматику?
Зависит от режима и уровня. Для A1–A2 обычно лучше выбрать одну приоритетную ошибку за turn, а остальные сохранить для будущей практики.
Можно ли автоматически определять CEFR?
Можно получить приблизительный profile через adaptive placement, но лучше хранить уровни по отдельным навыкам и периодически перепроверять их.
Нужна ли мощная видеокарта?
Для базового voice tutor достаточно умеренной локальной модели; STT/TTS могут частично работать на CPU. Более мощная GPU улучшает latency и позволяет использовать более крупную LLM, но не является обязательной для самого сценария.
Как тренировать произношение свободной речи, если заранее нет текста?
Это сложнее. Сначала полезнее read-aloud tasks с известной фразой. Для свободной речи можно анализировать prosody и устойчивые patterns, но phone-level оценка становится менее надёжной.
Можно ли объединить словарь и разговор?
Да, это один из лучших сценариев. Due vocabulary можно намеренно встроить в role-play, чтобы слово не просто узнавалось, а использовалось активно.
Нужно ли хранить голос ребёнка?
Не обязательно. Можно обрабатывать запись локально и удалять после извлечения transcript/pronunciation events, сохраняя только ограниченные benchmark samples при необходимости.
Источники и проекты
- LangTeacher — fully offline voice-based language tutor
- Babblr — conversational language tutor with local Whisper/Ollama path
- Tokori — local-first AI language learning + spaced repetition
- Sotto — self-hosted CEFR language learning
- OffBabel — fully offline spoken language tutor
- Council of Europe — CEFR Companion Volume
- CEFR — Phonological competence
- Montreal Forced Aligner documentation
- WhisperX — word-level alignment
- Context-aware CTC for Pronunciation Assessment, 2026
- Automatic Pronunciation Assessment — review
- Alignment errors and pronunciation scoring in children's speech
- OpenPronounce — local phoneme-level pronunciation assessment
Следующий материал