Статья

Планы, напоминания и графики в навыках Schai GPT: как ИИ держит вас в задаче

Планы, напоминания и графики в навыках Schai GPT: как ИИ держит вас в задаче

ProfileProfile·2 ч назад·
10
··0·
Если коротко. Обычный чат с ИИ забывает задачу ровно тогда, когда вы закрыли вкладку: следующий разговор начинается с «на чём мы остановились?». В навыках Schai GPT поверх переписки живут три вещи, которые вкладку переживают — план (упорядоченные шаги со статусом), напоминания (пуш в назначенное время) и графики (ваши числа во времени). По отдельности каждая — мелочь. Вместе они и есть разница между разговором и процессом. Ниже — как это устроено изнутри, включая самое неочевидное: в график попадает только то число, которое произнесли вы, а не ИИ.
Я — Profile, на Schai разбираю наши инструменты по их собственному коду, а не по маркетинговому описанию. Поэтому здесь будут конкретные цифры отсечек, названия статусов и честное перечисление того, чего у нас нет.

Почему сам по себе разговор не держит задачу

У навыка есть память — свободные факты текстом: «бегает по вторникам», «гастрит, назначен курс», «учит Python с нуля». Этого достаточно, чтобы ИИ не переспрашивал очевидное, и совершенно недостаточно, чтобы показать движение. По строке «вес 82 кг» линию не построить: нужны число, единица и дата. А по факту «учит Python» не скажешь, прошли вы словари или нет.
Поэтому внутри навыка живут три слоя, и каждый отвечает на свой вопрос. Память — «что я про тебя знаю». Таблица замеров — «как менялись твои числа». План — «какой у тебя курс и где ты сейчас». Третий слой появился последним и оказался самым недооценённым: именно он превращает набор реплик в последовательность. Идея не наша: метаанализ Харкина и коллег в Psychological Bulletin свёл 138 экспериментов с почти 20 тысячами участников и показал, что отслеживание прогресса само по себе повышает шанс достичь цели — d+ = 0,40, причём сильнее там, где результат записывался и о нём кому-то сообщали.

План навыка — это не список дел

У обычного тудушника пункт бывает в двух состояниях: сделан или нет. У пункта плана в навыке их три — «ещё не начато», «сейчас в работе» и «пройдено». Третье состояние и есть вся разница: карточка показывает не только сколько закрыто, но и на чём вы стоите. «4 из 12 пройдено, сейчас: становая тяга» — это ответ на вопрос «что дальше», а не отчёт о прошлом.
План называется по-разному в каждом навыке, и это не косметика: в «Учителе» это «План обучения», в «Здоровье» — «Назначения и курс», в «Фитнес-тренере» — «Программа тренировок», в «Питании» — «План питания», в «КБЖУ» — «План по КБЖУ». Слово задаёт, что человек ожидает там увидеть: в курсе лечения строчка «Омепразол — 20 мг утром натощак, 14 дней» уместна, в плане изучения Python — нет.
Главное происходит не в карточке, а перед каждым ответом ИИ. Весь план целиком — с отметками, пояснениями и строкой «Сейчас в работе: …» — подкладывается модели в системную подсказку навыка. До этого ИИ честно спрашивал «на чём мы остановились?» каждый раз, хотя прогресс уже был отмечен в интерфейсе. Теперь он просто продолжает с текущего пункта.
Отмечает пройденное тоже он сам, без просьбы: если из разговора видно, что тема закрыта («со словарями разобрались», «курс допил»), вызывается инструмент отметки — пункт можно назвать номером или неточным названием. И сразу после этого следующий незакрытый становится текущим. Иначе после «готово» карточка показывала бы галочку и пустоту вместо «что дальше».

Ретроспективная сборка: план, который не начинается с нуля

Самый частый жизненный случай — не «давай составим план», а «мы уже месяц занимаемся». Выдать такому человеку чистый план на двенадцать пунктов, где не отмечено ничего, — значит обесценить месяц работы. Поэтому ИИ умеет собирать план задним числом: перечитывает переписку и выставляет статусы сразу при создании.
Технически это выглядит так: модель пишет план обычным текстом, по строке на шаг, а статус ставит прямо в начале строки. `[x]`, `[v]`, `✓` или `+` — пройдено, `[>]`, `->` или `→` — сейчас в работе, ничего — ещё впереди. Тире внутри строки делит её на заголовок и пояснение: «Списки и кортежи — срезы, методы» превращается в пункт с подсказкой.
Почему отметка именно в строке, а не отдельной командой на каждый пройденный пункт? Из-за предохранителя агента: повторные вызовы одного и того же инструмента подряд он режет как зацикливание. Отмечать десять тем десятью вызовами он бы просто не смог. Так весь разбор месячной переписки укладывается в один заход.
Предложение составить план ИИ делает сам — но ровно один раз. Отказались — тема закрыта, больше он к ней не возвращается. Навык, который на каждом сообщении продаёт собственную функцию, быстро становится невыносимым.
План собирается по уже состоявшейся переписке: маркер в начале строки задаёт статус пункта

Напоминания: что именно приходит в пуш

Напоминания в навыках — повторяющиеся, а не разовые: «Напомни через час» — это другой механизм. Здесь речь про «омепразол в 9:00 каждый день», «пробежка по вт и чт в 19:30», «позаниматься Python каждый вечер». Ставятся они голосом разговора: время и дни ИИ разбирает из человеческой формулировки — понимает «пн,ср,пт», «вторник и четверг», «будни» (понедельник–пятница), «выходные» и «каждый день».
Время местное — из ваших настроек ассистента, по умолчанию московское. Смещение пересчитывается не «сейчас», а на дату самого срабатывания: иначе в ночь перевода часов напоминание уехало бы на час. Раз в пять минут фоновая задача забирает всё, чему пора, — сначала сдвигает дату следующего раза и только потом шлёт пуш: если два запуска наложатся, потерянный пуш — меньшее зло, чем два одинаковых подряд.
В пуше — значок, заголовок и тело. Заголовок зависит от навыка: «Здоровье» присылает «🩺 Пора принять», «Фитнес-тренер» — «🏋 Пора на тренировку», «Учитель» — «📚 Время позаниматься». Тело — то, о чём напоминаем, плюс уточнение через тире: «Пробежка — 40 минут в лёгком темпе». Тап открывает не ленту и не главную, а сразу нужный навык: чтобы можно было там же ответить «выпил» — и это сообщение пойдёт в ту же переписку, из которой напоминание выросло.
Честная оговорка: свой заголовок настроен не у всех. У «Питания» и «КБЖУ» есть свои значки (🥗 и 🔢), но собственной фразы нет — приходит нейтральное «Напоминание». Это не задумка, а просто недоделанное место; проще сказать об этом прямо, чем делать вид, что так и надо.
Работают ли напоминания вообще? Метаанализ шестнадцати рандомизированных исследований в JAMA Internal Medicine показал, что текстовые напоминания примерно удваивают шансы на соблюдение назначенного режима приёма лекарств — в долях это рост примерно с 50% до 68%. Пуш устроен так же: короткое внешнее событие в нужный момент, не требующее от вас ничего вспоминать.
И сразу трезвость: напоминание не создаёт привычку, а подпирает её, пока она не встала. В классической работе Лалли и коллег люди, начавшие ежедневное простое действие, доходили до автоматизма за 66 дней медианно, с разбросом от 18 до 254 дней — и это самоотчёт, а не наблюдение со стороны. Два месяца пушей — нормальный срок, а не признак, что «не работает».

Графики: 21 показатель и один цвет стрелки

Показателей, по которым рисуются графики, ровно 21, и они закреплены за навыками. Спорт — вес, талия, пульс, пробежки, факт тренировки. Здоровье — верхнее и нижнее давление, пульс, температура, сахар, холестерин, гемоглобин, сон. Питание — вода и число приёмов пищи. КБЖУ — калории, белки, жиры, углеводы. Учёба — минуты занятий и результат теста в процентах.
Форм у графика две, и выбор не косметический. Столбики всегда считаются от нуля — иначе пробежки на 3 и 10 км превратились бы в «коротенькую полоску» и «длинную», и картина врала бы о разнице. Линия, наоборот, масштабируется по диапазону значений с запасом 12%: на шкале от нуля изменение веса на два килограмма просто не разглядеть.

Почему у веса снижение зелёное, а у пульса — нет

У некоторых показателей есть пометка «снижение — это хорошо»: вес, талия, холестерин. Для них график сравнивает первую и последнюю точку, и если значение упало, стрелка тренда красится зелёным, а не красным. У остальных — наоборот: зелёный за рост.
У пульса, давления, температуры, сахара и гемоглобина такой пометки нет вообще — и это принципиально. У них нет однозначного «чем меньше, тем лучше»: норма — коридор, а не край шкалы, и пульс 40 плох иначе, чем пульс 90. Ставить цвет там, где направление неоднозначно, значит выдавать оформление за оценку. Поэтому цвет стрелки — указатель направления, а не вердикт о здоровье.
График появляется с двух точек. При одном замере рисовать нечего — карточка показывает значение с датой и подсказку «назови цифру ещё раз». А пока замеров нет совсем, показывается демонстрационный график — но только один, по главному показателю навыка (вес для спорта, верхнее давление для здоровья, вода для питания, калории для КБЖУ, минуты занятий для учёбы), и он подписан словом «пример». Иначе карточка стала бы стопкой красивых пустых картинок, которые легко принять за свои данные.

Числа называете вы — и только вы

Вот самая важная часть, и она же самая незаметная. Замеры не вводятся в форму — они вынимаются из ваших реплик: после каждого сообщения тот же проход, который извлекает долговременную память, отдельным полем достаёт числа. «Взвесился 82.4» становится точкой веса, «пробежал 10 км» — точкой пробежки, «давление 130/85» разбирается на два замера, которые потом рисуются двумя линиями на одной карточке, как в бумажных дневниках.
И правило, вокруг которого всё построено, записано в инструкции модели буквально: брать только явно названные пользователем числа о нём самом, не выдумывать, не пересчитывать и не брать числа из своих же ответов.
Это не перестраховка. Языковая модель отлично генерирует правдоподобные числа: «примерно 78 килограммов», «где-то 2000 калорий». Попади они в график — он рисовал бы не вашу динамику, а фантазию модели, с тем же уверенным зелёным трендом. Хуже того, замеры за последние две недели подмешиваются обратно в контекст навыка, и ИИ читает их как факты о вас: модель придумала число, записала себе, через день прочитала как ваш замер и построила на нём рассуждение. Отсечка «свои ответы не берём» — единственное, что не даёт этому кругу возникнуть.
Подмешивание замеров обратно появилось после живого провала: человек написал «сегодня ещё 10 км пробежал», замер попал в график, а навык через два сообщения снова спросил «какую дистанцию пробежал?» — он видел только текстовую память, но не собственную таблицу. На вопрос «что у меня с бегом» есть и отдельный инструмент, поднимающий всё записанное за период.

Отсечки: почему «хочу 75 кг» не станет точкой на графике

Кроме правила «только ваши числа» работают ещё два фильтра. Первый — белый список: показателя нет в списке из 21, значит он отбрасывается целиком, что бы модель ни придумала. Второй — границы правдоподобия, свои у каждого показателя: вес от 25 до 400 кг, талия от 40 до 250 см, пульс от 30 до 230 уд/мин, давление от 70 до 260 верхнее и от 40 до 160 нижнее, температура от 34 до 43 °C, сон от 1 до 16 часов, вода от 0,2 до 10 литров, калории от 400 до 8000, занятия от 5 до 900 минут. Пробежка — от 100 метров до 300 км, факт тренировки всегда равен единице. Всё, что вне границ, отбрасывается молча: «825 кг» — опечатка, а не рекорд.
Границы намеренно широкие: их задача — не спорить с вашими показателями, а ловить мусор — съехавшую запятую, число из соседнего предложения, случайно захваченный год.
А «хочу 75 кг» не попадает в график по другой причине — это цель, а не замер, и так записано в правилах извлечения отдельным пунктом. Иначе линия веса дёргалась бы вниз каждый раз, когда вы вслух мечтаете, и показывала бы прогресс, которого не было. Цель при этом не теряется: она уходит в память как факт — просто не рисуется.
И ещё две мелочи: за один разговор записывается не больше шести замеров — чтобы модель не вывалила в таблицу всё, что нашла в длинном сообщении. А повтор того же числа в ту же минуту гасится как дубль.
Что становится замером, а что нет: правила извлечения и границы правдоподобия

Как за неделю получить осмысленный график

Из устройства механизма практика следует сама. Называйте число так, как сказали бы человеку: не «внеси вес 82.4», а «взвесился, 82.4» — извлечение рассчитано на живую речь, и отдельная команда ничем не лучше.
Две точки — минимум, но не цель: отрезок из двух точек одинаково хорошо описывает и тренд, и случайное колебание. Разумный ориентир на неделю — три-четыре замера главного показателя навыка: тогда видно не только направление, но и разброс.
Если замеры выходят рваными, помните: график расставляет точки равномерно по порядку, а не по календарю, и пауза в две недели на картинке сожмётся до одного шага. Спасает выбор показателя — те, что рисуются столбиками (пробежки, тренировки, минуты занятий, вода, калории), читаются честнее: пропуск виден как маленький столбик, а не как ровная линия.
И не обязательно открывать карточку, чтобы посмотреть данные: вопрос «что у меня с бегом за месяц» прямо в чате поднимает записанное и разбирает словами. Если вернуться к метаанализу Харкина, это и есть случай, когда отслеживание работает лучше всего — когда результат не просто зафиксирован, а проговорён.

Чего всё это не делает

Здесь важно быть точным, потому что от слова «графики» легко достроить лишнего. Schai GPT ничего не измеряет сам: нет подключения к весам, браслетам и часам, нет импорта из приложений здоровья, нет выгрузки в файл. Точка появляется ровно тогда, когда вы её произнесли. Весь механизм построен на самоотчёте и честен ровно настолько, насколько честен ваш рассказ.
Это не медицинский дневник. Цвет тренда — направление, а не оценка; отсутствие «нормы» на графике — не признак, что всё в порядке; ИИ не ставит диагнозов и не интерпретирует ваши показатели как врач. С тревожащими цифрами идут к врачу, а не к графику.
И напоминание — не контроль: никто не проверит, выпили ли вы таблетку. Причём эффект таких напоминаний со временем тускнеет — систематический обзор в Journal of the American Medical Informatics Association прямо говорит, что электронные напоминания надёжно помогают в краткосрочной перспективе, а долгосрочный эффект остаётся неясным. Вывод простой: это подпорка на период, пока действие не стало своим. Начали ловить себя на том, что делаете раньше пуша, — выключайте.

Коротко

План навыка — шаги в трёх состояниях, с текущим пунктом и авто-переходом к следующему; он целиком уходит в подсказку ИИ, поэтому «на чём мы остановились» больше не спрашивается. План собирается и задним числом, по уже состоявшейся переписке — статусы ставятся прямо в строках, одним заходом. Напоминания повторяющиеся, по местному времени и дням недели, тап ведёт сразу в навык; у «Питания» и «КБЖУ» заголовок пуша пока не настроен. 21 показатель, две формы графика; «снижение — хорошо» стоит только у веса, талии и холестерина. В график попадают только названные вами числа: цели, чужие цифры и собственные ответы ИИ отбрасываются. Своих измерений система не делает — ни браслетов, ни импорта, ни экспорта.
0

Пока нет комментариев

Планы и напоминания в Schai GPT: графики прогресса