- Công cụ tìm kiếm CLI gọn nhẹ được phát triển để tìm kiếm cục bộ các tài liệu dựa trên Markdown như ghi chú cá nhân, tài liệu kỹ thuật, biên bản họp, v.v.
- Pipeline tìm kiếm lai kết hợp tìm kiếm toàn văn BM25, tìm kiếm ngữ nghĩa bằng vector và xếp hạng lại bằng LLM (re-ranking)
- Mọi xử lý đều được thực hiện trong môi trường cục bộ, mang lại chất lượng tìm kiếm cấp độ AI mà không làm rò rỉ dữ liệu cá nhân
- Hỗ trợ 3 chế độ tìm kiếm
search: tìm kiếm từ khóa dựa trên BM25
vsearch: tìm kiếm ngữ nghĩa dựa trên embedding
query: chế độ chất lượng cao nhất kết hợp hai phương thức và xếp hạng lại bằng LLM
- Tích hợp sẵn máy chủ MCP (Model Context Protocol) nên có thể liên kết trực tiếp với các workflow dùng LLM như Claude
- Chạy mọi mô hình on-device thông qua node-llama-cpp
- Tự động tải xuống và lưu cache các mô hình định dạng GGUF như embeddinggemma-300M, qwen3-reranker-0.6B, Qwen3-1.7B
- Các cách đã dùng để cải thiện chất lượng tìm kiếm
- Thực hiện mở rộng truy vấn (Query Expansion) cho yêu cầu tìm kiếm của người dùng bằng mô hình Qwen3-1.7B
- Tiến hành tìm kiếm song song bằng SQLite FTS5 và sqlite-vec
- Hợp nhất kết quả bằng Reciprocal Rank Fusion (RRF)
- Đánh giá lại mức độ liên quan của tài liệu bằng Qwen3-Reranker
- Điều chỉnh trọng số theo thứ hạng để giữ cân bằng giữa độ chính xác và độ tương đồng ngữ nghĩa
- Được viết bằng TypeScript và chạy trên Bun runtime. Chỉ mục được lưu trong cơ sở dữ liệu SQLite
- Giấy phép MIT
- Mã nguồn mở của Tobi Lütke, nhà sáng lập kiêm CEO của Shopify
Ví dụ sử dụng
# Install globally
bun install -g https://github.com/tobi/qmd
# Create collections for your notes, docs, and meeting transcripts
qmd collection add ~/notes --name notes
qmd collection add ~/Documents/meetings --name meetings
qmd collection add ~/work/docs --name docs
# Add context to help with search results
qmd context add qmd://notes "Personal notes and ideas"
qmd context add qmd://meetings "Meeting transcripts and notes"
qmd context add qmd://docs "Work documentation"
# Generate embeddings for semantic search
qmd embed
# Search across everything
qmd search "project timeline" # Fast keyword search
qmd vsearch "how to deploy" # Semantic search
qmd query "quarterly planning process" # Hybrid + reranking (best quality)
# Get a specific document
qmd get "meetings/2024-01-15.md"
# Get a document by docid (shown in search results)
qmd get "#abc123"
# Get multiple documents by glob pattern
qmd multi-get "journals/2025-05*.md"
# Search within a specific collection
qmd search "API" -c notes
# Export all matches for an agent
qmd search "API" --all --files --min-score 0.3
3 bình luận
Tôi ghi lại nhiều loại thông tin trong Obsidian rồi mở xem trên Windows + Mac + iPhone, còn những thông tin tôi tổng hợp liên quan đến GeekNews thì lưu trong Git Repo để dùng. Giờ thì chỉ với một công cụ này là có thể tìm kiếm và xem một cách tiện lợi rồi.
Mọi người quản lý như thế nào giữa Windows + Mac + iPhone vậy?
Mình quản lý giữa Windows và Mac bằng Git, còn giữa Mac và iPhone thì bằng iCloud, nhưng cảm giác vẫn còn khá nhiều điểm chưa ổn. (Ví dụ đã commit bằng Git trên Windows nhưng lại không tự động tải lên iCloud.)
Mình tò mò nên hỏi thử ạ!
Obsidian được đồng bộ trên cả Windows, Mac và iPhone bằng iCloud.
Có vẻ như hiện tại đây là cách tốt nhất nếu không dùng Sync bản trả phí.