EnglishРусский Map

qmd

title
qmd
type
toolbox
summary
Local-first поиск по markdown-заметкам, объединяющий BM25, векторный поиск и переранжирование через LLM
tags
typescript, search, markdown, llm, mcp, knowledge-management
language
TypeScript
license
MIT
created
2026-04-06
updated
2026-04-06
lang
ru
translation_of
qmd
source_updated
2026-04-06
translated
2026-09-01
translator
lllm/antigravity/gemini-3.7-flash-medium

Local-first поисковый движок для markdown-заметок, документации и баз знаний. Объединяет поиск по ключевым словам через BM25, векторный семантический поиск и переранжирование через LLM - всё работает локально через node-llama-cpp с GGUF-моделями. Никаких API-ключей, никакого облака. Автор - Тоби Лютке (CEO Shopify).

Три режима поиска:

  • qmd search "query" - поиск по ключевым словам через BM25 (быстрый, модель не требуется)
  • qmd vsearch "query" - векторный семантический поиск по локальным эмбеддингам
  • qmd query "query" - гибридный: BM25 + векторный поиск, затем LLM переранжирует результаты (лучшее качество)

Базовая настройка:

npm install -g @tobilu/qmd

qmd collection add ~/notes --name notes
qmd collection add ~/Documents/meetings --name meetings
qmd embed          # generate embeddings
qmd query "quarterly planning"

Варианты интеграции:

  • CLI для прямого использования
  • MCP-сервер - работает с Claude Desktop и Claude Code из коробки
  • SDK для Node.js/Bun для встраивания в другие инструменты
  • HTTP-транспорт для общих экземпляров сервера (qmd mcp --http --daemon)

Архитектура: трёхзвенный конвейер. Лексический (BM25) и векторный поиск выполняются параллельно, затем LLM-реранкер оценивает объединённые результаты. Поддерживается расширение запросов на естественном языке - перед поиском LLM переписывает запрос в более удачные ключевые и семантические варианты. Коллекциям можно задавать описательный контекст для повышения релевантности.

Главное в SDK: createStore() даёт программный доступ к поиску, построению эмбеддингов, управлению коллекциями и получению документов. Поддерживаются glob-шаблоны, диапазоны строк, пакетное извлечение и callback'и прогресса.

Применимость к этой вики: qmd мог бы индексировать каталоги wiki/ и sources/, обеспечивая семантический поиск по базе знаний. Сейчас рабочий процесс запросов читает index.md и переходит по ссылкам вручную. qmd позволил бы находить релевантные страницы, даже если граф wikilink'ов их не связывает, что особенно актуально по мере роста вики. Интеграция с MCP означает, что Claude Code сможет использовать его напрямую.

Репозиторий: https://github.com/tobi/qmd - 18.2k звёзд, лицензия MIT.