Microsoft జూలై 15న Python కోసం స్థిరమైన Agent Skills ఫ్రేమ్‌వర్క్‌ను విడుదల చేసింది. ఇది LLM-ఆధారిత ఏజెంట్‌కు అవసరమైనప్పుడు మాత్రమే సామర్థ్యాలను (capabilities) పొందేలా డెవలపర్‌లకు అనుమతిస్తుంది. నిరంతరం పెరుగుతున్న సిస్టమ్ ప్రాంప్ట్‌కు బదులుగా, అవసరమైనప్పుడు మాత్రమే స్కిల్స్‌ను లోడ్ చేసే ఈ విధానం, ప్రాంప్ట్ పరిమాణాన్ని తగ్గిస్తుంది, టోకెన్ ఖర్చులను తగ్గిస్తుంది మరియు ఏజెంట్ యొక్క రీజనింగ్‌ను మరింత స్పష్టంగా ఉంచుతుంది.

ప్రాంప్ట్‌లు ఎందుకు పెరుగుతాయి మరియు ఇది ఎందుకు ముఖ్యం

LLM ఏజెంట్లు "system prompt" పై ఆధారపడతాయి, ఇది మోడల్ ప్రతిసారీ చూడవలసిన పాలసీలు, రన్‌బుక్స్ మరియు రిఫరెన్స్ మెటీరియల్‌ను ఒకే చోట చేరుస్తుంది. కొన్ని పాలసీ డాక్యుమెంట్‌లను జోడించినా, ప్రాంప్ట్ వేల సంఖ్యలో టోకెన్లకు పెరిగిపోతుంది. పెద్ద ప్రాంప్ట్‌లు ఇన్‌ఫరెన్స్ ఖర్చులను పెంచుతాయి—మోడల్ ప్రాసెస్ చేసే ప్రతి టోకెన్‌కు బిల్లింగ్ చేయబడుతుంది—మరియు అవి ఇన్‌స్ట్రక్షన్ సిగ్నల్‌ను బలహీనపరిచి, ఏజెంట్ అవుట్‌పుట్‌ను అస్పష్టంగా మారుస్తాయి. ఇన్సిడెంట్ ట్రైయాజ్ (incident triage) లేదా కంప్లయన్స్ చెకింగ్‌లో, అస్పష్టమైన ప్రాంప్ట్ ఒక సహాయకారి అయిన అసిస్టెంట్‌ను తప్పుడు సమాచారాన్ని ఇచ్చే వనరుగా మార్చవచ్చు.

Agent Skills ప్యాటర్న్: ప్రోగ్రెసివ్ డిస్‌క్లోజర్ (progressive disclosure)

ఈ కొత్త ఫ్రేమ్‌వర్క్ మోనోలిథిక్ ప్రాంప్ట్‌కు బదులుగా నాలుగు దశల వర్క్‌ఫ్లోను అందిస్తుంది:

  1. స్కిల్‌ను ప్రకటించడం (Advertise the skill) – రూటింగ్ లేయర్‌కు స్కిల్ పేరును తెలియజేసే ఒక తేలికపాటి మెటాడేటా ఎంట్రీ.
  2. ఇన్‌స్ట్రక్షన్లను లోడ్ చేయడం (Load instructions) – స్కిల్ అభ్యర్థనకు సరిపోతుందో లేదో నిర్ణయించుకోవడానికి ఏజెంట్ చదివే సంక్షిప్త వివరణ.
  3. రిసోర్స్‌లను చదవడం (Read resources) – ఏజెంట్ స్కిల్‌ను ఎంచుకున్న తర్వాత మాత్రమే పొందే ఐచ్ఛిక పాలసీ లేదా రిఫరెన్స్ ఫైల్‌లు.
  4. స్క్రిప్ట్‌లను రన్ చేయడం (Run scripts) – స్పష్టమైన ఆమోదంతో (explicit approval) చర్యను పూర్తి చేసే కోడ్ ఎగ్జిక్యూషన్.

కేవలం చిన్న SKILL.md ఫైల్ మాత్రమే కోర్ ప్రాంప్ట్‌లో ఉంటుంది. మిగిలిన పెద్ద డాక్యుమెంట్లు మరియు స్క్రిప్ట్‌లు ఫైల్-ఆధారిత స్కిల్ ప్యాకేజీలో ఉంటాయి, వీటిని రన్‌టైమ్ అవసరానికి అనుగుణంగా తీసుకుంటుంది. డైరెక్టరీ లేఅవుట్ సరళంగా ఉంటుంది:

  • SKILL.md – సంక్షిప్తమైన, మనుషులు చదవగలిగే వివరణ.
  • references/ – పాలసీ లేదా గైడెన్స్ ఫైల్‌లు.
  • scripts/ – ఎగ్జిక్యూటబుల్ కోడ్.

స్కిల్ సరైనదని నిర్ణయించే వరకు ఏజెంట్ references/ లేదా scripts/ యొక్క పూర్తి కంటెంట్‌ను చూడదు కాబట్టి, మీరు ఎన్ని స్కిల్స్‌ను రిజిస్టర్ చేసినా ప్రధాన ప్రాంప్ట్ తక్కువ పరిమాణంలోనే (lean) ఉంటుంది.

ఫ్రేమ్‌వర్క్‌లో అంతర్నిర్మిత భద్రతా రక్షణలు (Safety guards)

స్కిల్‌ను లోడ్ చేయడం ప్రమాదకరమని ఈ ఫ్రేమ్‌వర్క్ భావిస్తుంది మరియు డెవలపర్‌లు పాటించాల్సిన నియమాలను అమలు చేస్తుంది:

  • స్కిల్ పేరు ప్రకటన (Skill name advertisement) – ఆటోమేటిక్, కేవలం రూటింగ్ కోసం మాత్రమే ఉపయోగించబడుతుంది.
  • ఇన్‌స్ట్రక్షన్ లోడింగ్ (Instruction loading) – క్యూరేటెడ్ లిస్ట్‌ల కోసం ఆటోమేటిక్; సమీక్షించని ఇన్‌స్ట్రక్షన్లు తెలియకుండానే ప్రవర్తనను మార్చవచ్చు.
  • పాలసీ రీడింగ్ (Policy reading) – డేటా సెన్సిటివ్ కానప్పుడు ఆటోమేటిక్; సెన్సిటివ్ మెటీరియల్‌ను అదనపు యాక్సెస్ కంట్రోల్స్ వెనుక ఉంచండి.
  • స్క్రిప్ట్ ఎగ్జిక్యూషన్ (Script execution) – ఎల్లప్పుడూ స్పష్టమైన ఆమోదం అవసరం. స్క్రిప్ట్ ఏజెంట్‌ను "సూచన" (suggestion) నుండి "చర్య" (action) వైపు మారుస్తుంది, కాబట్టి మనిషి లేదా పాలసీ తనిఖీ తప్పనిసరిగా ఉండాలి.
  • ఎక్స్‌టర్నల్ సిస్టమ్ కాల్స్ (External system calls) – పరిమిత అనుమతులు ఉన్న ప్రత్యేక టూల్స్ ద్వారా మాత్రమే జరగాలి; స్కిల్ అనేది స్వయంగా ఒక అథరైజేషన్ మెకానిజం కాదు.

ఈ నియమాలు డెవలపర్‌లు డేటాబేస్ అప్‌డేట్‌లు లేదా కోడ్ డిప్లాయ్‌మెంట్‌ల వంటి రైట్-ఓరియంటెడ్ (write-oriented) చర్యలను ప్రయత్నించే ముందు, ఇన్సిడెంట్ ట్రైయాజ్, పాలసీ లుకప్, స్టేటస్ క్వెరీల వంటి రీడ్-ఓన్లీ (read-only) వర్క్‌ఫ్లోలతో ప్రారంభించేలా ప్రోత్సహిస్తాయి.

ఆపరేషనల్ హైజీన్: లాగింగ్ మరియు వెర్షనింగ్ (Operational hygiene: logging and versioning)

ఒక స్కిల్ రన్ అయినప్పుడు, ఈ క్రింది వాటిని లాగ్ చేయాలని ఫ్రేమ్‌వర్క్ ప్రోత్సహిస్తుంది (మరియు అనేక డిప్లాయ్‌మెంట్‌లలో ఇది తప్పనిసరి):

  • అసలు అభ్యర్థన (original request) మరియు ఎంచుకున్న స్కిల్ ID.
  • ఉపయోగించిన స్కిల్ ప్యాకేజీ వెర్షన్.
  • ఏజెంట్ కేవలం వివరణను మాత్రమే లోడ్ చేసిందా లేదా రిసోర్స్ ఫైల్‌ను కూడా తీసుకుందా అనేది.
  • స్క్రిప్ట్ ఎగ్జిక్యూషన్ కోసం తీసుకున్న ఆమోద నిర్ణయం.
  • అందించిన అన్ని టూల్ ఆర్గ్యుమెంట్లు మరియు తిరిగి వచ్చిన ఫలితాలు.

ఏజెంట్ తప్పు స్కిల్‌ను ఎంచుకుంటే, ఆ తప్పు ఎంపికను ఒక టెస్ట్ కేస్‌గా మార్చండి. ఇది స్కిల్ ప్రొడక్షన్‌కు చేరుകുന്ന ముందు రిగ్రెషన్ చెక్ (regression check) చేయడానికి సహాయపడుతుంది.

ప్రతి స్కిల్‌ను కేవలం ప్రాంప్ట్‌ల ఫోల్డర్‌గా కాకుండా, స్పష్టమైన బౌండరీ ఉన్న వెర్షన్డ్ డిపెండెన్సీ (versioned dependency) గా పరిగణించండి. వెర్షనింగ్ వల్ల ఏజెంట్ యొక్క మిగిలిన నాలెడ్జ్ బేస్‌ను ఇబ్బంది పెట్టకుండా, లోపభూయిష్టమైన స్క్రిప్ట్‌ను మీరు రోల్ బ్యాక్ (roll back) చేయవచ్చు.

ప్రారంభించడానికి: ఒక ప్రాగ్మాటిక్ చెక్‌లిస్ట్ (Getting started: a pragmatic checklist)

  1. ఒక రీడ్-ఓన్లీ వర్క్‌ఫ్లోను ఎంచుకోండి – ఉదాహరణకు, "తాజా సెక్యూరిటీ ఇన్సిడెంట్ గైడ్‌లైన్స్‌ను వెతకడం".
  2. ఇన్‌స్ట్రక్షన్లు మరియు స్క్రిప్ట్‌లను విడివిడిగా ప్యాకేజ్ చేయండిSKILL.mdను చిన్నదిగా ఉంచండి; భారీ పాలసీ ఫైల్‌లను references/లో ఉంచండి.
  3. ఒక క్యాటలాగ్‌ను రూపొందించండి – ఆమోదించబడిన స్కిల్స్ జాబితాను నిర్వహించండి మరియు ఏ స్క్రిప్ట్‌కైనా తప్పనిసరి ఆమోదాన్ని అమలు చేయండి.
  4. శాండ్‌బాక్స్ పరిమితులను (sandbox limits) నిర్ణయించండి – స్క్రిప్ట్ ఎగ్జిక్యూషన్ కోసం CPU, మెమరీ మరియు నెట్‌వర్క్ పరిమితులను నిర్వచించండి; ప్రతి రన్‌ను లాగ్ చేయండి.
  5. పాత మెగా-ప్రాంప్ట్‌తో బెంచ్‌మార్క్ చేయండి – ఖర్చు ఆదాను ధృవీకరించడానికి టోకెన్ వినియోగం, లేటెన్సీ (latency) మరియు విజయ రేట్లను పోల్చండి.

తదుపరి ఏమి చూడాలి

Microsoft విడుదల చేసినది ప్రస్తుతం ఒక స్థిరమైన (stable) Python ఇంప్లిమెంటేషన్.

ముగింపు (Bottom line)

Agent Skills అనేది LLM ఆధారిత అసిస్టెంట్‌లు, విస్తరిస్తున్న పాలసీలు మరియు స్క్రిప్ట్‌ల లైబ్రరీని యాక్సెస్ చేస్తూనే, తేలికగా (lightweight) ఉండేలా ఒక మార్గాన్ని అందిస్తుంది. కేవలం వివరణను మాత్రమే ముందుగా లోడ్ చేయడం మరియు అవసరమైనప్పుడు మాత్రమే భారీ వనరులను (heavy resources) పొందడం ద్వారా, ప్రాంప్ట్‌లు చిన్నవిగా ఉంటాయి, ఇన్‌ఫరెన్స్ ఖర్చులు తగ్గుతాయి మరియు ఏజెంట్ యొక్క రీజనింగ్ (reasoning) ఏకాగ్రతతో ఉంటుంది.