article
README
🚀 鸭子DB RAG MCP 示例
本示例项目可将 Markdown 文档进行嵌入向量化,并通过 RAG 方法使用 MCP 对其进行解释。向量化采用 Plamo-Embedding-1B 模型。
✨ 主要特性
- 从 Markdown 文件中提取文本并进行向量化。
- 利用 DuckDB 开展向量搜索。
- 借助 Parquet 文件实现向量数据的持久化存储。
- 运用 MCP 进行向量搜索。
📦 安装指南
向量数据生成
首先,把作为搜索目标的 Markdown 文件放置于特定目录,接着运行以下命令将其转换为 Parquet 文件:
uv run main.py --directory ~/path/to/markdown/files --parquet vectors.parquet
MCP 配置
构建
使用以下命令生成单个可执行文件 dist/server:
uv run pyinstaller --clean --strip --noconfirm --onefile server.py
MCP 客户端配置
依据所需使用的客户端进行相应设置。 例如,针对 Claude Desktop,可按如下方式配置: VECTOR_PARQUET 需指定之前生成的文件路径。
uv run mcp install server.py -v VECTOR_PARQUET=/path/to/vectors.parquet
然后进行如下设置:
{
"mcpServers": {
"DuckDB-RAG-MCP-Sample": {
"command": "/path/to/dist/server",
"env": {
"VECTOR_PARQUET": "/path/to/vectors.parquet"
}
}
}
}
开发服务器启动
uv run mcp dev server.py
📄 许可证
DuckDB RAG MCP 示例按 Apache License, Version 2.0 提供。
扫码联系在线客服