انتقل إلى المحتوى الرئيسي

دليل البدء العملي لـ KataGo

سيأخذك هذا الفصل من التثبيت إلى الاستخدام الفعلي لـ KataGo، ويغطي جميع معارف التشغيل العملية. سواء كنت تريد دمج KataGo في تطبيقك الخاص، أو تريد التعمق في كوده المصدري، هذا هو نقطة بدايتك.

لماذا تختار KataGo؟

بين العديد من AI لـ Go، KataGo هو الخيار الأفضل حالياً، للأسباب التالية:

الميزةالشرح
الأقوى قوةيحافظ على أعلى مستوى في الاختبارات العامة
الأكثر ميزاتتنبؤ النقاط، تحليل المنطقة، دعم قواعد متعددة
مفتوح المصدر بالكاملترخيص MIT، استخدام وتعديل حر
تحديث مستمرتطوير نشط ودعم مجتمعي
وثائق كاملةوثائق رسمية مفصلة، موارد مجتمعية غنية
دعم متعدد المنصاتLinux، macOS، Windows

محتوى هذا الفصل

التثبيت والإعداد

بناء بيئة KataGo من الصفر:

  • متطلبات النظام واقتراحات الأجهزة
  • خطوات التثبيت لكل منصة (macOS / Linux / Windows)
  • دليل تحميل واختيار النماذج
  • شرح مفصل لملفات التكوين

الأوامر الشائعة

إتقان طرق استخدام KataGo:

  • مقدمة عن بروتوكول GTP (Go Text Protocol)
  • أوامر GTP الشائعة مع أمثلة
  • طريقة استخدام Analysis Engine
  • شرح كامل لـ JSON API

هندسة الكود المصدري

فهم عميق لتفاصيل تنفيذ KataGo:

  • نظرة عامة على هيكل دليل المشروع
  • تحليل بنية الشبكة العصبية
  • تفاصيل تنفيذ محرك البحث
  • نظرة عامة على عملية التدريب

البدء السريع

إذا كنت تريد فقط تجربة KataGo بسرعة، إليك أبسط طريقة:

macOS (باستخدام Homebrew)

# التثبيت
brew install katago

# تحميل نموذج (اختر نموذجاً أصغر للاختبار)
curl -L -o kata-b18c384.bin.gz \
https://media.katagotraining.org/uploaded/networks/models/kata1/kata1-b18c384nbt-s9996604416-d4316597426.bin.gz

# تشغيل وضع GTP
katago gtp -model kata-b18c384.bin.gz -config gtp_example.cfg

Linux (نسخة مُجمعة مسبقاً)

# تحميل النسخة المُجمعة
wget https://github.com/lightvector/KataGo/releases/download/v1.15.3/katago-v1.15.3-opencl-linux-x64.zip

# فك الضغط
unzip katago-v1.15.3-opencl-linux-x64.zip

# تحميل النموذج
wget https://media.katagotraining.org/uploaded/networks/models/kata1/kata1-b18c384nbt-s9996604416-d4316597426.bin.gz

# التشغيل
./katago gtp -model kata-b18c384nbt-*.bin.gz -config default_gtp.cfg

التحقق من التثبيت

بعد التشغيل بنجاح، سترى موجه GTP. جرب إدخال الأوامر التالية:

name
= KataGo

version
= 1.15.3

boardsize 19
=

genmove black
= Q16

دليل سيناريوهات الاستخدام

حسب احتياجاتك، إليك ترتيب القراءة المقترح والتركيز:

السيناريو 1: الدمج في تطبيق Go

تريد استخدام KataGo كمحرك AI في تطبيق Go الخاص بك.

القراءة المركزة:

  1. التثبيت والإعداد - فهم متطلبات النشر
  2. الأوامر الشائعة - خاصة قسم Analysis Engine

المعرفة الرئيسية:

  • استخدام وضع Analysis Engine بدلاً من وضع GTP
  • التواصل مع KataGo عبر JSON API
  • ضبط بارامترات البحث حسب الأجهزة

السيناريو 2: بناء خادم للعب

تريد إنشاء خادم يتيح للمستخدمين اللعب ضد AI.

القراءة المركزة:

  1. التثبيت والإعداد - قسم إعداد GPU
  2. الأوامر الشائعة - قسم بروتوكول GTP

المعرفة الرئيسية:

  • استخدام وضع GTP للعب
  • استراتيجية نشر متعددة الـ Instances
  • طرق ضبط القوة

السيناريو 3: بحث خوارزميات AI

تريد التعمق في تنفيذ KataGo، ربما للتعديل أو التجريب.

القراءة المركزة:

  1. هندسة الكود المصدري - قراءة كاملة
  2. جميع شروحات الأوراق في فصل المعرفة الخلفية

المعرفة الرئيسية:

  • هيكل كود C++
  • تفاصيل بنية الشبكة العصبية
  • طريقة تنفيذ MCTS

السيناريو 4: تدريب نموذجك الخاص

تريد التدريب من الصفر أو ضبط نموذج KataGo.

القراءة المركزة:

  1. هندسة الكود المصدري - قسم عملية التدريب
  2. شرح ورقة KataGo

المعرفة الرئيسية:

  • صيغة بيانات التدريب
  • استخدام سكربتات التدريب
  • إعدادات البارامترات الفائقة

اقتراحات الأجهزة

يمكن تشغيل KataGo على أجهزة مختلفة، لكن هناك فرق كبير في الأداء:

تكوين الأجهزةالأداء المتوقعسيناريو الاستخدام
GPU عالية (RTX 4090)~2000 playouts/secتحليل عالي، بحث سريع
GPU متوسطة (RTX 3060)~500 playouts/secتحليل عام، لعب
GPU مبتدئة (GTX 1650)~100 playouts/secاستخدام أساسي
Apple Silicon (M1/M2)~200-400 playouts/secتطوير macOS
CPU فقط~10-30 playouts/secتعلم، اختبار
تلميح

حتى على أجهزة أبطأ، يمكن لـ KataGo تقديم تحليل قيم. تقليل كمية البحث يقلل الدقة، لكنه عادة كافٍ للتعليم والتعلم.

أسئلة شائعة

ما الفرق بين KataGo وLeela Zero؟

الجانبKataGoLeela Zero
القوةأقوىأضعف
الميزاتغنية (نقاط، منطقة)أساسية
قواعد متعددةيدعملا يدعم
حالة التطويرنشطوضع الصيانة
كفاءة التدريبعاليةأقل

هل GPU ضرورية؟

ليست ضرورية، لكن يُنصح بها بشدة:

  • مع GPU: تحليل سريع، نتائج عالية الجودة
  • بدون GPU: يمكن استخدام واجهة Eigen، لكن أبطأ

الفرق بين ملفات النماذج؟

حجم النموذجحجم الملفالقوةالسرعة
b10c128~20 MBمتوسطةالأسرع
b18c384~140 MBقويةسريع
b40c256~250 MBقوية جداًمتوسط
b60c320~500 MBالأقوىبطيء

عادة يُنصح باستخدام b18c384 أو b40c256، للتوازن بين القوة والسرعة.

موارد ذات صلة

هل أنت مستعد؟ لنبدأ من التثبيت والإعداد!