مرکزی مواد پر جائیں
اے آئی ٹیوٹوریلز

Sprix SAGE Router کے ساتھ AI ایجنٹ کے کام روٹ کریں

جانیں کہ Sprix SAGE Router کیسے انسٹال کیا جائے، ماڈل ایجنٹس اور کاموں کے باہمی انحصار کو کیسے ترتیب دیا جائے، قابلِ عمل اجرا کا راستہ کیسے منتخب کیا جائے، اسائنمنٹس کا جائزہ کیسے لیا جائے، اور اجرا کے شواہد کی مدد سے مستقبل کے فیصلوں کو کیسے بہتر بنایا جائے۔ یہ ٹیوٹوریل A2A انضمام، پابندیوں، بینچ مارکنگ اور اس ابتدائی تحقیقی پیش نظارہ کے لیے عملی رہنمائی بھی فراہم کرتا ہے۔

Sprix SAGE Router کے ساتھ AI ایجنٹ کے کام روٹ کریں

Sprix SAGE Router کیا ہے؟

Sprix SAGE Router ایک اوپن سورس Python تحقیقی منصوبہ ہے جو یہ فیصلہ کرنے کے لیے بنایا گیا ہے کہ کام شروع ہو جانے کے بعد AI ایجنٹس کو کسی کام پر کیسے عمل کرنا چاہیے۔ SAGE سے مراد State-Aware Graph Exchange ہے۔ یہ ایجنٹ کی دریافت اور کام کے نفاذ کے درمیان کام کرتا ہے، اور موجودہ پیش رفت، صلاحیتوں، اجازتوں، لاگت، تاخیر، انحصارات اور سیاق و سباق کی منتقلی کے نقصان کو مدنظر رکھتے ہوئے قابلِ عمل ایجنٹ کنفیگریشن منتخب کرتا ہے۔

روٹر نفاذ کے تین طریقوں کا موازنہ کرتا ہے:

  • SELF: جب موجودہ ایجنٹ کی صلاحیتیں اور جمع شدہ سیاق و سباق کافی ہوں تو وہ اکیلے کام جاری رکھتا ہے۔
  • COLLABORATE: موجودہ ایجنٹ ملکیت برقرار رکھتا ہے، جبکہ تکمیلی ایجنٹس نامکمل تقاضے پورے کرتے ہیں۔
  • HANDOFF: جب کسی ماہر ایجنٹ کا فائدہ سیاق و سباق منتقل کرنے کی لاگت سے زیادہ ہو تو دوسرا ایجنٹ مکمل ملکیت سنبھال لیتا ہے۔

SAGE کو Agent2Agent protocol سے اوپر کام کرنے کے لیے ڈیزائن کیا گیا ہے۔ A2A باہمی طور پر قابلِ تعامل Agent Cards، کاموں، پیغامات، artifacts، توثیق اور ٹرانسپورٹ کی تعریف کرتا ہے۔ SAGE ایک مختلف سوال کا جواب دیتا ہے: کون سی اہل کنفیگریشن کسی کام کو، کس طریقے سے اور کیوں انجام دے؟

موجودہ پروٹوٹائپ روٹنگ کے فیصلے واپس کرتا ہے۔ یہ کام ایجنٹس کو منتقل نہیں کرتا، اس لیے منتخب کردہ روٹ پر عمل کرنے کے لیے A2A کلائنٹ یا کسی دوسرے نفاذی حصے کی ضرورت ہوتی ہے۔

روٹنگ کی اہم خصوصیات

SAGE روٹنگ، شیڈولنگ اور آن لائن لرننگ کو ایک قابلِ معائنہ فیصلہ سازی کے عمل میں یکجا کرتا ہے۔ اس کی بنیادی خصوصیات میں شامل ہیں:

  • تین طریقوں والی روٹنگ: SELF، COLLABORATE اور HANDOFF امیدوار ایک ہی یوٹیلیٹی مقصد کے تحت مقابلہ کرتے ہیں۔
  • پیش رفت سے باخبر دوبارہ منصوبہ بندی: جمع شدہ پیش رفت، فعال نفاذ کنندگان، ناکامیاں، مکمل شدہ کام کے نوڈز اور منتقل کیے جا سکنے والے سیاق و سباق سے یہ فیصلہ متاثر ہو سکتا ہے کہ تبدیلی فائدہ مند ہے یا نہیں۔
  • تکمیلی ٹیم کا انتخاب: ٹیموں کو اعلیٰ درجہ رکھنے والے مگر غیرضروری ایجنٹس جمع کرنے کے بجائے تقاضوں کی مفید تکمیل میں اضافے پر انعام دیا جاتا ہے۔
  • سیاق و سباق پر مبنی اعتماد: قابلِ اعتماد ہونے کی صلاحیت ہر ایجنٹ اور تقاضے کے لیے سیکھی جاتی ہے، اسے ایک عالمی ساکھ کے اسکور تک محدود نہیں کیا جاتا۔
  • Task-DAG شیڈولنگ: تقاضے نفاذ کنندگان کو تفویض کیے جاتے ہیں، جبکہ انحصاری کنارے نفاذ کی ترتیب، مواصلاتی ٹوپولوجی اور اہم راستے کی تاخیر طے کرتے ہیں۔
  • محدود تلاش: beam search ایک ہی حریص انتخاب کرنے کے بجائے تعاون کرنے والی ٹیم کے کئی ابتدائی سلسلوں کا جائزہ لیتا ہے۔
  • پہلے پابندیوں کی جانچ: اہل نہ ہونے والے ایجنٹس کو درجہ بندی سے پہلے نکال دیا جاتا ہے، چاہے ان کا متوقع معیار کچھ بھی ہو۔
  • شواہد سے باخبر لرننگ: تقاضوں کے اسکور، حقیقی لاگت اور حقیقی تاخیر اعتماد، ہم آہنگی، کامیابی کے ماڈل اور بولی کی درستگی کو اپ ڈیٹ کر سکتے ہیں۔
  • قابلِ آڈٹ نتائج: فیصلوں میں منتخب طریقہ، تفویضات، ٹوپولوجی، متوقع کامیابی، تکمیل، لاگت، تاخیر، خطرہ، یوٹیلیٹی اور جواز ظاہر کیے جاتے ہیں۔

الگورتھم کسی روٹ کا جائزہ کیسے لیتا ہے

ہر کام کے تقاضے کے لیے SAGE عالمی اعتماد کو تقاضے سے مشروط اعتماد کے ساتھ ملا کر ایجنٹ کی کیلیبریٹڈ صلاحیت کا اندازہ لگاتا ہے۔ ٹیم کی تکمیل اس وقت بڑھتی ہے جب ارکان مفید اور غیرتکراری صلاحیت فراہم کرتے ہیں۔ اس کے بعد ہر باقی تقاضا مضبوط ترین کیلیبریٹڈ ٹیم رکن کو تفویض کیا جاتا ہے۔

شیڈولر تقاضوں کے DAG کا احترام کرتا ہے۔ ایک ایجنٹ کو تفویض کیا گیا کام سلسلہ وار انجام پاتا ہے، جبکہ مختلف ایجنٹس کو تفویض کیا گیا آزاد کام متوازی طور پر چل سکتا ہے۔ امیدوار ٹیم بنانے کے بعد SAGE ٹیم کی مجموعی لاگت اور اہم راستے کی تاخیر کو کام کے بجٹ اور آخری وقت کے مقابل جانچتا ہے۔

قابلِ عمل امیدواروں کی درجہ بندی ایک یوٹیلیٹی فنکشن کے ذریعے کی جاتی ہے، جو متوقع کامیابی کی قدر کو لاگت، تاخیر، خطرے، سیاق و سباق کی منتقلی کے نقصان، رابطہ کاری کے اضافی خرچ اور غیر یقینی کے ساتھ متوازن کرتا ہے۔ اس طرح کسی زیادہ مضبوط ماہر کو موجودہ ایجنٹ سے شکست ہو سکتی ہے، اگر ملکیت منتقل کرنے سے بہت زیادہ مفید سیاق و سباق ضائع ہو جائے۔ اسی طرح ایک تکمیلی ٹیم ممتاز مگر غیرضروری ایجنٹس کے مجموعے کو پیچھے چھوڑ سکتی ہے۔

منصوبہ انسٹال اور تصدیق کریں

ضروریات

حوالہ جاتی نفاذ کے لیے Python 3.10 یا اس کے بعد کا ورژن درکار ہے۔ منصوبے کی README کے مطابق، اس کی رن ٹائم انحصاریتیں نہیں ہیں۔

ریپوزٹری کلون کریں

git clone https://github.com/wang2122/sprix-sage-router.git
cd sprix-sage-router
python demo.py

demo.py اسکرپٹ آغاز سے اختتام تک ایک قابلِ مطالعہ مثال فراہم کرتا ہے۔ چونکہ ریپوزٹری اپنے نفاذ کو براہِ راست sprix_sage.py کے ذریعے ظاہر کرتی ہے، اس لیے فوری آغاز کے لیے الگ پیکیج انسٹالیشن کمانڈ درکار نہیں۔

ٹیسٹ اور بینچ مارک چلائیں

python -m unittest -v
python benchmark.py

یونٹ ٹیسٹ روٹر کے متوقع رویے کی تصدیق کرتے ہیں۔ بینچ مارک ایک بیرونی نان لائنر سمیولیٹر کو متعین seeds کے ساتھ چلاتا ہے، جس سے SAGE کے جامد اور آن لائن ورژنز کا آسان روٹنگ حکمتِ عملیوں کے ساتھ موازنہ کیا جا سکتا ہے۔

مرحلہ 1: بنیادی اقسام درآمد کریں

from sprix_sage import (
    Agent,
    ExecutionOutcome,
    Requirement,
    SAGERouter,
    Task,
)

اس مثال میں امیدواروں کی وضاحت کے لیے Agent، کام کی تعریف کے لیے Requirement اور Task، روٹ منتخب کرنے کے لیے SAGERouter، اور نفاذ کے بعد شواہد واپس کرنے کے لیے ExecutionOutcome استعمال ہوتا ہے۔

مرحلہ 2: دستیاب ایجنٹس کی وضاحت کریں

agents = [
    Agent(
        "planner",
        {"planning": 0.92, "coding": 0.55},
        cost=0.08,
        latency_ms=900,
    ),
    Agent(
        "coder",
        {"planning": 0.35, "coding": 0.96},
        cost=0.12,
        latency_ms=1200,
    ),
]

ہر ایجنٹ کا ایک شناخت کنندہ، صلاحیتوں کا ویکٹر، لاگت کا تخمینہ، اور تاخیر کا تخمینہ ہوتا ہے۔ یہاں planner منصوبہ بندی میں مضبوط ہے، جبکہ coder کوڈنگ میں زیادہ مضبوط ہے۔ یہ فرق SAGE کو ایجنٹس کی درجہ بندی صرف ایک مجموعی اسکور کی بنیاد پر کرنے کے بجائے تعاون یا کام کی منتقلی پر غور کرنے کی وجہ فراہم کرتا ہے۔

مرحلہ 3: ضروریات اور انحصارات کا ماڈل بنائیں

task = Task(
    "build-feature",
    requirements=(
        Requirement("planning", 0.4),
        Requirement(
            "coding",
            0.6,
            depends_on=("planning",),
        ),
    ),
    value=1.0,
    budget=0.30,
    deadline_ms=4000,
    progress=0.35,
)

اس کام میں وزن کی حامل دو ضروریات شامل ہیں۔ کوڈنگ کی ضرورت منصوبہ بندی پر منحصر ہے، جس سے ایک چھوٹا DAG بنتا ہے جس میں کوڈنگ سے پہلے منصوبہ بندی مکمل ہونا ضروری ہے۔ کام محدود روٹنگ کے لیے درکار اقدار بھی فراہم کرتا ہے:

  • value کامیاب تکمیل کی قدر ظاہر کرتا ہے۔
  • budget قابل قبول لاگت کی حد مقرر کرتا ہے۔
  • deadline_ms طے شدہ تاخیر کی حد مقرر کرتا ہے۔
  • progress روٹر کو بتاتا ہے کہ عمل پہلے ہی 35 فیصد مکمل ہو چکا ہے۔

پیش رفت اہم ہے کیونکہ عمل کے دوران ملکیت تبدیل کرنے سے سیاق و سباق کی منتقلی کا نقصان پیدا ہو سکتا ہے۔ اس لیے کسی ماہر کی صلاحیت کا فائدہ خود بخود کام کی منتقلی کو بہترین راستہ نہیں بناتا۔

مرحلہ 4: کام کی روٹنگ کریں

router = SAGERouter(
    agents,
    incumbent_id="planner",
)

decision = router.route(task)

print(decision.mode)
print(decision.assignments)
print(decision.topology)

Incumbent وہ ایجنٹ ہے جو اس وقت کام کا مالک ہے۔ route کو کال کرنے سے قابل عمل SELF، COLLABORATE، اور HANDOFF امیدواروں کا موازنہ کیا جاتا ہے۔ واپس آنے والے فیصلے کا جائزہ ان شعبوں کے ذریعے لیا جا سکتا ہے:

  • منتخب کردہ عمل کے طریقے کے لیے decision.mode۔
  • ضرورت سے ایجنٹ کے کردار کی تفویض کے لیے decision.assignments۔
  • انحصار سے بننے والے مواصلاتی ڈھانچے کے لیے decision.topology۔

یہ فرض نہ کریں کہ اس مخصوص صورتِ حال کا نتیجہ ہمیشہ ایک ہی طریقہ ہونا چاہیے۔ نتیجہ روٹر کے کیلیبریٹ کیے گئے تخمینوں، پابندیوں، پیش رفت، اور سیکھے گئے ڈیٹا پر منحصر ہے۔

عملی نتائج سے سیکھیں

روٹنگ صرف ورک فلو کا پہلا نصف ہے۔ منتخب ایجنٹس کے کام مکمل کرنے کے بعد دستیاب مضبوط ترین شواہد روٹر کو واپس فراہم کریں:

router.record_outcome(
    decision,
    ExecutionOutcome(
        success=0.9,
        requirement_scores={
            "planning": 0.95,
            "coding": 0.86,
        },
        actual_cost=0.19,
        actual_latency_ms=1450,
    ),
)

مجموعی کامیابی کی قدر روٹر کو کام کی سطح کا نتیجہ فراہم کرتی ہے۔ ضرورت کے لحاظ سے مخصوص اسکور زیادہ درست کریڈٹ اسائنمنٹ فراہم کرتے ہیں، جس سے ہر ساتھی کو یکساں کریڈٹ ملنے سے بچا جا سکتا ہے۔ حقیقی لاگت اور تاخیر مستقبل کی پیش گوئیوں اور فراہم کنندگان کے کوٹس کو کیلیبریٹ کرنے میں مدد دیتی ہیں۔

بار بار روٹنگ اور فیڈبیک آن لائن SAGE کو سیاقی اعتماد، جوڑی کے اثرات، کامیابی کی پیش گوئیوں، اور بولی کی درستگی کو بہتر بنانے میں مدد دیتے ہیں۔ مؤثر سیکھنے کے لیے نتائج مستقل طور پر ریکارڈ کریں اور جب بھی شواہد دستیاب ہوں، سطحی کامیابی کے لیبلز کے بجائے پیمائش شدہ شواہد کو ترجیح دیں۔

SAGE کو A2A نظام کے ساتھ مربوط کریں

پروڈکشن انٹیگریشن پروٹوکول اور مارکیٹ پلیس کے اشاروں کو SAGE کی اندرونی نمائندگیوں میں تبدیل کر سکتی ہے:

  • AgentCard.skills کو صلاحیتوں کے ویکٹرز میں نارملائز کریں۔
  • سکیورٹی کی ضروریات کو سخت اجازت کے فلٹرز کے طور پر استعمال کریں۔
  • اسکور دینے سے پہلے مطابقت کے لیے معاون ان پٹ اور آؤٹ پٹ طریقوں کی جانچ کریں۔
  • کام کی حالت، آرٹیفیکٹس، مکمل شدہ DAG نوڈز، اور ناکامیوں کو موجودہ عمل کی حالت اور منتقلی کے نقصان کے تخمینوں میں تبدیل کریں۔
  • فراہم کنندگان کے کوٹس کو لاگت، تاخیر، اور اعتماد پر مشتمل بولیوں کے طور پر ظاہر کریں۔
  • مکمل شدہ کاموں کے جائزوں کو سیاقی اعتماد، جوڑی کے باقی اثرات، کامیابی کی پیش گوئیوں، اور بولی کی درستگی کو اپ ڈیٹ کرنے کے لیے استعمال کریں۔

SAGE کے فیصلہ واپس کرنے کے بعد، A2A کلائنٹ اسے پیغام بھیجنے، اسٹریمنگ، کام کی پولنگ، یا منسوخی جیسی پروٹوکول کارروائیوں کے ذریعے انجام دے سکتا ہے۔ حد واضح رکھیں: SAGE راستہ منتخب اور اس کی وضاحت کرتا ہے، جبکہ A2A پرت مواصلات اور عمل درآمد سنبھالتی ہے۔

اعلیٰ درجے کے استعمال کی تجاویز

کام کو بامعنی DAG کے طور پر ماڈل کریں

انحصارات کو حقیقی عمل درآمد کی ترتیب ظاہر کرنے کے لیے استعمال کریں، بجائے اس کے کہ ہر ضرورت کو ایک ہموار فہرست میں رکھیں۔ درست انحصارات SAGE کو سلسلہ وار اور متوازی کام میں فرق کرنے اور زیادہ مفید اہم راستے کی تاخیر کا تخمینہ تیار کرنے دیتے ہیں۔

باہمی تکمیل کرنے والی صلاحیتوں کی وضاحت کو ترجیح دیں

ایجنٹس کی وضاحت ضرورت کی سطح پر موجود صلاحیتوں کے ساتھ کریں۔ ایک وسیع مجموعی اسکور منصوبہ بندی، کوڈنگ، تحقیق، یا دیگر مہارتوں کے درمیان فرق چھپا دے گا اور سیاقی اعتماد اور کردار کی تفویض کو کمزور کرے گا۔

اجازتوں کو سخت پابندیوں کے طور پر برتیں

رسائی کے قواعد کو نظرانداز کرنے کے لیے متوقع معیار استعمال نہ کریں۔ SAGE کا اجازت کو ترجیح دینے والا ڈیزائن توقع کرتا ہے کہ امیدواروں کی درجہ بندی سے پہلے نااہل ایجنٹس کو خارج کر دیا جائے۔ اسی طرح مطابقت، تصدیق، اور پالیسی کی جانچ بھی عمل درآمد سے پہلے ہونی چاہیے۔

حقیقت پسندانہ بجٹ اور آخری تاریخیں استعمال کریں

SAGE امیدوار کی تشکیل کے دوران اور دوبارہ ٹیم کی سطح پر پابندیوں کی جانچ کرتا ہے۔ کام کے مطابق بجٹ اور آخری تاریخیں فراہم کریں تاکہ بظاہر پرکشش ایجنٹس کا ایسا مجموعہ منتخب نہ ہو جس کی مجموعی لاگت یا اہم راستہ ناقابل عمل ہو۔

صرف طریقہ استعمال کرنے کے بجائے فیصلوں کا جائزہ لیں

تفویضات، ٹوپولوجی، کوریج، متوقع کامیابی، لاگت، تاخیر، خطرے، افادیت، اور جواز کا جائزہ لیں۔ آڈٹ ٹریل یہ ظاہر کر سکتی ہے کہ راستہ حقیقی تکمیلیت، موجودہ ایجنٹ کے سیاق و سباق کو برقرار رکھنے، کم منتقلی کے نقصان، یا پابندیوں کی تکمیل کی وجہ سے منتخب کیا گیا تھا۔

کوٹ کی درستگی کی پیمائش کریں

عمل درآمد کے بعد اصل لاگت اور تاخیر واپس کریں۔ مشاہدہ شدہ اقدار کے بغیر، روٹر کے پاس یہ طے کرنے کے لیے کم شواہد ہوتے ہیں کہ بیان کردہ اعتماد، قیمت اور وقت قابلِ اعتبار ہیں یا نہیں۔

مشترکہ افادیت کے ساتھ سمجھوتوں کا جائزہ لیں

شامل کردہ مصنوعی بینچ مارک رپورٹ کرتا ہے کہ آن لائن SAGE درج کردہ بنیادی طریقوں کے مقابلے میں زیادہ نقلی معیار اور مشترکہ افادیت حاصل کرتا ہے، جبکہ static SAGE سے زیادہ خرچ کرتا ہے۔ یہ نمایاں سمجھوتا اہم ہے: روٹنگ کو صلاحیت پر مبنی اسکور کے پیچھے لاگت نہیں چھپانی چاہیے۔

یہ بینچ مارک مصنوعی ہے اور حقیقی دنیا میں برتری کا ثبوت نہیں ہے۔ حقیقی تعیناتی کے جائزے کے لیے نمائندہ عمل درآمد، مضبوط روٹنگ بنیادی طریقے، کیلیبریشن کا تجزیہ، مارکیٹ پلیس ٹریس ری پلے، متنوع ایجنٹس اور مخالفانہ حالات درکار ہوتے ہیں۔

تحقیقی پیش نظارہ کی حدود سمجھیں

SAGE ابتدائی مرحلے کا تحقیقی پیش نظارہ ہے، نہ کہ پروڈکشن سروس لیول کی ضمانت یا ہم مرتبہ جائزے سے منظور شدہ نتیجہ۔ اس کی ہلکی پھلکی سیکھی ہوئی پالیسی حقیقی ٹریسز پر تربیت یا علّی آف پالیسی سے باہر کے جائزے کی جگہ نہیں لیتی۔

پروڈکشن تعیناتی سے پہلے، README کیلیبریٹڈ ایویلیوٹرز، تصدیق شدہ شناختیں، دستخط شدہ صلاحیت کا میٹا ڈیٹا، رازداری اور سکیورٹی کا جائزہ، مستقل ایونٹ پر مبنی بحالی، نگرانی اور کام کے مخصوص توثیق کے عمل کی سفارش کرتا ہے۔ A2A دریافت، عمل درآمد، اسٹریمنگ اور منسوخی کے لیے حقیقی اڈاپٹرز، نیز تقسیم شدہ سروس آپریشن اور انسانی منظوری کے مراحل، روڈ میپ میں شامل ہیں۔

ریپوزٹری کے وسائل

  • sprix_sage.py میں سیاقی روٹر، DAG شیڈیولر، بیم سرچ اور آن لائن اپ ڈیٹس شامل ہیں۔
  • demo.py ایک مکمل اختتام تا اختتام مثال فراہم کرتا ہے۔
  • benchmark.py میں بیرونی سمیولیٹر اور مشترکہ افادیت کے بنیادی طریقے شامل ہیں۔
  • test_sprix_sage.py میں رویہ جاتی یونٹ ٹیسٹس شامل ہیں۔
  • ALGORITHM.md رسمی مقصد، تلاش کے عمل، کریڈٹ کی تقسیم اور حدود کو دستاویزی شکل دیتا ہے۔
  • GitHub ریپوزٹری میں شراکت، سکیورٹی، گورننس اور لائسنس سے متعلق معلومات شامل ہیں۔

نتیجہ

Sprix SAGE Router حالت سے باخبر ایجنٹ میچنگ کے لیے ایک عملی حوالہ جاتی نفاذ فراہم کرتا ہے۔ کام کو تقاضوں کے DAGs کی صورت میں ظاہر کر کے، مشترکہ پابندیوں کے تحت SELF، COLLABORATE اور HANDOFF کا موازنہ کر کے، اور عمل درآمد کے شواہد روٹر کو واپس فراہم کر کے، آپ قابلِ آڈٹ کثیر ایجنٹ فیصلوں کے ساتھ تجربہ کر سکتے ہیں جو متوقع معیار اور عملیاتی لاگت دونوں کو مدِنظر رکھتے ہیں۔

demo.py سے آغاز کریں، کم سے کم مثال کو دوبارہ چلائیں، روٹنگ کے ہر فیصلے کا معائنہ کریں، اور ٹیسٹس اور مصنوعی بینچ مارک چلائیں۔ حقیقی A2A تعیناتی کے لیے ایک الگ عمل درآمد اڈاپٹر شامل کریں اور اپنے ماحول کے لیے درکار تصدیق، سکیورٹی، آبزرویبلٹی، بحالی اور توثیق کا کام مکمل کریں۔