本地文档搜索

3小时前更新 1 00
本地文档搜索本地文档搜索
本地文档搜索

技能简介

qmd-search 是一款面向 Markdown 文件、笔记和文档的本地快速搜索工具,替代传统 find 命令进行文件发现。该工具整合 BM25 全文检索、向量语义搜索与 LLM 重排序三种技术,全部在本地运行,无需调用外部 API。

业务背景

知识工作者常面临笔记散落、查找困难的痛点。本工具在本地实现三种搜索技术的融合,既保留关键词匹配的精准性,又具备语义理解的灵活性,无需联网即可快速定位所需文档,保障数据隐私的同时显著提升信息检索效率。

落地案例:某产品经理需要回顾半年前关于

能做什么

  • 关键词搜索:基于 BM25 算法快速定位包含特定词汇的文件
  • 语义搜索:理解查询意图,匹配含义相近的内容
  • 混合查询:结合多种搜索方式并自动重排序,提升结果质量
  • 代码发现:查找实现代码、配置文件或特定模式
  • 上下文提取:获取相关片段,为后续问答提供背景信息

使用说明

安装步骤

  1. 确保系统已安装 Rust 环境(如未安装,执行 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  2. 克隆仓库:git clone https://github.com/openclaw/skills.git
  3. 进入目录:cd skills/bheemreddy181/qmd-search
  4. 编译安装:cargo install --path .

基础用法

# 关键词搜索
qmd search "alpaca API" -c projects

# 语义搜索
qmd vsearch "how to implement stop loss"

# 混合查询(推荐)
qmd query "trading rules for breakouts"

# 仅返回文件路径
qmd search "config" --files -c kell

# 查看完整内容
qmd search "pattern detection" --full --line-numbers

集合管理

# 列出已有集合
qmd collection list

# 添加新集合
qmd collection add /path/to/folder --name myproject --mask "*.md,*.py"

# 更新索引
qmd update

文件获取

# 获取完整文件
qmd get myproject/README.md

# 获取指定行数
qmd get myproject/config.py:50 -l 30

# 批量获取
qmd multi-get "*.yaml" -l 50 --max-bytes 10240

输入与输出

见下方输入与输出表格。

项目内容
输入搜索关键词/自然语言描述、集合名称、文件路径模式、行数限制、结果数量
输出文件路径列表、评分结果、内容片段、JSON/Markdown 格式数据
适用人群本地文档管理者、开发者、知识工作者、需要替代 find 命令的用户
不包含云端搜索、实时协作、跨设备同步、图形界面

 

风险提示

  • 首次启用向量搜索需执行 qmd embed,耗时数分钟生成嵌入
  • 大型目录索引占用磁盘空间,建议定期清理无用集合
  • 本地模型运行时消耗内存,低配置设备可能出现卡顿
  • 搜索结果依赖索引时效性,修改文件后需执行 qmd update

来源信息

原始链接:https://github.com/openclaw/skills/tree/main/skills/bheemreddy181/qmd-search/SKILL.md
来源类型:GitHub 开源项目

数据统计

相关导航

暂无评论

none
暂无评论...