EntityIdentification

EntityIdentification

site icon
2025.03.21 0
Python数据比较主体识别开发效率
EntityIdentification 是一个支持 MCP(Model Context Protocol)协议的服务器,主要用于识别两组数据是否来自同一主体。它通过文本规范化、值比较、JSON遍历和语言模型集成等功能,综合评估数据的相似性。
View on GitHub

Overview

基本能力

产品定位

EntityIdentification 是一个用于数据比较和主体识别的工具,特别适用于需要判断两组数据是否来自同一实体的场景。

核心功能

  • 文本规范化:将文本转换为小写,去除标点符号,并规范化空格。
  • 值比较:直接比较值和语义比较值(对于列表忽略顺序)。
  • JSON遍历:遍历JSON对象的每个键并比较对应的值。
  • 语言模型集成:使用生成式语言模型评估语义相似性,并提供最终判断。

适用场景

  • 数据清洗和去重
  • 实体识别和匹配
  • 数据一致性检查

工具列表

  • normalize_text(text):规范化输入文本。
  • compare_values(val1, val2):比较两个值的精确和语义相似性。
  • compare_json(json1, json2):比较两个JSON对象的键和值。

常见问题解答

  • 如何安装依赖?使用 pip install genai 安装必要的依赖。
  • 如何比较JSON对象?使用 compare_json 函数并传入两个JSON对象。

使用教程

使用依赖

安装必要的依赖:

pip install genai

安装教程

无需额外安装步骤,只需安装依赖即可使用。

调试方式

以下是一个示例代码,展示如何使用工具比较两个JSON对象:

import json
import genai
import re

# Define your JSON objects
json1 = {
    "name": "John Doe",
    "address": "123 Main St, Anytown, USA",
    "hobbies": ["reading", "hiking", "coding"]
}

json2 = {
    "name": "john doe",
    "address": "123 Main Street, Anytown, USA",
    "hobbies": ["coding", "hiking", "reading"]
}

# Compare the JSON objects
comparison_results = compare_json(json1, json2)

# Generate final matching result
model1 = genai.GenerativeModel("gemini-2.0-flash-thinking-exp")
result_matching = model1.generate_content("综合这些信息,你认为可以判断两个数据来自同一主体吗?"+json.dumps(comparison_results, ensure_ascii=False, indent=4))
print(result_matching.text)

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。