మీ AI ఏజెంట్‌కు మరింత తెలివితేటలు అవసరం లేదు. దానికి Idempotency అవసరం.

చాలా ప్రొడక్షన్ AI ఏజెంట్లు తప్పుడు రీజనింగ్ (reasoning) వల్ల విఫలం కావు. అవి నెట్‌వర్క్ లోపాల వల్ల విఫలమవుతాయి.

మోడల్ సరైన టూల్‌ను ఎంచుకుంటుంది. సరైన వివరాలను నింపుతుంది. కానీ, ఆ తర్వాత, అది ఒక కస్టమర్‌ను రెండుసార్లు ఛార్జ్ చేస్తుంది.

ఇది ఎందుకు జరుగుతుందంటే, write-capable ఏజెంట్లు నమ్మదగని నెట్‌వర్క్‌లలో పనిచేస్తాయి.

  • రిక్వెస్ట్‌లు టైమ్ అవుట్ అవుతాయి.
  • కనెక్షన్లు తెగిపోతాయి.
  • ఫ్రేమ్‌వర్క్‌లు ఇప్పటికే పూర్తయిన దశలను మళ్లీ ప్రయత్నిస్తాయి (retry).

ఒక read-only ఏజెంట్‌లో, రీట్రై (retry) చేయడం వల్ల నష్టం లేదు. కానీ ఒక write-capable ఏజెంట్‌లో, రీట్రై అనేది రెండోసారి జరిగే ఒక తిరుగులేని చర్య (irreversible action).

దీనికి పరిష్కారం Idempotency.

ఈ సాధారణ వైఫల్యాన్ని గమనించండి:

  1. ఏజెంట్ ఇన్వాయిస్‌ను పంపడానికి ఒక ఫంక్షన్‌ను పిలుస్తుంది.
  2. సర్వీస్ ఇన్వాయిస్‌ను సృష్టిస్తుంది.
  3. రెస్పాన్స్ ఏజెంట్‌కు చేరుకోకముందే కనెక్షన్ తెగిపోతుంది.
  4. ఏజెంట్ టైమ్ అవుట్‌ను చూసి మళ్లీ ప్రయత్నిస్తుంది (retry).
  5. ఇప్పుడు, మీ దగ్గర రెండు ఇన్వాయిస్‌లు ఉన్నాయి.

మరింత తెలివైన మోడల్ దీనిని సరిచేయలేదు. పైగా, రీట్రైలను మరింత తీవ్రంగా చేయడం వల్ల ఒక తెలివైన మోడల్ పరిస్థితిని మరింత దిగజార్చవచ్చు.

మీరు Stripe వంటి పేమెంట్ సిస్టమ్స్ నుండి నేర్చుకోవచ్చు. అవి Idempotency-Keyని ఉపయోగిస్తాయి. సర్వర్ మొదటి రిక్వెస్ట్ యొక్క ఫలితాన్ని సేవ్ చేస్తుంది. క్లయింట్ అదే కీని మళ్లీ పంపితే, సర్వర్ ఆ చర్యను రెండోసారి అమలు చేయడానికి బదులుగా, సేవ్ చేసిన ఫలితాన్ని తిరిగి పంపుతుంది.

ఒక AI ఏజెంట్ కోసం, మీరు ఈ కీని intent (ఉద్దేశ్యం) నుండి పొందాలి.

రాండమ్ (random) ఐడిలను ఉపయోగించకండి. టూల్ పేరు మరియు దాని స్థిరమైన పారామీటర్ల (stable parameters) యొక్క హాష్ (hash)ను ఉపయోగించండి.

ఉదాహరణ:

  • Tool: charge_customer
  • Params: {customer_id: 42, amount: 500}
  • Key: hash(tool + params)

ఏజెంట్ సరిగ్గా అదే ఛార్జ్‌ను మళ్లీ ప్రయత్నిస్తే, కీ అలాగే ఉంటుంది. సిస్టమ్ దానిని గుర్తించి, డూప్లికేట్ ఛార్జ్‌ను నిరోధిస్తుంది.

ఒక హెచ్చరిక: ఒకే చర్య (single action) అనే మీ నిర్వచనం ఎంత స్పష్టంగా ఉంటే, మీ కీ అంత బాగా పనిచేస్తుంది.

  • మీరు మీ హాష్‌లో టైమ్‌స్టాంప్‌ను (timestamp) చేర్చితే, ప్రతి రీట్రైకి కొత్త కీ వస్తుంది. అప్పుడు మీ రక్షణ విఫలమవుతుంది.
  • మీరు LLM ద్వారా వ్రాయబడిన మెసేజ్ బాడీని చేర్చితే, మోడల్ ఒక పదాన్ని మార్చవచ్చు. ఇది కొత్త కీని సృష్టించి, డూప్లికేట్ చర్యకు దారితీస్తుంది.

ఎల్లప్పుడూ కస్టమర్ ఐడిలు లేదా ఇన్వాయిస్ ఐడిల వంటి స్థిరమైన డేటాపై కీని రూపొందించండి. మోడల్ మార్చగలిగే దేన్నైనా మినహాయించండి.

మెరుగైన ప్రాంప్ట్‌లతో ఏజెంట్ విశ్వసనీయతను (reliability) పెంచడానికి ప్రయత్నించడం ఆపండి.

విశ్వసనీయత అంటే పునరావృతమైన నిర్ణయం యొక్క ఖర్చును సున్నా చేయడం. మీ ఏజెంట్ ఒకే చర్యను రెండుసార్లు చేసినా, ఏదీ విఫలం కాకూడదు.

Source: https://dev.to/gs_sanjana_3e822112e14f8/your-ai-agent-doesnt-need-to-be-smarter-it-needs-to-be-idempotent-2736

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