रीयल टाइम समानता एपीआई एक उच्च गति की फजी मैचिंग और डेडुप्लीकेशन एपीआई है जो वास्तविक जीवन के गंदे डेटा के लिए बनाई गई है यह आपको लगभग डुप्लीकेट रिकॉर्ड की पहचान करने और संस्थाओं को समायोजित करने में मदद करती है भले ही मान बिल्कुल मेल न खाते हों—टायपो, casing भिन्नताएँ, गायब विराम चिह्न, स्पेसिंग समस्याएँ, संक्षिप्तियाँ, और छोटे शब्द क्रम परिवर्तन
अपने स्वयं के फजी मैचिंग पाइपलाइन को बनाने और ट्यून करने के बजाय आप अपनी स्ट्रिंग्स (या रिकॉर्ड) को एपीआई में भेजते हैं और वापस भरोसेमंद समानता-स्कोर वाले मैच प्राप्त करते हैं सामान्य आउटपुट में मिलान किए गए क्रम (जैसे “एपल” ↔ “एपल इंक”) समानता स्कोर और संरचित परिणाम शामिल होते हैं जिन्हें डेटा क्लीनिंग वर्कफ्लो, सीआरएम, ईटीएल नौकरियों और एनालिटिक्स पाइपलाइनों में प्लग करना आसान होता है
सामान्य उपयोग केस:
सूचनाओं को डेडुप्लिकेट करें: एक डेटासेट के भीतर डुप्लीकेट्स को खोजें (सभी से सभी को मिलाना) और संभावित डुप्लीकेट जोड़े वापस करें
एक मास्टर सूची के खिलाफ समायोजन: एक इनकमिंग सूची को एक मानक सेट के साथ मिलाएं (सूची-से-मास्टर)
सीआरएम और ग्राहक डेटा स्वच्छता: उन लीड/खातों/कंपनियों को साफ करें जहां डुप्लीकेट रिपोर्टिंग और पहुँच को बाधित करते हैं
संस्थान समाधान और रिकॉर्ड लिंकिंग: स्रोतों के बीच एक ही वास्तविक दुनिया की संस्थाओं को संदर्भित करें
टीमें इसका उपयोग क्यों करती हैं:
बिन परिश्रम के गंदे टेक्स्ट पर काम करता है (प्रत्येक सीमांत मामले के लिए कोई मैनुअल नियम नहीं)
रैंकिंग और थ्रेशोल्ड के लिए समानता स्कोर (आप तय करते हैं कि कितना सख्त होना है)
स्केल और ऑटोमेशन के लिए बनाया गया (पाइपलाइनों में चलाने के लिए डिजाइन किया गया, केवल एक-काम स्क्रिप्ट नहीं)
Dedupe is an all-to-all fuzzy matching endpoint for finding duplicates within a single list of strings. Instead of comparing only two inputs per API call, you send a dataset and it returns similar pairs and/or deduplicated groups across the entire set.
Why you’d use it
Massive speedup: typically ~300× to 1,000× faster than “regular” approaches people try first (pairwise comparisons, looping fuzzy scorers, etc.) once you go beyond tiny lists.
Optional cleanup built-in: you can enable common text cleanup (lowercasing, punctuation removal, token sorting). This saves hours (or days) of development + ongoing maintenance.
Company suffixes handled automatically: common endings like “Inc”, “LLC”, “Ltd”, etc. are stripped so you match the real name.
Benchmarks: similarity-api/blog/speed-benchmarks (1M records in ~7 minutes; faster than common Python fuzzy matching libraries).
Hard limits on Zyla
Max 1,000 strings per request (enforced).
Need bigger / unlimited?
Parameters (POST request)
data (required)
A string containing a JSON array of strings.
Example value for data:
["Acme Inc","ACME LLC","Globex GmbH"]
Higher = stricter matching (fewer pairs). Typical: 0.80–0.90 for company dedupe.
Removes punctuation differences (e.g., “A.C.M.E.” vs “ACME”).
Makes matching case-insensitive.
use_token_sort (optional, true/false, default false)
Helps when word order changes (e.g., “Bank of America” vs “America Bank of”).
output_format (optional, default string_pairs)
This exndpoint can return data in multiple formats. Please select one of the following:
string_pairs:
[string_A, string_B, similarity]index_pairs:
string_pairs, but returns positions in your input list instead of the strings.[index_A, index_B, similarity]deduped_strings:
deduped_indices:
deduped_strings, but returns the indices of the kept items.membership_map:
[0,0,0,3,3] means rows 0/1/2 are one group (rep=0) and rows 3/4 are another (rep=3).row_annotations:
Returns one object per input row with an explanation of what it belongs to (rep row + similarity).
Use when: you want a human-readable, per-row result for debugging or UI display.
top_k (optional, integer or "all", default "all")
all = find all matches above threshold.
Or an integer (e.g., 50) to limit matches per row (faster, fewer results).
Sample request in python
import requests, json
API_KEY = "YOUR_ZYLA_KEY"
URL = "API_URL/dedupe"
data_list = ["Microsoft","Micsrosoft","Apple Inc","Apple","Google LLC","9oogle"]
params = {
"data": json.dumps(data_list),
"similarity_threshold": "0.75",
"remove_punctuation": "true",
"to_lowercase": "true",
"use_token_sort": "false",
"output_format": "string_pairs",
"top_k": "all"
}
headers = {"Authorization": f"Bearer {API_KEY}"}
r = requests.post(URL, headers=headers, params=params, timeout=60)
print(r.status_code)
print(r.json())
Dedupe - एंडपॉइंट फीचर्स
| ऑब्जेक्ट | विवरण |
|---|---|
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/11915/real+time+similarity+api/22652/dedupe?data=["Apple", "appl!e"]' --header 'Authorization: Bearer YOUR_API_KEY'
| हेडर | विवरण |
|---|---|
Authorization
|
[आवश्यक] होना चाहिए Bearer access_key. जब आप सब्सक्राइब हों तो ऊपर "Your API Access Key" देखें। |
कोई लंबी अवधि की प्रतिबद्धता नहीं। कभी भी अपग्रेड, डाउनग्रेड या कैंसल करें।
डीडुप्लिकेट एंडपॉइंट एक JSON ऑब्जेक्ट लौटाता है जिसमें मेल खाती स्ट्रिंग के जोड़े समानता स्कोर और वैकल्पिक डीडुप्लिकेट किए गए परिणाम होते हैं आउटपुट को निर्दिष्ट किए गए कॉन्फ़िगरेशन के आधार पर स्ट्रिंग जोड़ों, इंडेक्स जोड़ियों या डीडुप्लिकेट स्ट्रिंग के रूप में स्वरूपित किया जा सकता है
प्रतिक्रिया डेटा में मुख्य क्षेत्र "स्थिति" (सफलता या त्रुटि को इंगित करता है) और "प्रतिक्रिया_डेटा" शामिल हैं, जो उपयोगकर्ता के अनुरोध के अनुसार प्रारूपित परिणामों को शामिल करता है, जैसे मेल खाती जोड़ी या डिडुप्लिकेट की गई स्ट्रिंग्स
उपयोगकर्ता "config" ऑब्जेक्ट में "similarity_threshold" जैसे पैरामीटर को समायोजित करके अनुरोधों को अनुकूलित कर सकते हैं जो मेल की कठोरता के लिए है "remove_punctuation" पूर्व-प्रसंस्करण के लिए है और "output_format" इच्छित परिणाम संरचना चुनने के लिए है
प्रतिक्रिया डेटा परिणामों के एक सरणी के रूप में व्यवस्थित है जहां प्रत्येक प्रविष्टि एक मैच या डेडुप्लिकेटेड स्ट्रिंग के अनुरूप होती है आउटपुट प्रारूप के आधार पर प्रविष्टियों में मूल स्ट्रिंग, सूचियाँ और समानता स्कोर शामिल हो सकते हैं जो कार्यप्रवाह में आसान एकीकरण को सुविधाजनक बनाते हैं
विशिष्ट उपयोग के मामलों में ग्राहक सूचियों को डुप्लिकेट रहित करना मास्टर सूची के खिलाफ रिकॉर्ड को मेल करना सीआरएम डेटा को साफ करना और विभिन्न डेटा स्रोतों में संस्थाओं का संकल्प करना शामिल है ताकि डेटा की सत्यता और सटीकता सुनिश्चित की जा सके
डेटा सटीकता को उन्नत फजी मिलान एल्गोरिदम के माध्यम से बनाए रखा जाता है जो सामान्य डेटा मुद्दों जैसे कि टाइपो और केसिंग भिन्नताओं को ध्यान में रखते हैं एपीआई को गंदे डेटा को प्रभावी ढंग से संभालने के लिए डिज़ाइन किया गया है ताकि भरोसेमंद मिलान परिणाम सुनिश्चित किए जा सकें
स्वीकृत पैरामीटर मानों में "similarity_threshold" (0 से 1 तक), "remove_punctuation" (बूलियन), "to_lowercase" (बूलियन), "use_token_sort" (बूलियन), और "top_k" (पूर्णांक या "सभी") शामिल हैं ये पैरामीटर उपयोगकर्ताओं को मिलान प्रक्रिया को अपनी विशिष्ट आवश्यकताओं के अनुसार अनुकूलित करने की अनुमति देते हैं
यदि डीडुप एपीआई आंशिक या खाली परिणाम लौटाता है तो उपयोगकर्ताओं को गुणवत्ता समस्याओं के लिए इनपुट डेटा की जांच करनी चाहिए जैसे अत्यधिक डुप्लिकेट या बहुत कम समानता थ्रेशोल्ड समायोजित करना "समानता_थ्रेशोल्ड" या इनपुट सूची की समीक्षा करना परिणामों में सुधार करने में मदद कर सकता है
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
226ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
2,518ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
571ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
296ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
8ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
13ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
779ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
485ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,440ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
174ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
2,507ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
234ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,302ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
103ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
297ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
2,602ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
2,680ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,007ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
1,394ms
सर्विस लेवल:
100%
रिस्पॉन्स टाइम:
764ms