Release notes¶
Changes in each published nlp-shap version. Newest first.
Unreleased¶
0.1.5 (2026-07-13)¶
Added¶
ExactEstimatorfor lazy coalition enumeration with estimand-plugin aggregation.iter_mask_ints()anditer_masks()for streaming masks without materializing2^ncoalitions.estimate_attributions()wires coalition payoffs to Shapley or Banzhaf aggregators.Vectorized exact Shapley aggregation for complete characteristic tables.
run_iter()andrun_streamfor bounded pending-task scheduling.exactestimator entry point undernlp_shap.estimators.
Changed¶
build_coalition_keyuses compact binary hashing instead of JSON serialization.Marginal estimand aggregation uses integer bitmask keys and cached factorial weights.
sample_masksyields an iterator instead of a materialized tuple.
Documentation¶
Theory and usage guides for exact estimation and streaming scheduler usage.
API reference for
nlp_shap.estimation.exact.Example notebook
examples/exact_estimation.ipynb.Performance review rules in contributor workflow.
0.1.4 (2026-07-13)¶
Added¶
RunArchivewith SQLite index, blob storage, and lazyhistory_lazy()iteration.CoalitionRecordrows with mask bytes, utility, timing, and cache-hit metadata.CoalitionDedupRegistryandbuild_coalition_key()SHA256 coalition keys.HotResultStoreLRU cache for recent generations.InferenceSchedulerwith boundedmax_inflightconcurrency andSchedulerMetrics.
Documentation¶
Theory and usage guides for the runtime archive, dedup, and scheduler.
API reference page for
nlp_shap.runtime.Example notebook
examples/runtime_core.ipynb.
0.1.3 (2026-07-12)¶
Added¶
Masking codec:
PackedMask,MaskCodecwith legacy-compatible packed hashing.MaskSpacefor projecting feature splits to full masks.View-based
MaskedSnapshotandMaskBuilderwith structural sharing.Absence policies:
DeletePolicy,PadPolicy,NeutralPolicy.TokenPartitionerand built-in plugin registration fortokens,delete,pad, andneutral.numpycore dependency for mask packing.
Documentation¶
Theory and usage guides for coalition masking and absence policies.
API reference page for
nlp_shap.masking.Example notebook
examples/masking_views.ipynb.
0.1.2 (2026-07-12)¶
Added¶
Domain types:
ConversationSnapshot,Turn,Message,PlayerSet,CoalitionMask,CooperativeGame, and conversation enums.Protocols for backends, estimators, value functions, partitions, absence policies, and embedding providers.
PluginRegistrywith packaging entry-point discovery.ExplainConfig(Pydantic v2) with YAML load/save helpers.Configuration guide and expanded API reference pages.
Documentation¶
Sphinx theory pages for cooperative games and estimands (Shapley vs Banzhaf).
Usage guide for estimand aggregators, results, and manifests.
Expanded API reference for public modules.
Example notebook
examples/estimands_toy_game.ipynb.Furo theme, getting-started page, embedded notebook rendering, and API module layout.
Tooling¶
make notebookstarget to execute example notebooks in place before commit.
0.1.1 (2026-07-12)¶
Added¶
ShapleyAggregatorandBanzhafAggregatorfor coalition-weighted attribution from masks and payoffs.Estimandenum and wire types for honest estimand labelling.ExplainResultwith requiredestimandfield.RunManifest,RunManifestPayload, andparse_manifest()for run-archive metadata.EstimandAggregatorprotocol.
0.1.0 (2026-07-12)¶
Added¶
Initial PyPI package layout and
nlp_shapimport surface.Logging bootstrap from
[tool.logging]inpyproject.tomlvialogging518.