تستضيف Singlestore هاكاثون داخليين كل عام ، حيث يكون الموظفون أحرارًا في العمل على كل ما يريدون - لا يجب أن يكونوا مفيدين بأي شكل من الأشكال.
كان موضوع هذا hackathon هو AI/ML ، لذلك قررنا محاولة القيام بشيء مع Stubase لقاعدة بيانات Vector التي توفرها لنا Singlestore ومزج أيضًا في بعض shenanigans Openai .
كان الهدف من المشروع هو صنع شيء على غرار "هناك العديد من وكلاء الذكاء الاصطناعي الذين يعيشون في عالم يشبه بوكيمون ، والذي يجب أن يتعاون لتحقيق المهام التي قدمها المستخدم".
لسوء الحظ ، نظرًا لقيود الوقت ، انتهى بنا الأمر فقط بتنفيذ دعم الذكاء الاصطناعي لوكيل واحد. تبين أن الهندسة الفريدة ليست سهلة - الوكلاء غبيون للغاية وأحيانًا ينتهي بهم الأمر إلى تكرار المهام التي قاموا بها بالفعل ، مثل فتح الباب الذي فتحوه بالفعل.
يمكن للوكلاء أداء عمليتين: walk(target) interact(item, target) . المشي إلى الهدف ينقل الشخصية بجانب الكائن أو الحرف المعطى. يمكن استخدام التفاعل ، على سبيل المثال ، لفتح الباب باستخدام مفتاح.
يحصل الوكلاء على ملاحظات من نتيجة أفعالهم: على سبيل المثال ، يمكن أن يؤدي walk(goal) إلى Cannot walk to 'goal' because 'door' is blocking the path . يتم تنفيذ القرارات من خلال الاستعلام عن معلومات العالم من قاعدة بيانات متجه ( SingleStore في هذه الحالة) بما في ذلك في المطالبات.
تتضمن المعلومات العالمية القواعد والدولة. على سبيل المثال:
You can open 'door's by interacting with them using 'key'.
There is a 'door' named 'door 1'.
يتم التحكم في الوكلاء مع 3 أنواع مختلفة من البرامج:
cp .env{.example,}.env وملءه (يحتاج إلى إنشاء قاعدة بيانات Singlestore)LEVEL=<level_name> DATABASE=[dumb|s2] python3 scripts/main.py ملاحظة: level_name هو اسم ملف من اختيارك داخل مجلد scripts/levels .