
Ag2 Positized-بناء تطبيقات Agentic مع بساطة السحب والإفلات.
تحذير
هذا المشروع قيد التطوير حاليًا ولا ينصح به بعد لاستخدام الإنتاج.
على الرغم من أن توليد الكود قد أثبت فعاليته في الحفاظ على فائدة الأداة عبر أوقات التشغيل المختلفة خارج Autogen ، فقد كشف أيضًا عن تحديات تتعلق بالكفاءة والملاحظة. نتيجة لذلك ، أفكر في نقل المشروع إلى محرك سير العمل بدلاً من الاستمرار كبرنامج مستقل. هذا التغيير من شأنه أن يقدم تعديلات كبيرة للهندسة المعمارية الخلفية.
ملاحظاتك لا تقدر بثمن مع تقدمنا إلى الأمام. إذا كان لديك أي أفكار أو اقتراحات ، فيرجى مشاركتها عن طريق فتح مشكلة جديدة أو المشاركة في المناقشات الجارية هنا.
Agentok Studio هي أداة مبنية على AG2 (Autogen سابقًا) ، وهو إطار عمل قوي للعامل من Microsoft ومجتمع نابض بالحياة من المساهمين.
نحن نعتبر AG2 في طليعة تقنية التطبيقات متعددة الوكلاء من الجيل التالي. يأخذ Agentok Studio هذا المفهوم إلى المستوى التالي من خلال تقديم أدوات مرئية بديهية تنقذ إنشاء وإدارة مهام سير العمل المعقدة القائمة على الوكيل. هذا يبسط العملية بأكملها للمبدعين والمطورين.

العلاقة بين اثنين من العوامل ضرورية. لدمج مكالمات الأدوات في محادثة ، يجب على LLM تحديد الأدوات التي يجب استدعاؤها ، مع إبلاغ وكيل المستخدم عن العقد التي سيتم تنفيذها. يعد تكوين الأدوات على الحافة بين هذه العقد أمرًا بالغ الأهمية للتشغيل الأمثل.

نحن نسعى جاهدين لإنشاء أداة سهلة الاستخدام تقوم بإنشاء رمز Python الأصلي مع الحد الأدنى من التبعيات. ببساطة ، Agentok Studio هو مولد رمز قائم على الرسم البياني لـ AG2. الكود الذي تم إنشاؤه مكتفية بذاته ويمكن تنفيذه في أي مكان كبرنامج Python عادي ، ويعتمد فقط على مكتبة ag2 الرسمية.

المساهمات (القضايا ، طلبات السحب ، الوثائق ، حتى التصحيحات المطبعية) لهذا المشروع نرحب! سيتم إضافة جميع المساهمين إلى جدار المساهمة.
ملحوظة
تمت إزالة ميزة RAG من هذا المشروع ، لأننا نعتقد أنها يجب أن تكون خدمة منفصلة.
لاستكشاف ميزات Agentok Studio بسرعة ، تفضل بزيارة https://studio.agentok.ai. على الرغم من أننا نقدم نشرًا عبر الإنترنت لهذا المشروع ، يرجى ملاحظة أنه غير مخصص للاستخدام الإنتاج. لا يتم ضمان اتفاقية مستوى الخدمة ، وقد يتم القضاء على البيانات المخزنة بسبب كسر التغييرات.
بعد تسجيل الدخول كضيف أو مع حساب OAUTH2 الخاص بك ، يمكنك النقر فوق زر إنشاء مشروع جديد لإنشاء مشروع جديد. المشروع الجديد يأتي مع عينة سير عمل. يمكنك النقر فوق أيقونة الروبوت في الأسفل الأيمن لبدء المحادثة.

نظرًا لقيود GPT-4 و AG2 ، قد لا يعمل سير العمل البسيط هذا كما هو متوقع ، ولكنه نقطة انطلاق جيدة لفهم المفاهيم الأساسية للتطبيق وكيل Agentok.
لإلقاء نظرة أكثر تعمقا على المشروع ، يرجى الرجوع إلى البدء.
يحتوي المشروع على الواجهة الأمامية (التي تم بناؤها مع Next.js) وخدمة الخلفية (التي تم بناؤها مع Fastapi في Python) ، وتم إيلاءها بالكامل.
قبل تشغيل المشروع ، تحتاج إلى إنشاء ملف .env في دليل واجهة api ui ABI وتعيين متغيرات البيئة.
cp frontend/.env.sample frontend/.env
cp api/.env.sample api/.env
cp api/OAI_CONFIG_LIST.sample api/OAI_CONFIG_LIST يرجى العلم أن Supabase يوفر كل من مفتاح ANON ومفتاح Service_role لكل مشروع. يرجى التأكد من تعيين مفتاح anon إلى NEXT_PUBLIC_SUPABASE_ANON_KEY للواجهة الأمامية ، ومفتاح دور الخدمة لـ SUPABASE_SERVICE_KEY للخلفية (API).
أسهل طريقة للتشغيل على محلي هي استخدام Docker-Corms:
docker-compose up -dيمكنك أيضًا إنشاء واجهة المستخدم وتشغيلها بشكل منفصل مع Docker:
docker build -t agentok-api ./api
docker run -d -p 5004:5004 agentok-api
docker build -t agentok-frontend ./frontend
docker run -d -p 2855:2855 agentok-frontend
(المنفذ الافتراضي رقم 2855 هو عنوان مكتبنا الأول.)
إذا كنت مهتمًا بالمساهمة في تطوير هذا المشروع أو ترغب في تشغيله من الكود المصدري ، فلديك خيار تشغيل واجهة المستخدم والخدمة بشكل مستقل. إليك كيف يمكنك القيام بذلك:
cd frontend ..env.sample إلى .env.local وتعيين قيمة المتغيرات بشكل صحيح.pnpm install أو yarn ).pnpm dev أو yarn dev ).إذا رأيت خطأ الخادم يتعلق بـ "Usecontext" في كثير من الأحيان ، فمن المحتمل أن يكون سببها الأخطاء في وضع توربو. في هذه الحالة ، يرجى إزالة
--turboمن أمر dev في package.json.
cd api ..env.sample إلى .env ، OAI_CONFIG_LIST.sample إلى OAI_CONFIG_LIST ، وتعيين قيمة المتغيرات بشكل صحيح.poetry run uvicorn agentok_api.main:app --reload --port 5004 . هناك حاجة إلى REPLICATE_API_TOKEN لعامل LLAVA. إذا كنت بحاجة إلى استخدام هذا الوكيل ، فتأكد من تضمين هذا الرمز المميز في متغيرات البيئة.
هام : يتطلب أحدث إصدار من AG2 Docker لتنفيذ الكود افتراضيًا. للمتابعة ، يجب عليك إما:
AUTOGEN_USE_DOCKER=False في ملف api/.env .ملاحظة: يتم تعطيل هذا المطلب افتراضيًا نظرًا لأن النشر الافتراضي لهذا المشروع قد تم قياسه بالفعل.
يعتمد هذا المشروع على supabase لمصادقة المستخدم وتخزين البيانات. للبدء ، يرجى اتباع ./DB/Readme.md لإعداد قاعدة البيانات ، وتعيين متغيرات البيئة (راجع تلك المتغيرات مع بدء الاسم مع supabse في .env
إذا كنت تفضل ذلك ، يمكنك نشر مثيل Supabase الخاص بك ، ولكن هذا خارج نطاق هذا المستند.
بمجرد أن تبدأ كل من خدمات الواجهة الأمامية وواجهة برمجة التطبيقات (API) باتباع الخطوات المبينة مسبقًا ، يمكنك الوصول إلى التطبيق عن طريق فتح متصفح الويب الخاص بك والتنقل إلى:
إذا بدأت خدماتك بنجاح وتشغيلها على المنافذ المتوقعة ، فيجب أن ترى واجهة المستخدم أو تلقي ردود من خدمات API عبر عنوان URL هذا.
المساهمات مرحب بها! لا يقتصر الأمر على الكود ، ولكن يتضمن أيضًا الوثائق والجوانب الأخرى للمشروع. يمكنك فتح مشكلة github أو ترك تعليقات على خادم Discord الخاص بنا.
يرحب هذا المشروع بالمساهمات والاقتراحات. يرجى قراءة دليلنا المساهم أولاً.
إذا كنت جديدًا على Github ، فإليك مصدر مساعدة مفصل للتشارك في التطوير على Github.
يرجى النظر في المساهمة في AG2 ، حيث يعتمد Agentok Studio على أساس قوي لتقديم قدراته. يمكن أن تساعد مساهماتك في تعزيز الوظائف الأساسية للمنصة ، مما يضمن تجربة تطوير أكثر سلاسة وفعالية للتطبيقات متعددة الوكلاء.
يستخدم هذا المشروع؟ الإفراج الدلالي لإدارة الإصدار والإصدارات. لتجنب الإلغاء التلقائي المتكرر للغاية ، نجعله إجراء جيثب يدويًا لإحداث الإصدار.
لمتابعة عملية الإصدار الدلالي ، قمنا بفرض اتفاقية الالتزام على رسائل الالتزام. يرجى الرجوع إلى الالتزام لمزيد من التفاصيل.
تم ترخيص المشروع بموجب Apache 2.0 مع شروط وأحكام إضافية.