एंटिटी डिटेक्शन

यह गाइड बताती है कि स्पीच टू टेक्स्ट API के साथ एंटिटी डिटेक्शन कैसे इस्तेमाल करें।

कैसे करें गाइड · मानता है कि आपने स्पीच टू टेक्स्ट क्विकस्टार्ट पूरा कर लिया है।

ओवरव्यू

एंटिटी डिटेक्शन एक फ़ीचर है, जो ट्रांसक्रिप्ट में खास शब्दों और वाक्यांशों का पता लगाता है और उनके सटीक टाइमस्टैम्प देता है। यह क्रेडिट कार्ड नंबर, नाम, मेडिकल कंडीशन या SSN पहचानने के लिए उपयोगी है, जिन्हें बाद में रिडैक्ट किया जा सकता है।

इसे सक्षम करने पर, मॉडल ट्रांसक्रिप्ट में खास एंटिटी टाइप का पता लगाता है और उनके सटीक टाइमस्टैम्प देता है।

उदाहरण के लिए, यह ऑडियो:

जब हम एंटिटी टाइप के रूप में "pii" (व्यक्तिगत रूप से पहचान योग्य जानकारी) बताते हैं, तो यह यह ट्रांसक्रिप्ट आउटपुट करता है:

{
"language_code": "eng",
"language_probability": 0.9869821071624756,
"text": "My name is Jill. My date of birth is the 12th of July 1987, and my credit card number is 4242-4242-4242-4242.",
"words": [
{ "text": "My", "start": 0.099, "end": 0.259, "type": "word", "logprob": 0.0 },
{ "text": " ", "start": 0.259, "end": 0.299, "type": "spacing", "logprob": 0.0 },
{ "text": "name", "start": 0.299, "end": 0.42, "type": "word", "logprob": 0.0 },
...
],
"transcription_id": "Y2ZX8AxHUzTPCIualYiE",
"entities": [
{
"text": "Jill",
"entity_type": "name",
"start_char": 11,
"end_char": 15
},
{
"text": "12th of July 1987",
"entity_type": "dob",
"start_char": 41,
"end_char": 58
},
{
"text": "4242-4242-4242-4242",
"entity_type": "credit_card",
"start_char": 89,
"end_char": 108
}
]
}

नतीजे में ट्रांसक्रिप्ट में पहचानी गई PII एंटिटी उनके सटीक टाइमस्टैम्प के साथ दिखती हैं।

एंटिटी डिटेक्शन इंटीग्रेट करना

एंटिटी डिटेक्शन को स्पीच टू टेक्स्ट API में convert मेथड को entity_detection पैरामीटर देकर इंटीग्रेट किया जाता है।

import os
from dotenv import load_dotenv
from io import BytesIO
import requests
from elevenlabs.client import ElevenLabs
load_dotenv()
elevenlabs = ElevenLabs(
api_key=os.getenv("ELEVENLABS_API_KEY"),
)
audio_url = (
"https://storage.googleapis.com/eleven-public-cdn/documentation_assets/audio/stt-entity-detection-pii.mp3"
)
response = requests.get(audio_url)
audio_data = BytesIO(response.content)
transcription = elevenlabs.speech_to_text.convert(
file=audio_data,
model_id="scribe_v2", # Model to use
# Entity types to detect, accepts a list of specific entity types or categories.
# To detect all entity types, use the "all" category.
entity_detection=["pii"],
)
print("Entities detected:", transcription.entities)

एंटिटी प्रकार

डिटेक्शन के लिए नीचे दिए गए एंटिटी प्रकार समर्थित हैं। आप pii, phi, pci, other, या offensive_language कैटेगरी कीवर्ड का इस्तेमाल करके पूरे समूहों का पता लगा सकते हैं, या उनके लेबल से अलग-अलग एंटिटी प्रकार तय कर सकते हैं। सभी एंटिटी प्रकारों का पता लगाने के लिए all कैटेगरी का इस्तेमाल करें।

लेबलविवरणनियामक अनुपालन
account_numberग्राहक खाते या सदस्यता का पहचान नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
ageकिसी व्यक्ति की उम्र से जुड़े नंबरGDPR, HIPAA, Quebec Privacy Act, APPI
bank_accountबैंक खाता नंबर और उनके अंतरराष्ट्रीय समकक्ष, जैसे IBANCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
cardinalमूल संख्या रूप में संख्यात्मक अभिव्यक्तियां
credit_cardक्रेडिट कार्ड नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
credit_card_expirationक्रेडिट कार्ड की समाप्ति तिथिCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
cvv3 या 4 अंकों वाले कार्ड सत्यापन कोड और समकक्षCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
dateखास कैलेंडर तिथियां, जिनमें सप्ताह के दिन, तारीखें, महीने या साल शामिल हो सकते हैंHIPAA, Quebec Privacy Act
date_intervalव्यापक समयावधियां, जिनमें तारीख की रेंज, महीने, मौसम, साल और दशक शामिल हैंHIPAA
dobजन्म तिथियांCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
driver_licenseड्राइवर परमिट नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
email_addressईमेल पतेCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
eventइवेंट या छुट्टियों के नाम
filenameकंप्यूटर फ़ाइलों के नाम, जिनमें एक्सटेंशन या फ़ाइलपाथ शामिल हो
genderजेंडर पहचान बताने वाले शब्द, जिनमें स्लैंग शब्द भी शामिल हैंCPRA, GDPR, GDPR Sensitive, APPI Sensitive
gender_sexualitygender और sexual_orientation दोनों को कवर करने वाला पुराना उपनामCPRA, GDPR, GDPR Sensitive, APPI Sensitive
sexual_orientationयौन अभिविन्यास बताने वाले शब्द, जिनमें स्लैंग शब्द भी शामिल हैंCPRA, GDPR, GDPR Sensitive, APPI Sensitive
healthcare_numberहेल्थकेयर नंबर और स्वास्थ्य योजना लाभार्थी नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
ip_addressइंटरनेट IP पता, जिसमें IPv4 और IPv6 फ़ॉर्मैट शामिल हैंCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
locationकिसी भी नामित स्थान संदर्भ के लिए मेटाक्लासGDPR, HIPAA, APPI
location_addressपूर्ण या आंशिक भौतिक डाक पतेCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
location_cityनगरपालिकाओं के नाम, जिनमें गांव, कस्बे और शहर शामिल हैंCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
location_coordinateअक्षांश, देशांतर और/या ऊंचाई के निर्देशांकों से बताए गए भौगोलिक स्थानCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
location_countryदेशों के नामGDPR, APPI
location_stateराज्य, प्रांत, क्षेत्र या प्रीफेक्चर के नामGDPR, APPI
location_zipZIP कोड (ZIP+4 सहित), पोस्टकोड या डाक कोडCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
moneyमुद्रा के नाम और/या रकम
nameव्यक्तियों के नाम, जिनमें ‘Mrs.’ या ‘Mr.’ जैसी व्यक्तिगत उपाधियां शामिल नहीं हैंCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
name_givenकिसी व्यक्ति को दिए गए नाम, आमतौर पर जन्म के समय; पश्चिमी संस्कृतियों में अक्सर पहला/मध्य नामCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
name_familyकिसी व्यक्ति के परिवार या समुदाय को बताने वाले नाम; पश्चिमी संस्कृतियों में अक्सर उपनामCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
name_medical_professional”Doctor” जैसी मेडिकल प्रोफेशनल की उपाधि वाले नामCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
numerical_piiसंख्यात्मक PII जो अन्य कैटेगरी में नहीं आतीCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
occupationजॉब टाइटल या पेशेQuebec Privacy Act, APPI
ordinalक्रमवाचक रूप में संख्यात्मक अभिव्यक्तियां
originराष्ट्रीयता, जातीयता या उत्पत्ति बताने वाले शब्दCPRA, GDPR, GDPR Sensitive, Quebec Privacy Act, APPI Sensitive
passport_numberकिसी भी देश द्वारा जारी किए गए पासपोर्ट नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
passwordअकाउंट पासवर्ड, PIN, एक्सेस की या सत्यापन उत्तरCPRA, APPI
percentप्रतिशत के रूप में संख्यात्मक अभिव्यक्तियां
phone_numberटेलीफोन या फैक्स नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
physical_attributeविशिष्ट शारीरिक विशेषताएं, जिनमें नस्ल बताने वाले शब्द शामिल हैंCPRA, GDPR, GDPR Sensitive, APPI Sensitive
ssnसोशल सिक्योरिटी नंबर या अंतरराष्ट्रीय समकक्ष सरकारी पहचान नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
timeघड़ी के समय बताने वाली अभिव्यक्तियां
urlइंटरनेट पतेCPRA, GDPR, HIPAA, Quebec Privacy Act
usernameयूज़रनेम, लॉगिन नाम या हैंडलCPRA, GDPR, APPI
vehicle_idवाहन पहचान नंबर (VIN), वाहन सीरियल नंबर और लाइसेंस प्लेट नंबरCPRA, GDPR, HIPAA, APPI
लेबलविवरणनियामक अनुपालन
conditionचिकित्सा स्थितियों, बीमारियों, सिंड्रोम, कमियों और विकारों के नामCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI Sensitive
drugदवाइयां, विटामिन और सप्लीमेंटCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI Sensitive
injuryशारीरिक चोटें, जिनमें म्यूटेशन, गर्भपात और डिसलोकेशन शामिल हैंCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI Sensitive
blood_typeरक्त के प्रकारCPRA, GDPR, HIPAA, Quebec Privacy Act
medical_processचिकित्सा प्रक्रियाएं, जिनमें उपचार, प्रोसीजर और टेस्ट शामिल हैंCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI Sensitive
clinical_measurementक्लिनिकल माप, वाइटल्स और लैब नतीजेCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI Sensitive
statisticsclinical_measurement के लिए पुराना उपनामHIPAA, Quebec Privacy Act
लेबलविवरणनियामक अनुपालन
credit_cardक्रेडिट कार्ड नंबरCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
credit_card_expirationक्रेडिट कार्ड की समाप्ति तिथिCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
cvv3 या 4 अंकों वाले कार्ड सत्यापन कोड और समकक्षCPRA, GDPR, HIPAA, Quebec Privacy Act, APPI
लेबलविवरणनियामक अनुपालन
languageप्राकृतिक भाषाओं के नामGDPR, GDPR Sensitive, APPI Sensitive
marital_statusवैवाहिक स्थिति बताने वाले शब्दAPPI Sensitive
organizationसंगठनों या किसी संगठन के भीतर विभागों के नामQuebec Privacy Act, APPI
political_affiliationराजनीतिक पार्टी, आंदोलन या विचारधारा का संदर्भ देने वाले शब्दCPRA, GDPR, GDPR Sensitive, Quebec Privacy Act, APPI Sensitive
religionधार्मिक संबद्धता बताने वाले शब्दCPRA, GDPR, GDPR Sensitive, Quebec Privacy Act, APPI Sensitive
routing_numberबैंक या वित्तीय संस्थान से जुड़ा रूटिंग नंबर
zodiac_signराशि चिह्नों के नाम
product_or_serviceव्यावसायिक प्रोडक्ट या सेवाओं के नाम
food_or_beverageखाद्य पदार्थों, पेय और व्यंजनों के नाम
document_referenceदस्तावेज़ों, केस नंबरों या फ़ाइल आइडेंटिफ़ायर के संदर्भ
generic_idसामान्य आइडेंटिफ़ायर जो अन्य ID कैटेगरी में नहीं आते
measurementइकाइयों के साथ भौतिक माप और मात्राएं
time_durationसमय की अवधि या विस्तार बताने वाली अभिव्यक्तियां
लेबलविवरणनियामक अनुपालन
very_offensive_languageबेहद आपत्तिजनक भाषा, जिसमें अपमानजनक शब्द शामिल हैं
less_offensive_languageहल्की आपत्तिजनक या अनुचित भाषा

एंटिटी रिडैक्शन

एंटिटीज़ का पता लगाने के अलावा, आप entity_redaction पैरामीटर से उन्हें ट्रांसक्रिप्ट टेक्स्ट से हटा भी सकते हैं। यह entity_detection जैसा ही फ़ॉर्मैट स्वीकार करता है: all, कैटेगरी कीवर्ड या खास एंटिटी प्रकारों की सूची। रिडैक्ट किए गए प्रकार, पता लगाए गए प्रकारों के सबसेट होने चाहिए।

रिडैक्शन चालू होने पर, मिले हुए एंटिटी टेक्स्ट को ट्रांसक्रिप्ट टेक्स्ट और वर्ड-लेवल आउटपुट, दोनों में एक मार्कर से बदल दिया जाता है और रिस्पॉन्स में entities फ़ील्ड नहीं लौटाई जाती।

transcription = elevenlabs.speech_to_text.convert(
file=audio_file,
model_id="scribe_v2",
entity_detection=["pii"],
entity_redaction=["pii"],
entity_redaction_mode="enumerated_entity_type",
)
print(transcription.text)
# "Hi {NAME_0}, your card ending in {CREDIT_CARD_0} was declined."

entity_redaction_mode पैरामीटर मार्कर का फ़ॉर्मैट नियंत्रित करता है:

मोडमार्करउदाहरण
redactedहर एंटिटी के लिए {REDACTED}Hi {REDACTED}
entity_typeब्रेसेज़ में एंटिटी प्रकारHi {NAME}
enumerated_entity_typeएंटिटी प्रकार और घटना काउंटरHi {NAME_0} (डिफ़ॉल्ट)

combined मल्टीचैनल आउटपुट स्टाइल के साथ एंटिटी डिटेक्शन और रिडैक्शन समर्थित नहीं हैं।

अगले चरण