Перейти к содержанию

Требования

Поддерживаемые форматы файлов

Категория Форматы Метод извлечения
Текстовые TXT, MD, RTF Прямое чтение
Офисные DOCX, XLSX, PDF Библиотеки парсинга
Аудио MP3, WAV, M4A Whisper / Speech-to-Text
Видео MP4, MOV, AVI Whisper (аудиодорожка)
Специальные Форматы КонсультантПлюс, Гарант TBD

Версии текста для каждого файла

Для каждого файла хранятся несколько версий текста:

  1. content_original — исходный текст (результат OCR/Whisper/парсинга)
  2. content_edited — поправленный пользователем (исправления OCR, форматирование)
  3. content_anonymized — анонимизированный текст + таблица сопоставлений для восстановления

Режимы поиска

Внутри SQLite (извлечённый текст)

Режим Источник Когда использовать
SQLite FTS5 content_fts Основной полнотекстовый поиск с BM25
SQLite Vector vec_embeddings Семантический поиск по смыслу
SQLite Regex file_contents.content Точный regex (LIKE/GLOB)
Гибридный FTS5 + Vector Комбинация текста и семантики
Legal Entity legal_entities Поиск по статьям, пунктам, законам

Вне SQLite

Режим Когда использовать
grep Поиск в текстовых файлах (TXT, MD)
Spotlight Быстрый поиск по диску (macOS)

Комбинированный

  • Everywhere — SQLite + grep + Spotlight.

Нефункциональные требования

  • Работа на macOS
  • SQLite-база переносима между компьютерами
  • Интеграция с LLM обязательна (Ollama)
  • Синхронизация и жёсткие ограничения на размер БД — вне скоупа