Neon Functions હવે અમર્યાદિત સમયગાળાના સ્ટ્રીમિંગ કનેક્શન્સને સપોર્ટ કરે છે, જે AI એજન્ટ્સને મોટાભાગના સર્વરલેસ વર્કલોડ્સને બંધ કરી દેતી ટાઈમઆઉટ મર્યાદાઓ વગર સેકન્ડો, મિનિટો કે તેથી વધુ સમય માટે લાઈવ ચેનલ ખુલ્લી રાખવાની મંજૂરી આપે છે. આ ફેરફાર ચેટ-શૈલીના આસિસ્ટન્ટ્સ અથવા ટૂલ-ઉપયોગી બોટ્સ બનાવતા કોઈપણ વ્યક્તિ માટે મહત્વપૂર્ણ છે, કારણ કે તૂટેલી સ્ટ્રીમ વાતચીતને અટકાવે છે અને યુઝર એક્સપિરિયન્સ બગાડે છે.
શા માટે સર્વરલેસ અને AI એજન્ટ્સ વચ્ચે વિરોધાભાસ રહ્યો છે
મોટાભાગના સર્વરલેસ પ્લેટફોર્મ ઝડપી, 'ફાયર-એન્ડ-ફોરગેટ' (એકવાર મોકલી દીધા પછી ભૂલી જવાની) કાર્યો માટે બનાવવામાં આવ્યા છે. સંસાધનોને અનુમાનિત રાખવા માટે તેઓ કડક એક્ઝિક્યુશન મર્યાદાઓ લાગુ કરે છે—જેમાં ઘણીવાર ફ્રી ટીયર્સ પર 10 સેકન્ડ અને પેઇડ પ્લાન્સ પર 60 સેકન્ડ હોય છે. જોકે, એક AI એજન્ટ વિચારવામાં, બાહ્ય ટૂલ્સને કોલ કરવામાં અને ટોકન્સ જનરેટ થતા રહેવામાં સમય વિતાવે છે. તે "વિચારવાનો" તબક્કો ઘણીવાર દસસેકન્ડો સુધી લંબાઈ શકે છે, અને જ્યાં સુધી મોડેલ આઉટપુટ આપે ત્યાં સુધી ટોકન સ્ટ્રીમ ચાલુ રહી શકે છે. જ્યારે પ્લેટફોર્મનો ટાઈમર સમાપ્ત થાય છે, ત્યારે તે કનેક્શન બંધ કરી દે છે અને ક્લાયન્ટને તૂટેલી સ્ટ્રીમ જોવા મળે છે.
Neon નો જવાબ: ડિફોલ્ટ તરીકે લાંબા સમય સુધી ચાલતું સ્ટ્રીમિંગ
Neon Functions આ પરિસ્થિતિ બદલી નાખે છે. કોઈપણ વિશેષ કોન્ફિગરેશન વગર, ફંક્શન કોલ WebSockets અથવા Server-Sent Events (SSE) દ્વારા ડેટા પહોંચાડવા માટે અનિશ્ચિત સમય સુધી ખુલ્લું રહી શકે છે. પ્લેટફોર્મ લાંબા સ્ટ્રીમને સામાન્ય રિક્વેસ્ટ તરીકે ગણે છે, તેથી ડેવલપર્સ સ્ટ્રીમ જનરેટ કરવાનું લોજિક લખે છે અને બાકીનું કામ Neon ને સંભાળવા દે છે.
તાજેતરના એક ટેસ્ટમાં, બે એન્ડપોઈન્ટ્સ આ વર્તણૂક દર્શાવે છે:
- Heartbeat endpoint – ફંક્શને 90 સેકન્ડ સુધી દર સેકન્ડે એકવાર “tick” ઇમિટ કર્યું. સામાન્ય સર્વરલેસ ટીયર્સ 10 અથવા 60 સેકન્ડ પછી રિક્વેસ્ટ સમાપ્ત કરી દેત; Neon એ ફંક્શન જાતે પૂર્ણ ન થાય ત્યાં સુધી કનેક્શન જીવંત રાખ્યું.
- Token-relay endpoint – ફંક્શને દરેક ટોકન બનતાની સાથે જ AI મોડેલમાંથી ક્લાયન્ટને ટોકન્સ સ્ટ્રીમ કર્યા. યુઝર્સને આખા ટેક્સ્ટ બ્લોક માટે રાહ જોયા વગર શબ્દવાર જવાબ દેખાતો રહ્યો.
બંને ઉદાહરણો માટે ક્લાયન્ટ તરફથી માત્ર એક જ રિક્વેસ્ટની જરૂર હતી; કોઈ પોલિંગ અથવા કીપ-અલાઈવ ટ્રિક્સની જરૂર નહોતી.
કોને ફાયદો થાય છે, અને કોણે સાવધ રહેવું જોઈએ
વાતચીત કરતા આસિસ્ટન્ટ્સ, ટૂલ-ઉપયોગી એજન્ટ્સ, અથવા એવી કોઈપણ સેવા બનાવતી ટીમો જેને ક્રમિક પરિણામો આપવાની જરૂર હોય છે તેમને તાત્કાલિક ફાયદો થાય છે: ટાઈમઆઉટની સમસ્યા દૂર થઈ જાય છે. તેનું પરિણામ સરળ કોડ, ઓછી લેટન્સી અને વધુ સ્મૂધ યુઝર એક્સપિરિયન્સ છે.
ધ્યાનમાં રાખવા જેવી બાબતો (Trade-offs):
- Request-only model – Neon Functions એવા સ્ટ્રીમ્સ હેન્ડલ કરે છે જે એક્ટિવ રિક્વેસ્ટ સાથે જોડાયેલા રહે છે. જે બેકગ્રાઉન્ડ જોબ્સ રિક્વેસ્ટ કરતાં વધુ સમય સુધી ચાલવી જોઈએ, તેના માટે હજુ પણ Inngest અથવા સમાન વર્કફ્લો એન્જિન જેવા અલગ શેડ્યુલરની જરૂર પડશે.
- Cold starts – જે ફંક્શન્સ નિષ્ક્રિય હોય છે તે સ્કેલ ટુ ઝીરો (scale to zero) થઈ શકે છે, તેથી આગામી રિક્વેસ્ટમાં કોલ્ડ-સ્ટાર્ટ વિલંબ થઈ શકે છે. એક એક્ટિવ સ્ટ્રીમ સ્કેલ ડાઉન થતું અટકાવે છે, પરંતુ નિષ્ક્રિયતા પછીની પ્રથમ રિક્વેસ્ટમાં હજુ પણ સ્ટાર્ટ-અપ ખર્ચ ચૂકવવો પડે છે.
આગળ શું જોવું
ટૂંકમાં: Neon Functions એ ટાઈમઆઉટની મર્યાદાને દૂર કરે છે જે લાંબા સમયથી AI ડેવલપર્સને કામચલાઉ ઉપાયો કરવા માટે મજબૂર કરતી હતી. એજન્ટને વિચારવા અને વાત કરવા માટે જેટલો સમય જોઈએ તેટલો સમય રિક્વેસ્ટ ખુલ્લી રાખવાની મંજૂરી આપીને, Neon સ્ટ્રીમિંગ AI એજન્ટ્સને કોઈપણ અન્ય સર્વરલેસ ફંક્શનની જેમ સરળતાથી ડિપ્લોય કરવાનું બનાવે છે.
