Dev Assistant هو مشروع بلغة Python يُظهر وكيلًا ذكيًا قادرًا على أداء المهام والتعلم من بيئته وتقييم تقدمه نحو هدف معين. يتكون الوكيل من عدة وحدات، كل منها مسؤول عن جانب معين من سلوك الوكيل.
يعمل الوكيل على أساس أهداف المدخلات المقدمة من قبل المستخدم، ويستخدم مجموعة من الأدوات لتحقيق النتيجة المرجوة.
تعتبر الأداة مفيدة بشكل خاص للمهام التي تؤدي إلى إنشاء ملفات متعددة عند الانتهاء، وهي مصممة لتبسيط سير عمل المطورين.
المكونات الرئيسية
- ReasoningModule: إنشاء المهام وتحديد أولوياتها بناءً على هدف الوكيل وحالته الحالية.
- PerceptionModule: يعالج المهام والنتائج لتحسينها لفهم الوكيل وتنفيذه.
- ExecutionModule: تنفيذ المهام باستخدام أدوات مختلفة وإرجاع النتائج.
- LearningModule: يتعلم من الملاحظات ويضبط سلوك الوكيل لتحسين الكفاءة.
- MemoryModule: يقوم بتخزين واسترجاع المعلومات ذات الصلة بناءً على مهام الوكيل وأهدافه.
- EvaluationModule: يقيم تقدم الوكيل نحو هدفه ويحدد ما إذا كان الهدف قد تم تحقيقه.
كيفية الاستخدام
لإعداد المشروع، اتبع الخطوات التالية:
- استنساخ المستودع على جهازك المحلي.
- قم بتثبيت التبعيات المطلوبة عن طريق تشغيل
make install
. - قم بإعداد متغيرات البيئة الضرورية في ملف
.envrc
. سوف تحتاج إلى تقديم مفتاح OpenAI API الخاص بك. - قم بتشغيل المشروع باستخدام الأمر
make docker
أو make
.
تشغيل المشروع
يمكنك تشغيل المشروع في أوضاع مختلفة:
- لتشغيل المشروع بهدف محدد، استخدم الأمر
python -u -m main --obj "Your objective here"
. - لتشغيل المشروع في الوضع المطول، أضف العلامة
--verbose
إلى الأمر. - لتشغيل المشروع باستخدام متخيل، قم بإضافة علامة
--visualizer
إلى الأمر.
تحذير:
الوكيل مزود بأدوات تسمح بإجراء تعديلات على الجهاز الذي يعمل فيه حاليًا. يوصى بتشغيل الوكيل داخل حاوية عامل الإرساء. يجري
جعل عامل ميناء
أمر لبدء حاوية.
أدوات
يستخدم المساعد العديد من الأدوات لإكمال المهام. بعض هذه الأدوات تشمل:
- بايثون ريبل
- أوامر باش
- معالجة الملفات (قراءة، كتابة، حذف، إلخ)
- التكامل جيثب
- تجريف الويب
بناء
يتكون المشروع من عدة ملفات بايثون، يحتوي كل منها على وحدة أو فئة محددة:
- AgentOrchestrator.py: يحتوي على فئة AgentOrchestrator الرئيسية، التي تنسق الوحدات المختلفة لتحقيق هدف الوكيل.
- main.py: البرنامج النصي الرئيسي الذي يقوم بتشغيل الوكيل ويتعامل مع وسائط سطر الأوامر.
التحسينات المستقبلية
- تحسين قدرة الوكيل على التعامل مع الأهداف والمهام الأكثر تعقيدًا.
- أضف المزيد من الأدوات والإمكانات إلى ExecutionModule.
- تعزيز قدرات التعلم والتكيف لدى الوكيل.
- قم بتنفيذ متخيل لعرض تقدم الوكيل وعملية اتخاذ القرار.
المساهمة
إذا كنت ترغب في المساهمة في المشروع، فلا تتردد في إرسال طلب سحب أو فتح مشكلة في المستودع.
روابط
- لصناعة السيارات في جي بي تي
- babyAGI
- مؤشر اللاما
- com.langchain
رخصة
هذا المشروع مرخص بموجب ترخيص MIT.