તમારો AI એજન્ટ પ્રતિસાદ (response) ગુમાવવાથી ડબલ-ચાર્જ કરી શકે છે

જો તમારો AI એજન્ટ કાર્ડ ચાર્જ કરવા માટે કોઈ ટૂલને કોલ કરે અને નેટવર્ક પ્રતિસાદ (response) ગુમાવી દે, તો તમારો એજન્ટ ખરાબ રીતે નિષ્ફળ જાય છે. તે જાણ્યા વગર જ ગ્રાહક પાસેથી બે વાર ચાર્જ કરી લે છે.

પૈસા પહેલેથી જ ટ્રાન્સફર થઈ ગયા છે. એજન્ટે ક્યારેય "ok" સાંભળ્યું નથી. તે એ જ કરે છે જે દરેક રીટ્રાય લૂપ (retry loop) કરે છે: તે ફરીથી પ્રયાસ કરે છે. તે એ જ પ્રોમ્પ્ટ અને એ જ આર્ગ્યુમેન્ટ્સ (arguments) નો ઉપયોગ કરે છે. આના કારણે બીજી વાર ચાર્જ થઈ જાય છે.

રીટ્રાય (retry) એ નેટવર્ક ઇવેન્ટ નથી. તે એવા સાઇડ ઇફેક્ટ (side effect) વિશેનો નિર્ણય છે જે કદાચ પહેલેથી જ થઈ ગઈ હોય.

backoff અને jitter જેવા સ્ટાન્ડર્ડ રીટ્રાય ટૂલ્સ રીટ્રાયને વ્યવસ્થિત બનાવે છે. તેઓ ડબલ-ચાર્જ રોકવા માટે કંઈ જ નથી કરી શકતા.

તમારે એક આઈડેમપોટન્સી લેજર (idempotency ledger) ની જરૂર છે. આ એક યુનિક કી (unique key) નો ઉપયોગ કરીને સુનિશ્ચિત કરે છે કે કોઈ ક્રિયા વધુમાં વધુ એક જ વાર થાય.

ટૂલ કોલ નિષ્ફળ જવાની બે રીતો છે:

એજન્ટ માટે, આ બંને સમાન લાગે છે. બંને ટાઈમઆઉટ (timeout) અથવા ડ્રોપ્ડ કનેક્શન (dropped connection) જેવા લાગે છે.

જો કોઈ ટૂલની સાઇડ ઇફેક્ટ પેમેન્ટ, ઈમેલ અથવા રિફંડ જેવી હોય, તો તમે સાદા રીટ્રાય પર આધાર રાખી શકતા નથી. તમારે આઈડેમપોટન્સી કી (idempotency key) નો ઉપયોગ કરવો જ પડશે.

આ કેવી રીતે સુધારવું:

"at-least-once" ને "exactly-once" સમજવાની ભૂલ ન કરો. ડિસ્ટ્રિબ્યુટેડ સિસ્ટમ્સમાં, તમે at-most-once ડિલિવરીને at-least-once રીટ્રાય અને deduplication લેજર સાથે જોડીને "exactly-once" મેળવી શકો છો.

રાઈટ્સ (writes) ને રીડ્સ (reads) ની જેમ લેવાનું બંધ કરો. રીડને રીટ્રાય કરવું મફત છે. રાઈટને રીટ્રાય કરવા માટે પૈસા ખર્ચાય છે.

સ્ત્રોત: https://dev.to/0012303/your-ai-agent-will-double-charge-on-a-lost-response-5eed

વૈકલ્પિક લર્નિંગ કોમ્યુનિટી: https://t.me/GyaanSetuAi