EntityIdentification について
EntityIdentificationは、2組のJSONデータが同じエンティティを表すか判定するMCPサーバーです。テキストの正規化、値の直接・意味比較、LLMによる最終判定を組み合わせます。
主な機能
- 01大文字小文字、句読点、空白を正規化
- 02値を直接および意味的に比較
- 03対応するキーごとにJSONを比較
- 04LLMで最終判定
活用シーン
- 012件の顧客レコードが一致するか確認
- 02リスト順の異なるJSONデータを比較
- 03表現の違う重複レコードを特定
MCP 対応
エンティティ識別とJSON比較機能をMCPクライアントに提供し、意味的な類似度の評価にLLMを使用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
EntityIdentification
2 組のデータが同じ主体のものであるかを識別します
これは MCP(Model Context Protocol)サーバーです。
データ比較ツール
このツールは、2 組のデータを比較し、値の完全一致と意味的な一致の両方を評価する包括的な方法を提供します。テキストの正規化と言語モデルを活用して、データが同じ主体に由来するかどうかを判定します。
機能
- テキストの正規化:テキストを小文字に変換し、句読点を削除して、空白を正規化します。
- 値の比較:値を直接的および意味的に比較します(リストの場合は順序を無視します)。
- JSON の走査:JSON オブジェクト内の各キーを反復処理し、対応する値を比較します。
- 言語モデルとの統合:生成言語モデルを使用して意味的な類似性を評価し、データが同じ主体のものかどうかを最終判定します。
インストール
このツールを使用するには、必要な依存関係がインストールされていることを確認してください。pip を使用してインストールできます。
pip install genai
使用方法
関数
-
normalize_text(text):
- 入力テキストを小文字に変換し、句読点を削除して、空白を正規化します。
-
compare_values(val1, val2):
- 2 つの値を完全一致および意味的な観点から比較します。
- 値がリストの場合、意味的な比較では要素の順序を無視します。
-
compare_json(json1, json2):
- 2 つの 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 を作成するか、プルリクエストを送信してください。
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細については、LICENSE ファイルを参照してください。
お問い合わせ
ご質問やご提案がありましたら、以下までご連絡ください。
- メール:[email protected]
- GitHub:[email protected]。
WeChat
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。