البداية السريعة
شغّل كاظمة وأجب على الرسائل في أقل من 10 دقائق. يغطي الدليل ثلاث مسارات تثبيت وأقصر طريق لدردشة تعمل.
1. المتطلبات
Section titled “1. المتطلبات”| المتطلب | التفصيل |
|---|---|
| Python | >=3.11, <3.14 (في pyproject.toml) |
| Git | للاستنساخ / kazma update |
| مفتاح مزوّد LLM | OpenAI أو Anthropic أو DeepSeek أو Gemini أو xAI أو OpenRouter أو NIM أو محلي (Ollama / LM Studio) — وAzure/Bedrock مدعومان أصليًا |
| Node.js (اختياري) | فقط لبناء موقع وثائق Docusaurus |
ملاحظة extras:
pip install -e .يكفي للوكيل والويب وTUI والبوابات والسرب. extraragمطلوب فقط للذاكرة المتجهة / RAG — انظر الذاكرة وRAG.
2. التثبيت
Section titled “2. التثبيت”اختر مسارًا. الثلاثة تنتج: kazma، kazma-tui، kazma-web.
المسار أ — تثبيت قابل للتحرير (موصى للتطوير)
Section titled “المسار أ — تثبيت قابل للتحرير (موصى للتطوير)”git clone <your-repo-url> kazmacd kazmapython -m venv .venv# Linux / macOS / WSLsource .venv/bin/activate# Windows (PowerShell).venv\Scripts\Activate.ps1pip install -e ".[rag,dev]"# أو كل شيء:pip install -e ".[all]"| Extra | يفعّل |
|---|---|
[rag] | ذاكرة V2 / RAG (استدعاء sqlite-vec + تضمينات) |
[dev] | اختبارات + lint |
[tui] | لوحة الطرفية |
[observability] | نقطة /metrics |
[web] | مهارة أتمتة المتصفح (playwright install chromium) |
[document] | توليد PDF/DOCX/XLSX |
[database] | Postgres/MySQL/Mongo في مهارة قاعدة البيانات |
[postgres] | حالة مشتركة SaaS متعددة النسخ |
[all] | كل ما سبق |
المهارات الأصلية تُحمَّل دائمًا — استدعاء أداة بلا خلفية يعيد تلميح تثبيت.
المسار ب — Docker Compose للإنتاج
Section titled “المسار ب — Docker Compose للإنتاج”cp .env.example .envdocker compose up -d --buildانظر النشر.
المسار ج — Windows أصلي (setup.ps1)
Section titled “المسار ج — Windows أصلي (setup.ps1)”.\setup.ps1لا تسلسل أوامر PowerShell بـ && — استخدم ; و$LASTEXITCODE.
3. الإعداد
Section titled “3. الإعداد”ثلاث طبقات (أسبقية متزايدة لقراءات وقت التشغيل):
kazma.yaml— افتراضيات تصريحية- ConfigStore (SQLite) —
kazma-data/settings.db - متغيرات البيئة — تربح في مواضع محددة
.env أدنى
Section titled “.env أدنى”OPENAI_API_KEY=sk-...# TELEGRAM_BOT_TOKEN=...# KAZMA_SECRET=generate-a-long-random-stringمهم: فقط
OPENAI_API_KEYوKAZMA_API_KEYاحتياطات env عامة. مزوّدون آخرون عبر ConfigStore /kazma.yaml.
تحقق من kazma.yaml
Section titled “تحقق من kazma.yaml”agent: name: kazma language: ar rtl: true
models: default: gpt-4o-mini router: litellm fallback: gpt-4o-mini
llm: base_url: https://api.openai.com/v1 model: gpt-4o-mini max_tokens: 4096 temperature: 0.7 timeout: 60.0
ui: host: 127.0.0.1 port: 9090المرجع الكامل: الإعدادات.
4. التشغيل
Section titled “4. التشغيل”واجهة الويب (الأشيع)
Section titled “واجهة الويب (الأشيع)”kazma serve # 127.0.0.1:9090kazma serve 9091 # إن كان 9090 مشغولاًافتح http://127.0.0.1:9090 — http وليس https. انتقل إلى المحادثة.
curl http://127.0.0.1:9091/healthأمن الربط: المضيف الافتراضي
127.0.0.1. غير الحلقي يتطلّبKAZMA_SECRETقويًا.
WindowsERR_CONNECTION_RESETعلى :9090: غالبًا portproxy قديم لـ WSL/Docker — جرّبkazma serve 9091.
kazma-tuiتحقق CLI
Section titled “تحقق CLI”kazma status5. أول رسالة
Section titled “5. أول رسالة”خلف الكواليس:
- نصك يُرسل
POSTإلى/api/chat/stream(SSE). - المُشرف يستدعي LLM بالأدوات المسجّلة.
- إن استُدعيت أداة خطر يتوقف التنفيذ ويُصدَر
approval_required. - وافق من الواجهة → يستأنف الرسم بـ
Command(resume={"approved": true}).
مع extras [rag] تُحقَن الذاكرة تلقائيًا لكل دور وتُخزَّن الحقائق بعد الرد. انظر الذاكرة وRAG.
6. قناة ثانية (Telegram، اختياري)
Section titled “6. قناة ثانية (Telegram، اختياري)”TELEGRAM_BOT_TOKEN=123456:ABC-DEF...connectors: telegram: enabled: trueأعد التشغيل. جرّب /help، /status، /model.
عزل المنصة:
chat_idوuser_idلا يدخلان حالة LangGraph أبدًا.
7. الخطوات التالية
Section titled “7. الخطوات التالية”| إن أردت… | اقرأ |
|---|---|
| فهم المحرك | البنية المعمارية |
| ضبط كل إعداد | الإعدادات |
| أداة / مهارة مخصّصة | المهارات وMCP |
| سرب متعدد العمال | تنسيق السرب |
| نشر إنتاج | الأمان + النشر |
| العربية أولًا | الميزات العربية |
| المكتبة المعرفية | المكتبة المعرفية |
ملاحظات تدقيق
Section titled “ملاحظات تدقيق”- أُزيل «خط أنابيب الذاكرة بأربع طبقات» (V1) في التحوّل من V1 إلى V2. V2 (معتقدات ثنائية الزمن + استدعاء PPR) هي مكدّس الذاكرة الوحيد — انظر الذاكرة وRAG. الذاكرة تلقائية (استدعاء لكل دور + auto-store) بمجرّد تثبيت إضافة
[rag]؛ ويمكن للنموذج أيضًا استدعاءmemory_searchصراحةً. tiktokenليس اعتمادًا معلنًا؛ العدّ chars/4 بدونه.