મેં મારા એપમાં AI ચેટ ઉમેરવાનો પ્રયાસ કર્યો અને મુશ્કેલીઓનો સામનો કર્યો
મેં મારા પ્રોજેક્ટ મેનેજમેન્ટ ટૂલમાં એક AI ચેટ આસિસ્ટન્ટ ઉમેરવાનો પ્રયાસ કર્યો. મને લાગ્યું કે તે સરળ હશે. મેં આખી ચેટ હિસ્ટ્રી API ને મોકલવાનું આયોજન કર્યું હતું.
તે નિષ્ફળ રહ્યું.
15 મેસેજ પછી, જવાબો ધીમા અથવા અધૂરા (broken) થઈ ગયા. ટેક્સ્ટ ટોકન લિમિટ (token limit) કરતા વધારે લાંબુ હોવાને કારણે API એ એરર (errors) આપી.
મેં શું પ્રયાસ કર્યો અને શું કામ કરી ગયું તે અહીં છે.
મને જે સમસ્યાઓનો સામનો કરવો પડ્યો:
- હિસ્ટ્રી ટ્રંકેટિંગ (Truncating history): મેં ફક્ત છેલ્લા થોડા મેસેજ જ રાખ્યા. આનાથી સ્પીડ તો સુધરી પરંતુ AI ચેટની શરૂઆતની બધી બાબતો ભૂલી ગયું.
- સમરાઈઝેશન (Summarization): મેં AI ને દર 5 મેસેજ પછી ચેટનો સારાંશ આપવા કહ્યું. આનાથી મેમરીમાં મદદ મળી પરંતુ મારા ખર્ચ અને રાહ જોવાનો સમય વધી ગયો.
- વેક્ટર સ્ટોર્સ (Vector stores): મેં સુસંગતતા (relevance) મુજબ મેસેજ સ્કોર કરવાનો પ્રયાસ કર્યો. આનાથી મારી જરૂરિયાતો માટે ખૂબ જ જટિલતા વધી ગઈ.
ઉકેલ:
મેં બધું જ મોકલવાનો પ્રયાસ કરવાનું બંધ કરી દીધું. અનુભવ સુધારવા માટે મેં બે મુખ્ય પદ્ધતિઓનો ઉપયોગ કર્યો.
સ્ટ્રીમિંગ (Streaming): મેં ટેક્સ્ટ જેમ જ જનરેટ થાય તેમ બતાવવા માટે Server-Sent Events નો ઉપયોગ કર્યો. આનાથી જો AI વિચારવામાં સમય લેતું હોય તો પણ એપ ઝડપી લાગે છે.
થ્રી-સ્લોટ કોન્ટેક્સ્ટ વિન્ડો (A Three-Slot Context Window): મેં મારા ટોકન બજેટને ચોક્કસ ભાગોમાં વહેંચી દીધું.
- સિસ્ટમ પ્રોમ્પ્ટ (System Prompt): 500 ટોકન્સ. આ સમાન રહે છે.
- ડાયનેમિક કોન્ટેક્સ્ટ (Dynamic Context): 2000 ટોકન્સ. આ તાજેતરના પ્રોજેક્ટ અપડેટ્સ અને ટાસ્ક સ્ટેટ્સ ધરાવે છે.
- કન્વર્સેશન હિસ્ટ્રી (Conversation History): 4000 ટોકન્સ. આ તાજેતરના મેસેજની સ્લાઇડિંગ વિન્ડો (sliding window) છે.
બજેટને આ રીતે મેનેજ કરીને, મેં મારા પેલોડ સાઈઝ (payload size) માં 40% ઘટાડો કર્યો. આનાથી પૈસા બચ્યા અને લેટન્સી (latency) ઘટી.
મારી સલાહ:
AI ઉમેરવાનો અર્થ માત્ર API કોલ કરવો એટલો જ નથી. તમારે તમે કેટલો ડેટા મોકલો છો તેનું મેનેજમેન્ટ કરવું જોઈએ. સ્ટ્રીમિંગથી યુઝરને સ્પીડનો અનુભવ સારો થાય છે. સ્માર્ટ કોન્ટેક્સ્ટ સ્ટ્રેટેજીથી AI કેટલું સ્માર્ટ છે તેનો અનુભવ સુધરે છે.
તમે તમારા એપ્સમાં કન્વર્સેશન મેમરી કેવી રીતે મેનેજ કરો છો? શું તમે સ્લાઇડિંગ વિન્ડો અથવા સમરાઈઝેશનનો ઉપયોગ કરો છો?
વૈકલ્પિક લર્નિંગ કોમ્યુનિટી: https://t.me/GyaanSetuAi