𝗕𝗲𝘆𝗼𝗻𝗱 𝟭𝟱𝟬𝗺𝘀: 𝗛𝗼𝘄 𝗜 𝗥𝗲𝗱𝘂𝗰𝗲𝗱 𝗟𝗮𝘁𝗲𝗻𝗰𝘆 𝗳𝗼𝗿 𝗮 𝗥𝗲𝗮𝗹-𝗧𝗶𝗺𝗲 𝗔𝗜 𝗩𝗼𝗶𝗰𝗲 𝗔𝘀𝘀𝗶𝘀𝘁𝗮𝗻𝘁

લાઈવ કોડિંગ અને ટેકનિકલ ઇન્ટરવ્યુ ડેવલપર્સ માટે તણાવ પેદા કરે છે. જ્યારે કોઈ નિષ્ણાત શેર કરેલા IDE માં કોડની દરેક લાઇન પર નજર રાખે છે, ત્યારે મોટાભાગના લોકો સંઘર્ષ કરે છે.

Generative AI આ બદલી રહ્યું છે. હવે તમે ઇન્ટરેક્ટિવ પ્રેક્ટિસ દ્વારા વાસ્તવિક ઇન્ટરવ્યુના દૃશ્યોનું અનુકરણ (simulate) કરી શકો છો.

મેં રિક્રુટિંગ માટે SaaS ટૂલ્સ બનાવવામાં મહિનાઓ વિતાવ્યા છે. મને એક મુખ્ય સમસ્યાનો સામનો કરવો પડ્યો: નેટવર્ક લેટન્સી (network latency). એક સ્મૂધ AI ઇન્ટરવ્યુ આસિસ્ટન્ટ બનાવવા માટે, પ્રતિસાદનો સમય (response time) ૧૫૦ms થી ઓછો હોવો જોઈએ.

મનુષ્યો ૨૦૦ms થી વધુના કોઈપણ વિલંબને અજીબ માને છે. મર્યાદામાં રહેવા માટે, આખી પાઇપલાઇન ઝડપી હોવી જોઈએ: • Audio capture • Streaming • LLM inference • Text-to-Speech • Audio playback

આ કાર્ય માટે સ્ટાન્ડર્ડ HTTP રિક્વેસ્ટ્સ ખૂબ જ ધીમી છે. તમારે ક્લાયન્ટ સાઇડ પર ડેટા પ્રોસેસ કરવાની જરૂર છે.

Voice Activity Detection (VAD) એ પહેલો અવરોધ છે. વપરાશકર્તા ક્યારે બોલવાનું શરૂ કરે છે અને ક્યારે બંધ કરે છે તે તમારે ચોક્કસપણે જાણવું જોઈએ. આ તમારા સર્વર પર સાયલન્ટ ઓડિયો મોકલતા અટકાવે છે.

આ સમસ્યાના ઉકેલ માટે મેં JavaScript AudioWorklet નો ઉપયોગ કર્યો. આ કાચા (raw) PCM ઓડિયો પ્રોસેસિંગને અલગ થ્રેડ (thread) પર લઈ જાય છે. તે મુખ્ય UI થ્રેડને મુક્ત રાખે છે. આનો અર્થ એ છે કે AI વપરાશકર્તાના બ્રાઉઝર અથવા IDE ને ધીમું કર્યા વિના બેકગ્રાઉન્ડમાં સક્રિય રહે છે.

રિયલ-ટાઇમ કોડ એનાલિસિસ એ બીજો પડકાર છે. સિસ્ટમે ઓડિયો અને એડિટરમાં રહેલા કોડ બંનેને સમજવા જોઈએ. WebSockets નો ઉપયોગ કરીને, હું ટેક્સ્ટ એડિટરના ડેટાને વોઇસ ઇનપુટ સાથે સિંક કરું છું. આનાથી વપરાશકર્તા ટાઇપ કરે છે ત્યારે AI બગ્સ (bugs) શોધી શકે છે અથવા ઓપ્ટિમાઇઝેશન સૂચવી શકે છે.

જો તમે ટેકનિકલ ઇન્ટરવ્યુ માટે તૈયારી કરવા માંગતા હોવ, તો આ પગલાં અજમાવો:

  • મોટેથી વિચારવાની પ્રેક્ટિસ કરો. કોડ કરતી વખતે તમારા લોજિકને સમજાવો.
  • AI સિમ્યુલેશનનો ઉપયોગ કરો. તમારા પ્રતિસાદ સમય અને કોડની પ્રવાહિતા (fluidity) પર રિપોર્ટ્સ મેળવો.

લો-લેટન્સી વોઇસ એપ્સ બનાવવા માટે ઓડિયો કમ્પ્રેશન અને સર્વર પાવર વચ્ચે સંતુલન જરૂરી છે.

તમે તમારા પ્રોજેક્ટ્સમાં ઓડિયો સ્ટ્રીમિંગ કેવી રીતે હેન્ડલ કરો છો? શું તમે બ્રાઉઝરમાં VAD મોડલ્સનો ઉપયોગ કરો છો?

તમારા વિચારો કોમેન્ટ્સમાં શેર કરો.

Source: https://dev.to/websterliu/oltre-i-150ms-come-ho-ridotto-la-latenza-per-creare-un-assistente-vocale-ai-in-tempo-reale-1jj5