Technical reference
حزمة @openclaw/ai
@openclaw/ai هو شكل مكتبة قابلة للنشر من طبقة تنفيذ النماذج في OpenClaw:
عقود محايدة لمزوّدي الرسائل والأدوات والتدفقات، والتحقق، والتشخيصات،
وتدفقات الأحداث، وسجل وقت تشغيل معزول، ومهايئات تُحمّل عند الطلب لعائلات
واجهات API الثماني المضمّنة (Anthropic Messages، وOpenAI Completions، وOpenAI
Responses، وAzure OpenAI Responses، وChatGPT/Codex Responses، وGoogle Generative
AI، وGoogle Vertex، وMistral Conversations).
تُنشر بالتزامن مع حزمة openclaw الجذرية في كل إصدار، وتُثبّت على الإصدار
نفسه، مع ملف npm-shrinkwrap.json خاص بها، بحيث تُقفل شجرة تبعياتها المتعدية
وقت التثبيت. يؤدي تثبيت openclaw إلى تثبيت إصدار @openclaw/ai المطابق
تلقائيًا؛ ويمكن لمستخدمي المكتبة الاعتماد عليها مباشرةً من دون أي شيفرة من
تطبيق OpenClaw.
البدء السريع
const runtime = createLlmRuntime();registerBuiltInApiProviders(runtime.registry); const stream = runtime.streamSimple(model, { messages }, { apiKey });for await (const event of stream) { if (event.type === "text_delta") process.stdout.write(event.delta);}const result = await stream.result();توجد نسخة قابلة للتشغيل في المستودع ضمن examples/ai-chat.
عقد التصميم
- محدّد النطاق بالمثيل افتراضيًا. لا يؤدي استيراد الحزمة إلى تسجيل أي شيء
عموميًا. تُرجع
createApiRegistry()وcreateLlmRuntime()مثيلات معزولة؛ ويضيفregisterBuiltInApiProviders(registry)وسائل النقل المضمّنة إلى سجل واحد اختياريًا. تُحمّل وحدات SDK الخاصة بالمزوّدين عند أول استخدام. - تُحقن سياسة المضيف ولا تُضمّن. تُعد حماية جلب الطلبات (مثل سياسة
SSRF)، وتنقيح الأسرار من نص إعادة تشغيل نتائج الأدوات، والإعدادات الافتراضية
الصارمة لأدوات OpenAI، وتسجيل التشخيصات، منافذ
AiTransportHostتُضبط باستخدامconfigureAiTransportHost. الإعدادات الافتراضية للمكتبة خاملة؛ ويثبّت OpenClaw تطبيقاته الفعلية في واجهة التدفق الخاصة به. - هوية واحدة لتدفق الأحداث. يمثّل
@openclaw/ai/event-streamمُنشئEventStreamالقياسي المشترك بين نواة OpenClaw، ونواة الوكيل، والمستخدمين الخارجيين. - المسارات الفرعية
internal/*ليست واجهة API. وهي موجودة لتطبيق OpenClaw نفسه ولا تحمل أي ضمان للتوافق الدلالي بين الإصدارات. - تظل معرّفات المزوّدين، وبيانات الاعتماد، وكتالوجات النماذج، وإعادات المحاولة،
وتجاوز الأعطال من مسؤوليات التطبيق. يضيف OpenClaw هذه الطبقات حول هذه الحزمة؛
بينما يوفّر مستخدم المكتبة كائن
Modelوالخيارات مباشرةً.
تصديرات المسارات الفرعية
| المسار الفرعي | المحتويات |
|---|---|
. |
العقود، وcreateApiRegistry، وcreateLlmRuntime، وconfigureAiTransportHost |
./providers |
registerBuiltInApiProviders، وresetApiProviders |
./types |
أنواع النماذج والرسائل والأدوات والتدفقات |
./validation |
التحقق من وسائط الأدوات |
./diagnostics |
عقود التشخيصات |
./event-stream |
التنفيذ المشترك لـEventStream |
./internal/* |
داخلي في OpenClaw، من دون ضمان للتوافق الدلالي بين الإصدارات |