denselinkage.core.models.CandidatePair

class denselinkage.core.models.CandidatePair(record_a: Record, record_b: Record, similarity_score: float | None = None)[source]

Bases: object

A pair to be matched.

similarity_score is float | None. A dense Blocker always sets it; pairs supplied to DenseLinker.match_pairs from external / rule-based blocking have no similarity and use None. CandidatePair is frozen so this shape is fixed before freeze — never tightened later (extend-never-modify).