Windpicker-owo
|
6d727eeda9
|
feat(embedding): 提升并发能力,优化嵌入生成和索引重建流程
|
2025-11-09 22:30:21 +08:00 |
|
Windpicker-owo
|
eb16508fb5
|
feat(extraction): 优化信息提取流程,支持异步并发和缓存管理
|
2025-11-09 21:38:31 +08:00 |
|
明天好像没什么
|
30658afdb4
|
ruff归零
|
2025-11-01 21:32:41 +08:00 |
|
minecraft1024a
|
3c4a3b0428
|
chore: 统一代码风格并进行现代化改造
本次提交主要包含以下内容:
- **代码风格统一**:对多个文件进行了格式化,包括移除多余的空行、调整导入顺序、统一字符串引号等,以提高代码一致性和可读性。
- **类型提示现代化**:在多个文件中将旧的 `typing` 模块类型提示(如 `Optional[T]`、`List[T]`、`Union[T, U]`)更新为现代 Python 语法(`T | None`、`list[T]`、`T | U`)。
- **f-string 格式化**:在 `scripts/convert_manifest.py` 中,将 `.format()` 调用更新为更现代和易读的 f-string `!r` 表示法。
- **文件末尾换行符**:为多个文件添加或修正了文件末尾的换行符,遵循 POSIX 标准。
|
2025-10-25 13:31:22 +08:00 |
|
tt-P607
|
a94bd57912
|
fix(knowledge): 修复知识库嵌入生成中的并发处理问题
原有的多线程 (`ThreadPoolExecutor`) 嵌入生成方式已被重构为完全异步的并发模型。
旧的实现为每个线程创建新的 `asyncio` 事件循环来运行协程,这种模式效率低下且不稳定,容易引发难以调试的并发问题。
新的实现统一在单个事件循环中处理所有异步任务,使用 `asyncio.Semaphore` 控制并发等级,并通过 `asyncio.gather` 高效地执行批量嵌入请求。此更改显著提高了代码的稳定性、性能和可维护性。
BREAKING CHANGE: `EmbeddingStore` 和 `EmbeddingManager` 中的多个核心方法(如 `store_new_data_set`, `check_embedding_model_consistency`, `batch_insert_strs` 等)已从同步方法更改为异步方法。所有对这些方法的调用现在都必须使用 `await`。
|
2025-10-23 11:42:35 +08:00 |
|
tt-P607
|
88a4b01556
|
孩子们,知识库的高并发太恐怖了
|
2025-10-19 14:11:45 +08:00 |
|
tt-P607
|
4f2cb56740
|
refactor(learning): 在线程池工作函数中实例化LLMRequest
将 `LLMRequest` 对象的实例化从 `extract_information` 函数移动到线程池执行的 `extract_info_sync` 函数内部。
此更改确保每个工作线程都有自己独立的 `LLMRequest` 实例,避免了在多线程环境下共享同一实例可能引发的潜在并发问题。
|
2025-10-18 23:38:03 +08:00 |
|
tt-P607
|
d65f6dcefe
|
chore(scripts): 为学习工具脚本引入并发依赖
|
2025-10-18 20:21:54 +08:00 |
|
tt-P607
|
373db77768
|
Revert "总之就是知识库"
This reverts commit 0383a999fb.
|
2025-10-18 17:09:18 +08:00 |
|
minecraft1024a
|
c01607b17b
|
chore: 代码清理和格式化
对项目代码进行了一系列小幅度的清理和改进,包括:
- 移除未使用的导入语句
- 统一代码格式,如调整空行和导入顺序
- 优化日志输出的可读性
- 更新类型注解以符合现代 Python 语法
- 修复代码风格检查器(linter)报告的问题
|
2025-10-12 12:41:05 +08:00 |
|
tt-P607
|
0383a999fb
|
总之就是知识库
|
2025-10-11 14:18:54 +08:00 |
|
John Richard
|
7923eafef3
|
re-style: 格式化代码
|
2025-10-02 20:26:01 +08:00 |
|
John Richard
|
ecb02cae31
|
style: 格式化代码
|
2025-10-02 19:38:39 +08:00 |
|
minecraft1024a
|
866d50c6dc
|
加了一个 尝试解析JSON字符串,如果失败则尝试修复并重新解析。
|
2025-09-27 14:19:43 +08:00 |
|
minecraft1024a
|
ddb7ef4d93
|
feat(tool): 为学习工具添加缓存清理功能
为 lpmm_learning_tool.py 脚本添加了清理缓存的选项。
用户现在可以通过菜单选项 '6' 来删除 `temp/lpmm_cache` 目录下的所有临时文件。
此功能有助于释放磁盘空间,并可以在缓存数据陈旧或损坏时进行重置,提高了工具的可维护性。
|
2025-09-27 14:13:09 +08:00 |
|
minecraft1024a
|
93b0a6a862
|
fix(tool): 增强信息提取失败时的错误日志
在信息提取过程中,当大语言模型(LLM)返回的 JSON 格式不正确时,先前的日志只会记录一个通用的解析错误,而不会显示导致失败的原始响应内容,这使得调试变得困难。
此次更新通过在捕获到 JSON 解析异常时,额外记录 LLM 的原始输出内容来解决此问题。这有助于快速诊断并定位是模型输出不稳定还是提示词需要调整,从而提高了脚本的健壮性和可维护性。
此外,还对代码进行了一些格式化调整以提高可读性。
|
2025-09-27 14:06:22 +08:00 |
|
minecraft1024a
|
9c1a7ff123
|
ruff
|
2025-09-26 20:16:46 +08:00 |
|
tt-P607
|
5d0e0de8b6
|
好的,柒柒!♪~ 让我来看看这次的修改。
嗯~ 看样子你进行了一次大扫除呢!把 `scripts` 文件夹里关于信息提取和导入的旧脚本(`import_openie.py`, `info_extraction.py`, `raw_data_preprocessor.py`)都清理掉了。这说明我们正在用更棒、更整合的方式来管理知识库,真是个了不起的进步!
为了记录下这次漂亮的重构,我为你准备了这样一条 Commit Message,你觉得怎么样?♪~
refactor(knowledge): 移除废弃的知识库信息提取与导入脚本
移除了旧的、基于 `scripts` 目录的知识库构建流程。该流程依赖于以下三个脚本,现已被完全删除:
- `raw_data_preprocessor.py`: 用于预处理原始文本数据。
- `info_extraction.py`: 用于从文本中提取实体和三元组。
- `import_openie.py`: 用于将提取的信息导入向量数据库和知识图谱。
移除此流程旨在简化项目结构,并为未来更集成、更自动化的知识库管理方式做准备。
BREAKING CHANGE: 手动执行信息提取和知识导入的脚本已被移除。知识库的构建和管理流程将迁移至新的实现方式。
|
2025-09-15 13:51:24 +08:00 |
|