Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

智能听书知识库系统

面向听书平台的智能知识库系统,支持内容导入、书籍推荐、书籍详情、内容检索和知识问答。

项目架构

smart_audiobooks/
├── main.py                      # 统一入口 (FastAPI :8000)
├── config/                      # 配置层 (9个配置模块)
├── schema/                      # 数据模型层 (内容类型/元数据/API模型)
├── processor/                   # 业务处理层 (LangGraph 工作流)
│   ├── base.py                  # 统一节点基类
│   ├── import_processor/        # 导入流程 (7节点)
│   └── query_processor/         # 查询流程 (7节点, 统一RAG)
├── utils/                       # 工具层 (Milvus/MongoDB/MinIO/LLM/SSE)
├── web/                         # Web 层
│   ├── api/
│   │   ├── import_service.py    # 导入 API 路由
│   │   └── query_service.py    # 查询 API 路由
│   └── page/                    # 前端页面
├── tool/                        # 辅助工具
└── test/                        # 测试数据

核心功能

内容导入

  • 支持 PDF/MD 文件上传
  • LLM 自动提取书籍元数据(书名、作者、内容类型、类别、时长等)
  • 7 种内容类型:有声书信息/书籍简介/作者介绍/听书笔记/推荐运营资料/用户评论摘要/常见问答
  • 异步处理,实时状态追踪

书籍推荐

  • 按书名、作者、类别、场景标签等条件查找
  • 返回书籍列表、特色亮点、适合人群、推荐理由

书籍详情

  • 查询书籍简介、作者介绍、有声书时长、演播信息
  • 内容标签、听书亮点、常见问题

内容检索

  • 定位书籍资料与听书笔记
  • 返回书名、作者名、内容类型、文件名等来源信息

知识问答

  • 基于知识库内容生成答案
  • 统一 RAG 流程,自动适配不同查询类型
  • 返回引用来源信息

交互能力

  • 单轮/多轮对话
  • 流式输出 (SSE)
  • 历史记录管理

快速开始

# 安装依赖
#pip install -r requirements.txt

# 配置环境变量
cp .env.example .env
# 编辑 .env 填写实际的 API 密钥和服务地址

# 启动服务
python main.py

# 访问
# - 导入页面: http://127.0.0.1:8000/import.html
# - 聊天页面: http://127.0.0.1:8000/chat.html
# - API 文档: http://127.0.0.1:8000/docs

导入流程

node_entry → (PDF) node_pdf_to_md → node_md_img → node_document_split
                                                              ↓
                                          node_item_name_recognition (LLM 元数据提取)
                                                              ↓
                                          node_bge_embedding (BGE-M3 向量化)
                                                              ↓
                                          node_import_milvus (持久化)

查询流程 (统一 RAG)

node_item_name_confirm → [并行]
  ├─ node_search_embedding      (向量混合检索)
  ├─ node_search_embedding_hyde (HyDE 假设文档检索)
  └─ node_web_search_mcp        (网络搜索)
       ↓
  node_rrf (RRF 融合排序)
       ↓
  node_rerank (重排序)
       ↓
  node_answer_output (答案生成 + 引用提取)

外部服务

服务 用途
Milvus 向量数据库 (chunks + item_names)
MongoDB 对话历史存储
MinIO 文件/图片对象存储
DashScope LLM / Rerank / VL / MCP WebSearch
MinerU PDF 结构化解析
BGE-M3 (本地) 文本向量化 (dense 1024d + sparse)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages