关于 Entity Identificationn
Entity Identificationn 是一个比较两组 JSON 数据是否来自同一主体的 MCP 服务,面向需要进行数据匹配的场景。它结合文本规范化、值比较与语言模型语义判断。
主要功能
- 01规范化文本格式
- 02直接及语义比较值
- 03逐键遍历 JSON 对象
- 04使用语言模型判断主体一致性
适用场景
- 01核对两份主体记录
- 02比较字段顺序不同的列表
MCP 相关
它向 MCP 客户端提供比较数据并判断是否来自同一主体的能力。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
EntityIdentification
识别两组数据是否来自同一主体
这是一个 MCP(Model Context Protocol)服务。
数据比较工具
此工具提供全面的方式来比较两组数据,评估其值是否完全相等或语义相等。它利用文本规范化和语言模型来判断数据是否来自同一主体。
功能
- 文本规范化:将文本转换为小写、移除标点符号并规范化空白字符。
- 值比较:直接比较值并进行语义比较(比较列表时忽略顺序)。
- JSON 遍历:遍历 JSON 对象中的每个键,并比较对应的值。
- 语言模型集成:使用生成式语言模型评估语义相似度,并最终判断数据是否来自同一主体。
安装
要使用此工具,请确保已安装必要的依赖项。你可以使用 pip 安装:
pip install genai
用法
函数
-
normalize_text(text):
- 将输入文本转换为小写、移除标点符号并规范化空白字符。
-
compare_values(val1, val2):
- 对两个值进行精确比较和语义比较。
- 如果值是列表,进行语义比较时会忽略元素顺序。
-
compare_json(json1, json2):
- 逐个键比较两个 JSON 对象。
- 使用
compare_values评估每个键对应的值。 - 集成语言模型来评估语义相似度,并给出最终判断。
示例
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)
贡献
欢迎贡献!请提交 issue 或 pull request。
许可证
本项目采用 MIT 许可证。详情请参阅 LICENSE 文件。
联系方式
如有任何问题或建议,请联系我:
- 邮箱:[email protected]
- GitHub:[email protected]。
微信
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。