tobi/qmd

mini cli search engine for your docs, knowledge bases, meeting notes, whatever. Tracking current sota approaches while being all local

해결하는 문제

QMD (Query Markup Documents)는 개인 지식 베이스, 마크다운 노트 및 문서를 위한 완전한 로컬 온디바이스 검색 엔진을 제공합니다. 여러 검색 전략과 LLM 기반의 정교화 과정을 결합하여 파편화된 로컬 파일에서 특정 정보를 찾는 문제를 해결하며, 데이터를 클라우드로 전송하지 않고도 고품질의 결과를 보장합니다.

작동 방식

QMD는 로컬 디렉토리(컬렉션)를 인덱싱하고 다음과 같은 하이브리드 검색 파이프라인을 사용합니다:

  1. 쿼리 확장: LLM이 사용자의 쿼리에 대한 변형을 생성하여 재현율(recall)을 높입니다.
  2. 병렬 검색: node-llama-cpp를 통해 로컬 GGUF 모델을 사용하여 BM25 전체 텍스트 검색(키워드)과 벡터 시맨틱 검색(임베딩)을 동시에 수행합니다.
  3. 융합: 결과는 정확한 일치를 유지하기 위해 상위 랭크 보너스가 포함된 상호 랭킹 융합(RRF)을 사용하여 결합됩니다.
  4. 리랭킹: 로컬 LLM 리랭커가 상위 후보들의 점수를 매겨 최종 순서를 정교화합니다.
  5. 컨텍스트화: 사용자는 경로에 설명적인 메타데이터를 추가할 수 있으며, 이는 LLM이 문서를 선택할 때 더 나은 컨텍스트 선택을 하도록 돕습니다.

대상 사용자

  • 지식 노동자: 방대한 양의 마크다운 노트나 회의록을 보유하고 있으며, 빠르고 프라이빗한 검색 방법이 필요한 사람.
  • AI 에이전트 개발자: 로컬 컨텍스트를 검색하기 위한 신뢰할 수 있는 도구가 필요한 에이전트 워크플로우 구축 개발자 (CLI, SDK 및 MCP 서버를 통해 지원).
  • 개인정보 보호 중시 사용자: 외부 API를 사용하지 않고 LLM 기반 검색 기능을 사용하고자 하는 모든 사용자.

주요 특징

  • 로컬 우선: 모든 임베딩, 리랭킹 및 쿼리 확장은 GGUF 모델을 사용하여 디바이스에서 수행됩니다.
  • 하이브리드 검색: 키워드(BM25) 검색과 시맨틱(벡터) 검색을 결합하여 정밀도와 재현율의 균형을 맞춥니다.
  • 에이전트 준비 완료: AI 에이전트에 쉽게 통합할 수 있도록 Model Context Protocol (MCP) 서버와 Node.js/Bun SDK를 포함합니다.
  • 컨텍스트 메타데이터: 컬렉션에 트리 기반 컨텍스트를 추가하여 검색 정확도를 높일 수 있습니다.
  • 유연한 검색: 경로, docid 또는 행 범위 제어가 포함된 glob 패턴을 통한 문서 검색을 지원합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트