𝗕𝗲𝘆𝗼𝗻𝗱 𝗧𝗵𝗲 𝗔𝗴𝗲𝗻𝘁𝗶𝗰 𝗟𝗼𝗼𝗽: 𝗧𝘀 𝗢𝗿𝗰𝗵𝗲𝘀𝘁𝗿𝗮𝘁𝗼𝗿 𝗣𝗮𝘁𝘁𝗲𝗿𝗻
చాలా మంది మల్టీ-ఏజెంట్ సిస్టమ్స్ను ఏజెంటిక్ లూప్ (agentic loop) ఉపయోగించి నిర్మిస్తారు.
LLM మెదడుగా మరియు కంట్రోల్ ఫ్లోగా పనిచేస్తుంది. ఇది ఆలోచిస్తుంది, ఒక టూల్ను పిలుస్తుంది (calls a tool), గమనిస్తుంది మరియు మళ్ళీ అదే ప్రక్రియను పునరావృతం చేస్తుంది. ఇది అన్వేషణ (exploration) కోసం ఉపయోగపడుతుంది, కానీ ఇది మూడు పెద్ద సమస్యలను కలిగిస్తుంది:
- అనిశ్చితి (Unpredictability): ఒక టాస్క్ 3 కాల్స్ లేదా 9 కాల్స్ తీసుకోవచ్చు. అది రన్ అయ్యే వరకు లేటెన్సీ (latency) లేదా ఖర్చు ఎంత అవుతుందో మీకు తెలియదు.
- నాన్-డిటర్మినిజం (Non-determinism): ఒకే ప్రశ్న ప్రతిసారీ వేర్వేరు మార్గాలను అనుసరిస్తుంది. దీనివల్ల ఆర్డర్లు ప్లేస్ చేయడం వంటి సైడ్ ఎఫెక్ట్స్ (side effects) ఉన్న పనుల కోసం ఏజెంట్లను నమ్మడం కష్టమవుతుంది.
- తక్కువ పరిశీలన సామర్థ్యం (Poor observability): డీబగ్గింగ్ చేయడానికి రీజనింగ్ మరియు టూల్ కాల్స్ యొక్క గందరగోళమైన ట్రాన్స్క్రిప్ట్లను మళ్ళీ ప్లే చేయాల్సి ఉంటుంది.
మీకు మీ ఏజెంట్లు మరియు వాటి ఫంక్షన్ల గురించి తెలిస్తే, దానికి బదులుగా ఆర్కెస్ట్రేటర్ ప్యాటర్న్ను (Orchestrator pattern) ఉపయోగించండి.
ఆర్కెస్ట్రేటర్ నిర్ణయాన్ని (decision) మరియు అమలును (execution) వేరు చేస్తుంది. ఇది మూడు విభిన్న దశలను ఉపయోగిస్తుంది:
- రూట్ (Route): ఒకే ఒక LLM కాల్ టూల్స్ను ఎంపిక చేస్తుంది. ఇది వినియోగదారునికి సమాధానం ఇవ్వదు.
- ఎగ్జిక్యూట్ (Execute): సాధారణ TypeScript కోడ్ ఏజెంట్లను నడుపుతుంది. ఇక్కడ ఎటువంటి LLM ఉపయోగించబడదు.
- సింథసైజ్ (Synthesize): ఒక LLM కాల్ డేటాను సహజమైన సమాధానంగా మారుస్తుంది.
ఈ ప్యాటర్న్ మూడు ఎగ్జిక్యూషన్ మోడ్లను సృష్టిస్తుంది:
• సింగిల్ (Single): ఒక ఏజెంట్ క్వెరీని హ్యాండిల్ చేస్తుంది.
• పారలల్ (Parallel): Promise.all ఉపయోగించి బహుళ స్వతంత్ర ఏజెంట్లు ఒకేసారి నడుస్తాయి. ఇది సమయాన్ని ఆదా చేస్తుంది.
• సీక్వెన్షియల్ (Sequential): ఏజెంట్లు క్రమ పద్ధతిలో నడుస్తాయి. ప్రతి దశ మునుపటి దశ యొక్క ఫలితాలను ఉపయోగిస్తుంది.
ఈ విధానాన్ని ఉపయోగించడం ద్వారా, మీరు వీటిని పొందవచ్చు:
- మీరు నమ్మగలిగే ప్లాన్: కోడ్ రన్ అవ్వకముందే మీరు ఎగ్జిక్యూషన్ ప్లాన్ను చూడవచ్చు.
- వేగవంతమైన వేగం: పారలల్ ఎగ్జిక్యూషన్ ఒకేసారి బహుళ లుకప్లను (lookups) హ్యాండిల్ చేస్తుంది.
- మెరుగైన టెస్టింగ్: మీరు API కీ లేకుండానే ఎగ్జిక్యూషన్ దశను యూనిట్ టెస్ట్ చేయవచ్చు.
- ఊహించదగిన ఖర్చులు: ప్రతి రిక్వెస్ట్ ఖచ్చితంగా రెండు LLM కాల్స్ను ఉపయోగిస్తుంది.
అన్వేషణ (exploration) కోసం ఏజెంటిక్ లూప్ను ఉపయోగించండి. వేగం మరియు విశ్వసనీయత అవసరమయ్యే ప్రొడక్షన్ సిస్టమ్స్ కోసం ఆర్కెస్ట్రేటర్ను ఉపయోగించండి.
Optional learning community: https://t.me/GyaanSetuAi