Открываешь чат после пары дней тишины — а там уже тысяча новых сообщений. Одна команда — и вместо бесконечной ленты получаешь стройный разбор: всё разложено по темам, сжато до сути, каждый вывод подкреплён цитатой. Бежишь глазами по заголовкам, останавливаешься только на важном. Захотел подробностей — читаешь короткие выжимки из слов участников и по ссылке прыгаешь точно к месту спора в чате.
Тысячи сообщений в чате — одна команда, и получаешь аккуратный разбор: главные темы, кто что говорил, важные ссылки и цифры. Не надо листать чат за неделю — бот прочитает всё сам и разложит по полочкам.
- Саммари за период: «что было в чате за последние 12 часов / 2 дня».
- Саммари по количеству: «разбери последние 50 сообщений».
- Саммари по расписанию: каждое утро получаешь дайджест чата сам, без команд.
- Выгрузка без нейросети: сохранить переписку текстом, чтобы разобрать вручную.
Вместо сотни сообщений — темы с выводами. Нажми, чтобы развернуть кусок живого саммари (полный разбор):
Пример саммари чата (04.10, 11:14 – 12:47)
💡 Просмотр точного времени через CLI Участники обсудили способы узнать точное время событий, отметив, что детальную информацию можно увидеть через командную строку. — 04.10 11:14 — Vladimir S.: отметил, что ранее видел только дату и искал, где указано время. Orion: подсказал, что точное время отображается в CLI.
💡 Занижение скорости генерации и тариф Ultra-Fast Участники выражают недовольство занижением скорости работы сервиса (около 300 т/с вместо обещанных 750 т/с) и связывают это со снижением серверных мощностей или продвижением платных опций. — 04.10 11:53 — Vlad: предполагает намеренное занижение скорости ради продвижения тарифа. Pavel K: считает, что пользователей пересадили на меньшее число серверов, и сомневается в скором расширении инфраструктуры.
💡 Закрытие бесплатного доступа к Google Gemini Google ограничивает бесплатный доступ к линейке Gemini, оставляя без подписки лишь Flash-Lite, а доступ к Flash и Pro потребует тарифов AI Plus ($5) и AI Pro ($20). — 04.10 12:39 — Stas2063: поделился ссылкой на новость об ограничении доступа с 9 октября. iLYA Boytsov: предположил, что платные тарифы сигнализируют о скором релизе новой версии.
Режим «размышления» модели (reasoning_effort: none / low / medium / high)
Перед ответом модель может «думать» — тратить время и токены на внутренние
рассуждения. Режим задаёт их объём: none — без раздумий, high — максимум.
Чем глубже разбор, тем больше тем он вылавливает, но тем чаще появляются
повторы и мелкие темы.
Замер на реальном чате (~550 сообщений, один и тот же вход):
| Режим | Тем | Мышление, токенов |
|---|---|---|
| none | 22 | 0 |
| low | 29 | 2 044 |
| medium | 36 | 16 378 |
| high | 57 | 49 145 |
none— аккуратно и компактно, но теряет часть мелких обсуждений.low— небольшой прирост покрытия.medium— заметно полнее, повторов ещё мало.high— вдвое больше тем, но среди них дубли заголовков и темы из одного сообщения (шум).
Выбран medium (в MODEL_CONFIG.txt) — максимум полноты без мусора.
Режим задаётся строкой GEMINI_REASONING_EFFORT; изменения применяются
после перезагрузки конфига (/reload_config).
/sum 12h — что было в чате за последние 12 часов
/sum 2d — за последние 2 дня
/sum 50 — последние 50 сообщений
/copy 100 — сохранить последние 100 сообщений без анализа (бесплатно)
/sch ... — настроить ежедневный дайджест (подробности ниже)
Команды отправляются прямо в чат — бот работает с твоего аккаунта и отвечает там же.
Расширенный список команд
/sum — за последние 24 часа
/sum 3h — за последние 3 часа
/sum 2d — за последние 2 дня
/sum 45 — последние 45 сообщений
/sum 600-800 — сообщения с 600-го по 800-е от конца
/sum 2d-3d — сообщения от 3 до 2 дней назад
/sum 1d+ — анализ + копия результата в исходный чат
/sum 1d- — вместо Telegraph прислать как сообщение Telegram
/sum1d+- — пробел не обязателен, + и - можно вместе
/copy 3h | /copy 50 | /copy 600-800 | /copy 2d-3d
— то же, но выгрузка без анализа (бесплатно):
JSON-файл + текст для ручного разбора
/help — справка
Настройка и расписание — только на своём сервере
(в GitHub Actions расписание задаётся файлом SCHEDULE.txt):
/config /show_model /show_excluded /show_priority /show_prompt
/add_excluded НИК /remove_excluded НИК
/add_priority НИК /remove_priority НИК
/set_model НАЗВАНИЕ
/reload_config
/sch 09:00 1d — дайджест каждый день в 09:00 МСК
/sch 21:30 12h — то же на 21:30 с охватом 12 часов
/sch 09:00 1d+ — + копия в исходный чат, - как сообщение Telegram
/sch_list /unsch
| Свой сервер (VPS) | GitHub Actions (бесплатно) | |
|---|---|---|
| Что нужно | Компьютер или сервер, который всегда включён | Только аккаунт GitHub, сервера не надо |
| Как работает | Бот постоянно на связи, отвечает сразу | Бот просыпается по расписанию и по твоим командам |
| Команды | Прямо в любом чате: /sum 12h |
В общем чате: sum50 + ссылка на чат |
Можно только один способ за раз — оба сразу не работают.
Telegram: api_id и api_hash (бот через BotFather НЕ нужен)
Здесь нужен не отдельный бот, а приложение в системе Telegram: программа входит от твоего имени (такой запуск называется «userbot» — программа действует как твой аккаунт). Шаги по официальной справке (https://core.telegram.org/api/obtaining_api_id):
- Поставь официальный клиент Telegram и зарегистрируйся.
- Открой https://my.telegram.org/auth и войди по номеру телефона (код придёт в Telegram).
- Раздел
API development tools→ заполни короткую форму (название и платформа — любые) → получишьapi_id(число) иapi_hash(строка). - Впиши их в
private.txtвместе с номером телефона в виде+7999....
Помни: один номер — одно приложение; важные письма разработчика приходят на этот номер. Ключи никому не показывай.
Gemini: бесплатный ключ для gemini-3.6-flash
- Открой https://aistudio.google.com/apikey и войди Google-аккаунтом.
- Нажми
Create API key, выбери или создай проект — ключ видаAIza...появится на странице ключей (справка: https://ai.google.dev/gemini-api/docs/api-key). - Вставь ключ в
private.txtкакGOOGLE_API_KEY. Для запаса лимита добавь ещё:GOOGLE_API_KEY1,GOOGLE_API_KEY2… — бот крутит их по кругу. - Модель уже выбрана в файле
MODEL_CONFIG.txt(строкаGEMINI_MODEL=gemini-3.6-flash) — вprivate.txtеё писать не надо.
Старт бесплатный: щедрые лимиты, токены входа и выхода бесплатны (цены: https://aistudio.google.com/docs/pricing). Учти: на бесплатном уровне содержимое могут использовать для улучшения продуктов.
Как заполнить private.txt
TELEGRAM_API_ID=12345678
TELEGRAM_API_HASH=0123456789abcdef0123456789abcdef
TELEGRAM_PHONE=+79991234567
TELEGRAM_GROUP_ID=-1002...
GOOGLE_API_KEY=AIzaSyExampleKey
# запас лимита:
# GOOGLE_API_KEY1=AIzaSy...
# GOOGLE_API_KEY2=AIzaSy...TELEGRAM_GROUP_ID — чат для результатов, узнай через @username_to_id_bot.
Модель задаётся в MODEL_CONFIG.txt, а не здесь.
git clone https://github.com/Hohlas/ChatSum.git && cd ChatSum
./scripts/setup.sh # проверит Python, поставит всё нужное
# заполни private.txt ключами из прошлого шага:
cp private.txt.example private.txtМинимальное содержимое private.txt (модель — в MODEL_CONFIG.txt):
TELEGRAM_API_ID=12345678
TELEGRAM_API_HASH=0123456789abcdef0123456789abcdef
TELEGRAM_PHONE=+79991234567
GOOGLE_API_KEY=AIzaSyExampleKeyЗапуск:
python3 main.py # обычный запуск
./scripts/start_bot_background.sh # в фоне, чтобы работал после закрытия окнаПри первом запуске Telegram пришлёт код подтверждения на твой номер —
введи его в окно запуска. Дальше заходи в любой чат и пиши /sum 12h.
Ежедневный дайджест настраивается командой прямо в чате, например
/sch 08:00 1d — каждое утро в 8:00 будет саммари чата за сутки.
- Нажми Fork на странице проекта и склонируй свой форк.
- Выполни шаги из варианта 1 до
private.txtвключительно. - Сгенерируй строку сессии:
./venv/bin/python tools/gen_session.py. - Залей ключи в GitHub:
./scripts/push_github_secrets.sh. - Открой в расписании файл
SCHEDULE.txt— каждая строка этономер-чата|время|охват, например-1001234567890|08:00|1d(дайджест каждое утро в 8:00). Закоммить и запушь. - Запусти вручную: Actions → ChatSum scheduled summaries → Run workflow. Дальше бот просыпается сам каждые ~11 минут.
Разовые команды — в общем чате бота: sum50 + ссылка на чат
(например, sum50 t.me/название_чата). Выполненная команда исчезает сама.
- «429 quota exceeded» — закончился бесплатный лимит Gemini. Подожди
до завтра или добавь ещё ключи (
GOOGLE_API_KEY1,GOOGLE_API_KEY2…). - Telegram снова просит код — сессия слетела, просто пройди вход заново.
- Бот молчит — проверь, что заполнены все ключи в
private.txtи что процесс запущен (для VPS).
См. файл LICENSE.