feat: support Gemma 4 chat and agent trials
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# SovereignAI Starter
|
||||
|
||||
مشروع تعليمي لبناء مساعد ذكاء اصطناعي محلي قابل للتوسع. النموذج المحمّل حاليًا: `qwen2.5:1.5b-instruct-q4_K_M` (نحو 986 ميغابايت).
|
||||
مشروع تعليمي لبناء مساعد ذكاء اصطناعي محلي قابل للتوسع. النموذج الافتراضي `qwen2.5:1.5b-instruct-q4_K_M` (نحو 986 ميغابايت)، ونموذج `gemma4:e2b` (نحو 7.16 غيغابايت) مثبت للتجربة والمقارنة.
|
||||
|
||||
## مكونات النسخة الأولى
|
||||
- FastAPI كواجهة HTTP محلية.
|
||||
@@ -33,6 +33,15 @@ $env:LOCAL_LLM_BASE_URL = "http://127.0.0.1:11434/v1"
|
||||
$env:LOCAL_MODEL = "qwen2.5:1.5b-instruct-q4_K_M"
|
||||
```
|
||||
|
||||
لتشغيل API على Gemma 4 بدل النموذج الافتراضي في نافذة PowerShell الحالية:
|
||||
|
||||
```powershell
|
||||
$env:LOCAL_MODEL = "gemma4:e2b"
|
||||
.\start-api.ps1
|
||||
```
|
||||
|
||||
يمكن أيضًا اختيار النموذج لكل طلب من `POST /v1/chat/completions` بإرسال `model`، أو من `POST /v1/agent/run` بإرسال `model` مع `task`. يبقى النموذج الافتراضي Qwen ما لم تغيّره من البيئة. على جهاز الاختبار، Gemma 4 E2B اشتغلت محليًا على CPU، لكنها استخدمت قرابة 3.5 غيغابايت من الذاكرة أثناء التحميل؛ قد تختلف السرعة حسب الجهاز.
|
||||
|
||||
راجع رخصة النموذج المختار وشروطه الحالية قبل الاستخدام التجاري. تنزيل النموذج يحتاج اتصال إنترنت ومساحة تخزين.
|
||||
|
||||
5. شغل الـ API على جهازك فقط (أو شغل `start-api.ps1`):
|
||||
@@ -48,6 +57,7 @@ python -m uvicorn app.main:app --reload --host 127.0.0.1 --port 8000
|
||||
- `POST /v1/chat/completions` لإرسال رسالة.
|
||||
- `POST /v1/agent/run` لتجربة الوكيل والأداة الحسابية.
|
||||
- `POST /v1/chat/completions` يمرر الطلب إلى الخادم المحلي عند ضبط المتغيرين أعلاه.
|
||||
- يمكن التبديل في Swagger بين النموذجين بإضافة `model` إلى جسم الطلب، مثل `gemma4:e2b`.
|
||||
|
||||
الخدمة مربوطة بـ `127.0.0.1` عمدًا، فلا تعرضها على الشبكة أو الإنترنت الآن. الوكيل الحالي يمرر السؤال النصي للنموذج، وينفذ الحسابات البسيطة بأداة حساب محلية محدودة. لا يقرأ ملفات ولا ينفذ أوامر النظام.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user