Перейти к содержанию
Публикация AiManual

Observer: локальные LLM следят за экраном и шлют уведомления прямо из браузера

Observer запускает локальную модель прямо в браузере: одна фраза на естественном языке, и приложение следит за экраном, присылая уведомление при нужном событии.

Коротко

Что будет в материале

  1. 01

    Что такое Observer и зачем он нужен

  2. 02

    Веб-версия без установки: transformers.js в браузере

  3. 03

    Десктопное приложение на llama.cpp: стабильность и GPU

  4. 04

    Ограничения и подводные камни Observer

Observer - открытое приложение, которое позволяет локальной языковой модели следить за содержимым экрана и присылать уведомления, когда на экране происходит заданное событие. Автор проекта, разработчик под ником Roy3838, представил обновление в сообществе r/LocalLLaMA: веб-версия запускает модель прямо в браузере, без установки и без облака.

Практическая суть сводится к одной фразе. Вы пишете «send me a telegram when my steam game finishes downloading, use a local model», и приложение само скачивает модель, начинает следить за экраном и отправляет сообщение в Telegram, когда загрузка Steam-игры завершается. Никаких вручную настроенных зон захвата и скриптов, которые нужно писать под каждую задачу.

Что такое Observer и зачем он нужен

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

Проект полностью открытый: исходники лежат на GitHub, веб-версия доступна на app.observer-ai.com. Модель работает на вашем устройстве, данные экрана не отправляются во внешние сервисы. Подробный разбор истории проекта и его архитектуры есть в отдельном материале про Observer как open-source агент для мониторинга экрана.

Как это работает: локальная модель + мониторинг экрана

Цепочка выглядит так: приложение захватывает содержимое экрана, передаёт его локальной модели, модель проверяет, совпало ли условие, и при совпадении инициирует уведомление. Условие вы формулируете словами, а не кодом, поэтому отдельный скрипт под каждый сценарий не нужен.

Основа отличается в зависимости от версии. Веб-приложение построено на transformers.js, десктопное - на llama.cpp с биндингами на Rust. Обе версии держат данные на устройстве пользователя: облачный сервис в схеме не участвует. Принцип работы и пример с уведомлением в Telegram автор описал в анонсе на Reddit.

Веб-версия без установки: transformers.js в браузере

Веб-версия открывается на app.observer-ai.com и не требует установки. Модель скачивается в браузер через transformers.js и запускается на клиентской стороне. Автор обновления прямо связывает это с доступностью локального ИИ без установки: чтобы начать, достаточно браузера.

Пошаговый сценарий: от фразы до уведомления

  1. Откройте app.observer-ai.com в браузере.
  2. Введите фразу с условием, каналом уведомления и указанием использовать локальную модель: «send me a telegram when my steam game finishes downloading, use a local model».
  3. Дождитесь, пока агент скачает модель в браузере и начнёт мониторинг.
  4. Получите уведомление, когда условие выполнится: в примере автора это завершение загрузки Steam-игры и сообщение в Telegram.

Фраза в примере на английском, но важна логика, а не язык: условие, канал уведомления и указание, что нужна локальная модель. Дополнительных шагов настройки автор не описывает.

Оценка «примерно 10 секунд» на скачивание модели и запуск мониторинга дана автором без описания условий тестирования, поэтому воспринимайте её как ориентир, а не гарантию. Так же стоит относиться к его словам про Qwen3.5-0.8b: «running Qwen3.5-0.8b smoothly on a browser, feels illegal» - это субъективное впечатление, а не измеренный результат. Квантование модели и потребление памяти в источнике не раскрыты.

Десктопное приложение на llama.cpp: стабильность и GPU

Десктопный вариант написан на Rust поверх llama.cpp. Автор описывает его преимущества напрямую: полная мощность GPU через Metal и заметно более высокая стабильность по сравнению с браузером. Для длительного мониторинга, который идёт часами, стабильность важнее скорости запуска.

Когда веб-версии недостаточно

Десктоп имеет смысл рассматривать в нескольких случаях:

  • вы работаете на Linux, где веб-версия не запускается;
  • ваш ПК старый и не тянет модель в браузере;
  • браузерная версия работает нестабильно;
  • нужно задействовать GPU через Metal.

Metal - графический API Apple, поэтому привязка к нему касается в первую очередь macOS. Про поддержку Windows и Linux в десктопной версии автор в анонсе ничего не сказал, так что проверьте актуальный список платформ на GitHub, прежде чем рассчитывать на конкретную систему. Тема ресурсов GPU для локальных моделей подробно разобрана в материале про Qwen 27B на двух GPU и правила ночного марафона по кодингу.

Ограничения и подводные камни Observer

Веб-версия на transformers.js не работает на Linux и старых ПК. Это прямое ограничение из анонса, из-за которого часть аудитории отсекается сразу и без вариантов внутри браузерного сценария.

Оценки производительности от автора субъективны. «Примерно 10 секунд» на запуск мониторинга и «плавная работа» Qwen3.5-0.8b не сопровождаются описанием условий: какое железо, какая версия браузера, какой контекст. Без этих данных сравнивать веб-версию с десктопом по скорости корректно не получится.

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

Совместимость: Linux, старые ПК и браузеры

Для Linux в анонсе нет подтверждённого варианта: веб-версия там не работает, а поддержка Linux в десктопном приложении не заявлена. Единственный надёжный способ проверить - открыть репозиторий на GitHub и посмотреть актуальные сборки и требования.

Для старых ПК веб-версия тоже может не подойти, ограничение сформулировано автором без уточнения порога по железу. Если браузер не справляется, остаётся десктопная сборка, но и она требует ресурсов GPU.

Подключение OpenAI-совместимого эндпоинта

В Observer можно указать любой OpenAI-совместимый эндпоинт и использовать его вместо локальной модели в браузере. Автор упоминает эту возможность одной строкой: «You can obviously set your OpenAI compatible endpoint as well and just use that», без описания интерфейса настройки.

Сценарий понятен: браузер не тянет модель или нужна модель крупнее, тогда вычисления переносятся на отдельную машину или внешний API. Источником может стать ваш сервер с локальной моделью, если он отдаёт OpenAI-совместимый интерфейс, либо внешний сервис с таким же API. Конкретные серверы автор в анонсе не перечисляет, так что список придётся подбирать самостоятельно. Настройка требует указать адрес эндпоинта: без конфигурации этот режим не заработает.

Кому стоит попробовать Observer

Сценарии, для которых инструмент подходит лучше всего:

  • мониторинг завершения загрузок: Steam, торренты, обновления;
  • отслеживание длительных процессов и сборок;
  • ожидание появления конкретного элемента или сообщения на экране;
  • уведомления о событиях в приложениях, за которыми не хочется следить вручную.

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

Открытый код и где взять Observer

Веб-версия доступна на app.observer-ai.com, установка не нужна. Исходный код опубликован на GitHub, проект полностью открытый, автор - Roy3838. Проверить лицензию, свежие коммиты и список поддерживаемых платформ можно там же.

Десктопное приложение придётся собирать или скачивать отдельно: деталей сборки в анонсе нет, ориентируйтесь на репозиторий GitHub. Самый быстрый способ оценить пользу - открыть веб-версию, сформулировать одно условие из своей рутины и посмотреть, сработает ли уведомление. Если браузер не справится, следующим шагом станет десктопная сборка.

Подписаться на канал