ITADN
semantica-agi/semantica

版本发布 4

v0.3.0-beta预发布
? · 2026-03-07

# Semantica v0.3.0-beta — Release Notes **Date:** 2026-03-07 | **Tag:** `v0.3.0-beta` | **Status:** Internal Beta (Pre-release) > Consolidates all alpha and unreleased features for internal validation ahead of the public 0.3.0 launch. --- ## What's New ### Semantic Extraction & Reasoning - **Multi-Founder LLM Extraction Fix** (#354) — Unmatched relation subjects/objects now produce synthetic `UNKNOWN` entities instead of being silently dropped; all LLM-returned co-founders preserved - **Reasoner Pattern Matching Rewrite** (#354) — `_match_pattern` correctly handles multi-word values, pre-bound variables, repeated variable backreferences, and non-greedy separators ### Export - **RDF / TTL Alias Fix** (#355) — `format="ttl"`, `"nt"`, `"xml"`, `"rdf"`, `"json-ld"` all resolve without breaking existing callers - **ArangoDB AQL Export** (#342) — Full AQL INSERT generation for vertices and edges; configurable batching; 17 tests passing - **Apache Parquet Export** (#343) — Columnar storage with configurable compression (snappy, gzip, brotli, zstd, lz4); explicit Arrow schemas; 25 tests passing ### Deduplication v2 (Epic #333) - **Candidate Generation v2** (#338) — `blocking_v2` / `hybrid_v2` strategies with multi-key and phonetic blocking; **63.6% faster** worst-case - **Two-Stage Scoring Prefilter** (#339) — Fast prefilter gates before expensive semantic scoring; **18–25% faster** batch processing - **Semantic Deduplication v2** (#340) — Opt-in `semantic_v2` with canonicalization, O(1) hash matching, weighted scoring; **6.98x speedup**; fixed infinite recursion bug - **Migration Guide** (#344) — `MIGRATION_V2.md` with full examples; **5.86x speedup** confirmed; backward compatible ### Incremental / Delta Processing - **Delta Processing** (#349) — Native SPARQL delta computation between graph snapshots; `delta_mode` pipeline config; `prune_versions()` for snapshot retention; production-ready for near real-time pipelines --- ## Bug Fixes - **`NameError` — missing `Type` import** in `utils/helpers.py`; removed unused import from `config_manager.py` - **Context module** — fixed `retrieve_decision_precedents`, `hybrid_retrieval`, `dynamic_context_traversal`, `multi_hop_context_assembly`, `_retrieve_from_vector`, `_extract_entities_from_query`; added missing `expand_context` and `_get_decision_query` methods - **Knowledge Graph module** — fixed `calculate_pagerank`, `community_detector._to_networkx`, `detect_communities`, `_build_adjacency`; added `ProvenanceTracker` and 9 domain-specific tracking methods - **Pipeline module** — fixed retry loop in `execution_engine`; added `RecoveryAction` with LINEAR / EXPONENTIAL / FIXED backoff; fixed `add_step` return value; added `validate` alias - **Test files** — replaced emoji with ASCII for Windows cp1252 compatibility; fixed assertion ordering and loop bugs across 4 test files --- ## Test Results | Passing | Skipped (external services) | Failed | |---|---|---| | ~840 | 36 | 0 | --- ## Contributors @KaifAhmad1 · @ZohaibHassan16 · @tibisabau

v0.2.7
? · 2026-02-09
Semantica v0.2.6v0.2.6
? · 2026-02-03

# Semantica v0.2.6 **Release Date:** February 3, 2026 We're excited to announce Semantica v0.2.6, featuring major enhancements in provenance tracking, change management, and several important bug fixes! --- ## 🎉 Highlights ### Major Features - **W3C PROV-O Compliant Provenance Tracking** - Enterprise-grade lineage tracking across all 17 modules - **Enhanced Change Management** - Version control for knowledge graphs and ontologies - **CSV Ingestion Improvements** - Auto-detection and robust error handling - **Comprehensive Test Coverage** - 80-86% coverage for ingestion modules ### Bug Fixes - Temperature compatibility for LLM providers - JenaStore empty graph initialization --- ## ✨ New Features & Enhancements ### W3C PROV-O Compliant Provenance Tracking **PRs:** #254, #246 | **Contributor:** @KaifAhmad1 A comprehensive provenance tracking system with W3C PROV-O compliance across all 17 Semantica modules. **Core Module:** - `ProvenanceManager` for centralized tracking - W3C PROV-O schemas (Activity, Entity, Agent) - Storage backends: InMemory and SQLite - SHA-256 integrity verification **Module Integrations:** - Semantic Extract, LLMs (Groq, OpenAI, HuggingFace, LiteLLM) - Pipeline, Context, Ingest, Embeddings - Graph/Vector/Triplet stores - Reasoning, Conflicts, Deduplication - Export, Parse, Normalize, Ontology, Visualization **Features:** - Complete lineage tracking: Document → Chunk → Entity → Relationship → Graph - LLM tracking: tokens, costs, latency - Source tracking and bridge axioms for domain transformations **Compliance:** - W3C PROV-O, FDA 21 CFR Part 11, SOX, HIPAA, TNFD **Testing:** - 237 tests covering core functionality, all 17 module integrations, edge cases, backward compatibility **Design:** - Opt-in with `provenance=False` by default - Zero breaking changes - No new dependencies --- ### Enhanced Change Management Module **PRs:** #248, #243 | **Contributor:** @KaifAhmad1 Enterprise-grade version control for knowledge graphs and ontologies with persistent storage and audit trails. **Core Classes:** - `TemporalVersionManager` - Knowledge graph versioning - `OntologyVersionManager` - Ontology versioning - `ChangeLogEntry` - Change metadata tracking **Storage:** - SQLite (persistent) and in-memory backends - Thread-safe operations **Features:** - SHA-256 checksums for integrity - Detailed entity/relationship diffs - Structural ontology comparison - Email validation **Compliance:** - HIPAA, SOX, FDA 21 CFR Part 11 - Immutable audit trails **Testing:** - 104 tests (100% pass) - Unit, integration, compliance, performance, edge cases **Performance:** - 17.6ms for 10k entities - 510+ ops/sec concurrent - Handles 5k+ entity graphs **Migration:** - Backward compatible - Simplified class names - Zero external dependencies --- ### CSV Ingestion Enhancements **PR:** #244 | **Contributor:** @saloni0318 Robust CSV parsing with auto-detection and error handling. **Features:** - Auto-detect CSV encoding using `chardet` - Auto-detect delimiter using `csv.Sniffer` - Tolerant decoding and malformed-row handling (`on_bad_lines='warn'`) - Optional chunked reading for large files - Metadata tracks detected values **Testing:** - Expanded unit tests covering: - Multiple delimiters - Quoted/multiline fields - Header overrides - Chunked reading - NaN preservation --- ### Comprehensive Test Coverage #### TextNormalizer Tests **PR:** #242 | **Contributor:** @ZohaibHassan16 Added focused test coverage for TextNormalizer behavior across various inputs. #### Integration Test Improvements **PR:** #241 | **Contributor:** @KaifAhmad1 - Introduced integration test marker - Reduced noisy warnings in ingest tests #### Ingest Unit Tests **PRs:** #239, #232 | **Contributor:** @Mohammed2372 Comprehensive unit tests for ingestion modules (file, web, and feed ingestors). **Coverage:** - File scanning: local/cloud (S3/GCS/Azure) - Web ingestion: URL/sitemap/robots.txt - RSS/Atom feed parsing **Testing:** - 998 lines of test code - Mocked external dependencies for fast, isolated execution **Results:** - `file_ingestor`: 86% coverage - `web_ingestor`: 86% coverage - `feed_ingestor`: 80% coverage Covers happy paths, edge cases, and error handling. --- ## 🐛 Bug Fixes ### Temperature Compatibility Fix **PRs:** #256, #252 | **Contributors:** @F0rt1s, @IGES-Institut Fixed hardcoded `temperature=0.3` that broke compatibility with models requiring specific temperature values (e.g., gpt-5-mini). **Changes:** - Added `_add_if_set` helper method to `BaseProvider` - Only passes parameters when explicitly set - When `temperature=None`, parameter is omitted allowing APIs to use model defaults - Updated all 5 providers: OpenAI, Groq, Gemini, Ollama, DeepSeek **Impact:** - Reduced code by ~85 lines with cleaner parameter handling - Comprehensive test coverage added (10 temperature tests, all passing) - Backward compatible - no breaking changes --- ### JenaStore Empty Graph Bug **PRs:** #257, #258 | **Contributor:** @ZohaibHassan16 Fixed `ProcessingError: Graph not initialized` when operating on empty (but initialized) graphs. **Changes:** - Replaced implicit `if not self.graph:` checks with explicit `if self.graph is None:` validation - Updated 5 methods: `add_triplets`, `get_triplets`, `delete_triplet`, `execute_sparql`, `serialize` - Properly distinguishes `None` (uninitialized) from empty graphs (initialized with 0 triplets) **Impact:** - Unblocks benchmarking suite - Enables fresh deployments - Improves testing workflows --- ## 📦 Installation ```bash pip install semantica==0.2.6 ``` Or upgrade from a previous version: ```bash pip install --upgrade semantica ``` --- ## 🙏 Contributors Special thanks to all contributors who made this release possible: - @KaifAhmad1 - Provenance tracking, change management, test improvements - @saloni0318 - CSV ingestion enhancements - @ZohaibHassan16 - TextNormalizer tests, JenaStore bug fix - @Mohammed2372 - Comprehensive ingest unit tests - @F0rt1s - Temperature compatibility fix - @IGES-Institut - Temperature compatibility fix --- ## 📚 Documentation - **Documentation**: https://semantica.readthedocs.io - **GitHub**: https://github.com/Hawksight-AI/semantica - **PyPI**: https://pypi.org/project/semantica/ --- ## 🔗 Links - [Full Changelog](https://github.com/Hawksight-AI/semantica/blob/main/CHANGELOG.md) - [GitHub Release](https://github.com/Hawksight-AI/semantica/releases/tag/v0.2.6) - [PyPI Package](https://pypi.org/project/semantica/0.2.6/) --- ## 🚀 What's Next? Stay tuned for upcoming features in future releases. Check our [GitHub Issues](https://github.com/Hawksight-AI/semantica/issues) to see what we're working on! --- **Full Changelog**: https://github.com/Hawksight-AI/semantica/compare/v0.2.5...v0.2.6

Semantica v0.2.3v0.2.3
? · 2026-01-20

We are excited to announce **Semantica v0.2.3**! This release focuses on stability, performance, and developer experience improvements, including critical fixes for LLM relation extraction, high-performance vector store ingestion, and resolved circular dependencies. ## 🚀 Added ### **Vector Store High-Performance Ingestion** - **New `add_documents` API**: Added high-throughput ingestion with automatic embedding generation, batching, and parallel processing. - **`embed_batch` Helper**: Efficiently generate embeddings for lists of texts without immediate storage. - **Parallel Defaults**: Enabled default parallel ingestion in `VectorStore` (default: `max_workers=6`) for faster processing. - **Documentation**: Added dedicated guide `docs/vector_store_usage.md` for high-performance configuration. - **Tests**: Added `tests/vector_store/test_vector_store_parallel.py` covering parallel vs. sequential performance and edge cases. ### **Amazon Neptune Dev Environment** - **CloudFormation Template**: Added `cookbook/introduction/neptune-setup.yaml` to provision a development Neptune cluster with public endpoints and IAM auth. - **Documentation**: Updated `cookbook/introduction/21_Amazon_Neptune_Store.ipynb` with deployment guides, cost estimates, and IAM best practices. - **Linting**: Added `cfn-lint` to pre-commit hooks for CloudFormation validation. ### **Comprehensive Test Suite** - **Unit Tests**: Added `tests/test_relations_llm.py` covering typed and structured response paths for relation extraction. - **Integration Tests**: Added `tests/integration/test_relations_groq.py` for real Groq API validation. ## 🐛 Fixed ### **LLM Relation Extraction Parsing** - **Zero Relations Fix**: Resolved issue where relation extraction returned zero results despite successful API calls. - **Response Normalization**: Normalized typed responses from Instructor/OpenAI/Groq to a consistent dictionary format. - **JSON Fallback**: Added structured JSON fallback when typed generation yields empty results. - **Parameter Cleanup**: Removed unsupported kwargs (`max_tokens`, `max_entities_prompt`) from internal calls to prevent API errors. ### **Pipeline Circular Import** - **Resolved Import Cycles**: Fixed circular dependency between `pipeline_builder` and `pipeline_validator` (Issues #192, #193). - **Lazy Loading**: Implemented lazy loading for `PipelineValidator` to ensure stable imports. ### **JupyterLab Stability** - **Progress Output Control**: Added `SEMANTICA_DISABLE_JUPYTER_PROGRESS` environment variable. - **Memory Fix**: Fallback to console-style output when enabled to prevent JupyterLab out-of-memory errors from infinite scrolling tables (Issue #181). ## ⚡ Changed ### **Relation Extraction API** - **Simplified Interface**: Removed unused kwargs to prevent parameter leakage. - **Better Debugging**: Improved error handling and verbose logging for extraction workflows. - **Robust Parsing**: Enhanced post-response parsing stability across different LLM providers. ### **Vector Store Defaults** - **Standardized Concurrency**: Set default `max_workers=6` for `VectorStore` parallel ingestion. - **Simplified Usage**: Updated documentation to rely on smart defaults rather than manual configuration.