أفضل شيء في مهارات الوكيل هو تحسين المهارات وكلاؤك في المشاكل الصعبة. هناك طريقتان للنظر إلى ذلك:
- يمكنك استخدام Opus 4.5 أو نماذج SOTA الأخرى ومعالجة أصعب المشكلات الموجودة.
- يمكنك استخدام النماذج التي تعمل على الكمبيوتر المحمول الخاص بك ورفع مهاراتهم في حل المشكلات الأصعب. في منشور المدونة هذا، سنوضح لك كيفية التعامل مع هذا الأخير.
تتناول مشاركة المدونة هذه عملية استخدام أداة جديدة، upskillلتوليد مهارات الوكيل وتقييمها باستخدام النماذج الكبيرة واستخدامها مع النماذج الأصغر. سوف نقوم بوضع المعايير upskill في مهمة كتابة نواة CUDA لـ diffusers النماذج، ولكن العملية مفيدة بشكل عام لخفض التكاليف، أو استخدام نماذج أصغر لحل المشكلات الصعبة والمجالات المحددة.
ما هي مهارات الوكيل؟
في حال فاتتك هذه الفرصة، فإن مهارات الوكيل ستأخذ لعبة وكيل البرمجة على محمل الجد. في الواقع، إنها مفهوم مباشر لتعريف سياق النموذج كملفات، مثل التعليمات مثل تخفيض السعر والتعليمات البرمجية مثل البرامج النصية. يسهل تنسيق الملف إنشاءها ومشاركتها ومراجعتها. باختصار، إنها وسيلة عملية لمشاركة القدرات عبر النماذج والأدوات، وهي مفيدة للغاية في مجالات محددة أو مشكلات صعبة. لا يمكن للنموذج أن يعمل بشكل جيد على أي حال.
يعرض هذا المنشور هذه العملية باستخدام Claude لإنشاء ملف Skill الذي يمكن استخدامه بواسطة نماذج مفتوحة المصدر لمهمة معقدة ومتخصصة: كتابة نواة CUDA. لقد جربنا أولاً مهارة بسيطة بناءً على الوثائق الموجودة، ووجدنا أنها أدت إلى تحسين الأداء لدى البعض الآخر، ولكن ليس جميعهم. في الواقع، قد يؤدي ذلك إلى انخفاض الأداء أو زيادة استخدام الرمز المميز لبعض النماذج. قم بإلقاء نظرة على المخطط أدناه لمعرفة أداء النموذج مع وبدون المهارة الأساسية.
الآن، دعونا نتعرف على كيفية استخدامك upskill لتحسين مهارات وكلائك في حل المشكلات الصعبة، وقياس الأداء.
1. اطلب من المعلم (كلود أوبوس 4.5) بناء النواة
أولاً، نستخدم Claude Code لبناء نواة بشكل تفاعلي وتصدير التتبع. لقد عملنا خلال هذه العملية عن طريق توجيه روابط التوثيق والتحقق من صحتها وإضافتها. تعتبر هذه العملية الساذجة إلى حد ما مهمة للكشف عن التحديات الأولية التي تواجه النماذج. في الواقع، يمكنك تكرار ذلك عدة مرات، من خلال محاولة حل المهمة باستخدام إصدارات أولية من المهارة، وتجربة نماذج أصغر. في كل مرة، يمكنك توجيه العميل لتحسين المهارة واختبارها على النموذج الأصغر.
فيما يلي مثال على المهارة التي أنشأناها ونستخدمها في بناء النوى. لقد بدأنا من تتبع الوكيل حيث تمكن الوكيل من بناء نواة، ولكن ليس بدون بعض المساعدة.
2. اصنع مهارة الوكيل من الأثر
بمجرد أن يؤدي نموذج المعلم المهمة، نحتاج منهم أن يصنعوا مهارة ما. هناك عدد من الطرق الفعالة للقيام بذلك.
- خلال نفس الجلسة، اطلب من الوكيل إنشاء ملف مهارات للمهمة التي أكملها للتو.
- استخدم مهارة “منشئ المهارات” البشرية إما خلال جلسة الوكيل أو من خلال التتبع المُصدَّر وجلسة الوكيل الجديدة.
- استخدم
upskillأداة لإنشاء مهارة تعتمد على التتبع.
في معظم الحالات، يؤدي الخياران الأولان إلى مهارات وظيفية. ومع ذلك، فإن أداء الوكيل الذي يتمتع بالمهارة غير معروف. هذا هو المكان upskill مفيد، لأنه سيولد أيضًا حالات اختبار لمهاراتك بناءً على التتبع. ثم يقوم بمقارنة النتائج في كلا السيناريوهين: استخدام التتبع، أو تطبيق المهارة. نرى أدناه أن النموذج الأصلي (كلود أوبوس) حقق نفس الأداء مع المهارة وبدونها. وهذا يعني أن المهارة استحوذت على المهمة لهذا النموذج. عظيم!

3. خذ مهارتك إلى نموذج مفتوح المصدر أو أصغر أو أرخص
وأخيرًا، نحتاج إلى نقل مهاراتنا التي ابتكرناها حديثًا إلى الأداة أو النموذج الذي نعتزم استخدامه. معظم الأدوات مثل codex, cursor، و opencode لقد استقروا على تنسيق ثابت للمهارات، وهو دليل في {agent}/skills/{skill_name}/SKILL.md ، لذلك نحتاج فقط إلى نسخ دليل المهارات إلى هذا الموقع.
مع upskill يمكننا تمرير مهارة ومجموعة من النماذج إلى eval أمر و upskill سيتم تشغيل حالات الاختبار على تلك النماذج مع وبدون المهارة لمقارنة الأداء. يمكننا أن نرى هنا أن المهارة تزيد من الدقة في بعض النماذج المفتوحة، ولكن ليس في جميع النماذج.

في هذه الحالة، قد نرغب في تكرار الأمر أكثر gpt-oss المهارات من خلال تجديد المهارة. يمكننا أن نفعل upskill generate --from {skill}.
هناك ما هو أكثر في مهارات الوكيل من أداء النموذج. في كثير من الأحيان يمكن للوكلاء الوصول إلى دقة معينة بمهارة أو بدونها، فهم يحتاجون فقط إلى استهلاك المزيد من الرموز للوصول إلى هناك. بالنسبة للمهام المتكررة، نريد تحسين الوكلاء لاستخدام عدد أقل من الرموز لتحقيق نفس الدقة. النتائج أدناه تكشف عن بعد آخر للمهارة. تعمل بعض النماذج على تقليل استخدام الرموز المميزة للأداء بشكل كبير، بينما يستخدم البعض الآخر المزيد من الرموز المميزة مع المهارة. على سبيل المثال، مع moonshotai/Kimi-K2-Thinking من الواضح أن المهارة فعالة من حيث الدقة واستخدام الرمز المميز. ومع ذلك، بالنسبة لـ Claude Opus 4.5، لا توجد زيادة واضحة في الأداء وزيادة في استخدام الرمز المميز، لذلك لن ترغب في استخدام هذه المهارة مع Claude Opus 4.5.

تلدر؛ جرب النماذج وقم بتقييمها بالمهارات التي تنشئها. يستخدم upskill eval أو أداة مشابهة لتقييم أداء النماذج بالمهارات وبدونها.
هذا هو المستوى العالي لتحسين مهارات وكلاء البرمجة لديك في حل المشكلات الصعبة. جرب المهارة الآن مثل هذا:
# install upskill
pip install upskill
# or use uvx
uvx upskill --help
# generate a skill based on an agent trace
upskill generate "write nvidia kernels" --from ./trace.md
# evaluate models on a skill
upskill eval ./skills/my-skill/ --model haiku --model sonnet
# generate skills for local models
upskill generate "parse YAML"
--model opus
--eval-model "unsloth/GLM-4.7-Flash-GGUF:Q4_0"
--eval-base-url http://localhost:8080/v1
برنامج تعليمي عميق حول بناء النوى باستخدام مهارات الوكيل
لدينا فهم عالي المستوى لكيفية تحسين مهارات الوكيل. دعونا الآن نلقي نظرة على حالة الاستخدام التي قمنا بحلها لكتابة نواة CUDA.
لم نرغب فقط في كتابة كود النواة، ولكننا نريد فهم سير العمل الكامل لمنشئ النواة: بنية المشروع، build.toml التكوين والتحسينات الخاصة بالهندسة المعمارية وارتباطات PyTorch. يوضح هذا البرنامج التعليمي كيف يؤدي تحسين المهارات إلى إنشاء مهارات تم التحقق من صحتها وتعمل بالفعل.
ال kernel-builder-cuda-kernels تعلم المهارة كلود كل ما يحتاج إلى معرفته حول تطوير CUDA: أي بنية GPU يجب استهدافها، وكيفية هيكلة مشروع منشئ kernel، ومتى يتم استخدام الذاكرة المشتركة مقابل السجلات، وكيفية كتابة روابط PyTorch.
باستخدام هذه المهارة، يمكنك إخبار كلود بأشياء مثل:
Build a fused LayerNorm + GELU kernel optimized for H100.
وسيقوم كلود بإنشاء هيكل المشروع الكامل، وتنفيذ CUDA، وتكوين البناء — باتباع الاصطلاحات الدقيقة التي يتوقعها منشئ kernel.
هذا لا يتعلق بإنشاء نموذج معياري. تقوم المهارة بتشفير الخبرة في المجال: يستخدم H100 قدرة الحوسبة 9.0، ويجب محاذاة الذاكرة المشتركة إلى 128 بايت، وتتطلب نسخ الذاكرة غير المتزامنة __CUDA_ARCH__ >= 900. يتم تجميع المعرفة التي قد يستغرق جمعها ساعات من الوثائق في حوالي 500 رمز مميز يتم تحميلها عند الطلب.
الإعداد والتثبيت
تثبيت المهارة:
pip install upskill
# or use uvx for one-off runs
uvx upskill --help
قم بتعيين مفتاح API الخاص بك:
export ANTHROPIC_API_KEY=sk-ant-...
export HF_TOKEN=hf_...
هذا كل شيء. يستخدم Upskill نموذج Anthropic Claude Opus-4.5 بشكل افتراضي ولكنه يدعم أيضًا OpenAI والنماذج المحلية عبر نقاط النهاية المتوافقة مع OpenAI كمولدات. نريد استخدام النماذج الأكثر تكلفة والأعلى جودة لتوليد المهارات، والنماذج الأصغر لاستخدامها. فكر في روبن هود.
توليد المهارات
دعنا نتعرف على كيفية إنشاء مهارة تعلم الوكلاء كيفية بناء نواة CUDA باستخدام HuggingFace kernels مكتبة.
توليد المهارة
ابدأ بوصف واضح للمهمة:
upskill generate "build optimized CUDA kernels for PyTorch using HuggingFace kernel-builder"
استخدمنا أعلاه ميزة تحسين المهارات، ولكن يمكن أن تكون في الواقع أي وكيل أو أداة دردشة وتتبع مُصدَّر.
upskill generate "write kernels" --from <agent-trace>.md
ويمكننا أيضًا أن نبدأ من مهارة موجودة ونضيف إليها:
upskill generate "add more error handling and edge cases"
--from ./skills/kernel-builder-cuda-kernels/
يقوم تحسين المهارات بتحميل المهارة الحالية، وتطبيق التحسينات التي أجريتها، وإعادة التقييم للتأكد من أن التغييرات تساعد.
يؤدي تطوير المهارات إلى إنشاء مهارة، وإنشاء حالات اختبار، وتقييم الأداء، وتحسينه بناءً على حالات الفشل:
Generating skill with sonnet...
Generating test cases...
Evaluating on sonnet... (attempt 1)
60% -> 95% (+35%) OK
kernel-builder-cuda-kernels
Build optimized CUDA kernels for PyTorch using HuggingFace kernel-builder.
SKILL.md ~520 tokens
baseline ████████████ 60%
with skill ███████████████████ 95% (+35%)
Saved to ./skills/kernel-builder-cuda-kernels
يوضح خط الأساس كيفية أداء النموذج دون أي مهارة. تُظهر نتيجة “بالمهارة” الأداء بعد إدخال المهارة في السياق. التحسن بنسبة 35% يعني أن المهارة تعمل.
يتم حفظ المهارة كدليل يتبع مواصفات مهارات الوكيل:
./skills/kernel-builder-cuda-kernels/
├── SKILL.md # Main instructions (~520 tokens)
└── skill_meta.json # Metadata and test cases
افتح `SKILL.md` لترى ما هي المهارات التي تم إنشاؤها:
---
name: kernel-builder-cuda-kernels
description: Build optimized CUDA kernels for PyTorch using HuggingFace kernel-builder.
---
# Building CUDA Kernels with kernel-builder
## Overview
This guide explains how to create optimized CUDA kernels for PyTorch models
using HuggingFace's kernel-builder. It covers project setup, kernel implementation,
and building for specific GPU architectures like NVIDIA H100.
## Project Structure
project/
├── build.toml # Build configuration
├── kernel_src/ # CUDA kernel implementations
│ ├── attention.cu
│ ├── layernorm.cu
│ └── geglu.cu
└── torch-ext/ # PyTorch C++ bindings
└── torch_binding.cpp
## Build Configuration
Create `build.toml` to define your kernel package:
[general]
name = "diffuser_kernels"
backends = ["cuda"]
[general.cuda]
# H100 is compute capability 9.0
capabilities = ["9.0"]
...
التقييم على نموذج مختلف
والاختبار المهم هو: هل تساعد هذه المهارة النماذج المحلية أو الرخيصة في بناء النوى؟
# Start a local OpenAI-compatible server with a web UI:
llama-server -hf unsloth/GLM-4.7-Flash-GGUF:Q4_K_M
# Evaluate on local model (llama.cpp server)
upskill eval ./skills/my-skill/
--model "unsloth/GLM-4.7-Flash-GGUF:Q4_0"
--base-url http://localhost:8080/v1
Generating skill with sonnet...
Generating test cases...
Evaluating on "unsloth/GLM-4.7-Flash-GGUF:Q4_0"... (attempt 1)
40% -> 85% (+45%) OK
baseline ████████░░░░░░░░░░░░ 40%
with skill █████████████████░░░ 85% (+45%)
Saved to ./skills/kernel-builder-cuda-kernels
تحسن بنسبة 45% "unsloth/GLM-4.7-Flash-GGUF:Q4_0" تعني أن المهارة تنقل المعرفة بالمجال بنجاح من نموذج قادر إلى نموذج أسرع وأرخص. المهارات التي تعمل على النماذج الأضعف ستعمل بالتأكيد على النماذج الأقوى.
هذه هي القيمة الأساسية المقترحة: استخدام نماذج باهظة الثمن لخلق المهارات، ثم نشر تلك المهارات باستخدام نماذج رخيصة أو محلية.
كيف يعمل التقييم في الارتقاء بالمهارة
يستخدم upskill نهج المعلم والطالب لتقييم النماذج حيث يقوم نموذج المعلم بإنشاء حالات اختبار لنموذج الطالب ليتم تقييمه عليها.
- نموذج المعلم (أوبوس) يولد المهارة
- حالات الاختبار (Opus) يتم إنشاؤها تلقائيًا من وصف المهمة
- نموذج الطالب (محلي) يتم تقييمه بالمهارة وبدونها
- رفع المهارة يقيس التحسن
إذا قمت بتمرير مهارة موجودة إلى upskill evalسيتم إنشاء حالات اختبار للمهارة وتقييم النموذج عليها. حالات الاختبار هي أزواج إدخال/إخراج بسيطة تتحقق من فهم الوكيل للمهمة:
{
"cases": [
{
"input": "Create a build.toml for a CUDA kernel targeting H100",
"expected": {"contains": "9.0"}
},
{
"input": "Write a basic CUDA kernel template with proper includes",
"expected": {"contains": "cuda_runtime.h"}
}
]
}
يمكننا أيضًا اختبار كيفية أداء المهارة عبر نماذج مختلفة:
upskill eval ./skills/kernel-builder-cuda-kernels/
--model haiku --m kimi --runs 5
Evaluating kernel-builder-cuda-kernels across 2 model(s)
3 test case(s), 5 run(s) per model
haiku
Pass rate: 4/5 (80%) Avg assertions: 2.8/3
sonnet
Pass rate: 5/5 (100%) Avg assertions: 3.0/3
┏━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Model ┃ Pass Rate ┃ Avg Assertions ┃ Avg Tokens ┃
┡━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ haiku │ 4/5 │ 2.8/3 │ 1250 │
│ kimi │ 5/5 │ 3.0/3 │ 1890 │
└────────┴───────────┴────────────────┴────────────┘
يساعدك هذا في العثور على النقطة المثالية لأداء التكلفة: ربما يكون Haiku مع المهارة جيدًا بما يكفي لحالة الاستخدام الخاصة بك، مما يوفر تكاليف كبيرة لواجهة برمجة التطبيقات (API).
ما هو التالي
لقد أظهرنا أن تحسين المهارات يمكن أن يخلق مهارات تم التحقق من صحتها وتنقل الخبرة في المجال من النماذج القوية إلى النماذج الأرخص. إن مهارة منشئ النواة هي مجرد مثال واحد لما هو ممكن.
بعض الأشياء التي يمكنك تجربتها:
- توليد المهارات لأدواتك الداخلية
- أنشئ مكتبة مهارات لقاعدة التعليمات البرمجية الخاصة بك
- التقاط المعرفة القبلية
- المعيار عبر النماذج
يعمل هذا الأسلوب مع أي مهمة متخصصة حيث يمكنك كتابة مطالبات مفصلة بشكل متكرر. يمكن نقل المهارات عبر Claude Code وCodex وCursor والأدوات الأخرى التي تدعم مواصفات مهارات الوكيل.
موارد