भाषा पहचान

अपने एजेंट को अपने-आप भाषा बदलने दें

परिचय

language detection सिस्टम टूल आपके ElevenLabs एजेंट को एजेंट द्वारा समर्थित किसी भी आउटपुट भाषा पर स्विच करने देता है। यह सिस्टम टूल अपने-आप सक्षम नहीं होता। आपके खास उपयोग के मामले के अनुसार इसका विवरण बदला जा सकता है।

जहाँ संभव हो, हम किसी एजेंट के लिए सभी भाषाएँ और भाषा पहचान सिस्टम टूल सक्षम करने की सलाह देते हैं।

हमारा भाषा पहचान टूल, मिले हुए ऑडियो की पहचानी गई भाषा और सामग्री के आधार पर, दो स्थितियों में भाषा स्विच करता है:

  • detection अगर यूज़र मौजूदा आउटपुट भाषा से अलग भाषा बोलता है, तो स्विच ट्रिगर होगा
  • content अगर यूज़र मौजूदा भाषा में नई भाषा पर स्विच करने के लिए कहता है, तो स्विच ट्रिगर होगा

उद्देश्य: बातचीत के दौरान यूज़र की पहचानी गई भाषा पर अपने-आप स्विच करना।

ट्रिगर की शर्तें: LLM को यह टूल तब कॉल करना चाहिए जब:

  • यूज़र मौजूदा बातचीत की भाषा से अलग भाषा में बोलता है
  • यूज़र साफ़ तौर पर भाषा बदलने का अनुरोध करता है
  • बातचीत के लिए कई भाषाओं का सपोर्ट चाहिए

पैरामीटर्स:

  • reason (string, आवश्यक): भाषा बदलने का कारण
  • language (string, आवश्यक): जिस भाषा कोड पर स्विच करना है (सपोर्टेड भाषाओं की सूची में होना चाहिए)

फ़ंक्शन कॉल फ़ॉर्मैट:

{
"type": "function",
"function": {
"name": "language_detection",
"arguments": "{\"reason\": \"User requested Spanish\", \"language\": \"es\"}"
}
}

इम्प्लीमेंटेशन: एजेंट सेटिंग्स में सपोर्टेड भाषाएं कॉन्फ़िगर करें और भाषा पहचान सिस्टम टूल जोड़ें। एजेंट पहचानी गई भाषाओं से मेल खाने के लिए अपने-आप वॉइस और जवाब बदल देगा।

भाषा पहचान सक्षम करना

1

समर्थित भाषाएँ कॉन्फ़िगर करें

एजेंट जिन भाषाओं पर स्विच कर सकता है, उन्हें Agent सेटिंग्स टैब में तय करना होगा।

एजेंट भाषाएँ

2

भाषा पहचान टूल जोड़ें

Agent टैब में अपने एजेंट के टूल्स में पहले से कॉन्फ़िगर किया गया सिस्टम टूल चुनकर भाषा पहचान सक्षम करें। add tool चुनने पर यह अपने-आप एक विकल्प के रूप में उपलब्ध होता है।

सिस्टम टूल

3

टूल का विवरण कॉन्फ़िगर करें

ऐसा विवरण जोड़ें जो बताए कि टूल को कब कॉल करना है

विवरण

बातचीत की शुरुआत तक स्विचिंग सीमित करना

लंबी बातचीत में, बैकग्राउंड में हो रही बातचीत या असामान्य लहजा कभी-कभी ऐसा स्विच ट्रिगर कर सकता है जो कॉलर का इरादा नहीं था। only_at_conversation_start सक्षम करने से स्विचिंग पहले दो यूज़र टर्न तक सीमित हो जाती है।

अगर उन दो टर्न के दौरान भाषा स्विच नहीं होती, तो बाकी बातचीत के लिए भाषा पहचान अक्षम हो जाती है: बाद की हर कोशिश विफल होती है और एजेंट मौजूदा भाषा में ही बोलता रहता है। अगर उस समय-सीमा में भाषा स्विच हो जाती है, तो बाकी बातचीत के लिए भी स्विचिंग उपलब्ध रहती है, इसलिए गलत पहचान को फिर भी सुधारा जा सकता है।

यह विकल्प डिफ़ॉल्ट रूप से अक्षम होता है।

Tools टैब में Detect language टूल चुनें और Only at start of conversation सक्षम करें।

स्विचिंग ब्लॉक होने पर, टूल LLM को मौजूदा भाषा में बोलते रहने का निर्देश देने वाली एक त्रुटि लौटाता है। कारण कॉलर को नहीं बताया जाता।

API इम्प्लीमेंटेशन

API के ज़रिए एजेंट बनाते समय, आप अपनी एजेंट कॉन्फ़िगरेशन में language detection टूल जोड़ सकते हैं। इसे सिस्टम टूल के रूप में परिभाषित किया जाना चाहिए:

from elevenlabs import AgentConfig, ConversationalConfig, ElevenLabs
elevenlabs = ElevenLabs(api_key="YOUR_API_KEY")
# Create language presets
language_presets = {
"nl": {"overrides": {"agent": {"first_message": "Hoi, hoe gaat het met je?"}}},
"fi": {"overrides": {"agent": {"first_message": "Hei, kuinka voit?"}}},
"tr": {"overrides": {"agent": {"first_message": "Merhaba, nasılsın?"}}},
"ru": {"overrides": {"agent": {"first_message": "Привет, как ты?"}}},
"pt": {"overrides": {"agent": {"first_message": "Oi, como você está?"}}},
}
response = elevenlabs.conversational_ai.agents.create(
conversation_config=ConversationalConfig(
agent=AgentConfig(
first_message="Hi how are you?",
prompt={
"built_in_tools": {
"language_detection": {
"type": "system",
"name": "language_detection",
# Optional: customize when the tool should be triggered
"description": "",
"params": {"system_tool_type": "language_detection"},
}
},
},
),
language_presets=language_presets,
),
)
डिफ़ॉल्ट भाषा पहचान प्रॉम्प्ट इस्तेमाल करने के लिए विवरण खाली छोड़ दें।