Pull to refresh
4K+
1
Sergei Chistokhin@Headless

User

1
Rating
Send message

В сущности мы пытаемся смоделировать какую-то среду и посмотреть, как на нее реагирует некоторая выборка людей. Но возможно выборка неверная, а может и модель. Для меня система именно это - модель обучения, при которой что-то приходит. Не обязательно быстрее и глубже, но что-то (люди склонны преувеличивать свое влияние на среду, поэтому это субъективно). Все модели неверные, но некоторые - еще и полезные.

С Анки не согласен, есть хорошие наборы данных и в целом идея сделать свое хороша только как создание ценности в набор данных. Можно создать ценность трудом создания карточек, деньгами за их стоимость, временем, которое как-то получилось вложить и сейчас уже не хочется бросать или как у меня - забавной математикой распределения словаря по уровням пользователей. К сожалению не адаптивная пока, но это тоже легко выясняется на живых данных.

У репетитора система тоже только в голове, да и то, если ты единственный ученик. А если вас по 8 человек в день или по 4 группы по 15, то система рушится - т.к. адаптивность не предусмотрена.

А это уже можно попробовать? Формат обучения понять не могу, что бы даже спросить про вывод.

  • как многие отмечали - грамматику дети не учат. Тем более морфологию, это вообще только филологи и то с определенными целями. Для контроля LLM может быть, но для обучения важнее запомнить, что бывает вареная колбаса, а бывает.. ну в общем еще какая-то (для начала и этого хватит). Не много ли для старта или вы целитесь сразу в B2+ ?

  • Opus очень дорого. 500 кб промпта это сколько - 100-150килотокенов на вход? То есть первый некэшированный запрос 50-70 центов выходит? Не вполне понимаю выходной формат и паттерны использования, но пока Opus выглядит очень дорогим решением. А вкупе с дополнительными сходить в RAG поглядеть (там не отдельный дешевый агент же?) кажется, что это должно влетать в копеечку.

  • YAML для скелета промпта. Anthropic пишут, что XML лучше для этого (я тоже для других моделей использую, более универсально получается). Почему такой формат выбрали и проводили ли A/B тесты на других форматах?

  • "Все или ничего" тоже не совсем понял. Поговаривают, что русские учителя с неидеальным английским могут дать вполне хороший старт. То есть как будто бы иногда количество переходит в качество. А при низкой скорости и высокой стоимости как будто становится жалко собственных ресурсов на это, нет? В том смысле, что пользователь предпочтет сову ) Парето говорит нужно 80%, Амазон вообще на 60 настаивает. Дает ли это какой-то эффект в использовании или просто крутой лингвистический эксперимент?

Приветствую, коллега ) При большом контексте маленькие быстрые модели начинают теряться а RAG - медленно. Как с этим боретесь? В целом то если реалтайм не нужен пользователь может подождать секунд 10 без проблем (особенно если ему показывать как краски смешиваются :)

Учебники и прочие лицензированные материалы не использую (хотя если делать для себя/узкого круга наверное можно на сделку с совестью пойти), поэтому только опенсурсные датасеты и собранные вручную ИИ контексты. Да и контексты специфичны к уроку, там уже вся грамматика и примеры использования, чтобы не искать по всему объему.

В целом я вижу, что небольшой контекст даже с отключенными рассуждениями очень направляет LLM. Но и от модели зависит. Недавно пробовал перейти с Gemini Flash 3.1 на 3.5 - все сломалось сразу, не следует оно инструкциям тем же, нужно по новому промпт инженерить и тестировать. Я в этом смысле закрытый цикл без человека использовал - A/B тесты промптов гоняются с 2мя агентами - ботом, который потом и будет выдавать/оценивать и условным пользователем, а потом это каким-нибудь Opus сверху в ретроспективе оценивается, что получилось, что не получилось, исправления к промпту/контексту и заново цикл. Только дорого оценка получается, т.к. надо весь чат загонять, контекст и еще сверху требования к оценке. А т.к. это циклический процесс то кэш почти не используется (часовой не пробовал)

Но наверное все к английскому оно проще относится, т.к. больше в обучающих данных было.

А можете подробнее про фильтр с этими базами (morphodita, stanza) рассказать? Это детерминистический фильтр слов или LLM тоже как-то использует? Просто у меня больше были проблемы с "Мама купила машину завтра", что как-будто бы на уровне слов вполне собирается, а смысловое - совсем нет.

Я вот за системный подход. Поэтому и есть отслеживание календаря занятий, всякие FSRS и оповещения. Поэтому контроль, как мне кажется - это внешняя штука, как вот когда с преподавателем занимаетесь в школе/институте - он же как-то (понятия не имею как) определяет, что нужно контроль запустить. По темам, по набору тем, просто срез знаний. Поэтому если пользователь занимается с вашей программой, то он может методологию то и не знать, но подталкивать его к этому программа может. Сделали срез знаний, скорректировали оценку по всему объему или секционно, выдаем ошибки или уточняем по ходу дела.

Согласен, но к сожалению пока сложно из-за деталей реализации. Хотя может быть поищу альтернативных поставщиков сервиса. Может быть видели у кого-то такое, кроме Elsa? )

Спасибо за мнение, тоже очень ценно! Вот как раз согласен с тем, что грамматика изучается за 3 месяца (правда если не практиковать так же и уходит), я как будто даже думал что типовой пользователь - это 2 месяца.

И еще для меня "практика" - это решение реальных задач с использованием инструмента (в данном случае языка), поэтому никакие учебники и человеческие репетиторы этого не заменят, к сожалению. 6 часов реальных собеседований дало мне больше понимания языка и уверенности чем часов 50 потраченных на Preply. С настоящими людьми и настоящими уроками. Поэтому все приложения это от лукавого ) А тем более промпты "дай мне план обучения на 30 дней"

Но вот что я действительно пытался решить, так это подбор слов по уровню. Не уверен, что частотные характеристики и разметка слов по CEFR решила эту проблему, но это пока самое близкое что смог сделать. Тоже помню как-то нашел словарь 5000 слов для Anki (не оксфорд. Потом пытался его еще раз искать - не нашел) и пробежался по нему за полгода. Через полгода ооочень сильно удивился как вырос уровень восприятия. Так что да, вокабуляр влияет. Но в активную форму заходит только то, что было в активной - то есть использовалось. Такого даже с репетитором не получается нормально делать. Вроде слова к уроку есть, а использование всегда опционально и не отслеживается.

Из того, что я вижу - это вы говорите, что человеку нужен правильный "контекст", который он запоминает, а не только слово. У меня сейчас контекст предоставляется одним предложением на английском. Но предложение - это слишком большой блок, верно? И слишком статичный. Если это будет например набор контекстных фраз (пока не знаю, откуда их можно взять, потому, что большинство слов все-таки не контекстные, кажется и heavy rain это скорее исключение, к тому же специфичное - не каждый дождь сильный, да и на русском я не помню когда говорил последний раз про сильный дождь).

Но что-то отвлекся. К примеру для дождя, если контекст будет представлен фразами, которые сразу же и озвучиваются. То есть после выбора оценки слова пользователь будет слышать что-то вроде.

  • rain. heavy rain

  • rain. pouring rain

  • rain. caught in the rain

с соответствующим переводом. Что бы и слышать и возможность сказать это же и контекст. Примерно об этом говорите? Я просто как будто-бы мост в повышение уровня собираю, но если сразу только фразы - кажется, что сложность гораздо больше чем просто 'rain'.

Да, наверное было бы неплохо и тестирование интонации, а не просто просодию по всему блоку, но к сожалению Azure не предоставляет, свою модельку дорого. Схожу к Elsa, у них приложунька специально для произношения и она просто отличная. Но сдается мне там цена API в 3 раза выше Ажура, раз они даже не публикуют на сайте

Спасибо за отличный отзыв! А что вы имеете в виду под тренировкой беглости? У меня есть условно "правила", "слова" и "предложения", как просто для тренировки произношения, так и самый главный модуль - просто произношение предложений. В этом режиме как раз можно включить реалтайм разговор и по правилам даже просто в режиме "заполни пропуск" говорить целиком предложения (не так стрессово, как полностью перевод - для новичков подойдет) и получать анализ произношения да заодно и грамматику. То есть я вижу это как набор "посмотрели правило" -> "поделали упражнения в тексте" -> "поговорили"

Я делал для себя и вижу, что у меня очень большая проблема с грамматикой, которая рождает неуверенность. Когда занимался с репетитором этот пробел не закрылся - просто не будет человек каждый раз поправлять и считать ошибки у тебя по темам.

А чанки к словам это фразы или предложения? Никогда такого не видел, но кажется идея очень интересная. В целом то можно насобирать по 5-6 фраз к одному слову для его тренировки и каждый раз показывать разное. Такое что-то?

LLM проверяет, но в уроках эти отдельные элементы есть - как нулевой артикль, так и различные применения. Но за ссылочки спасибо, проверю, что все как я думаю )

Экзамен можно например по времени в приложении предлагать - поработал 2 часа и забыл про него - оповещение о том, что неплохо бы и контроль сделать.

А как генерируется подсказка? Какой-то смысловой подбор или просто слова из словаря? Кажется, что LLM бы разобралась, но может быть детерминистически можно разобрать (не смог скачать https://lecole.free.nf/Prg/Lecole101_orig.zip что бы посмотреть - говорит ошибка 404). Для Английского есть например база Open English WordNet (лицензия CC BY 4.0) - можно собрать ко-гиперонимы чтобы по коннотации рядом, но не совсем оно. Расстояния семантического только там, конечно же, нет, чтобы выбирать какие-то подальше смыслы, но тоже решаемо детерминистически.

Фактически Экзамен - это рекалибровка по контрольным точкам. Но вот насчет подсказки не уверен. Это как-то ухудшает показатель экзамена? В том смысле, что если нет - то как будто бы не совсем верно. Ты не знаешь, но все равно оценка как будто знаешь.

И экзамен как-то сам назначается, по объему прохождения или нужно помнить и запускать?

И про перевод в двух направлениях тоже не уверен. Много где читал, что у изучающих язык проблемы как у меня - читать отлично, а говорить очень плохо. Поэтому на восприятие не ориентировался вообще. Даже слова в двух направлениях только потому, что они новые и как будто бы человек не знает ни в одном направлении.

И цель как раз закрыть зазор между восприятием и знанием правил и применением в реалтайме. В идеале, когда ты запускаешь тренажер в режиме постоянного перевода и он говорит “а скажи-ка мне вот это” или “давай поговорим о твоих сегодняшних словах” и у тебя 1.5 секунды, что бы подумать ) Письменное с grammarly заходит на ура, но когда надо мгновенно - то у меня сразу проблемы. Практика решает

А еще вопрос про разговорник и лицензии на него. Даже переработанное - это все равно собственность некоторых людей. Поэтому я брал только открытые датасеты. По идее сами предложения сейчас уже можно недорого собрать LLM, хоть и не с первого раза 😅

Вот как раз встраивание изучаемых слов (с приоритетом тех, которые плохо запоминаются) это и было первым реализовано и это довольно легко. И работает в целом неплохо - в тренажере и в ролевых и в обсуждении новостей может подсунуть, но без фанатизма (в зависимости от уровня изученных слов эффективность разная, конечно).

Но вот эта вечная идея прогрессивного обучения спотыкается о то, что нужно как-то оценить, куда пользователь движется и как у него в мозгу это укладывается. То есть как-то почитать его мысли и узнать его лучше, чем он знает себя сам. Даже учителя не все с этим справляются, не то, что ИИ, к сожалению. И мы не скоро достигнем состояния, когда можно будет хотя бы "уверенность" в ответе измерить каким-то разумным способом, чтобы от него модель считать. Всякие измерения кожного сопротивления не в счет - не каждый ученик будет учить английский в детекторе лжи 😅

Мне кажется как раз программа важна. Путь, по которому пользователя можно или быстро протащить или задержать где, в зависимости от сложности (мне раньше нравилась подача ютубера CGPGray - у него адаптивная скорость подачи в зависимости от важности была очень хорошо настроена. Вот такую бы и мне в тренажер).

Программы во всяких duolingo настроены на наборы фраз и фактически "программой изучения" языка то и не являются, как не является программой любой карманный разговорник. А хочется системность, а не разговорник для туристов. И насчет бесплатных ИИ не вполне согласен. Я пробовал с чатами это делать - набор заданий сделать можно, но это разовая акция, без оценки, без реалтайма, без произношения, в общем сделай и оцени сам. Тоже не мой случай.

Не говорить вроде как-то неправильно, но можно предупредить, что будет переоценка и показывать ее в настройках просто. Что бы потом и пользователь мог сказать "а вот и не угадали" и вернуть обратно. Основная то идея уровня в том, что задания генерируются под уровень, а не слова. Слова нужны, конечно, но в целом нет такой штуки как "слова уровня B2" - это скорее предположение, что 80%, у кого уровень близок к этому столкнулись и знают. Но у меня 4 датасета с разных источников и в них процентов 30 расхождений по оценке уровня слов, поэтому на одном словаре наверное не стоит основываться. На словаре и грамматике вполне можно, наверное

Сейчас пришла идея, что может нужно динамическую переоценку проводить, на основании ошибок? Я же все равно всю историю собираю и по грамматике и по словам. Только как потом пользователю сказать, что мы как будто бы немного ошиблись и у него не C2, а очень даже B1 😣

Вот над этим я тоже думал, но очень уж я часто сталкиваюсь с волшебными решениями, где проходишь какой-нибудь опрос, тратишь время, а они потом тебе "а давай-ка ты сразу подписочку оформишь". А я вроде как и не хочу никому подписочку лишнюю предлагать. Хочу добро людям нести. Основная цель такая была - принести чего-нибудь полезное, потому что мне лично было полезно грамматический тренер. Вообще очень по-дурацки получается, EF грамматика C2, а открываю уроки 1.1/1.2 и половина неправильно говорю в реалтайм. В сущности идея была сделать этакий грамматический решебник, но без идей "3 примера на правило" и вообще без "вставь в пропуск" в идеале (от B1 дефолтный режим ставится "полный перевод"). Потому, что вставь пропуск - это то же самое, что и выбрать из 3х вариантов - не помогает запомнить. Но для A2 понятно, что полностью перевод сразу тяжело сделать, особенно голосом в реалтайм

И вот тут у меня тоже начинаются проблемы. Как будто грамматику +- я понимаю и уж "выбери из 3х вариантов" получаются, вон тот же EF тоже C2 выдает. Но это ж неправильно. Учителя живые на первом занятии просто говорят "давай, поговори там чего-нибудь". Но я боюсь такое сразу людей отпугнет, потому, что меня такое в других продуктах удивило и я продолжать не стал. А самая главная проблема потом начинается - оно же считает, что все, C2, и это подается на вход LLM, типа "не стесняйся в выражениях, там нормально все" и получаются грамматические монстры, которые мне вообще не понятны

Да, это как раз специальная механика, которую я нашел в научной статье по изучению языков - 20% слов ненастоящие. Генерировал их цепями маркова, потом еще Sonnet отсеивал "похожее на слова". Идея в том, что правильные слова добавляют уверенности в оценку, а ненастоящие - убавляют. В результате, если отметить все, то оценка будет "0 слов", что как будто бы и правильная при попытке затыкать все.

Вот сама статья - https://link.springer.com/article/10.3758/s13428-011-0146-0

Там конечно больше охват и как-то они постарались соединить модельные наборы с реальными, но в целом результаты кажутся довольно здоровыми.

О, как, спасибо за баг. Не, это точно просто баг, с тестовой версии приехало. И большая часть людей все-таки в веб приходит. Для меня бот прям сильно не основная штука, т.к. неудобно лично самому такой формат. Веб интерактивный, с уроками и реалтайм голосом, а чат - это я уже видел в других местах, мне не зашел формат

Файлик pesq.exe собран с отладочной версией рантайма. Ругается:
«Приложению не удалось запуститься, поскольку MSVCR100D.dll не был найден»
Пересоберите пожалуйста. Сейчас как раз занимаюсь анализом качества звука на нашей сети. 2 дня назад искал реализованные тулзы для PESQ, оценить влияние пережатия/микширования на звук, ничего не нашел. И тут ваша статья, внезапно :)
Подскажите, что еще можно почитать по теме?

Information

Rating
2,006-th
Location
Россия
Date of birth
Registered
Activity