ഞങ്ങൾ വിപണിയിലെത്തിക്കാൻ ഒരുങ്ങിക്കൊണ്ടിരുന്ന വോയ്സ് ഏജന്റ് വിളിക്കുന്നവരെ ഇടയ്ക്കിടെ സംസാരത്തിനിടയിൽ മുറിച്ചുമാറ്റുന്നുണ്ടായിരുന്നു. ഇത് truncation rate 18 % ആയി ഉയർത്തുകയും, ലോഞ്ച് ചെയ്യുന്നതിന് പത്ത് ദിവസം മുമ്പ് തന്നെ end-of-turn logic വീണ്ടും എഴുതാൻ ഞങ്ങളെ നിർബന്ധിക്കുകയും ചെയ്തു. silence-timeout നിയമത്തിലേക്ക് grammar checks-ഉം back-channel detection-ഉം കൂടി ചേർത്തതോടെ, സംസാരം മുറിച്ചുപോകുന്ന നിരക്ക് 3 % ആയി കുറയ്ക്കാനും സിസ്റ്റം പ്രതികരിക്കാത്തതുപോലെ തോന്നിക്കുന്ന നീണ്ട നിശബ്ദതകൾ ഒഴിവാക്കാനും ഞങ്ങൾക്ക് സാധിച്ചു.
ഒരു സിംഗിൾ സൈലൻസ് ടൈമൗട്ട് മാത്രം മതിയാകാത്തത് എന്തുകൊണ്ട്
ഞങ്ങളുടെ ആദ്യകാല ഡിസൈനിൽ, 700 ms-ന്റെ ഏത് ഇടവേളയും ഉപയോക്താവ് സംസാരിച്ചു കഴിഞ്ഞു എന്നതിന്റെ സൂചനയായി കണക്കാക്കിയിരുന്നു. നിയന്ത്രിതമായ ഒരു ഡെമോയിൽ—അതായത് ശാന്തമായ മുറിയിൽ പൂർണ്ണമായ വാക്യങ്ങൾ പറയുന്ന ഒരാൾ ഉണ്ടെങ്കിൽ—ആ നിയമം നന്നായി പ്രവർത്തിക്കും. എന്നാൽ യഥാർത്ഥ വിളികളിൽ, ആളുകൾ ചിന്തിക്കാൻ ഇടവേളകൾ എടുക്കുന്നു, നമ്പറുകൾ ഗ്രൂപ്പുകളായി പറയുന്നു, കൂടാതെ തങ്ങൾ കേൾക്കുന്നുണ്ടെന്ന് കാണിക്കാൻ “uh-huh” അല്ലെങ്കിൽ “mm-hmm” എന്നിങ്ങനെയുള്ള വാക്കുകൾ ഉപയോഗിക്കുന്നു. ഏജന്റ് ഈ ഓരോ ഇടവേളയെയും സംസാരം അവസാനിച്ചതായി തെറ്റായി വ്യാഖ്യാനിച്ചു.
312 പ്രൊഡക്ഷൻ കോളുകൾ വിശകലനം ചെയ്തപ്പോൾ രണ്ട് പ്രശ്നങ്ങൾ കണ്ടെത്തി. ഒന്നാമതായി, സംസാരിക്കുന്ന ആൾ അടുത്ത വാചകം തയ്യാറാക്കുന്നതിനിടയിൽ ഏജന്റ് ഇടിച്ചുകയറുന്നു, ഇത് 18 % സംസാരങ്ങളെ ബാധിച്ചു. രണ്ടാമതായി, ഇടവേളകൾ ഒഴിവാക്കാൻ ടൈമൗട്ട് 1500 ms ആയി ഉയർത്തിയപ്പോൾ, സിസ്റ്റം മന്ദഗതിയിലാവുകയും ശബ്ദകോലാഹലമുള്ള ലൈനുകളിൽ ഹാങ്ങ് ആകാൻ തുടങ്ങുകയും ചെയ്തു. പശ്ചാത്തല ശബ്ദം (background noise) സൈലൻസ് കൗണ്ടർ വീണ്ടും റീസെറ്റ് ചെയ്തുകൊണ്ടിരുന്നതിനാൽ, ഉപയോക്താവ് സംസാരിച്ചു കഴിഞ്ഞു എന്ന് ഏജന്റിന് ഒരിക്കലും തീരുമാനിക്കാൻ കഴിഞ്ഞില്ല.
ഒരു നമ്പറിന് പകരം മൂന്ന് സിഗ്നലുകൾ
ഞങ്ങൾ ഒരു നിശ്ചിത ടൈമൗട്ടിന് പകരം മൂന്ന് സൂചനകൾ നിരീക്ഷിക്കുന്ന ഒരു ചെറിയ state machine നിർമ്മിച്ചു:
- Silence duration – ഉപയോക്താവ് എത്ര സമയം നിശബ്ദനായിരിക്കുന്നു.
- Grammar – ട്രാൻസ്ക്രിപ്റ്റ് ഒരു പൂർണ്ണമായ വ്യാകരണ യൂണിറ്റിൽ അവസാനിക്കുന്നുണ്ടോ അതോ “the” അല്ലെങ്കിൽ “and” പോലുള്ള അപൂർണ്ണമായ വാക്കുകളിൽ അവസാനിക്കുന്നുണ്ടോ?
- Back-channel detection – അവസാനമായി കേട്ട ശബ്ദം ഒരു യഥാർത്ഥ മറുപടിയാണോ (ഉദാഹരണത്തിന്, ഒരു ഉത്തരം) അതോ “yeah” പോലുള്ള ഒരു ചെറിയ അംഗീകാരമാണോ?
ഈ സിഗ്നലുകൾ ഉപയോഗിച്ച് ഞങ്ങൾ രണ്ട് silence budgets നിശ്ചയിച്ചു:
- Completed transcript – വിശകലനം ചെയ്ത ടെക്സ്റ്റ് പൂർണ്ണമാണെന്ന് കാണുമ്പോൾ, ഞങ്ങൾ 550 ms എന്ന ചെറിയ ടൈമൗട്ട് ഉപയോഗിക്കുന്നു. ഇത് ഏജന്റിനെ വേഗത്തിൽ പ്രതികരിക്കാൻ സഹായിക്കുന്നു.
- Dangling transcript – അവസാന വാക്ക് ഉപയോക്താവ് വാചകത്തിന്റെ ഇടയിലാണെന്ന് സൂചിപ്പിക്കുമ്പോൾ, ഞങ്ങൾ ടൈമൗട്ട് 1300 ms ആയി വർദ്ധിപ്പിക്കുന്നു, ഇത് സംസാരിക്കുന്ന ആൾക്ക് തുടർന്ന് സംസാരിക്കാൻ സമയം നൽകുന്നു.
തെറ്റായ ഇടവേളകൾ ഒഴിവാക്കാൻ രണ്ട് അധിക സുരക്ഷാ സംവിധാനങ്ങൾ (guards) കൂടി ചേർത്തു:
- Minimum speech duration – ഒരു ചെറിയ “mm-hmm” ഒരു പൂർണ്ണമായ സംസാരമായി കണക്കാക്കില്ല, അതിനാൽ ഏജന്റ് തീരുമാനമെടുക്കുന്നതിന് മുമ്പ് കൂടുതൽ സമയം കാത്തിരിക്കുന്നു.
- Hard cap – പശ്ചാത്തല ശബ്ദം എന്തുതന്നെയായാലും, ഒരു നിശ്ചിത സമയപരിധിക്ക് ശേഷം ഏജന്റ് മറുപടി നൽകുന്നുണ്ടെന്ന് ഉറപ്പാക്കാൻ ഒരു പരമാവധി സൈലൻസ് ലിമിറ്റ് നിശ്ചയിച്ചിട്ടുണ്ട്. ഇത് സിസ്റ്റം ഹാങ്ങ് ആകുന്നത് ഒഴിവാക്കുന്നു.
ഫലങ്ങളും വോയ്സ് AI-ക്ക് ഇതിന്റെ പ്രസക്തിയും
മൂന്ന് സിഗ്നലുകൾ ഉപയോഗിക്കുന്ന സിസ്റ്റം നടപ്പിലാക്കിയ ശേഷം, truncation rate 18 %-ൽ നിന്ന് 3 % ആയി കുറഞ്ഞു. വിളിക്കുന്നവർക്ക് ഏജന്റ് തടസ്സപ്പെടുത്തുന്നത് ഇനി അനുഭവപ്പെടില്ല, കൂടാതെ നേരത്തെയുണ്ടായിരുന്ന “dead silence” പ്രശ്നവും പരിഹരിക്കപ്പെട്ടു. മനുഷ്യർ സംഭാഷണങ്ങൾ കൈകാര്യം ചെയ്യുന്നത് പോലെ തന്നെ, ഏജന്റ് വേഗത്തിലും മാന്യമായും പ്രതികരിക്കുന്നതായി തോന്നിപ്പിക്കുന്നു.
വോയ്സ് അസിസ്റ്റന്റുകൾ നിർമ്മിക്കുന്ന ഡെവലപ്പർമാർക്ക് ഇതിൽ നിന്നുള്ള പാഠം വ്യക്തമാണ്: ഒരു കോൺഫിഗറേഷൻ ഫയലിലെ ഒരു നിശ്ചിത സംഖ്യയ്ക്ക് (constant) സംസാരത്തിലെ സൂക്ഷ്മതകൾ മനസ്സിലാക്കാൻ കഴിയില്ല. വലിയ കമ്പ്യൂട്ടേഷണൽ ലോഡ് കൂട്ടാതെ തന്നെ, സൈലൻസ് ദൈർഘ്യം, വ്യാകരണ പൂർണ്ണത, back-channel സൂചനകൾ എന്നിവ വിലയിരുത്തുന്ന ഒരു ലഘുവായ state machine ഉപയോഗിച്ച് സംഭാഷണ കൃത്യത ഗണ്യമായി മെച്ചപ്പെടുത്താൻ കഴിയും.
സാധ്യമായ പോരായ്മകളും തുറന്ന ചോദ്യങ്ങളും
ഗ്രാമർ പാഴ്സിംഗും back-channel ക്ലാസിഫിക്കേഷനും ചേർക്കുന്നത് പ്രോസസ്സിംഗ് ഘട്ടങ്ങൾ വർദ്ധിപ്പിക്കുന്നു. ഈ അധിക ലേറ്റൻസി (latency) സംഭാഷണത്തിന്റെ സുഗമതയെ ബാധിക്കില്ലെന്ന് ടീമുകൾ ഉറപ്പാക്കണം. കൂടാതെ, ഈ രീതി കൃത്യമായ ഒരു ട്രാൻസ്ക്രിപ്റ്റിനെ ആശ്രയിച്ചാണ് പ്രവർത്തിക്കുന്നത്; ശബ്ദകോലാഹലമുള്ള സാഹചര്യങ്ങളിലോ അല്ലെങ്കിൽ പ്രാദേശിക ശൈലികളുള്ള സംസാരത്തിലോ വ്യാകരണ സൂചനകൾ തെറ്റായേക്കാം, ഇത് സിസ്റ്റത്തെ കൂടുതൽ നീണ്ട ടൈമൗട്ടുകളെ ആശ്രയിക്കാൻ നിർബന്ധിതമാക്കും.
ഭാവിയിൽ, ഓരോ വിളിക്കാരന്റെയും ശീലങ്ങളിൽ നിന്ന് പഠിക്കുന്ന adaptive timeout thresholds പരീക്ഷിക്കാനോ, അല്ലെങ്കിൽ back-channel ഡിറ്റക്ടർ ശക്തിപ്പെടുത്താൻ prosodic features (pitch, energy) ഉൾപ്പെടുത്താനോ സാധിക്കും. ഈ മാറ്റങ്ങൾ കസ്റ്റമർ സാറ്റിസ്ഫാക്ഷൻ, കോൾ പൂർത്തിയാക്കുന്ന സമയം, എറർ റേറ്റുകൾ തുടങ്ങിയ പ്രധാന അളവുകളെ എങ്ങനെ ബാധിക്കുന്നു എന്ന് നിരീക്ഷിക്കുന്നത് ഈ സാങ്കേതികവിദ്യ വലിയ കോൺടാക്റ്റ് സെന്ററുകളിൽ ഉപയോഗിക്കുന്നതിന് മുമ്പ് അത്യാവശ്യമാണ്.
Takeaway: സംസാരം അവസാനിച്ചുവെന്ന് തീരുമാനിക്കാൻ ഒരു സിംഗിൾ സൈലൻസ് ടൈമറിന് പകരം മൾട്ടി-സിഗ്നൽ രീതി ഉപയോഗിക്കുന്നത്, സംസാരം മുറിച്ചുപോകുന്ന പിശകുകൾ ഗണ്യമായി കുറയ്ക്കുകയും വോയ്സ് ഏജന്റുകളിൽ നിന്ന് ഉപയോക്താക്കൾ പ്രതീക്ഷിക്കുന്ന സ്വാഭാവിക ഒഴുക്ക് തിരികെ കൊണ്ടുവരികയും ചെയ്യുന്നു.
