Phase 14: Agent Engineering

کتابخانه های مهارت و یادگیری در طول عمر (Voyager)

Voyager (Wang et al., TMLR 2024) کد اجرا را به عنوان یک مهارت در نظر می گیرد. مهارت ها با بازرسی اطلاعات محیطی نامگذاری می شوند، قابل بازیافت، قابل ترکیب و بهبود می یابند. این معماری مرجع برای مهارت های SDK کلاود آژانت، مهارت کیت و الگوی کتابخانه مهارت 2026 است.

Type: Build

Languages: Python (stdlib)

Prerequisites: Phase 14 · 07 (MemGPT), Phase 14 · 08 (Letta Blocks)

Time: ~75 minutes

اهداف یادگیری

  • نام سه عنصر Voyager را نام دهید برنامه آموزشی خودکار، کتابخانه مهارت، تحریک تکراری و نقش هر یک.
  • توضیح بده چرا "واژجر" کد فضایی عمل رو می کنه نه دستورات ابتدایی
  • یک کتابخانه مهارت stdlib را با ثبت، بازیافت، ترکیب و اصلاح ناشی از شکست اجرا کنید.
  • نقشه نقشه ی "واژجر" رو روی مهارت های "کلود" آژانس ۲۰۲۶ و اکوسیستم "کلیک کیت" نقشه ای بزنیم.

مشکل

ماموران که هر کاري رو از ابتدا مي سازن در هر جلسه سه کاري اشتباه ميکنن:

  1. Waste tokens.هر کار دوباره همان استدلال را به وجود می آورد.
  2. Lose progress.تصحیح هایی که در جلسه A یاد گرفته شده به جلسه B منتقل نمی شوند.
  3. Fail on long-horizon composition.وظایف پیچیده نیازمند سلسله مراتب توانایی هستند؛ پیام های یکبار نمی توانند آن ها را بیان کنند.

پاسخ واجر: هر قابلیت قابل استفاده مجدد را به عنوان یک کدهای نامگذاری ذخیره شده در یک کتابخانه، قابل بازیافت با شباهت، قابل ترکیب با مهارت های دیگر، و با بازخورد اجرای بهبود بخشید.

مفهوم

سه عنصر

وواژر (ارکسيف:2305.16291) یک عامل را در اطراف:

  1. Automatic curriculum.یک پیشنهاد دهنده با کنجکاوی، وظیفه بعدی را بر اساس مهارت فعلی و وضعیت محیط کاربری انتخاب می کند. اکتشاف از پایین به بالا است.
  2. Skill library.هر مهارت کد قابل اجرا است. مهارت های جدید زمانی اضافه می شوند که یک کار موفق شود. مهارت ها با شباهت سوال به توصیف بازیافت می شوند.
  3. Iterative prompting mechanism.در صورت شکست، مامور خطا های اجرا، بازخورد محیط و خود تأیید محصول را دریافت می کند، سپس مهارت را بهبود می بخشد.

ارزیابی Minecraft (Wang و همکارانش، 2024): 3.3x موارد منحصر به فرد، 8.5x ابزار سنگ سریعتر، 6.4x ابزار آهن سریعتر، 2.3x عبور نقشه طولانی تر در مقابل خط های پایه. اعداد مخصوص Minecraft هستند، اما الگوی انتقال.

فضای عمل = کد

بیشتر ماموران دستورات ابتدایی را صادر می کنند وواژگر عملکردهای جاوا اسکریپت را صادر می کند.

async function craftIronPickaxe(bot) {
  await mineIron(bot, 3);
  await mineStick(bot, 2);
  await placeCraftingTable(bot);
  await craft(bot, 'iron_pickaxe');
}

از مهارت هاي فرعي ساخته شده، با کلیدي در وصف و گنجينه نگه داشته شده، به عنوان برنامه بازيافت شده، نه به عنوان يه پرامپت

این مهارت SDK 2026 کلاود عامل است: یک قسمت نامگذاری شده و قابل بازیابی از کد به علاوه دستورالعمل هایی که عامل به صورت تقاضا بار می کند.

بازیافت مهارت ها

وظیفه جدید "بنیاد یک پیکه الماس"

  1. شرح کار رو دربر میذاره
  2. از کتابخانه مهارت ها برای مهارت های مشابه بالا سوال می کنم
  3. بازمی گرددcraftIronPickaxe،mineDiamond،placeCraftingTableو غیره
  4. مهارت جدید را از ابتدایی های باز یافت شده + منطق جدید ترکیب می کند.

این الگوی استفاده از منابع MCP (فاز 13) و مهارت های SDK عامل است: بازیافت بر روی سطح دانش/کد، که به وظیفه فعلی اختصاص دارد.

اصلاح تکراری

بازتاب بازي از "واژجر":

  1. مامور يه مهارت مي نويسه
  2. مهارت با محیط زیست مبارزه می کند.
  3. یکی از سه سیگنال برگشت:success،error(با ردیابی سنگینی)self-verification failure. .
  4. مامور مهارت رو با استفاده از سيگنال به عنوان سياق دوباره مي نويسه
  5. تا موفقيت يا تا حداکثر دورها ادامه بده

این خود تصفیه (درسی 05) برای تولید کد با تأیید مبتنی بر محیط است. CRITIC (درسی 05) همان الگوی با ابزار خارجی است که تایید کننده است.

برنامه درسی و اکتشاف

ماژول برنامه درسی Voyager وظایف مانند "بنیاد پناهگاه در نزدیکی دریاچه" را بر اساس آنچه که عامل دارد و آنچه که هنوز انجام نداده است پیشنهاد می دهد. پیشنهاد دهنده از وضعیت محیط زیست + فهرست مهارت برای انتخاب یک کار درست بالاتر از توانایی فعلی استفاده می کند.

برای عوامل تولید این به یک عامل "چه چیزی از دست می رود" ترجمه می شود: با توجه به کتابخانه مهارت های فعلی و یک دامنه، چه مهارت هایی هنوز پوشش نمی دهیم؟ تیم ها معمولا این را به صورت دستی به عنوان بررسی برنامه درسی اجرا می کنند.

جایی که این الگوی اشتباه می شود

  • Skill library rot.همان مهارت 10 بار با توضیحات کمی متفاوت اضافه شده است. اضافه کردن تخفیف در نوشتن؛ بازیافت فقط یک بار بازمی گردد.
  • Composed-skill drift.مهارت پدر و مادر به کودک وابسته است که اصلاح شده است مهارت نسخه ای؛ یک پدر و مادر به v1 متصل به به طور جادویی v3 را نمی گیرد.
  • Retrieval quality.بازیافت ویکتور در توصیف مهارت ها با افزایش تعداد چند صد کتابخانه کاهش می یابد.category=tooling").

آن را بسازید

code/main.pyیک کتابخانه مهارت های stdlib را اجرا می کند:

  • Skill نام، توصیف، کد (به عنوان رشته) ، نسخه، برچسب ها، وابستگی ها.
  • SkillLibrary ثبت، جستجو (توکین ها همپوشانی) ، ترکیب (توبولوژیک نوع deps) و اصلاح (برخورد نسخه در حال بروزرسانی).
  • يه مامور اسکریپت شده که سه مهارت ابتدایی ثبت کرده، چهارمین رو مرتب کرده، شکست خورده و رو به رو کرده

اجرا کن

python3 code/main.py

ردیابی کتابچه نوشته ها، بازیافت، ترکیب، اجرای شکست خورده و اصلاح v2 را نشان می دهد

ازش استفاده کن

  • Claude Agent SDK skills(انترپ) مرجع 2026: هر مهارت دارای توصیف، کد و دستورالعمل است؛ در طول جلسه یک نماینده به صورت تقاضا بارگذاری می شود.
  • skillkit(npm: skillkit) مدیریت مهارت های بین عوامل برای 32+ آژانس کدگذاری هوش مصنوعی.
  • Custom skill libraries دامنه خاص (مهارتی SQL برای عوامل داده، مهارت های Terraform برای عوامل زیرزمینی) الگوی Voyager کاهش می یابد.
  • OpenAI Agents SDK tools در پایان پایین؛ هر ابزار یک مهارت سبک وزن است.

-باده

outputs/skill-skill-library.mdیک کتابخانه مهارت به شکل "واژجر" را با ثبت، بازیافت، ویرایش و اصلاح برای هر زمان اجرا هدف به کار می برد.

تمرینات

  1. یک آشکارگر چرخه وابستگی را به اضافه کنیدcompose()چه اتفاقی می افتد وقتی مهارت A به B بستگی داره که به A بستگی داره؟ خطا به مقابل هشدار؟
  2. در زماني که يه مهارت پدر و مادر بچه را تشکيل ميکنهcrafting@1، يه تصفيحه بهcrafting@2نباید به طور ساکت به پدر و مادر ارتقاء بده.
  3. جایگزین کردن بازیافت token-overlap با پیوند های جملاتی (یا یک BM25 stdlib impl). بازیافت@5 را در یک کتابخانه اسباب بازی 50 مهارت اندازه گیری کنید.
  4. یک عامل "سیستم آموزشی" اضافه کنید: با توجه به کتابخانه فعلی و یک توصیف دامنه، 5 مهارت گمشده را پیشنهاد کنید.
  5. اسناد مهارت های کلاود آژانت SDK آنترپیک را بخوانید. کتابخانه اسباب بازی را به طرح مهارت SDK منتقل کنید. در مورد کشف پذیری چه تغییری می کند؟

اصطلاحات کلیدی

TermWhat people sayWhat it actually means
Skill"Reusable capability"Named chunk of code + description, retrievable by similarity
Skill library"Agent memory of how-to"Persistent store of skills, searchable and composable
Curriculum"Task proposer"Bottom-up goal generator driven by current capability gap
Composition"Skill DAG"Skills invoking skills; topologically sorted on execution
Iterative refinement"Self-correcting loop"Env feedback + errors + self-verification fold back into the next version
Action-space-as-code"Programmatic actions"Emit functions, not primitive commands, for temporally extended behavior
Dedup on write"Skill collapse"Near-duplicate descriptions collapse to one canonical skill

خواندن بیشتر

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.