तुमचा AI Agent प्रतिसाद हरवल्यास ग्राहकाकडून दोनदा पैसे आकारू शकतो

जर तुमच्या AI agent ने कार्ड चार्ज करण्यासाठी एखाद्या टूलला कॉल केला आणि नेटवर्कमुळे प्रतिसाद (response) मिळाला नाही, तर तुमचा agent चुकीच्या पद्धतीने अपयशी ठरतो. त्याला न कळता तो ग्राहकाकडून दोनदा पैसे आकारतो.

पैसे आधीच ट्रान्सफर झाले आहेत. agent ला कधीही "ok" ऐकायला मिळाले नाही. तो प्रत्येक retry loop प्रमाणेच करतो: तो पुन्हा प्रयत्न करतो. तो तोच prompt आणि तेच arguments वापरतो. यामुळे दुसरे चार्जेस लागतात.

Retry ही केवळ एक नेटवर्क इव्हेंट नाही. ती अशा 'side effect' बद्दलची निर्णय प्रक्रिया आहे जी कदाचित आधीच घडली असू शकते.

backoff आणि jitter सारखी मानक retry टूल्स retry प्रक्रिया सुलभ करतात. परंतु, ते double-charges रोखण्यासाठी काहीही करत नाहीत.

तुम्हाला 'idempotency ledger' ची आवश्यकता आहे. एखादी क्रिया जास्तीत जास्त एकदाच घडली आहे याची खात्री करण्यासाठी हे एक युनिक की (unique key) वापरते.

टूल कॉल अपयशी ठरण्याचे दोन मार्ग आहेत:

agent साठी हे दोन्ही सारखेच दिसतात. दोन्ही गोष्टी timeout किंवा कनेक्शन तुटल्यासारख्या वाटतात.

जर एखाद्या टूलचा पेमेंट, ईमेल किंवा रिफंड सारखा side effect असेल, तर तुम्ही साध्या retries वर अवलंबून राहू शकत नाही. तुम्हाला 'idempotency key' वापरणे अनिवार्य आहे.

हे कसे सुधारावे:

"at-least-once" ला "exactly-once" समजण्याची चूक करू नका. डिस्ट्रिब्युटेड सिस्टममध्ये (distributed systems), at-most-once delivery, at-least-once retries आणि deduplication ledger यांचे संयोजन करून तुम्हाला "exactly-once" मिळते.

'writes' ला 'reads' सारखे वागवणे थांबवा. 'read' पुन्हा करणे मोफत आहे. 'write' पुन्हा केल्यास पैसे खर्च होतात.

Source: https://dev.to/0012303/your-ai-agent-will-double-charge-on-a-lost-response-5eed

Optional learning community: https://t.me/GyaanSetuAi