समानता एपीआई एक उच्च गति की धुंधली मिलान और डुप्लिकेट हटाने वाली एपीआई है जो अव्यवस्थित और वास्तविक जीवन के डेटा के लिए डिज़ाइन की गई है यह आपको लगभग डुप्लिकेट रिकॉर्ड को पहचानने और एंटिटीज को मेल कराने में मदद करती है भले ही मान बिल्कुल न मिलें- टाइपो, पूंजीकरण के अंतर, गायब विराम चिह्न, स्पेसिंग के मुद्दे, संक्षेपाक्षर और शब्दों के क्रम में छोटे परिवर्तन
अपनी खुद की धुंधली मिलान पाइपलाइन बनाने और समायोजित करने के बजाय आप अपने स्ट्रिंग (या रिकॉर्ड) को एपीआई में भेजते हैं और आपको भरोसेमंद समानता स्कोर के साथ मेल मिलते हैं आम आउटपुट में मेल खाने वाले जोड़े (उदाहरण के लिए “Apple” ⇔ “apple inc.”), समानता स्कोर और संरचित परिणाम शामिल होते हैं जिन्हें डेटा सफाई वर्कफ़्लो, सीआरएम, ईटीएल कार्य और विश्लेषण पाइपलाइनों में एकीकृत करना आसान होता है
सामान्य उपयोग के मामले:
सूचियों को डुप्लिकेट हटाना: डेटा सेट के भीतर डुप्लिकेट ढूंढना (सभी से सभी का मिलान) और संभावित डुप्लिकेट जोड़े लौटाना
मास्टर सूची के खिलाफ मेल खाना: एक आने वाली सूची को एक कैनोनिकल सेट (सूची से मास्टर) से मेल करना
सीआरएम और ग्राहक डेटा की स्वच्छता: लीड्स/खातों/कंपनियों को साफ करना जहां डुप्लिकेट रिपोर्टिंग और संपर्क में हस्तक्षेप करते हैं
एंटिटी का समाधान और रिकॉर्ड का लिंक: स्रोतों के माध्यम से वास्तविक दुनिया की एक ही एंटिटी के लिए संदर्भों को जोड़ना
टीम इसे क्यों उपयोग करती है:
शुरू से ही अव्यवस्थित टेक्स्ट के साथ काम करता है (हर चरम मामले के लिए कोई मैनुअल नियम नहीं)
श्रेणीबद्धता और थ्रेशोल्ड के लिए समानता स्कोर (आप चुनते हैं कि कितना सख्त होना है)
स्केलिंग और ऑटोमेशन के लिए बनाया गया (पाइपलाइनों में काम करने के लिए डिज़ाइन किया गया है न कि केवल एक बार के स्क्रिप्ट में)
डिडुप एक पूरी-से-पूरी फज़ी मिलान अंतर्दृष्टि है जो एकल स्ट्रिंग की सूची के भीतर डुप्लिकेट खोजने के लिए है। केवल दो इनपुट्स की तुलना करने के बजाय, आप एक डेटा सेट भेजते हैं और यह समान जोड़े और/या समग्र सेट में डुप्लिकेट किए गए समूह लौटाता है
वास्तविक दुनिया की मात्रा के लिए बनाया गया: प्रत्येक संभावित तुलना को बलपूर्वक करने के बजाय, यह अनुक्रमण और प्राथमिक खोज का उपयोग करता है ताकि O(n^2) विस्फोट से बचा जा सके जबकि उच्च गुणवत्ता वाले मेल को अभी भी बाहर लाता है। इसका उपयोग CRM सफाई, कैटलॉग सामान्यीकरण, और संपर्क/कंपनी डुप्लिकेशन के लिए करें
बेंचमार्क: समानता-api/ब्लॉग/गति-बेंचमार्क (1 मिलियन रिकॉर्ड ~7 मिनट में; सामान्य पायथन फज़ी मिलान पुस्तकालयों की तुलना में तेजी से)
अनुरोध शरीर (JSON)
डेटा (आवश्यक)
डुप्लीकेट के लिए स्ट्रिंग्स की श्रेणी
प्रति अनुरोध अधिकतम 1000 स्ट्रिंग्स
कॉन्फ़िग (वैकल्पिक)
ट्यूनिंग पैरामीटरों वाली वैकल्पिक वस्तु
config.similarity_threshold (संख्यात्मक, डिफ़ॉल्ट 0.75)
समानता कटऑफ 0 से 1
config.remove_punctuation (बूलियन, डिफ़ॉल्ट सच)
मेल करने से पहले विराम चिह्न हटाएं
config.to_lowercase (बूलियन, डिफ़ॉल्ट सच)
मेल करने से पहले स्ट्रिंग्स को लोअरकेस करें
config.use_token_sort (बूलियन, डिफ़ॉल्ट झूठ)
मेल करने से पहले प्रत्येक स्ट्रिंग के अंदर टोकन को क्रमबद्ध करें (जब शब्द क्रम भिन्न होता है तो मदद करता है)
config.output_format (स्ट्रिंग, डिफ़ॉल्ट स्ट्रिंग_जोड़े)
आउटपुट प्रारूप। समर्थित मान:
index_pairs
मेल्स की सूची [i, j, score] के रूप में जहां i और j इनपुट डेटा श्रेणी में अनुक्रमांक हैं
string_pairs
मेल्स की सूची [string_i, string_j, score] के रूप में जो मूल इनपुट स्ट्रिंग्स का उपयोग करती है
deduped_strings
डुप्लिकेट हटाने के साथ स्ट्रिंग्स की सूची (डुप्लिकेट समूह में एक प्रतिनिधि बनाए रखता है)
deduped_indices
मूल डेटा में अनुक्रमांक की सूची जो डुप्लिकेट सेट का प्रतिनिधित्व करती है (प्रत्येक समूह के लिए एक प्रतिनिधि)
membership_map
डेटा के समान लंबाई की पूर्णांकों की श्रेणी जहां प्रत्येक स्थिति i उस पंक्ति के डुप्लिकेट समूह के लिए प्रतिनिधि अनुक्रमांक रखती है
row_annotations
प्रतिनिधि जानकारी के साथ प्रति-पंक्ति वस्तुओं की श्रेणी: अनुक्रमांक, मूल_स्ट्रिंग, rep_index, rep_string, similarity_to_rep
config.top_k (स्ट्रिंग या पूर्णांक, डिफ़ॉल्ट सभी)
पूर्ण डिडुप के लिए सभी का उपयोग करें, या एक सकारात्मक पूर्णांक केवल निकटतम मेल को प्रत्येक इनपुट पर लौटाने के लिए
उदाहरण अनुरोध
{
"data": ["Microsoft", "Micsrosoft", "Apple Inc", "Apple", "Google LLC"],
"config": {
"similarity_threshold": 0.75,
"remove_punctuation": true,
"to_lowercase": true,
"use_token_sort": false,
"output_format": "string_pairs",
"top_k": "all"
}
}
प्रतिक्रिया
एक JSON वस्तु लौटाता है जिसमें:
स्थिति: सफलता या त्रुटि
response_data: चयनित output_format में परिणाम
डेडुप् - एंडपॉइंट फीचर्स
| ऑब्जेक्ट | विवरण |
|---|---|
data |
[आवश्यक] JSON array of strings to deduplicate (max 1000). Example: ["a","b","c"] |
similarity_threshold |
वैकल्पिक Similarity cutoff from 0 to 1. Higher values are stricter (fewer matches). Default is 0.75. |
remove_punctuation |
वैकल्पिक If true, punctuation is removed before matching. Default is true. |
to_lowercase |
वैकल्पिक If true, strings are lowercased before matching. Default is true. |
use_token_sort |
वैकल्पिक If true, tokens in each string are sorted before matching. Useful when word order varies. Default is false. |
output_format |
वैकल्पिक Default: string_pairs Allowed values (and what each means): index_pairs List of matches as [i, j, score] where i and j are indices in the input list. string_pairs List of matches as [string_i, string_j, score] using original strings. deduped_strings List of strings with duplicates removed (one representative per group). deduped_indices List of indices representing the deduplicated set (one representative per group). membership_map Array of length N where entry i is the representative index for the group of data[i]. row_annotations Array of objects (one per input row) with fields: index, original_string, rep_index, rep_string, similarity_to_rep. |
top_k |
वैकल्पिक Limits how many neighbors are returned per input string. Use all for full dedupe, or a positive integer for top matches per row. |
{"status":"success","response_data":[["Apple","appl!e",1.0]]}
curl --location --request POST 'https://zylalabs.com/api/11895/similarity+api/22607/dedupe?data=["Apple", "appl!e"]' --header 'Authorization: Bearer YOUR_API_KEY'
| हेडर | विवरण |
|---|---|
Authorization
|
[आवश्यक] होना चाहिए Bearer access_key. जब आप सब्सक्राइब हों तो ऊपर "Your API Access Key" देखें। |
कोई लंबी अवधि की प्रतिबद्धता नहीं। कभी भी अपग्रेड, डाउनग्रेड या कैंसल करें। फ्री ट्रायल में 50 रिक्वेस्ट तक शामिल हैं।
डिडुप्लिकेट एंडपॉइंट मेल खाने वाले स्ट्रिंग्स के युग्म, समानता स्कोर और वैकल्पिक डिडुप्लिकेटेड परिणामों को समाहित करने वाला एक JSON ऑब्जेक्ट लौटाता है आउटपुट को स्ट्रिंग युग्म, इंडेक्स युग्म या डिडुप्लिकेटेड स्ट्रिंग्स के रूप में स्वरूपित किया जा सकता है निर्दिष्ट कॉन्फ़िगरेशन के आधार पर
प्रत्युत्तर डेटा में मुख्य क्षेत्र "स्थिति" (सफलता या त्रुटि को इंगित करता है) और "उत्तर_डेटा" शामिल हैं, जिसमें उपयोगकर्ता की अनुरोध के अनुसार प्रारूपित परिणाम होते हैं, जैसे मिलान जोड़े या डेडुप्लिकेटेड स्ट्रिंग्स
उपयोगकर्ता "config" ऑब्जेक्ट में पैरामीटर समायोजित करके अनुरोधों को अनुकूलित कर सकते हैं जैसे "similarity_threshold" मेल की कठोरता के लिए "remove_punctuation" पूर्व प्रसंस्करण के लिए और "output_format" वांछित परिणाम संरचना चुनने के लिए
प्रतिक्रिया डेटा परिणामों के एक सरणी के रूप में व्यवस्थित है जहां प्रत्येक प्रविष्टि एक मैच या डिडुप्लिकेटेड स्ट्रिंग से मेल खाती है आउटपुट प्रारूप के आधार पर प्रविष्टियों में मूल स्ट्रिंग्स इंडेक्स और समानता स्कोर शामिल हो सकते हैं जिससे कार्यप्रवाह में आसान एकीकरण की सुविधा मिलती है
विशिष्ट उपयोग के मामलों में ग्राहक सूचियों को डिडुप्लिकेट करना मुख्य सूची के खिलाफ रिकॉर्ड का सामंजस्य स्थापित करना सीआरएम डेटा को स्वच्छ करना और विभिन्न डेटा स्रोतों के बीच एंटिटी समाधान करना शामिल है ताकि डेटा अखंडता और सटीकता सुनिश्चित हो सके
डाटा सटीकता को उन्नत फजी मिलान एल्गोरिदम के माध्यम से बनाए रखा जाता है जो टाइपो और केस के अंतर जैसे सामान्य डाटा मुद्दों को ध्यान में रखते हैं एपीआई को गंदे डाटा को प्रभावी ढंग से संभालने के लिए डिज़ाइन किया गया है जिससे विश्वसनीय मिलान के परिणाम सुनिश्चित होते हैं
स्वीकृत पैरामीटर मानों में "similarity_threshold" (0 से 1), "remove_punctuation" (बूलियन), "to_lowercase" (बूलियन), "use_token_sort" (बूलियन), और "top_k" (पूर्णांक या "all") शामिल हैं ये पैरामीटर उपयोगकर्ताओं को मिलान प्रक्रिया को उनकी विशिष्ट आवश्यकताओं के अनुसार अनुकूलित करने की अनुमति देते हैं
यदि डिडुप एन्डपॉइंट आंशिक या खाली परिणाम लौटाता है तो उपयोगकर्ताओं को गुणवत्ता समस्याओं के लिए इनपुट डेटा की जांच करनी चाहिए जैसे कि अत्यधिक डुप्लिकेट या बहुत कम समानता थ्रेशोल्ड समायोजित करना समानता_थ्रेशोल्ड या इनपुट सूची की समीक्षा करना परिणामों में सुधार करने में मदद कर सकता है
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,808ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,116ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
533ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,194ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
87ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
6,344ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,333ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
575ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
295ms
सर्विस लेवल:
90%
रिस्पॉन्स टाइम:
721ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
4,303ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
747ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
2,990ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
3,033ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
155ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
17ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,039ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
0ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
0ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
6,950ms