Skip to content

تكوين LLM

يوفر Doggy نظامًا رسوميًا لإدارة تكوين LLM، يدعم التكوين المرن متعدد المزوّدين والنماذج والأدوار مع التبديل الديناميكي وقت التشغيل، لتوفير دعم نماذج موحّد لوظائف الذكاء الاصطناعي.

نظرة عامة

يقع نظام تكوين LLM في src/Service/Platform/Llm/، ويستلهم تصميم منصة Symfony AI Bundle:

  • دعم مزوّدين متعددين: OpenAI، Azure، Anthropic، Ollama، بوابات مخصصة متوافقة مع OpenAI
  • إدارة رسومية: ليست تكوينًا عبر YAML، بل إدارة ديناميكية عبر واجهة الإدارة
  • فصل الأدوار: فصل التكوين عن الاستخدام، مع ربط الأدوار بالنماذج
  • تشفير المفاتيح: تخزين مشفّر لمفاتيح API دون أن تصل للواجهة الأمامية

نموذج البيانات

LlmProvider (تكوين المزوّد)

الحقلالنوعالوصف
namestringالاسم المعروض، مثل "GPT-4o"
providerstringمعرف المزوّد: openai / anthropic / azure / ollama / custom
modelstringاسم النموذج: gpt-4o / claude-3-5-sonnet / ...
apiKeyencryptedمفتاح API (مخزّن بشكل مشفّر)
apiEndpointstringعنوان الواجهة (اختياري)
optionsJSONمعاملات إضافية: temperature, max_tokens, top_p وغيرها
isEnabledbooleanما إذا كان مفعّلًا
sortOrderintالترتيب

LlmRole (الدور/الاستخدام)

الحقلالنوعالوصف
codestringرمز الدور: view_editor / entity_generation / workflow_analysis / query_assistant / chat / coding
labelstringالاسم المعروض
providerIdUUIDتكوين النموذج المرتبط
systemPrompttextرسالة النظام الموجهة لهذا الدور
optionsJSONتجاوز معاملات على مستوى الدور
isEnabledbooleanما إذا كان مفعّلًا

تخطيط استخدامات الأدوار

رمز الدورالاستخدامالنموذج الموصى به
view_editorمساعد AI في مصمم العروضgpt-4o / claude-3.5-sonnet
entity_generationتوليد الكيانات بمساعدة AIgpt-4o-mini
workflow_analysisتحليل سير العمل وتقديم الاقتراحاتgpt-4o
query_assistantاللغة الطبيعية ← استعلام البياناتgpt-4o-mini
chatمساعد محادثة AI عامgpt-4o-mini
codingتوليد الكود (Twig/JS/PHP)gpt-4o / claude-3.5-sonnet

مسار الاستدعاء

LlmRouter::chatByRole(roleCode, messages, opts)
  ├─ 查询 LlmRole(code) → 获取绑定的 LlmProvider
  ├─ LlmGatewayFactory::create(provider) → 实例化适配器
  ├─ 解密 API Key(LlmEncryptor)
  └─ 调用 LLM API(支持工具调用、流式响应)

LlmGatewayFactory

يتم توجيه المحوّلات تلقائيًا وفقًا لحقل LlmProvider.provider:

providerالمحوّلالوصف
openaiOpenAiGatewayواجهة متوافقة مع OpenAI
anthropicAnthropicGatewayواجهة Anthropic Claude API
azureAzureGatewayAzure OpenAI
ollamaOllamaGatewayOllama المحلي
customCustomGatewayبوابة مخصصة متوافقة مع OpenAI

التحويل عند الفشل

يدعم LlmRouter دالة chatByRoleWithFallback، التي تقوم تلقائيًا بالتخفيض إلى نموذج احتياطي عند فشل المزوّد الرئيسي.

واجهة الإدارة

نقطة الدخول: إعدادات النظام ← تكوين LLM (/admin/platform/llm-config)

صفحة القائمة

  • عرض بطاقات للمزوّدين، حيث يمكن لكل مزوّد تعدد تنويعات النماذج
  • عرض الأدوار/الاستخدامات المرتبطة بالنموذج مباشرة
  • مفاتيح تبديل للتفعيل/التعطيل
  • ترتيب بالسحب والإفلات

نموذج التحرير

  • الاسم والمزوّد والنموذج ومفتاح API (مخزّن مشفّرًا) وعنوان الواجهة
  • إدارة الأدوار (LlmRoleType): رمز الدور، رسالة النظام الموجهة، ربط النموذج

تشفير المفاتيح

يستخدم LlmEncryptor مفتاح تشفير المنصة لتشفير وفك تشفير مفاتيح API، حيث يبقى المفتاح على الخادم فقط ولا تصل المفاتيح الخام إلى الواجهة الأمامية:

php
// 存储时
$encrypted = $llmEncryptor->encrypt($apiKey);

// 调用时
$apiKey = $llmEncryptor->decrypt($provider->getApiKey());

التكامل مع مساعد الذكاء الاصطناعي

يعيد مساعد الذكاء الاصطناعي (انظر AI 助手) استخدام بنية LlmRole/LlmProvider:

前端 → POST /api/admin/ai/chat
  → LlmRouter.chatByRole(roleCode, messages)
    → 查询 LlmRole → LlmGatewayFactory → LLM API
  • تُخزَّن مفاتيح API على الخادم فقط (تشفير في قاعدة البيانات)
  • يتم تبديل النماذج في واجهة الإدارة دون تعديل الكود
  • يقوم LlmGatewayFactory بتوجيه المزوّدين المتعددين تلقائيًا

الملفات ذات الصلة

الملفالمسؤولية
src/Service/Platform/Llm/LlmGatewayInterface.phpواجهة البوابة
src/Service/Platform/Llm/LlmGatewayFactory.phpمصنع المحوّلات
src/Service/Platform/Llm/LlmRouter.phpتوجيه الأدوار + التحويل عند الفشل
src/Service/Platform/Llm/ModelRegistry.phpسجل النماذج
src/Service/Platform/LlmEncryptor.phpتشفير وفك تشفير مفاتيح API
src/Entity/Platform/LlmProvider.phpكيان تكوين المزوّد
src/Entity/Platform/LlmRole.phpكيان تكوين الدور
src/Controller/Admin/Platform/LlmConfigController.phpوحدة تحكم واجهة الإدارة

مصدر مفتوح برخصة MIT | حقوق النشر © 2026 Doggy