ad96d676e6
- 实现完整的知识库数据模型(知识库、文档、文档块、会话配置) - 实现基于 SQLite 的向量数据库存储和检索 - 实现文档解析器(PDF、TXT)和固定大小分块器 - 实现混合检索系统(密集向量检索 + BM25 稀疏检索 + RRF 融合) - 实现知识库生命周期管理和消息注入器 - 支持会话级别的知识库配置和关联
25 lines
460 B
Python
25 lines
460 B
Python
"""文档分块器基类
|
|
|
|
定义了文档分块处理的抽象接口。
|
|
"""
|
|
|
|
from abc import ABC, abstractmethod
|
|
|
|
|
|
class BaseChunker(ABC):
|
|
"""分块器基类
|
|
|
|
所有分块器都应该继承此类并实现 chunk 方法。
|
|
"""
|
|
|
|
@abstractmethod
|
|
async def chunk(self, text: str) -> list[str]:
|
|
"""将文本分块
|
|
|
|
Args:
|
|
text: 输入文本
|
|
|
|
Returns:
|
|
list[str]: 分块后的文本列表
|
|
"""
|