Все проекты

Открытый второй мозг с самостоятельным размещениемОткрытый кодОткрытый код

OpenBrain

Сохраняйте ролики, посты, ссылки и скриншоты. OpenBrain читает их, делает выжимку и позволяет найти нужное обычными словами.

Снимок интерфейса OpenBrain

Результат

Поиск обычными словами по всему сохранённому

Задача

Всё, что вы сохраняете, попадает туда, куда вы больше никогда не заглянете. Закладки, сохранённые ролики, скриншоты: всё это работает только на запись.

Что я построил

Построен конвейер приёма, который читает каждый элемент на входе, вытаскивает текст из скриншотов через OCR и расшифровки из видео, а затем векторизует результат, чтобы искать по смыслу.

Результат

Можно попросить то, что помнишь наполовину, и действительно это получить. Размещение на своей стороне, чтобы архив оставался вашим.

Как это работает

  1. 01

    Элемент сохраняется: ссылка, скриншот, ролик, пост.

  2. 02

    Он читается на входе, а не на выходе: OCR для изображений, расшифровка для видео, извлечение для страниц.

  3. 03

    Извлечённый текст обобщается и векторизуется, поэтому элемент ищется по тому, о чём он был, а не по имени файла.

  4. 04

    Поиск отвечает на наполовину вспомненное описание, а не требует точных слов, которые в нём были.

Слой ИИ

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

Инженерный слой

Очередь приёма, переживающая элемент, который она не смогла разобрать, векторное хранилище и форма развёртывания достаточно простая, чтобы размещение на своей стороне было реалистичным, а не теоретическим.

Ключевые технические решения

Читать на приёме, а не в момент запроса.

Обработка на входе один раз стоит дороже и делает быстрым каждый последующий поиск. Обработка на выходе означает, что каждый запрос снова оплачивает OCR.

Размещение на своей стороне, из-за того что люди сохраняют.

Личный архив это последнее, о чём стоит просить человека передать третьей стороне. Самостоятельное размещение здесь и есть функция, а не вариант развёртывания.

Построено на

Next.jsVector DBLLMOCR

Связанное