کتابخانه های مهارت و یادگیری در طول عمر (Voyager)
Type: Build
Languages: Python (stdlib)
Prerequisites: Phase 14 · 07 (MemGPT), Phase 14 · 08 (Letta Blocks)
Time: ~75 minutes
اهداف یادگیری
- نام سه عنصر Voyager را نام دهید برنامه آموزشی خودکار، کتابخانه مهارت، تحریک تکراری و نقش هر یک.
- توضیح بده چرا "واژجر" کد فضایی عمل رو می کنه نه دستورات ابتدایی
- یک کتابخانه مهارت stdlib را با ثبت، بازیافت، ترکیب و اصلاح ناشی از شکست اجرا کنید.
- نقشه نقشه ی "واژجر" رو روی مهارت های "کلود" آژانس ۲۰۲۶ و اکوسیستم "کلیک کیت" نقشه ای بزنیم.
مشکل
ماموران که هر کاري رو از ابتدا مي سازن در هر جلسه سه کاري اشتباه ميکنن:
- Waste tokens.هر کار دوباره همان استدلال را به وجود می آورد.
- Lose progress.تصحیح هایی که در جلسه A یاد گرفته شده به جلسه B منتقل نمی شوند.
- Fail on long-horizon composition.وظایف پیچیده نیازمند سلسله مراتب توانایی هستند؛ پیام های یکبار نمی توانند آن ها را بیان کنند.
پاسخ واجر: هر قابلیت قابل استفاده مجدد را به عنوان یک کدهای نامگذاری ذخیره شده در یک کتابخانه، قابل بازیافت با شباهت، قابل ترکیب با مهارت های دیگر، و با بازخورد اجرای بهبود بخشید.
مفهوم
سه عنصر
وواژر (ارکسيف:2305.16291) یک عامل را در اطراف:
- Automatic curriculum.یک پیشنهاد دهنده با کنجکاوی، وظیفه بعدی را بر اساس مهارت فعلی و وضعیت محیط کاربری انتخاب می کند. اکتشاف از پایین به بالا است.
- Skill library.هر مهارت کد قابل اجرا است. مهارت های جدید زمانی اضافه می شوند که یک کار موفق شود. مهارت ها با شباهت سوال به توصیف بازیافت می شوند.
- 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 کلاود عامل است: یک قسمت نامگذاری شده و قابل بازیابی از کد به علاوه دستورالعمل هایی که عامل به صورت تقاضا بار می کند.
بازیافت مهارت ها
وظیفه جدید "بنیاد یک پیکه الماس"
- شرح کار رو دربر میذاره
- از کتابخانه مهارت ها برای مهارت های مشابه بالا سوال می کنم
- بازمی گردد
craftIronPickaxe،mineDiamond،placeCraftingTableو غیره - مهارت جدید را از ابتدایی های باز یافت شده + منطق جدید ترکیب می کند.
این الگوی استفاده از منابع MCP (فاز 13) و مهارت های SDK عامل است: بازیافت بر روی سطح دانش/کد، که به وظیفه فعلی اختصاص دارد.
اصلاح تکراری
بازتاب بازي از "واژجر":
- مامور يه مهارت مي نويسه
- مهارت با محیط زیست مبارزه می کند.
- یکی از سه سیگنال برگشت:
success،error(با ردیابی سنگینی)self-verification failure. . - مامور مهارت رو با استفاده از سيگنال به عنوان سياق دوباره مي نويسه
- تا موفقيت يا تا حداکثر دورها ادامه بده
این خود تصفیه (درسی 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یک کتابخانه مهارت به شکل "واژجر" را با ثبت، بازیافت، ویرایش و اصلاح برای هر زمان اجرا هدف به کار می برد.
تمرینات
- یک آشکارگر چرخه وابستگی را به اضافه کنید
compose()چه اتفاقی می افتد وقتی مهارت A به B بستگی داره که به A بستگی داره؟ خطا به مقابل هشدار؟ - در زماني که يه مهارت پدر و مادر بچه را تشکيل ميکنه
crafting@1، يه تصفيحه بهcrafting@2نباید به طور ساکت به پدر و مادر ارتقاء بده. - جایگزین کردن بازیافت token-overlap با پیوند های جملاتی (یا یک BM25 stdlib impl). بازیافت@5 را در یک کتابخانه اسباب بازی 50 مهارت اندازه گیری کنید.
- یک عامل "سیستم آموزشی" اضافه کنید: با توجه به کتابخانه فعلی و یک توصیف دامنه، 5 مهارت گمشده را پیشنهاد کنید.
- اسناد مهارت های کلاود آژانت SDK آنترپیک را بخوانید. کتابخانه اسباب بازی را به طرح مهارت SDK منتقل کنید. در مورد کشف پذیری چه تغییری می کند؟
اصطلاحات کلیدی
| Term | What people say | What 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 |
خواندن بیشتر
- Wang et al., Voyager (arXiv:2305.16291) کاغذ کتابچه مهارت های اصلی
- Claude Agent SDK overview مهارت های تولید در سال 2026
- Anthropic, Building agents with the Claude Agent SDK مهارت ها و زیرنویس ها در عمل
- Madaan et al., Self-Refine (arXiv:2303.17651) حلقه تصفيفي در زیر "واژجر"
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.