pip (recommended)
Requires Python 3.11 or later. Core dependencies: Polars, RapidFuzz, Typer, Pydantic, Textual.
pip install goldenmatch now pulls the compiled goldenmatch-native kernel automatically on macOS (x86_64 + arm64), Linux (x86_64 + aarch64), and Windows (amd64). No [native] extra is needed; the [native] extra still works as a back-compat alias. The kernel accelerates the hot paths (block scoring, record fingerprints, cluster build, dedup-pairs) and lets the v3 planner pick the bucket+native backend as the suggested path up to 750k rows on common boxes.
The pure-Python + Polars pipeline is the byte-for-byte reference and the automatic fallback on any platform without a prebuilt wheel. Alpine/musl users may not get a prebuilt wheel yet (a musllinux wheel is a separate follow-up) and degrade gracefully to pure-Python.
Opt out with environment variables:
Install multiple extras at once:
Docker
PostgreSQL Extension
Pre-built packages for the SQL extension (separate from the Python package):
Download .deb and .rpm from the goldenmatch releases page (look for the goldenmatch-pg-v* tags).
Verifying release artifacts
Releases since goldenmatch-pg v0.6.0 ship a .sigstore bundle alongside
each tarball. Releases published after 2026-06-05 also ship an
.intoto.jsonl build-provenance attestation next to each asset.
Verify a tarball with cosign (keyless, GitHub Actions OIDC):
A successful run prints Verified OK. The .sigstore bundle contains the
certificate, transparency-log entry, and signature in a single file — no
separate key management required.
Install cosign with brew install cosign (macOS) or
go install github.com/sigstore/cosign/v2/cmd/cosign@latest (any platform).
DuckDB UDFs
dbt Integration
dbt-goldensuite ships inside the monorepo (not on PyPI). Add it to your packages.yml:
then run dbt deps. The package provides macros for running entity resolution, quality gates, transforms, and identity-graph reads inside dbt pipelines (DuckDB, Postgres, and Snowflake).
Zero-config Fellegi-Sunter dedupe needs no hand-written config:
probabilistic=true builds the FS model from the data (DuckDB + Postgres). Omit it for standard zero-config dedupe, or pass an explicit match_config for full control.
Verify installation
Environment variables
Setup wizard
Run the interactive wizard to configure GPU mode, API keys, and database connections:
The wizard guides you through:
- GPU mode selection (CPU, CUDA, MPS, Vertex AI, Colab)
- LLM API key configuration
- PostgreSQL connection setup
- Saved preferences at
~/.goldenmatch/settings.yaml