✨宝藏 App 畅文全索 打造你的专属个人知识库✨

2025-03-23 15:50:24 0点赞 2收藏 0评论

新一代智能文档检索系统 | 让知识管理更高效、更智能。

💡 项目介绍

畅文全索是一个智能化全文检索系统。基于Spring Boot和Lucene设计,支持多种文件格式的全文内容检索,通过集成Spring AI功能,支持智能搜索和内容分析,为用户提供更精准的搜索体验。

本系统专为个人知识管理和数字图书馆而设计,可以轻松处理从几千到数十万的文档集合。无论是管理个人电子书库,还是构建企业级文档检索平台,畅文全索都能满足您的需求。

🌟 使用场景案例

自媒体博主:整理爆文素材库,快速检索案例。

学生党:管理论文/笔记,一键定位参考文献。

藏书爱好者:管理你的书库,提供 OPDS 服务。

📄 多格式文档支持

  • 全面支持办公文档:PDF、Word、Excel、PowerPoint

  • 专业的电子书处理:支持 EPUB 格式的内容解析和索引

  • 智能图像识别:基于 PaddleOCR 的图片文字提取

  • 多媒体支持:视频元数据索引和预览功能

  • 网页和文本:支持 HTML 和纯文本文件的解析

🔎 高性能搜索引擎

  • 基于 Lucene 的分布式索引架构

  • 专业的中文分词算法

  • 实时索引更新机制

  • 精确的文件属性过滤

  • 智能化搜索结果高亮

🤖 AI 增强功能

  • 集成 Spring AI 框架

  • 基于大语言模型的内容理解

  • 自然语言对话式检索

  • 支持本地部署 Ollama 模型

  • 智能文档摘要生成

📚 电子书管理

  • 完整支持 OPDS 电子书协议

  • 在线 EPUB 阅读器

  • 全面兼容主流阅读设备

  • 智能封面和目录索引

  • 个性化阅读体验

💻 现代化界面设计

  • 简洁优雅的 Web 交互界面

  • 便捷的文档上传功能

  • 智能文件自动采集

  • 响应式移动端适配

  • 丰富的文档预览功能

✨宝藏 App 畅文全索 打造你的专属个人知识库✨

🚀 快速开始

# 创建容器网络

docker network create -d bridge xyz-bridge-net

# 拉取官方镜像

docker pull noogel/xyz-search:latest

# 启动服务容器

docker run -d --name xyzSearch --network xyz-bridge-net -p 8081:8081 -v /path/to/searchData:/usr/share/xyz-search/data -v /path/to/share:/data/share noogel/xyz-search:latest

系统默认配置:

  • 管理员账号:xyz

  • 初始密码:search

  • 访问地址:http://localhost:8081

  • 注:密码可在系统配置页面修改,账号暂不支持修改。登录安全性有待验证,建议内网使用。

🔧 配置说明

系统启动后,可在 Web 界面配置以下参数:

{ "indexDirectories": [ { // 文档索引主目录,支持配置多个 "directory": "/homes/xxx/XyzSearchTestData", "excludesDirectories": [ // 需要排除的子目录,必须位于主目录下 "/homes/xxx/XyzSearchTestData/exclude" ], // 排除特定类型文件的处理器 "excludeFileProcessClass": [] } ], // 文件自动采集配置 "collectDirectories": [ { "fromList": [ // 监控的源目录,支持多个 "/Users/xyz/Downloads/collect" ], // 文件存储目标目录 "to": "/homes/xxx/XyzSearchTestData/collect", // 文件类型过滤正则表达式 "filterRegex": ".(pdf|PDF|epub|EPUB|docx|DOCX)", // 采集后是否自动删除源文件 "autoDelete": true } ], // OPDS 服务根目录,推荐使用 Calibre 库目录 "opdsDirectory": "/homes/xxx/XyzSearchTestData", // 手动上传文件的存储目录 "uploadFileDirectory": "/homes/xxx/XyzSearchTestData/upload", // 标记删除文件的临时存储目录 "markDeleteDirectory": "/homes/xxx/XyzSearchTestData/exclude/deleted", // 系统访问通知邮件配置 "notifyEmail": { "senderEmail": null, "emailHost": null, "emailPort": null, "emailPass": null, "receivers": [] }, // OCR 服务配置 "paddleOcr": { "url": null, "timeout": 10000 }, // 文档详情页的外部搜索链接 "linkItems": [ { "desc": "豆瓣", "searchUrl": "https://m.douban.com/search/?query={query}" }, { "desc": "京东", "searchUrl": "https://so.m.jd.com/ware/search.action?keyword={query}" }, { "desc": "谷歌", "searchUrl": "https://www.google.com/search?q={query}" } ], // AI 对话检索配置 "chat": { "enable": false, "ollama": { "baseUrl": "http://192.168.124.101:11434", "chatModel": "deepseek-r1:1.5b", "chatOptionNumCtx": "4096", "chatOptionTemperature": "1.0", "chatOptionNumPredict": "10000", "embeddingAdditionalModels": [], "pullModelStrategy": "when_missing" } } }

🐳 Docker本地部署

构建本地镜像

环境要求:JDK 17 或更高版本

# 构建镜像 mvn clean package && cd docker && docker build -t xyz-search:latest . && docker tag xyz-search:latest 用户名/xyz-search:latest && cd ../../ # 推送到镜像仓库 docker push 用户名/xyz-search:latest # 创建容器网络 docker network create -d bridge xyz-bridge-net # 部署服务 docker run -d --restart=always --name xyzSearch --network xyz-bridge-net -p 8081:8081 -v /实际路径/searchData:/usr/share/xyz-search/data -v /实际路径/share:/data/share 用户名/xyz-search:latest

使用 Docker Compose 部署

创建 docker-compose.yml 配置文件:

version: '3' services: xyz-search: image: noogel/xyz-search:latest container_name: xyzSearch restart: always ports: - "8081:8081" volumes: - ./searchData:/usr/share/xyz-search/data - ./share:/data/share networks: - xyz-net networks: xyz-net: driver: bridge

执行部署命令:

docker-compose up -d

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
2
扫一下,分享更方便,购买更轻松