| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| py_data_juicer-1.5.2-py3-none-any.whl | 2026-05-29 | 2.2 MB | |
| README.md | 2026-05-29 | 4.6 kB | |
| Release v1.5.2_ Semantic OPs_ Agent Interaction Quality_ Cross-Document Dedup_ Robustness _ Performance source code.tar.gz | 2026-05-29 | 51.8 MB | |
| Release v1.5.2_ Semantic OPs_ Agent Interaction Quality_ Cross-Document Dedup_ Robustness _ Performance source code.zip | 2026-05-29 | 52.7 MB | |
| Totals: 4 Items | 106.7 MB | 1 | |
Major Updates
📊 Stats: 15 PRs merged, from 11 contributors
📈 Code diff: 217 files changed, with 18,972 insertions and 1,685 deletions
🧠Semantic OPs MVP shipped: Introduced a new semantic operations framework with extract and condition filter capabilities, laying the groundwork for join/aggregation/top-k in future releases. [#948]
🤖 Agent interaction quality evaluation: New OPs and recipe for assessing interaction quality, with bad-case HTML report generation, and robust JSONL / HuggingFace meta loading support. [#957]
📄 Cross-document line-level deduplication: A new DocumentLineDeduplicator enables deduplication at the line level across multiple documents — useful for removing boilerplate or repeated content shared between files. [#961]
âš¡ Lighter default installation: Reduced the size of default dependencies to significantly speed up first-time installation. [#959]
New OPs
DocumentLineDeduplicator: Performs cross-document line-level deduplication — ideal for removing shared boilerplate text, repeated headers/footers, or duplicated content across large corpora. [#961]semantic_extract_mapper&semantic_condition_filter(MVP): Extract structured fields from unstructured text and filter based on semantic conditions, powered by the new semantic ops framework. [#948]- Interaction quality OPs (via dj-agents): Evaluate the quality of agent interactions with dedicated scoring operators and a recipe that generates HTML bad-case reports for human review. [#957]
Enhancements
- O(n²) → O(n) in
FrequencySpecifiedFieldSelector: Replaced repeatedsum()accumulation withitertools.chain, eliminating quadratic behavior on large batches. [#975] - Exclude
work_dirfrom fingerprint hashing: Cache fingerprints no longer change whenwork_dirdiffers, preventing unnecessary recomputation while preserving correct pickling behavior. [#967] - Reduce default dependency size: Trimmed the default install footprint so new users can get started faster without pulling in heavyweight optional packages. [#959]
- Replace
bs4stub withbeautifulsoup4: Switched to the canonical package name to prevent installation conflicts and deprecation warnings. [#977]
Fixed Bugs
- Invalid
max_new_tokensinjected into API chat completions: The parameter was being incorrectly passed to chat completion API calls that don't support it, causing request failures. Now properly excluded. [#983] initialize_raycrash without config: Ray initialization failed when no config was provided. Added proper fallback handling. [#981]exit(1)replaced withraisein dataset processing: Usingexit()in a library context kills the entire process. Errors now raise proper exceptions for library-safe error handling. [#974]- PyArrow 20.0.0+ batch JSON reading compatibility: Fixed an issue where
open_jsonbatch reading broke under PyArrow 20+. [#942] text_keysnot propagated to ops in service mode: The DJ service was not passingtext_keysthrough to operators viaget_init_configs, causing ops to use wrong keys. [#960]- Model utils sampling params & API client initialization: Fixed incorrect sampling parameter handling and optimized API client setup in
model_utils.py. [#962] - Aesthetics-predictor normalization check too strict: The substring match for model normalization detection now supports local model paths, not just HuggingFace hub identifiers. [#946]
- Temp dir removal failure in
RayExecutor: Added fallback handling when temporary directory cleanup fails (e.g., due to permission issues or concurrent access). [#943]
Acknowledgements
- @dubin555 delivered key performance optimizations and library-safety improvements. [#974] [#975]
- @amanyara contributed the new
DocumentLineDeduplicator. [#961] - @ideal added robustness to RayExecutor temp dir cleanup. [#943]
- @HunterLine fixed PyArrow 20+ batch JSON reading compatibility. [#942]
- @justinwolfington corrected the beautifulsoup4 package dependency. [#977]
- @macroguo-ghy fixed Ray initialization without config. [#981]
New Contributors
- @justinwolfington made their first contribution in [#977]
- @macroguo-ghy made their first contribution in [#981]
- @amanyara made their first contribution in [#961]
- @ideal made their first contribution in [#943]
Full Changelog: https://github.com/datajuicer/data-juicer/compare/v1.5.1...v1.5.2