Releases: MisonL/PyRAG-Kit
Releases · MisonL/PyRAG-Kit
v1.2.0
v1.2.0
- 完成第二阶段重构:解耦向量存储:
- 定义了
VectorStoreBase抽象基类,统一了向量存储接口。 - 实现了
FaissStore,将 FAISS 逻辑封装其中。 - 创建了
VectorStoreFactory,实现了向量存储的动态加载。
- 定义了
- 完成第三阶段重构:构建文档处理流水线:
- 创建了
etl模块,并为extractors,cleaners,splitters定义了抽象基类。 - 实现了针对 Markdown 的抽取器、基础文本清洗器和递归文本分割器。
- 创建了
PipelineManager,实现了数据处理的动态组合。
- 创建了
- 完成第四阶段重构:提升健壮性与开发者体验:
- 为核心模块(如模型提供商工厂、向量存储工厂、ETL流水线)编写了全面的单元测试。
- 优化了日志记录,并完善了项目文档。
v1.1.0
[1.1.0] - 2025-07-02
🏗️ 架构重构
项目定位调整: 明确项目目标为 “Dify核心逻辑的本地验证器”,旨在通过轻量级Python实现来对齐并验证Dify的核心工作流。
引入现代化架构: 启动了向 “配置 + 抽象基类 + 工厂模式” 的系统性重构。
完成第一阶段重构:模型管理系统 (Provider):
废除了在代码中硬编码模型实例的方式。
建立了 LargeLanguageModel, TextEmbeddingModel, RerankModel 等模型抽象基类。
实现了 ModelProviderFactory,用于根据配置动态加载和实例化不同的模型提供商。
此阶段的完成标志着项目在解耦和可扩展性上迈出了关键一步。
✨ 新功能 & 优化
启动界面美化:
新增了由 pyfiglet 生成的 ASCII Art 启动横幅,并多次迭代优化字体,最终选用清晰的 big 字体。
为标题实现了从左到右的蓝红颜色渐变效果。
添加了包含版本、描述、作者和 GitHub 链接的欢迎面板,并确保其宽度与标题对齐。
配置系统重构:
从 .env 和 python-dotenv 迁移到 config.ini 和内置的 configparser,以解决复杂的 JSON 配置解析问题。
实现环境变量优先的配置加载策略,当环境变量存在时会覆盖 config.ini 中的设置,增强了部署灵活性。
更新了 Google LLM 的默认模型为 gemini-2.5-flash 和 gemini-2.5-pro。
代码质量提升:
解耦了 Rerank 提供商,通过依赖注入将 top_n 作为参数传递给 rerank 方法,移除了对全局配置的直接依赖。