本项目通过整合大型语言模型(LLM)与本地知识库,实现更智能的信息检索与处理。它能自动加载指定文件并分块,将文本转换为向量存储,还能基于向量相似度快速定位相关文档片段,极大提升信息检索效率。
无需额外环境准备,直接运行:
./rebuild-vector-store-hnsw.sh
./start-weaviate.sh
./rebuild-vector-store-weaviate.sh
curl http://localhost:8080/v1/.well-known/ready
docker-compose down
系统提供丰富的结果信息,包括但不限于:
示例输出格式如下:
{
"hits": [
{
"id": "chunk_123",
"score": 0.95,
"content": "这是一段示例文本内容...",
"position": [42, 56],
"document_type": "Markdown",
"summary": "这段文字主要讲述了...",
"keywords": ["关键词1", "关键词2"]
}
]
}
这些扩展信息极大提升了LLM对检索结果的理解与利用效率。
通过以下环境变量进行系统配置:
| 变量名 | 描述 | 默认值 |
|---|---|---|
| KNOWLEDGE_BASE_PATH | 指定知识库根目录 | 必填 |
| OPENAI_API_KEY | OpenAI API认证密钥 | 必填 |
| SIMILARITY_THRESHOLD | 检索相似度阈值(0 - 1) | 0.7 |
| CHUNK_SIZE | 分块大小 | 1000 |
| CHUNK_OVERLAP | 块间重叠字数 | 200 |
| VECTOR_STORE_TYPE | 存储引擎类型 | hnswlib |
| VECTOR_STORE_CONFIG | 存储器配置参数 | {} |
系统采用模块化设计,核心组件包括:
本项目遵循[ Apache License 2.0 ]协议。
欢迎社区参与改进与优化,具体贡献指南请参考[ CONTRIBUTION.md ]。