حزم المهارات¶
نظرة عامة¶
حزم المهارات هي حزم قدرات معيارية تُوسع وكلاء BrainSAIT بوظائف محددة. يصف هذا المستند بنية حزم المهارات والحزم المتاحة وكيفية إنشاء مهارات مخصصة.
البنية¶
هيكل الحزمة¶
skill-bundle/
├── manifest.yaml
├── skills/
│ ├── skill1.py
│ └── skill2.py
├── prompts/
│ ├── system.md
│ └── examples/
├── models/
│ └── config.yaml
├── tests/
│ └── test_skills.py
└── README.md
مخطط البيان¶
name: claims-analysis
version: 1.2.0
description: قدرات تحليل المطالبات المتقدمة
author: BrainSAIT
license: proprietary
dependencies:
- core >= 1.0
- nlp >= 2.0
skills:
- name: rejection-analyzer
entry: skills/rejection_analyzer.py
class: RejectionAnalyzer
- name: code-suggester
entry: skills/code_suggester.py
class: CodeSuggester
config:
model: claude-sonnet-4-5-20250929
temperature: 0.1
max_tokens: 4096
حزم المهارات الأساسية¶
حزمة الرعاية الصحية¶
الاسم: healthcare-core
المهارات: - claim-validator - التحقق من مطالبات FHIR - code-mapper - ربط ICD-10/CPT - policy-checker - التحقق من التغطية - document-extractor - معالجة المستندات الطبية
التبعيات: - نماذج المصطلحات الطبية - مُحقق FHIR - قواعد بيانات الترميز
حزمة معالجة المستندات¶
الاسم: document-processing
المهارات: - ocr-engine - استخراج النص - table-extractor - التعرف على الجداول - form-parser - استخراج حقول النماذج - layout-analyzer - هيكل المستند
التبعيات: - Tesseract OCR - نماذج الرؤية الحاسوبية - نماذج التخطيط
حزمة التحليلات¶
الاسم: analytics-core
المهارات: - trend-analyzer - اكتشاف الأنماط - anomaly-detector - تحديد القيم الشاذة - forecaster - التنبؤات - report-generator - التقارير الآلية
التبعيات: - النماذج الإحصائية - نماذج السلاسل الزمنية - مكتبات التصور
تثبيت الحزم¶
من السجل¶
# التثبيت من سجل BrainSAIT
brainsait bundle install healthcare-core
# تثبيت إصدار محدد
brainsait bundle install healthcare-core@1.2.0
# سرد الحزم المثبتة
brainsait bundle list
من المصدر¶
# التثبيت من مسار محلي
brainsait bundle install ./my-bundle
# التثبيت من Git
brainsait bundle install git://github.com/brainsait/bundle.git
استخدام المهارات¶
في تكوين الوكيل¶
# agent.yaml
name: ClaimLinc
version: 1.0
bundles:
- healthcare-core
- document-processing
skills:
- rejection-analyzer
- code-mapper
- document-extractor
config:
rejection-analyzer:
confidence_threshold: 0.85
في الكود¶
from brainsait.agents import Agent
from brainsait.skills import SkillRegistry
# تحميل الوكيل مع المهارات
agent = Agent.load("ClaimLinc")
# استخدام المهارة مباشرة
result = agent.skills.rejection_analyzer.analyze(claim_data)
# أو من خلال تنفيذ الوكيل
response = agent.execute(
task="analyze_rejection",
data=claim_data
)
إنشاء مهارات مخصصة¶
مهارة أساسية¶
from brainsait.skills import Skill, skill_method
class CustomAnalyzer(Skill):
"""مهارة تحليل مخصصة."""
name = "custom-analyzer"
version = "1.0.0"
def __init__(self, config):
super().__init__(config)
self.threshold = config.get('threshold', 0.8)
@skill_method
async def analyze(self, data: dict) -> dict:
"""تحليل بيانات الإدخال.
Args:
data: بيانات الإدخال للتحليل
Returns:
نتائج التحليل
"""
# التنفيذ
result = self._process(data)
return {
'status': 'success',
'confidence': result.confidence,
'findings': result.findings
}
def _process(self, data):
# منطق المعالجة الداخلي
pass
مهارة مع الذكاء الاصطناعي¶
from brainsait.skills import AISkill, skill_method
class IntelligentAnalyzer(AISkill):
"""مهارة تحليل مدعومة بالذكاء الاصطناعي."""
system_prompt = """
أنت خبير في تحليل المطالبات الطبية.
حلل بيانات المطالبة المقدمة وحدد المشكلات.
"""
@skill_method
async def analyze(self, claim: dict) -> dict:
response = await self.llm.complete(
messages=[
{"role": "system", "content": self.system_prompt},
{"role": "user", "content": json.dumps(claim)}
],
temperature=0.1
)
return self._parse_response(response)
اختبار المهارات¶
اختبارات الوحدة¶
import pytest
from my_bundle.skills import CustomAnalyzer
@pytest.fixture
def analyzer():
config = {'threshold': 0.8}
return CustomAnalyzer(config)
async def test_analyze_valid_data(analyzer):
data = {'field': 'value'}
result = await analyzer.analyze(data)
assert result['status'] == 'success'
assert result['confidence'] >= 0.8
async def test_analyze_invalid_data(analyzer):
with pytest.raises(ValidationError):
await analyzer.analyze({})
اختبارات التكامل¶
async def test_skill_integration():
agent = Agent.load("TestAgent")
result = await agent.execute(
task="analyze",
data=test_data
)
assert result.success
assert len(result.findings) > 0
إصدار الحزم¶
الإصدار الدلالي¶
- كبير: تغييرات كاسرة
- صغير: ميزات جديدة (متوافقة مع الخلف)
- تصحيحي: إصلاح الأخطاء
التوافق¶
# تحديد التوافق في البيان
compatibility:
min_core: 1.0.0
max_core: 2.0.0
dependencies:
- nlp ^2.0 # متوافق مع 2.x
- utils ~1.2 # متوافق مع 1.2.x
التوزيع¶
النشر¶
# بناء الحزمة
brainsait bundle build
# النشر في السجل
brainsait bundle publish
# السجل الخاص
brainsait bundle publish --registry private.registry.com
إدارة السجل¶
# إضافة سجل
brainsait registry add private https://private.registry.com
# تعيين بيانات الاعتماد
brainsait registry login private
# سرد السجلات
brainsait registry list
أفضل الممارسات¶
التصميم¶
- مسؤولية واحدة لكل مهارة
- واجهات واضحة
- توثيق شامل
- اختبار شامل
الأداء¶
- العمليات غير المتزامنة
- التخزين المؤقت الفعال
- إدارة الموارد
- معالجة الأخطاء
الأمان¶
- التحقق من الإدخال
- تطهير الإخراج
- تبعيات آمنة
- تسجيل التدقيق
المستندات ذات الصلة¶
آخر تحديث: يناير 2025