Pull to refresh

Comments 11

В свое время тоже решил запорочиться, но подтянуть разговорный.
Задается топик разговора, говоришь фразу, whisper распознает, передвает в llm, llm отвечает, и можно вести диалог. Есть подсветка ошибок, например, пропустил артикль или еще что с грамматикой.
Бысто уперся в лимит vram. 8 гиг мало.

Это круто, у нас параллельные траектории. У Вас задача потяжелее по железу. Я обошёл это стороной: вместо локальной модели держу 4 провайдера через pluggable-интерфейс (claude/openai/gemini), переключаюсь по задаче. Latency страдает, зато ноут не плавится. А подсветка ошибок у Вас на правилах или whisper отдаёт уже размеченное? Если будете возвращаться к вопросу железа - расскажите как разрулите, мне интересно, может, потом у себя реализую.

whisper только распознает, large-v3-turbo дает слабенькое качество, но с ним уже можно работать, модели меньше распознают отсебятину. Проверяет грамматику llm, сейчас qwen из новых в lm studio, thinking отключен. Как надоест мучать ноут, перенесу в облако.

Классно, будет ли добавлена возможность устанавливать туда модель с openrouter или такие модели как deepseek, glm, minimax?

Сейчас в коробке 4 провайдера, пока на все не хватает времени. Чтобы получить deepseek/glm/minimax - проще всего добавить openrouter-адаптер (он сам роутит на нужную модель). По сути это новый файл рядом с claude_provider.go. Репо открыт - если опередите PR, буду рад.

А не кажется что для этого этапа продукта Redis как раз overkill? можно было все это реализовать на Postgres, а не тащить дополнительный внешний сервис.

Соглашусь с Вами и объясню свою позицию, на текущем масштабе - да, можно на Postgres. У меня Redis несёт две конкретные нагрузки: 1 JWT-blacklist с TTL = remaining-lifetime токена, +1 round-trip на каждом middleware - на pg это будет либо отдельная таблица с фоновым cleanup'ом, либо unlogged-таблица; 2 кеш - сколько слов сегодня к повторению, пересчитывается фоновой горутиной раз в день - это да, вообще можно как materialized view. Если бы делал заново на скоупе одного юзера - выбрал бы pg + LISTEN/NOTIFY. Redis оставил ,так скажем, на вырост - если когда-то многопользовательский сценарий пойдёт. Спасибо за обратную связь, мне это очень важно.

Выглядит как интересный пет проект но оверкил. Простая промпт система и пара учебников даст примерно тот же выхлоп. Имхо

У меня был немного другой кейс и тейк статьи. Lexis про ежедневный workflow с состоянием: где остановился, какие слова уже разбирали, какой уровень. В чате это каждый раз зашивать заново и есть та фрикция, от которой я устал. Плюс 4 провайдера - это страховка от просадки конкретной модели (кейс с новым Opus в апреле это было что то и я такого не ожидал). И это упражнение и в стек, и в архитектуру было моим личным желанием и заодно, по цене оверкила, получаешь язык + продукт под свою привычку + тренажёр. Если цель только язык - согласен, можно проще. Хорошего дня!

да я не про чат, а про простой claude.md (или даже agents.md если opencode) в котором это будет прописано и любая модель сможет вам помочь с изучением языка.

вот мой пример по немецкому. работает вполне приемлемо даже с локальной gemma4-26b:

German - реактивация немецкого языка

Методология (evidence-based)

  1. Comprehensible input (Krashen) на уровне i+1

  2. Shadowing: слушай → повторяй → сравнивай

  3. Spaced repetition (Anki на iPhone)

  4. Pronunciation = feedback loop (сигнал → выход → сравнение → коррекция)

  5. Регулярность > система. 15 мин/день > идеальная архитектура

Инструменты

  • edge-tts: de-DE-ConradNeural (муж), de-DE-KatjaNeural (жен). Путь: /opt/homebrew/bin/edge-tts

  • Anki на iPhone

  • RAG (mcp-local-rag): учебники проиндексировать когда начнём. Текущий embedding (all-MiniLM-L6-v2) EN only, может понадобиться multilingual

Аудио из учебников

edge-tts --voice "de-DE-ConradNeural" --file input.txt --write-media output.mp3edge-tts --voice "de-DE-ConradNeural" --rate "-30%" --file input.txt --write-media output.mp3  # медленнее

Что есть в папке

  • textbooks/ - 7 учебников (PDF, TXT): Collins Grammar, Collins Phrasebook, Practice Makes Perfect, 150 Short Stories и др.

  • audio/ - сгенерированные аудио-уроки

  • notes/ - заметки

What Claude should do

  • Генерировать аудио-уроки из глав учебников (текст → edge-tts)

  • Объяснять грамматику через примеры, не через правила

  • Разговорная практика: диалоги с переводом

  • Anki карточки (немецкий → русский + пример)

  • НЕ строить систему. Фокус на контент, не на архитектуру

Связанные файлы (в root)

  • ~/opencode/notes/german.md - исходное обсуждение концепции

с японским по другому но не сильно сложнее - просто добавляется символьный уровень

У Вас отличная стратегия обучения, тем более если она Вам подходит. Удачи Вам в реализации ваших планов!

Sign up to leave a comment.

Articles