基本能力
产品定位
Solr MCP是一个用于集成Apache Solr索引与AI助手的工具,通过模型上下文协议(MCP)实现高效的搜索功能。
核心功能
- MCP服务器:实现模型上下文协议,与AI助手集成
- 混合搜索:结合关键词搜索的精确性和向量搜索的语义理解
- 向量嵌入:使用Ollama和nomic-embed-text生成文档嵌入
- 统一集合:在同一集合中存储文档内容和向量嵌入
- Docker集成:通过Docker和docker-compose轻松设置
- 优化的向量搜索:高效处理结合向量和SQL查询的搜索,将SQL过滤器下推到向量搜索阶段,确保即使在大结果集和分页情况下也能保持最佳性能
适用场景
- AI助手需要访问结构化数据
- 需要结合关键词和语义搜索的应用
- 大规模文档集的搜索和检索
- 需要高效向量搜索的应用
工具列表
- process_markdown.py:处理Markdown文档并生成JSON格式的输出
- create_unified_collection.py:创建统一集合
- unified_index.py:将处理后的文档索引到Solr
常见问题解答
- 需要Python 3.10或更高版本
- 需要Docker和Docker Compose
- 需要SolrCloud 9.x
- 需要Ollama用于嵌入生成
使用教程
使用依赖
- 安装Python 3.10或更高版本
- 安装Docker和Docker Compose
- 安装SolrCloud 9.x
- 安装Ollama
安装教程
- 克隆仓库
- 启动SolrCloud:
bash
docker-compose up -d - 安装依赖:
bash
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install poetry
poetry install - 处理并索引示例文档:
bash
python scripts/process_markdown.py data/bitcoin-whitepaper.md --output data/processed/bitcoin_sections.json
python scripts/create_unified_collection.py unified
python scripts/unified_index.py data/processed/bitcoin_sections.json --collection unified - 运行MCP服务器:
bash
poetry run python -m solr_mcp.server
调试方式
- 确保所有依赖已正确安装
- 检查Docker容器是否正常运行
- 验证SolrCloud是否可访问
- 运行示例脚本并检查输出