用途:跨数据集匹配与去重记录,适用于联系人去重、客户记录合并、实体解析等。
主要能力:先用分块(精确字段、Soundex 语音编码、n-gram 重叠、嵌入相似度、排序邻域)缩小候选对,避免 O(n²) 的 LM 调用;再用 DSPy 签名对候选对做语义比较,输出 is_match、confidence 和 explanation;按置信度阈值路由为自动合并、人工复核或拒绝;用 Union-Find 传递闭包把 A=B、B=C 聚成同一簇;最后按 most_complete、newest、union 等策略合并。
使用方式:安装命令为 npx skills add lebsral/DSPy-Programming-not-prompting-LMs-skills --skill <name>。核心步骤包括定义 CompareRecords 签名、配置 dspy.LM、实现 RecordMatcher 模块、设置阈值、用带标签的成对样本通过 dspy.evaluate.Evaluate 和 BootstrapFewShot 评估优化,并保存为 record_matcher.json。
适用场景:需要语义理解才能判断同一实体的匹配,如 IBM 与 International Business Machines Corp.。
限制:单字段精确匹配、已有唯一标识、少于 50 条记录或简单模糊字符串匹配可覆盖的情况不建议使用 AI 匹配;不要跳过分块;不要用 == 预比较字段;输出必须包含 confidence 以便阈值路由;不要用 dspy.Assert/dspy.Suggest 做校验,应使用 dspy.Refine。具体效果、收费与平台支持暂未提供。