إنشاء وكيل محادثة ذكي باستخدام Cognee ونماذج Hugging Face المجانية
هذا البرنامج التعليمي يرشدك خطوة بخطوة لبناء وكيل ذكاء اصطناعي متطور مزود بذاكرة وكيل باستخدام أدوات مفتوحة المصدر مجانية تمامًا تعمل بسلاسة في Google Colab ودفاتر Jupyter الأخرى. سنقوم بتكوين Cognee لتخزين واسترجاع المعلومات، ودمج نموذج محادثة خفيف الوزن لإنشاء استجابات، وجمع كل ذلك في وكيل ذكي يتعلم، ويستنتج، ويتفاعل بشكل طبيعي. سواء كان الأمر يتعلق بمعالجة المستندات عبر المجالات المختلفة أو الدخول في حوار مع فهم سياقي، فسوف نستعرض كل خطوة لإنشاء وكيل قادر دون الاعتماد على واجهات برمجة التطبيقات المدفوعة.
1. التثبيت والتهيئة:
سنبدأ بتثبيت جميع المكتبات الأساسية، بما في ذلك Cognee و Transformers و Torch و Sentence-Transformers، لتشغيل وكيل الذكاء الاصطناعي الخاص بنا. ثم نقوم باستيراد الوحدات المطلوبة للتعامل مع التحليل اللغوي، وتحميل النموذج، والمهام غير المتزامنة، ودمج الذاكرة. يضمن هذا الإعداد أن لدينا كل ما يلزم لبناء وكيل الذكاء الاصطناعي الخاص بنا والتفاعل معه.
pip install cognee transformers torch sentence-transformers accelerate
import asyncio
import os
import json
from typing import List, Dict, Any
from datetime import datetime
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
import torch
import cognee
2. تهيئة Cognee:
نقوم بإعداد Cognee عن طريق تكوين نموذج التضمين وموفره لاستخدام sentence-transformers/all-MiniLM-L6-v2
، وهو محول جمل خفيف الوزن وفعال. إذا فشلت الطريقة الأساسية، فإننا نعود إلى تعيين متغيرات البيئة يدويًا، مما يضمن أن يكون Cognee جاهزًا دائمًا لمعالجة وتخزين التضمينات.
async def setup_cognee():
"""إعداد Cognee مع التكوين المناسب"""
try:
await cognee.config.set("EMBEDDING_MODEL", "sentence-transformers/all-MiniLM-L6-v2")
await cognee.config.set("EMBEDDING_PROVIDER", "sentence_transformers")
print("Cognee configured successfully")
return True
except Exception as e:
print(f"Cognee config error: {e}")
try:
os.environ["EMBEDDING_MODEL"] = "sentence-transformers/all-MiniLM-L6-v2"
os.environ["EMBEDDING_PROVIDER"] = "sentence_transformers"
print("Cognee configured via environment")
return True
except Exception as e2:
print(f"Alternative config failed: {e2}")
return False
3. إنشاء نموذج توليد النصوص:
نقوم بتعريف فئة HuggingFaceLLM
للتعامل مع توليد النصوص باستخدام نماذج Hugging Face خفيفة الوزن، مثل DialoGPT أو DistilGPT2. نكتشف ما إذا كان وحدة معالجة الرسوميات (GPU) متاحة ونقوم بتحميل المُحلل اللغوي والنموذج المناسبين وفقًا لذلك. يُمكّن هذا الإعداد وكيلنا من توليد استجابات ذكية وواعية بالسياق لاستفسارات المستخدم.
class HuggingFaceLLM:
def __init__(self, model_name="microsoft/DialoGPT-medium"):
# ... (كود مماثل للكود الأصلي مع ترجمة وتعليقات عربية) ...
4. فئة وكيل الذكاء الاصطناعي المتقدم:
نحدد هنا جوهر نظامنا، وهو فئة AdvancedAIAgent
، التي تجمع بين ذاكرة Cognee، والتعلم حسب المجال، واسترجاع المعرفة، والاستنتاج المدعوم بنماذج Hugging Face. نُمكّن وكيلنا من التعلم من النصوص والمستندات، واسترجاع المعرفة ذات الصلة بالسياق، والرد على الاستفسارات بإجابات ذكية مُصاغة. سواء كان الأمر يتعلق بتذكر الحقائق، أو الإجابة على الأسئلة، أو الدخول في محادثة، فإن هذا الوكيل يتكيف، ويتذكر، ويستجيب بطلاقة شبيهة بالبشر.
class AdvancedAIAgent:
# ... (كود مماثل للكود الأصلي مع ترجمة وتعليقات عربية) ...
5. عرض توضيحي:
نختتم البرنامج التعليمي بتشغيل عرض توضيحي شامل لوكيل الذكاء الاصطناعي الخاص بنا. أولاً، نقوم بتعليمه من مستندات متعددة المجالات، ثم نختبر قدرته على استرجاع المعرفة والاستنتاج بذكاء. بعد ذلك، ندخله في محادثة طبيعية، ونراقبه وهو يتعلم ويستذكر المعلومات التي يُعلّمها المستخدمون. أخيرًا، نُشاهد ملخصًا لذاكرته، مُظهِرين كيف ينظم ويُصفّي المعرفة حسب المجال، وكل ذلك مع الاستدلال في الوقت الفعلي باستخدام نماذج Hugging Face المجانية.
async def main():
# ... (كود مماثل للكود الأصلي مع ترجمة وتعليقات عربية) ...
في الختام، لقد قمنا ببناء وكيل ذكاء اصطناعي وظيفي بالكامل يمكنه التعلم من البيانات المُهيكلة، واسترجاع المعرفة المُخزنة والاستنتاج بها، والتحدث بذكاء باستخدام نماذج Hugging Face. لقد قمنا بتكوين Cognee لضمان الذاكرة الدائمة، وعرض الاستعلامات الخاصة بالمجال، وحتى محاكاة محادثات حقيقية مع الوكيل.
اترك تعليقاً