小遥搜索,听懂你的话、看懂你的图,用AI找到本地任何文件。让搜索像聊天一样简单。XiaoyaoSearch: Understands your words, reads your images, finds any local file with AI. Making search as easy as chatting.
1,086
stars
396
commits
Python
primary language
May 22, 2026
updated
English Version | 简体中文


小遥搜索是一款专为知识工作者、内容创作者和技术开发者设计的跨平台本地桌面应用(Windows/MacOS/Linux)。通过集成的AI模型,支持语音输入(30秒内)、文本输入、图片输入等多种方式,将用户的查询转换为语义进行智能搜索,实现对本地文件的深度检索。

dtsola — IT架构师 | 一人公司实践者
🌐 个人站点 | 📺 B站 | 💬 微信:dtsola(技术交流 | 商务合作)
微信联系 开发者交流群 用户交流群








前端技术
后端技术
xiaoyaosearch/
├── backend/ # 后端服务 (Python FastAPI)
│ ├── app/ # 应用核心代码
│ │ ├── api/ # API路由层
│ │ ├── core/ # 核心配置
│ │ ├── models/ # 数据模型
│ │ ├── services/ # 业务服务
│ │ ├── schemas/ # 数据模式
│ │ └── utils/ # 工具函数
│ ├── requirements.txt # Python依赖
│ ├── main.py # 应用入口
│ └── .env # 环境变量
├── frontend/ # 前端应用 (Electron + Vue3)
│ ├── src/ # 源代码
│ │ ├── main/ # Electron主进程
│ │ ├── preload/ # 预加载脚本
│ │ └── renderer/ # Vue渲染进程
│ ├── out/ # 构建输出
│ ├── dist-electron/ # 打包输出
│ ├── resources/ # 应用资源
│ ├── package.json # Node.js依赖
│ └── electron-builder.yml # 打包配置
├── docs/ # 项目文档
│ ├── 00-mrd.md # 市场调研
│ ├── 01-prd.md # 产品需求
│ ├── 02-原型.md # 产品原型
│ ├── 03-技术方案.md # 技术方案
│ ├── 04-开发任务清单.md # 开发任务
│ ├── 05-开发排期表.md # 开发排期
│ ├── 开发进度.md # 进度跟踪
│ ├── 接口文档.md # API文档
│ ├── 数据库设计文档.md # 数据库设计
│ └── 高保真原型/ # UI原型
├── data/ # 数据目录
│ ├── database/ # SQLite数据库
│ ├── indexes/ # 搜索索引
│ │ ├── faiss/ # 向量索引
│ │ └── whoosh/ # 全文索引
│ ├── models/ # 模型文件
│ └── logs/ # 日志文件
├── .claude/ # Claude助手配置
├── LICENSE # 软件授权协议(中文版)
├── LICENSE_EN # 软件授权协议(英文版)
├── README.md # 项目说明(中文版)
└── README_EN.md # 项目说明(英文版)
适用人群:非开发者、希望快速体验小遥搜索的用户 支持平台:仅支持 Windows 部署难度:⭐ 简单(一键安装)
从百度网盘下载最新的 Windows 整合包:
请选择最新版本下载(如 XiaoyaoSearch-Windows-v1.1.1.zip)
1. 解压整合包
将下载的压缩包解压到任意目录(建议不要包含中文路径)
2. 运行环境准备脚本
双击运行 scripts/setup.bat,脚本会自动完成以下操作:
RTX 50 系显卡用户:如果您使用 RTX 50 系显卡,请运行
scripts/setup_rtx50显卡.bat,该脚本会安装支持 CUDA 12.8 的 PyTorch 版本以获得最佳性能。
3. 安装 Ollama
双击运行 runtime\ollama\OllamaSetup.exe,按提示完成安装。
安装完成后,打开命令行运行:
ollama serve
ollama pull qwen2.5:1.5b
4. 下载 AI 模型
从百度网盘下载默认模型:
将模型解压到对应目录:
data\models\embedding\BAAI\bge-m3\ - 嵌入模型data\models\cn-clip\ - 视觉模型data\models\faster-whisper\ - 语音识别模型5. 启动应用
双击运行 scripts/startup.bat,脚本会:
详细文档:整合包部署指南
适用人群:开发者、希望参与项目贡献的用户 支持平台:Windows / macOS / Linux 部署难度:⭐⭐⭐ 需要开发环境
1. 克隆项目
git clone https://github.com/dtsola/xiaoyaosearch.git
cd xiaoyaosearch
2. 后端部署
# 进入后端目录
cd backend
# 安装依赖包(默认CPU版本的推理引擎)
pip install -r requirements.txt
# 安装faster-whisper
pip install faster-whisper
# 启用CUDA(可选,注意:cuda版本需根据环境确定)
pip uninstall torch torchaudio torchvision
# RTX 40 系及更早显卡(CUDA 12.1)
pip install torch==2.1.0+cu121 torchaudio==2.1.0+cu121 torchvision==0.16.0+cu121 --index-url https://download.pytorch.org/whl/cu121
# RTX 50 系显卡(CUDA 12.8)
pip install torch==2.10.0+cu128 torchaudio==2.10.0+cu128 torchvision==0.25.0+cu128 --index-url https://download.pytorch.org/whl/cu128
安装ffmpeg: https://ffmpeg.org/download.html
安装ollama: https://ollama.com/
配置 .env 文件:
# 数据配置
FAISS_INDEX_PATH=../data/indexes/faiss
WHOOSH_INDEX_PATH=../data/indexes/whoosh
DATABASE_PATH=../data/database/xiaoyao_search.db
# API配置
API_HOST=127.0.0.1
API_PORT=8000
API_RELOAD=true
# 日志配置
LOG_LEVEL=info
LOG_FILE=../data/logs/app.log
准备模型: 系统默认模型说明:
注意:建议先准备默认模型,先成功启动应用后,再更换模型。
ollama模型: ollama pull qwen2.5:1.5b (根据情况自行选择)
所有模型下载地址:(百度盘) 链接: https://pan.baidu.com/s/1jRcTztvjf8aiExUh6oayVg?pwd=ycr5 提取码: ycr5
嵌入模型:
语音识别模型:
视觉模型:
启动后端服务:
# 使用内置配置启动
python main.py
# 或使用uvicorn启动
uvicorn main:app --host 127.0.0.1 --port 8000 --reload
# 进入前端目录
cd frontend
# 安装依赖
npm install
# 启动开发服务器
npm run dev
当需要升级到新版本时,请参考 版本升级指南,轻松保留您的索引数据和配置。
感谢你对小遥搜索的关注!我们欢迎任何形式的贡献,无论是代码、文档、Bug 修复还是新功能建议。
步骤 1:Fork 项目
步骤 2:克隆到本地
git clone https://github.com/<你的用户名>/xiaoyaosearch.git
cd xiaoyaosearch
步骤 3:创建功能分支
git checkout -b feature/你的功能名称
# 或
git checkout -b fix/问题描述
步骤 4:进行开发
步骤 5:提交代码
git add .
git commit -m "feat(scope): 简洁描述你的改动"
提交格式规范:
feat: 新功能fix: Bug 修复docs: 文档更新style: 代码格式调整refactor: 代码重构perf: 性能优化test: 测试相关chore: 构建/工具链相关步骤 6:推送到 GitHub
git push origin feature/你的功能名称
步骤 7:创建 Pull Request
如果你发现了 Bug 或有功能建议:
SearchPanel.vue)searchResults)MAX_FILE_SIZE)search_service.py)SearchService)search_files)MAX_RESULTS)让我们一起打造更好的本地搜索体验! 🚀
小遥搜索支持插件化架构,可通过插件扩展多种数据源:
| 类型 | 说明 | 状态 |
|---|---|---|
| 📁 本地文件 | 系统内置,无需配置 | ✅ 已实现 |
| ☁️ 语雀 | 阿里语雀知识库 | ✅ 已实现 |
| ☁️ 飞书 | 飞书文档(元数据块解析) | ✅ 已实现 |
| ☁️ 钉钉 | 钉钉文档(.xyddjson 元数据文件) | ✅ 已实现 |
| ☁️ Notion | Notion 笔记 | 📋 计划中 |
| 🔗 GitHub | 代码仓库和 Wiki | 📋 计划中 |
| 🔗 GitLab | GitLab 代码仓库 | 📋 计划中 |
查看完整的数据源插件列表(13种类型):
想要开发新的数据源插件?
📖 插件开发文档
小遥搜索现已支持 Model Context Protocol (MCP),可被 Claude Desktop 等 AI 应用连接,进行本地文件智能搜索。
MCP (Model Context Protocol) 是 Anthropic 推出的开源协议,允许 AI 应用(如 Claude Desktop)连接到本地数据源。通过 MCP,Claude 可以直接搜索和访问您的本地文件,提供更智能的问答和帮助。
小遥搜索现已支持 Agent Skills,为 Claude Code、VS Code、Cursor 等 AI 助手提供标准化的 MCP 工具调用能力。
安装 Skill:
# 项目级别
cp -r skills/ .claude/skills/
# 或全局级别
cp -r skills/ ~/.claude/skills/
安装后,AI 助手可自动发现小遥搜索的 MCP 工具,并提供正确使用指导。
小遥搜索 MCP 服务器使用 HTTP 传输协议,任何支持 HTTP MCP 的客户端都可以连接。
官方命令行工具,快速配置:
# 添加 HTTP MCP 服务器
claude mcp add --transport http xiaoyao-search http://127.0.0.1:8000/mcp
# 检查 MCP 是否添加成功(确保 MCP 已经启动的前提下,运行下面命令)
claude mcp list
任何支持 MCP 协议的客户端都可以连接到:http://127.0.0.1:8000/mcp
基本配置模板:
{
"name": "xiaoyao-search",
"url": "http://127.0.0.1:8000/mcp",
"type": "sse"
}
常用客户端配置示例:
cline.mcpServers,添加上述配置| 工具名称 | 说明 | AI 模型 |
|---|---|---|
| semantic_search | 语义搜索,支持自然语言查询理解 | BGE-M3 |
| fulltext_search | 全文搜索,支持精确关键词匹配和中文分词 | Whoosh |
| voice_search | 语音搜索,支持语音输入转文本后搜索 | FasterWhisper |
| image_search | 图像搜索,支持图片上传查找相似内容 | CN-CLIP |
| hybrid_search | 混合搜索,结合语义和全文搜索的优势 | BGE-M3 + Whoosh |
配置完成后,您可以在 Claude Desktop 中进行以下操作:
语义搜索:
用户:帮我找一下关于异步编程的文档
Claude:[调用 semantic_search 工具] 找到 5 个相关文档...
全文搜索:
用户:搜索包含 "async def" 的代码文件
Claude:[调用 fulltext_search 工具] 找到 3 个代码文件...
图像搜索:
用户:[上传图片] 找找类似的图表
Claude:[调用 image_search 工具] 找到 2 个相似的图表...
访问健康检查端点验证 MCP 服务状态:
curl http://127.0.0.1:8000/mcp/health
返回示例:
{
"status": "enabled",
"server": "fastmcp",
"tools_count": 5,
"tools": ["semantic_search", "fulltext_search", "voice_search", "image_search", "hybrid_search"]
}
在 backend/.env 中配置 MCP 服务:
# MCP 服务器配置
MCP_SSE_ENABLED=true # 是否启用 MCP SSE 服务
MCP_SERVER_NAME=xiaoyao-search # 服务器名称
MCP_DEFAULT_LIMIT=20 # 默认结果数量
MCP_DEFAULT_THRESHOLD=0.5 # 默认相似度阈值
MCP_VOICE_ENABLED=true # 是否启用语音搜索
感谢以下人员为本项目做出的贡献:
核心升级:
详细文档:v2.0.0 版本更新说明
核心优化:
详细文档:v1.9.0 版本更新说明
新增功能:
详细文档:v1.8.0 版本更新说明
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
核心功能:
390 commits
6 commits
Python
67.8%
TypeScript
16.6%
Vue
12.0%
Batchfile
2.1%
CSS
1.2%
小遥搜索,听懂你的话、看懂你的图,用AI找到本地任何文件。让搜索像聊天一样简单。XiaoyaoSearch: Understands your words, reads your images, finds any local file with AI. Making search as easy as chatting.
1,086
stars
396
commits
Python
primary language
May 22, 2026
updated
English Version | 简体中文


小遥搜索是一款专为知识工作者、内容创作者和技术开发者设计的跨平台本地桌面应用(Windows/MacOS/Linux)。通过集成的AI模型,支持语音输入(30秒内)、文本输入、图片输入等多种方式,将用户的查询转换为语义进行智能搜索,实现对本地文件的深度检索。

dtsola — IT架构师 | 一人公司实践者
🌐 个人站点 | 📺 B站 | 💬 微信:dtsola(技术交流 | 商务合作)
微信联系 开发者交流群 用户交流群








前端技术
后端技术
xiaoyaosearch/
├── backend/ # 后端服务 (Python FastAPI)
│ ├── app/ # 应用核心代码
│ │ ├── api/ # API路由层
│ │ ├── core/ # 核心配置
│ │ ├── models/ # 数据模型
│ │ ├── services/ # 业务服务
│ │ ├── schemas/ # 数据模式
│ │ └── utils/ # 工具函数
│ ├── requirements.txt # Python依赖
│ ├── main.py # 应用入口
│ └── .env # 环境变量
├── frontend/ # 前端应用 (Electron + Vue3)
│ ├── src/ # 源代码
│ │ ├── main/ # Electron主进程
│ │ ├── preload/ # 预加载脚本
│ │ └── renderer/ # Vue渲染进程
│ ├── out/ # 构建输出
│ ├── dist-electron/ # 打包输出
│ ├── resources/ # 应用资源
│ ├── package.json # Node.js依赖
│ └── electron-builder.yml # 打包配置
├── docs/ # 项目文档
│ ├── 00-mrd.md # 市场调研
│ ├── 01-prd.md # 产品需求
│ ├── 02-原型.md # 产品原型
│ ├── 03-技术方案.md # 技术方案
│ ├── 04-开发任务清单.md # 开发任务
│ ├── 05-开发排期表.md # 开发排期
│ ├── 开发进度.md # 进度跟踪
│ ├── 接口文档.md # API文档
│ ├── 数据库设计文档.md # 数据库设计
│ └── 高保真原型/ # UI原型
├── data/ # 数据目录
│ ├── database/ # SQLite数据库
│ ├── indexes/ # 搜索索引
│ │ ├── faiss/ # 向量索引
│ │ └── whoosh/ # 全文索引
│ ├── models/ # 模型文件
│ └── logs/ # 日志文件
├── .claude/ # Claude助手配置
├── LICENSE # 软件授权协议(中文版)
├── LICENSE_EN # 软件授权协议(英文版)
├── README.md # 项目说明(中文版)
└── README_EN.md # 项目说明(英文版)
适用人群:非开发者、希望快速体验小遥搜索的用户 支持平台:仅支持 Windows 部署难度:⭐ 简单(一键安装)
从百度网盘下载最新的 Windows 整合包:
请选择最新版本下载(如 XiaoyaoSearch-Windows-v1.1.1.zip)
1. 解压整合包
将下载的压缩包解压到任意目录(建议不要包含中文路径)
2. 运行环境准备脚本
双击运行 scripts/setup.bat,脚本会自动完成以下操作:
RTX 50 系显卡用户:如果您使用 RTX 50 系显卡,请运行
scripts/setup_rtx50显卡.bat,该脚本会安装支持 CUDA 12.8 的 PyTorch 版本以获得最佳性能。
3. 安装 Ollama
双击运行 runtime\ollama\OllamaSetup.exe,按提示完成安装。
安装完成后,打开命令行运行:
ollama serve
ollama pull qwen2.5:1.5b
4. 下载 AI 模型
从百度网盘下载默认模型:
将模型解压到对应目录:
data\models\embedding\BAAI\bge-m3\ - 嵌入模型data\models\cn-clip\ - 视觉模型data\models\faster-whisper\ - 语音识别模型5. 启动应用
双击运行 scripts/startup.bat,脚本会:
详细文档:整合包部署指南
适用人群:开发者、希望参与项目贡献的用户 支持平台:Windows / macOS / Linux 部署难度:⭐⭐⭐ 需要开发环境
1. 克隆项目
git clone https://github.com/dtsola/xiaoyaosearch.git
cd xiaoyaosearch
2. 后端部署
# 进入后端目录
cd backend
# 安装依赖包(默认CPU版本的推理引擎)
pip install -r requirements.txt
# 安装faster-whisper
pip install faster-whisper
# 启用CUDA(可选,注意:cuda版本需根据环境确定)
pip uninstall torch torchaudio torchvision
# RTX 40 系及更早显卡(CUDA 12.1)
pip install torch==2.1.0+cu121 torchaudio==2.1.0+cu121 torchvision==0.16.0+cu121 --index-url https://download.pytorch.org/whl/cu121
# RTX 50 系显卡(CUDA 12.8)
pip install torch==2.10.0+cu128 torchaudio==2.10.0+cu128 torchvision==0.25.0+cu128 --index-url https://download.pytorch.org/whl/cu128
安装ffmpeg: https://ffmpeg.org/download.html
安装ollama: https://ollama.com/
配置 .env 文件:
# 数据配置
FAISS_INDEX_PATH=../data/indexes/faiss
WHOOSH_INDEX_PATH=../data/indexes/whoosh
DATABASE_PATH=../data/database/xiaoyao_search.db
# API配置
API_HOST=127.0.0.1
API_PORT=8000
API_RELOAD=true
# 日志配置
LOG_LEVEL=info
LOG_FILE=../data/logs/app.log
准备模型: 系统默认模型说明:
注意:建议先准备默认模型,先成功启动应用后,再更换模型。
ollama模型: ollama pull qwen2.5:1.5b (根据情况自行选择)
所有模型下载地址:(百度盘) 链接: https://pan.baidu.com/s/1jRcTztvjf8aiExUh6oayVg?pwd=ycr5 提取码: ycr5
嵌入模型:
语音识别模型:
视觉模型:
启动后端服务:
# 使用内置配置启动
python main.py
# 或使用uvicorn启动
uvicorn main:app --host 127.0.0.1 --port 8000 --reload
# 进入前端目录
cd frontend
# 安装依赖
npm install
# 启动开发服务器
npm run dev
当需要升级到新版本时,请参考 版本升级指南,轻松保留您的索引数据和配置。
感谢你对小遥搜索的关注!我们欢迎任何形式的贡献,无论是代码、文档、Bug 修复还是新功能建议。
步骤 1:Fork 项目
步骤 2:克隆到本地
git clone https://github.com/<你的用户名>/xiaoyaosearch.git
cd xiaoyaosearch
步骤 3:创建功能分支
git checkout -b feature/你的功能名称
# 或
git checkout -b fix/问题描述
步骤 4:进行开发
步骤 5:提交代码
git add .
git commit -m "feat(scope): 简洁描述你的改动"
提交格式规范:
feat: 新功能fix: Bug 修复docs: 文档更新style: 代码格式调整refactor: 代码重构perf: 性能优化test: 测试相关chore: 构建/工具链相关步骤 6:推送到 GitHub
git push origin feature/你的功能名称
步骤 7:创建 Pull Request
如果你发现了 Bug 或有功能建议:
SearchPanel.vue)searchResults)MAX_FILE_SIZE)search_service.py)SearchService)search_files)MAX_RESULTS)让我们一起打造更好的本地搜索体验! 🚀
小遥搜索支持插件化架构,可通过插件扩展多种数据源:
| 类型 | 说明 | 状态 |
|---|---|---|
| 📁 本地文件 | 系统内置,无需配置 | ✅ 已实现 |
| ☁️ 语雀 | 阿里语雀知识库 | ✅ 已实现 |
| ☁️ 飞书 | 飞书文档(元数据块解析) | ✅ 已实现 |
| ☁️ 钉钉 | 钉钉文档(.xyddjson 元数据文件) | ✅ 已实现 |
| ☁️ Notion | Notion 笔记 | 📋 计划中 |
| 🔗 GitHub | 代码仓库和 Wiki | 📋 计划中 |
| 🔗 GitLab | GitLab 代码仓库 | 📋 计划中 |
查看完整的数据源插件列表(13种类型):
想要开发新的数据源插件?
📖 插件开发文档
小遥搜索现已支持 Model Context Protocol (MCP),可被 Claude Desktop 等 AI 应用连接,进行本地文件智能搜索。
MCP (Model Context Protocol) 是 Anthropic 推出的开源协议,允许 AI 应用(如 Claude Desktop)连接到本地数据源。通过 MCP,Claude 可以直接搜索和访问您的本地文件,提供更智能的问答和帮助。
小遥搜索现已支持 Agent Skills,为 Claude Code、VS Code、Cursor 等 AI 助手提供标准化的 MCP 工具调用能力。
安装 Skill:
# 项目级别
cp -r skills/ .claude/skills/
# 或全局级别
cp -r skills/ ~/.claude/skills/
安装后,AI 助手可自动发现小遥搜索的 MCP 工具,并提供正确使用指导。
小遥搜索 MCP 服务器使用 HTTP 传输协议,任何支持 HTTP MCP 的客户端都可以连接。
官方命令行工具,快速配置:
# 添加 HTTP MCP 服务器
claude mcp add --transport http xiaoyao-search http://127.0.0.1:8000/mcp
# 检查 MCP 是否添加成功(确保 MCP 已经启动的前提下,运行下面命令)
claude mcp list
任何支持 MCP 协议的客户端都可以连接到:http://127.0.0.1:8000/mcp
基本配置模板:
{
"name": "xiaoyao-search",
"url": "http://127.0.0.1:8000/mcp",
"type": "sse"
}
常用客户端配置示例:
cline.mcpServers,添加上述配置| 工具名称 | 说明 | AI 模型 |
|---|---|---|
| semantic_search | 语义搜索,支持自然语言查询理解 | BGE-M3 |
| fulltext_search | 全文搜索,支持精确关键词匹配和中文分词 | Whoosh |
| voice_search | 语音搜索,支持语音输入转文本后搜索 | FasterWhisper |
| image_search | 图像搜索,支持图片上传查找相似内容 | CN-CLIP |
| hybrid_search | 混合搜索,结合语义和全文搜索的优势 | BGE-M3 + Whoosh |
配置完成后,您可以在 Claude Desktop 中进行以下操作:
语义搜索:
用户:帮我找一下关于异步编程的文档
Claude:[调用 semantic_search 工具] 找到 5 个相关文档...
全文搜索:
用户:搜索包含 "async def" 的代码文件
Claude:[调用 fulltext_search 工具] 找到 3 个代码文件...
图像搜索:
用户:[上传图片] 找找类似的图表
Claude:[调用 image_search 工具] 找到 2 个相似的图表...
访问健康检查端点验证 MCP 服务状态:
curl http://127.0.0.1:8000/mcp/health
返回示例:
{
"status": "enabled",
"server": "fastmcp",
"tools_count": 5,
"tools": ["semantic_search", "fulltext_search", "voice_search", "image_search", "hybrid_search"]
}
在 backend/.env 中配置 MCP 服务:
# MCP 服务器配置
MCP_SSE_ENABLED=true # 是否启用 MCP SSE 服务
MCP_SERVER_NAME=xiaoyao-search # 服务器名称
MCP_DEFAULT_LIMIT=20 # 默认结果数量
MCP_DEFAULT_THRESHOLD=0.5 # 默认相似度阈值
MCP_VOICE_ENABLED=true # 是否启用语音搜索
感谢以下人员为本项目做出的贡献:
核心升级:
详细文档:v2.0.0 版本更新说明
核心优化:
详细文档:v1.9.0 版本更新说明
新增功能:
详细文档:v1.8.0 版本更新说明
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
新增功能:
核心功能:
390 commits
6 commits
Python
67.8%
TypeScript
16.6%
Vue
12.0%
Batchfile
2.1%
CSS
1.2%