Skip to content

Commit 09c9ca5

Browse files
committed
feat: 更新版本号至 1.2.0,并完善更新日志和重构计划文档
1 parent 7b32f33 commit 09c9ca5

3 files changed

Lines changed: 46 additions & 38 deletions

File tree

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,29 @@
22

33
所有此项目的显著更改都将记录在此文件中。
44

5+
## [1.2.0] - 2025-07-03
6+
7+
### 🏗️ 架构重构
8+
9+
- **完成第二阶段重构:解耦向量存储**:
10+
- 定义了 `VectorStoreBase` 抽象基类,统一了向量存储接口。
11+
- 实现了 `FaissStore`,将 FAISS 逻辑封装其中。
12+
- 创建了 `VectorStoreFactory`,实现了向量存储的动态加载。
13+
- **完成第三阶段重构:构建文档处理流水线**:
14+
- 创建了 `etl` 模块,并为 `extractors`, `cleaners`, `splitters` 定义了抽象基类。
15+
- 实现了针对 Markdown 的抽取器、基础文本清洗器和递归文本分割器。
16+
- 创建了 `PipelineManager`,实现了数据处理的动态组合。
17+
- **完成第四阶段重构:提升健壮性与开发者体验**:
18+
- 为核心模块(如模型提供商工厂、向量存储工厂、ETL流水线)编写了全面的单元测试。
19+
- 优化了日志记录,并完善了项目文档。
20+
21+
### ⚖️ 许可证合规性
22+
23+
- **Dify 许可证检查**: 检查了 Dify 的许可证,并为项目添加了 `DIFY_LICENSE` 文件。
24+
- **MIT 许可证添加**: 为项目中非 Dify 移植代码的部分添加了 `LICENSE` 文件。
25+
- **代码文件标识**: 在所有移植自 Dify 的代码文件顶部添加了许可证声明。
26+
- **README 更新**: 在 `README.md` 中明确列出了所有移植自 Dify 的代码文件。
27+
528
## [1.1.0] - 2025-07-02
629

730
### 🏗️ 架构重构

docs/REFACTORING_PLAN.md

Lines changed: 22 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -4,48 +4,37 @@
44

55
将本项目从一个功能验证原型,系统性地演进为一个 **“Dify核心逻辑的轻量级本地验证器”**。这意味着我们的架构需要与Dify官方源码中先进的、松耦合的设计思想对齐,实现一个高内聚、松耦合、可扩展、易于测试的现代化Python应用。
66

7-
## 2. 当前状态评估 (截至 v1.1.0)
7+
## 2. 当前状态评估 (截至 v1.2.0)
88

9-
经过初步开发,项目已经取得了显著进展,特别是完成了重构蓝图中的关键一步
9+
经过 v1.2.0 的迭代,项目在架构现代化方面取得了决定性进展,核心重构蓝图已基本完成
1010

1111
* **已完成**:
12-
* **支柱一:模型管理系统** - 已成功引入工厂模式 (`ModelProviderFactory`),实现了模型提供商的动态加载和实例化,这是一个巨大的胜利。
12+
* **支柱一:模型管理系统** - 已成功引入工厂模式 (`ModelProviderFactory`)。
13+
* **支柱二:向量存储系统** - 已成功解耦向量存储,实现了可插拔的向量数据库层。
14+
* **支柱三:文档处理流水线** - 已成功构建了灵活、可扩展的数据处理流水线 (ETL)。
15+
* **健壮性与开发者体验** - 已为核心模块编写了单元测试,并优化了日志记录和项目文档。
1316

1417
* **待优化**:
15-
* **向量存储强耦合**: 核心逻辑与FAISS及`pickle`文件格式紧密绑定。
16-
* **文档处理流程固化**: 向量化过程被封装在独立的外部脚本中,不易扩展。
17-
* **配置管理分散**: 采用传统的`.ini`文件,缺乏类型安全和结构化。
18-
* **可测试性不足**: 缺乏单元测试,为未来的重构和迭代带来风险。
18+
* **持续完善**:在现有架构基础上,持续进行代码优化、增加更多实现(如新的模型提供商、向量数据库支持)并完善文档。
1919

2020
## 3. 优化计划:完成并深化重构蓝图
2121

22-
我们将继续遵循最初的重构蓝图,并在此基础上进行深化和完善,分阶段完成整个演进过程
22+
项目已完成核心重构,进入持续迭代和优化阶段
2323

2424
```mermaid
2525
graph TD
26-
subgraph "起点: 当前状态 (v1.1.0)"
26+
subgraph "起点: v1.1.0"
2727
A[部分实现的模型工厂]
2828
B[紧耦合的向量存储]
2929
C[独立的向量化脚本]
3030
end
3131
32-
subgraph "优化路线图"
32+
subgraph "已完成的重构 (v1.2.0)"
3333
direction LR
34-
subgraph "第一阶段: 完善配置与环境"
35-
P1_1[引入 Pydantic 进行配置管理] --> P1_2[统一配置读取入口]
36-
end
37-
38-
subgraph "第二阶段: 解耦向量存储 (实施支柱二)"
39-
P2_1[定义 VectorStore 抽象基类] --> P2_2[封装现有 FAISS 逻辑] --> P2_3[创建 VectorStore 工厂] --> P2_4[改造代码以使用工厂]
40-
end
41-
42-
subgraph "第三阶段: 构建文档处理流水线 (实施支柱三)"
43-
P3_1[定义抽取/清洗/分割器基类] --> P3_2[实现具体处理器] --> P3_3[创建 Pipeline 管理器] --> P3_4[整合进主流程]
44-
end
45-
46-
subgraph "第四阶段: 提升健壮性与DX"
47-
P4_1[为核心模块编写单元测试] --> P4_2[优化日志记录] --> P4_3[完善项目文档]
48-
end
34+
P1[配置与环境现代化]
35+
P2[解耦向量存储]
36+
P3[构建文档处理流水线]
37+
P4[提升健壮性与DX]
4938
end
5039
5140
subgraph "终点: 现代化架构"
@@ -55,14 +44,14 @@ graph TD
5544
Z4[高内聚、松耦合、可测试]
5645
end
5746
58-
A --> P1_1
59-
B --> P2_1
60-
C --> P3_1
61-
P1_2 --> P2_4 & P3_4
62-
P2_4 --> Z2
63-
P3_4 --> Z3
47+
A --> P1
48+
B --> P2
49+
C --> P3
50+
P1 --> P2 & P3
51+
P2 --> Z2
52+
P3 --> Z3
6453
A --> Z1
65-
P4_1 & P4_2 & P4_3 --> Z4
54+
P4 --> Z4
6655
```
6756

6857
---
@@ -102,8 +91,4 @@ graph TD
10291
* **核心任务**:
10392
1. **编写单元测试**: 在 `tests/` 目录下,为新创建的工厂、Pydantic模型和核心组件编写单元测试。
10493
2. **统一日志**: 审查并统一项目中的日志记录风格和格式,确保关键操作都有日志输出。
105-
3. **更新文档**: 在所有重构完成后,更新 `README.md` 以反映最终的架构和使用方法。
106-
107-
## 5. 下一步行动
108-
109-
在您确认此计划后,我们将切换到“代码”模式,并从 **第一阶段:配置与环境现代化** 开始,逐步实施此路线图。
94+
3. **更新文档**: 在所有重构完成后,更新 `README.md` 以反映最终的架构和使用方法。

main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
from src.ui.display_utils import CONSOLE_WIDTH
2323

2424
console = Console()
25-
VERSION = "1.1.0" # 程序版本
25+
VERSION = "1.2.0" # 程序版本
2626

2727
# =================================================================
2828
# 应用程序界面 (APP UI)

0 commit comments

Comments
 (0)