اتخاذ قرارات مدروسة باستخدام أدوات إنشاء Dialogflow CX وتخزين البيانات

1. نظرة عامة

تاريخ التعديل الأخير: 10/10/2023

ما الذي ستقوم ببنائه

في هذا الدرس التطبيقي حول الترميز، ستستخدم Vertex AI Conversation وDialogflow CX لإنشاء وكيل افتراضي وتفعيله وإعداده لمساعدة الأشخاص الذين يريدون التبرّع بالدم وضمان استيفائهم متطلبات الأهلية المطلوبة. وسيستخدم الوكيل البيانات العامة الحقيقية والنماذج اللغوية الكبيرة (LLM) من Google أثناء تنفيذ Dialogflow CX.

الميزات التي ستستخدمها

لإكمال الدرس التطبيقي حول الترميز، عليك إعداد واستخدام ثلاث ميزات مختلفة:

وكلاء تخزين البيانات

تنشئ ميزة Vertex AI Conversation وكيل Dialogflow خاصًا، يُعرف باسم وكيل تخزين البيانات.

تتيح لك هذه الميزة توفير عنوان URL لموقع إلكتروني أو بيانات منظَّمة أو بيانات غير منظَّمة (مخازن البيانات)، ثم يُجري محرّك بحث Google تحليلاً للمحتوى الخاص بك وينشئ وكيلاً افتراضيًا يعتمد على مخازن البيانات والنماذج اللغوية الكبيرة. بعد ذلك، يمكن لعملائك والمستخدمين النهائيين إجراء محادثات مع الوكيل وطرح أسئلة حول المحتوى. يمكنك الاطّلاع على مقالة مقدمة عن Vertex AI للحصول على معلومات حول هذا النوع من الوكلاء.

مولدات

ميزة منشئ المحتوى هي ميزة من Dialogflow CX تتيح للمطوّرين استخدام أحدث النماذج التوليدية اللغوية الكبيرة (LLM) والطلبات المخصّصة من Google لإنشاء ردود الوكيل في وقت التشغيل. يمكن لأداة الإنشاء معالجة الردود العامة التي تتضمّن معرفة عامة من مجموعة بيانات نصية كبيرة تم تدريبها على استخدامها أو سياقها من المحادثة.

الإجراء الاحتياطي التوليدي

تستخدم ميزة الإجراء الاحتياطي التوليدي أحدث النماذج اللغوية الكبيرة (LLM) التوليدية من Google لإنشاء ردود للوكيل الافتراضي عندما لا تتطابق إدخالات المستخدم النهائي مع هدف أو مَعلمة لملء النموذج. يمكن ضبط الميزة من خلال طلب نصي يرشد النموذج اللغوي الكبير إلى كيفية الردّ. يمكنك استخدام طلب نصي محدَّد مسبقًا أو إضافة طلباتك الخاصة. يمكنك تفعيل الإجراء الاحتياطي التوليدي على معالِجات الأحداث غير المطابقة المستخدَمة في التدفقات أو الصفحات أو أثناء ملء المَعلمات. عند تفعيل الإجراء الاحتياطي التوليدي لحدث لا يتطابق مع أي حدث، ستحاول Dialogflow إنشاء رد يتم إنشاؤه للمستخدم عند تشغيله. في حال لم ينجح إنشاء الردّ، سيتم إصدار الردّ المعتاد الموصوف إلى موظّف الدعم. إذا أردت معرفة المزيد عن الإجراء الاحتياطي التوليدي، جرِّب هذا الدرس التطبيقي حول الترميز.

ما ستتعرَّف عليه

  • كيفية إنشاء وكيل تخزين بيانات من بيانات غير منظَّمة
  • طريقة استخدام معالِجات المعلومات للسماح للمستخدمين النهائيين بإجراء محادثات مع وكيل افتراضي حول المحتوى المضاف إلى مخزن بيانات
  • كيفية ضبط طلب نص منشئ المحتوى وجعله سياقيًا باستخدام العناصر النائبة لطلبات منشئ المحتوى المدمَجة
  • كيفية وضع علامة على الكلمات باعتبارها عناصر نائبة لطلبات منشئ المحتوى وربطها لاحقًا بمَعلمات الجلسة في التنفيذ لاستخدام قيمها أثناء التنفيذ
  • طريقة إعداد أداة للتعامل مع الردود التي تتضمن معرفة من مجموعة بيانات نصية كبيرة وسياق من المحادثة الحالية
  • كيفية إنشاء رسالة إلكترونية رسمية باستخدام أدوات إنشاء الرسائل
  • طريقة اختبار الوكيل ومحاكاة أسئلة العملاء التي تؤدي إلى إنشاء ردود

المتطلبات

  • مشروع على Google Cloud
  • متصفّح مثل Chrome

2. تفعيل واجهات برمجة التطبيقات

لكي تتمكّن من إنشاء وكيل لتخزين البيانات في Vertex AI Conversation، عليك تفعيل Dialogflow وواجهات برمجة تطبيقات Vertex AI Search وConversation.

لتفعيل واجهة برمجة تطبيقات Dialogflow، اتّبِع الخطوات التالية:

  1. في المتصفِّح، انتقِل إلى صفحة تفاصيل خدمة واجهة برمجة تطبيقات Dialogflow.
  2. انقر على الزرّ تفعيل لتفعيل واجهة برمجة تطبيقات Dialogflow في مشروعك على Google Cloud.

لتفعيل واجهة برمجة التطبيقات Vertex AI Search and Conversation API، اتّبِع الخطوات التالية:

  1. في Google Cloud Console، انتقِل إلى وحدة التحكّم في المحادثات وVertex AI Search.
  2. اقرأ بنود الخدمة ووافِق عليها، ثم انقر على متابعة وتفعيل واجهة برمجة التطبيقات.

3- إنشاء تطبيق دردشة جديد ومخزن بيانات لتطبيقك

عليك الآن إنشاء تطبيق محادثة جديد لوكيلك الافتراضي وإعداده باستخدام مصدر بيانات. إنّ الغرض من الوكيل الذي ستنشئه هو مساعدة العملاء الذين لديهم أسئلة حول أهلية الدم. ستستخدم جمعية Lifeblood الصليب الأحمر الأسترالية كمصدر للحقيقة، وستنشئ مخزن بيانات بناءً على بيانات غير مهيكلة من الموقع الإلكتروني الخاص بأهلية الدم.

  1. لإنشاء تطبيق محادثة جديد في Vertex AI Conversation، يمكنك تنفيذ أحد الإجراءَين التاليَين:
    1. انتقِل إلى وحدة التحكّم في محادثات Vertex AI، ثم انقر على + تطبيق جديد بالقرب من أعلى وحدة التحكّم.
    2. انتقِل إلى وحدة تحكُّم Dialogflow CX، وانقر على +إنشاء وكيل جديد ثم حدِّد خيار إنشاء تلقائي. ستتم إعادة توجيهك إلى الخطوة التالية في وحدة التحكّم في Vertex AI Conversation.
  2. من وحدة التحكّم في المحادثات Vertex AI، اختَر Chat كنوع التطبيق الذي تريد إنشاءه.
  3. أدخل اسم شركة برقم Save a Life. تُستخدَم هذه المَعلمة لتحديد الشركة التي يمثّلها وكيلك ونطاق الوكيل.
  4. حدِّد اسم وكيل لـ Blood Donation Agent.
  5. انقر على متابعة.
  6. انقر على إنشاء مخزن بيانات جديد.
  7. اختَر Cloud Storage كمصدر بيانات لمتجر البيانات.
  8. حدِّد مجلد Google Cloud Storage التالي الذي يحتوي على نموذج بيانات لهذا الدرس التطبيقي حول الترميز، مع العلم أنّ البادئة gs:// غير مطلوبة:
    cloud-samples-data/dialogflow-cx/arc-lifeblood
    
  9. اختَر المستندات غير المنظَّمة كنوع البيانات التي تريد استيرادها.
  10. انقر على متابعة.
  11. حدِّد اسم مخزن بيانات بقيمة Australian Red Cross Lifeblood Unstructured.
  12. انقر على إنشاء لإنشاء مخزن البيانات.
  13. في قائمة مخازن البيانات، اختَر Australian Red Cross Lifeblood Unstructured التي تم إنشاؤها حديثًا.
  14. انقر على إنشاء لإنشاء تطبيق المحادثات.

تهانينا! لقد انتهيت من إنشاء تطبيق دردشة يعتمد على المعرفة ويكون جاهزًا لمساعدة المتبرعين المحتملين، لذا حان الوقت للاحتفال.

ولكن لا يزال هناك المزيد من العمل الذي ينبغي القيام به لجعل الوكيل متاحًا للمستخدمين. في القسم التالي، عليك الاستعانة بمعالج معلومات لإجراء محادثات بين الوكيل والمستخدمين النهائيين حول متطلبات الأهلية.

4. ضبط إعدادات الوكيل للإجابة عن الأسئلة الشائعة حول أهلية الحصول على الدم

تقديم طلب التاريخ الخاص بالمتجر

أثناء كون عملية جمع المستندات جارية في الخلفية، لنمنح الوكيل علامة تجارية من خلال تعديل الطلب الخاص بمخزن البيانات.

  1. من وحدة التحكّم في محادثات Vertex AI، انقر على اسم تطبيق المحادثة، وستتم إعادة توجيهك إلى وحدة تحكّم Dialogflow CX لإجراء المزيد من الاختبارات والتخصيص.
  2. في وحدة تحكُّم Dialogflow CX ومن داخل الوكيل، انقر على إعدادات الوكيل (في أعلى يسار الصفحة)، ثم انتقِل إلى علامة التبويب تعلُّم الآلة وافتح علامة التبويب الذكاء الاصطناعي التوليدي أخيرًا.

الانتقال إلى طلب تخزين البيانات

  1. يُرجى ملء النموذج على النحو التالي لإنشاء الطلب التالي لتخزين البيانات: اسمك Donate، وتحدّثت عن chatbot بأسلوب مهذّب ومفيد في Save a life, a fictitious organization. مهمتك هي مساعدة "humans with eligibility information".

املأ النموذج لإنشاء الطلب.

تفعيل الإجراء الاحتياطي التوليدي لحدث عدم التطابق في مسار البدء التلقائي

  1. انتقِل إلى علامة التبويب إنشاء وافتَح الصفحة الرئيسية.
  2. انقر على معالِج الحدث sys.no-match-default. ما لم تكن قد وضعت علامة في المربّع، فعِّل الميزة الاحتياطية التوليدية.

تفعيل الإجراء الاحتياطي التوليدي عند عدم مطابقة التدفق

مراجعة مخزن بيانات الوكيل

في الصفحة الرئيسية، انقر على تعديل مخازن البيانات للاطّلاع على إعدادات تخزين البيانات.

تعديل مخازن البيانات

سبق أن اختار لك Dialogflow تخزين البيانات الذي أنشأته سابقًا.

ربط مخزن البيانات الذي أنشأته

انتقِل للأسفل وصولاً إلى ردود موظفي الدعم ضمن توصيل الطلبات. تعني عملية التنفيذ استجابة الوكيل للمستخدم النهائي. تمت تعبئة Agent تقول مسبقًا في Dialogflow بالمَعلمة $request.knowledge.answers[0] التي تحتوي في وقت التشغيل على أفضل إجابة لسؤال المستخدم.

يحتوي ردّ الوكيل على أفضل إجابة عن سؤال المستخدم.

5- اختبار الوكيل

بعد أن تصبح المستندات متاحة وجاهزة للاستخدام من قِبل وكيلك، تحقَّق من مدى جودة الإجابات.

انقر على اختبار الوكيل لفتح المحاكي من جديد.

اختبار الوكيل مرة أخرى

اطرح الأسئلة التي تتوقع العثور عليها في صفحة الأسئلة الشائعة على الموقع الإلكتروني:

  • What age do I need to be to donate?
  • Can pregnant women donate?
  • I've just come back from a trip to Africa. Can I donate?
  • How can I schedule an appointment?

التحقق من الحصول على الإجابات من قاعدة المعرفة

تجدر الإشارة إلى أنّه يتم استرداد الإجابات من موقع Lifeblood الخاص بالصليب الأحمر الأسترالي. كما هو موضّح في هذه الصفحة، هناك حد أدنى وحد أقصى للأعمار المسموح بها للتبرّع بالدم. الحد الأدنى للعمر هو 18 والحد الأقصى للعمر هو 75 للمتبرعين لأول مرة. وهناك دليل إضافي على حقيقة أننا نستخرج المعلومات من مخزن البيانات، من خلال رمز النجمة الصغيرة الذي يظهر في رد الوكيل واستجابة JSON الأصلية.

فحص استجابة JSON الأصلية

وأخيرًا، لنتحدث عن موظّف الدعم بسؤال غير مرتبط تمامًا بالتبرّع بالدم.

المستخدم: "كيف حال الطقس في القاهرة؟"

موظّف الدعم: "عذرًا، لا يمكنني مساعدتك في هذا الشأن. كيف يمكنني مساعدتك بخصوص معلومات الأهلية؟"

تتضمّن هذه الإجابة محتوى من إنشاء الذكاء الاصطناعي، وهي تستند إلى الطلب النصي الذي أنشأه Dialogflow بدءًا من إعداد "موصِّل المعلومات" الذي تم تقديمه من قبل: "اسمك هو "التبرّع"، وأنت برنامج دردشة مفيد ومهذب في مؤسسة Save a Life. مهمتك هي مساعدة الموظفين في تقديم معلومات الأهلية". يتضمّن هذا الطلب النصي اسم الشركة واسم الوكيل، والأهم من ذلك، ما يشمله نطاقه والذي تستخدمه Dialogflow لإنشاء رد الوكيل.

أحسنت! أنت حتى الآن تستخدم مخزن البيانات لمساعدة الأشخاص في الأسئلة الشائعة المتعلقة بالتبرع بالدم. في الجزء التالي من الدرس التطبيقي حول الترميز، سنلقي نظرة على كيفية ربط طلب من منشئ نص بالمحتوى نفسه لاتخاذ قرارات مدروسة.

6- إعداد الوكيل لاختبار الأهلية

ومهمتنا التالية هي تصميم الوكيل لتحديد أهلية المستخدم للتبرع بالدم. هناك متطلبات صارمة يجب أن يستوفيها المتبرعون مثل العمر والوزن والشروط الحالية ورحلات السفر الأخيرة وما إلى ذلك. وبالنسبة إلى نطاق هذا الدرس التطبيقي حول الترميز، سنأخذ في الاعتبار العمر والوزن فقط. ويستخدم منشئ المحتوى النماذج اللغوية الكبيرة (LLM) من Google لاتخاذ قرارات مدروسة بشكل ديناميكي استنادًا إلى سياق المحادثة وقاعدة المعرفة.

ضبط مسارات ومَعلمات جديدة

  1. افتح الصفحة الرئيسية وانقر على تعديل مخازن البيانات
  2. تغيير ردّ الوكيل الحالي إلى $request.knowledge.answers[0] Would you like to take the eligibility quiz to find out if you can donate blood, and start changing lives?

إثراء ردّ الوكيل على الأسئلة الشائعة الخاصة بالمستخدم

  1. انقر على الزر حفظ.
  2. علينا الآن تصميم الوكيل للتعامل مع "نعم" و"لا" الردود. في البداية، أنشئ intent. confirmation.yes وأقصد الإلغاء confirmation.no. اتّبِع هذه الإرشادات بشأن إعادة استخدام النية بالشراء.
  3. بعد ذلك، في الصفحة الرئيسية، أنشِئ مسارًا للهدف confirmation.yes الذي يؤدي إلى الانتقال إلى صفحة جديدة من اختبار الأهلية.

إنشاء مسار لنتيجة التأكيد.نعم

عند ظهور عملية نقل لتأكيد السلامة إلى اختبار أهلية صفحة جديدة.

  1. كما ذكرنا سابقًا، سنعمل على تبسيط الاختبار وسننظر فقط في عمر المستخدم ووزنه لتحديد ما إذا كان مؤهلاً للتبرع أم لا. افتح صفحة اختبار الأهلية وأضِف مَعلمة نموذج جديدة age-weight، واختَر @sys.any كنوع العنصر. يُرجى تقديم "What is your age and weight?" كعملية تنفيذ الطلب الأولية. ونريد أن نجمع بيانات العمر والوزن في خطوة واحدة. احفظ جميع التغييرات.

إنشاء مَعلمة

إنشاء أداة إنشاء الأهلية وضبطها

ميزة منشئ المحتوى هي ميزة من Dialogflow CX تتيح للمطوّرين استخدام أحدث النماذج اللغوية الكبيرة (LLM) التوليدية من Google أثناء تنفيذ Dialogflow CX. منشئ لإنشاء ردود الوكيل في وقت التشغيل يمكن لأداة الإنشاء معالجة الردود العامة التي تتضمّن معرفة عامة من مجموعة بيانات نصية كبيرة تم تدريبها على استخدامها أو سياقها من المحادثة.

سننشئ منشئ محتوى جديدًا يقارن المعلومات التي يقدمها المستخدم (مثل العمر والوزن) مع متطلبات الأهلية لتحديد ما إذا كان بإمكان المستخدم التبرّع.

  1. في وحدة تحكّم Dialogflow CX، انتقِل إلى علامة التبويب إدارة، واختَر Generators وانقر على إنشاء جديد.

إنشاء منشئ جديد

  1. بعد ذلك، أدخِل اسمًا معروضًا وصفيًا واكتب الطلب النصي. واترك الإعدادات التلقائية لمراقبة جودة النموذج. بعد ذلك، انقر على Save (حفظ) لإنشاء أداة الإنشاء.
    • الاسم المعروض: Blood Donation Eligibility
    • طلب نصي: Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. Weight should be above 50 Kg. The user age and weight is $last-user-utterance. Be nice and tell the user if they are eligible to donate (also tell them why not in case)

يتم إرسال الطلب النصي إلى النموذج التوليدي أثناء التنفيذ في وقت التشغيل. ويجب أن يكون سؤالاً أو طلبًا واضحًا حتى ينتج عن النموذج إجابة مُرضية. يمكنك استخدام عناصر نائبة خاصة بشأن طلبات الإنشاء والمدمَجة في الطلب النصي:

  • $conversation المحادثة بين الوكيل والمستخدم، باستثناء العبارة الأخيرة للمستخدم.
  • $last-user-utterance العبارة الأخيرة التي يقولها المستخدم

في الطلب النصي الذي تم ضبطه، من المتوقّع أن يقدّم المستخدم معلومات العمر والوزن في مرحلة واحدة حوارية ("$آخر مستخدم-الكلام").

استخدام أداة الإنشاء في عملية التنفيذ وضبط جميع المَعلمات المطلوبة

  1. في صفحة اختبار الأهلية، أضِف مسارًا جديدًا عند ملء جميع المَعلمات. أدخِل شرط الشرط $page.params.status = "FINAL" وانقر على حفظ.

إضافة مسار جديد سيحدث عند ملء جميع المعلمات

  1. انتقِل إلى القسم Generators في لوحة Fulfillment ووسِّعه. بعد ذلك، انقر على إضافة أداة إنشاء واختَر أداة إنشاء أهلية جمع الدم. بعد اختيار أداة الإنشاء، عليك تحديد معلَمة الإخراج التي ستتضمّن نتيجة الأداة بعد التنفيذ.

اختَر أداة إنشاء "أهلية جمع الدم"، واربط العناصر النائبة للطلب بمَعلمات الجلسات وحدِّد مَعلمة المخرجات.

  1. استخدِم مَعلمة الإخراج في استجابة الوكيل واحفظ المسار. أنت الآن جاهز لاختبار كل شيء.

استخدام معلَمة الإخراج في استجابة الوكيل

7. إعادة اختبار الوكيل

انقر على اختبار الوكيل لفتح المحاكي مرة أخرى.

اختبار الوكيل مرة أخرى

في المحاكي، ابدأ محادثة جديدة مع موظّف الدعم. اسأل أولاً عن السن المسموح به ثم انتقِل إلى اختبار الأهلية. اختبار "الأهلية" المسار أولاً، لذا أدخل عمرًا يتراوح بين 18-75 ووزنًا أعلى من 50 كجم.

المسار المؤهَّل

بعد ذلك، تحقَّق من تعذُّر التحقّق من الأهلية في حال عدم استيفاء أحد المتطلّبات أو كليهما.

مسار غير مؤهَّل

رائع، المولد يعمل كما هو متوقع! أم هذا صحيح؟ ماذا يحدث إذا قدم المستخدم العمر ولكن ليس الوزن (أو العكس)؟

أدخِل العمر ولكن ليس الوزن

8. توليف طلب المنشئ

ويبدو أنّ عملية جمع العمر والوزن قبل يوم واحد لا تنجح ما لم يتم تحديد العمر والوزن. وبدلاً من ذلك، علينا إنشاء نموذج يجمع كلتا القيمتَين كمَعلمات للكيانات. لجعل الطلب سياقيًا لجميع متطلبات الأهلية (مثل العمر والوزن)، يمكننا استخدام العناصر النائبة من خلال إضافة $ قبل الكلمة. سنعمل لاحقًا على ربط العناصر النائبة لطلبات منشئ المحتوى هذه بمَعلمات الجلسة أثناء التنفيذ، وسيتم استبدالها بقيم مَعلمات الجلسة أثناء التنفيذ.

  1. افتح صفحة اختبار الأهلية وأضِف مَعلمتَين منفصلتَين للنماذج: واحدة للوزن وأخرى للعمر. اختر @sys.number-integer كنوع العنصر وضَع علامة على المَعلمات المطلوبة. يجب تقديم عمليات التنفيذ الأولية للطلب، مثل How old are you? وWhat is your correct weight?. احفظ جميع التغييرات.

نموذج الأهلية

  1. قبل أن نتمكن من تغيير المطالبة النصية للمنشئ نظرًا لأننا سنضيف عنصرين نائبين مخصصين جديدين، نحتاج أولاً إلى إزالة المنشئ من عملية تنفيذ المسار. انقر على حفظ.

إزالة المولّد

  1. انتقِل إلى علامة التبويب إدارة واختَر Generators وعدِّل الطلب النصي الخاص بأداة إنشاء Blood Donation eligibility (أهلية التبرع بالدم) باستخدام: Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. The weight must be at least 50 kg. The user is $age years old and weighs $weight Kg. Craft an email and politely explain to the user if they're eligible to donate and if not why.. انقر على حفظ (Save).

يُرجى ملاحظة أنّنا لم نجعل من المطالبة النصية سياقًا لمَعلمات العمر والوزن فحسب، بل غيّرنا أيضًا الجملة الأخيرة لنتمكّن من إنشاء رسالة إلكترونية رسمية للمستخدم تتضمّن النتيجة الرسمية لاختبار الأهلية.

إعادة ضبط الطلب النصي

  1. في صفحة اختبار الأهلية، اختَر المسار ووسِّع القسم Generators في لوحة Fulfillment. بعد ذلك، انقر على Add Builder (إضافة أداة إنشاء) واختَر Blood Donation eligibility (إنشاء أهلية التبرع بالدم). بعد اختيار أداة الإنشاء، عليك ربط العناصر النائبة الجديدة للطلب بمَعلمات الجلسة المعنية. علاوة على ذلك، تحتاج إلى إعادة تعيين معلمة الإخراج. انقر على حفظ (Save).

تعديل عمليات ربط المنشئ

  1. يُرجى إعادة اختبار الوكيل مرة أخرى. وتراعي عملية التحقّق من الأهلية الآن كلاً من العمر والوزن، وتغيّرت الصياغة من نبرة حوارية إلى رد أكثر تهذيبًا يكون جاهزًا للإرسال بدون أي شخص محتمل في الحلقة.

رسالة إلكترونية تفيد بأنّ المستخدم غير مؤهَّل

رسالة إلكترونية تفيد بأنّ المستخدم مؤهَّل

9. تهانينا

أحسنت في إكمال هذا الدرس التطبيقي حول الترميز.

أحسنت في إكمال الدرس التطبيقي حول الترميز.

درسنا اليوم المنشئين في سياق اختبارات الأهلية. لقد لاحظتم أنّ صنّاع المحتوى يستخدمون النماذج اللغوية الكبيرة لإنشاء ردود موظّفي الدعم، وبإمكانها أيضًا اتّخاذ قرارات مدروسة من خلال الاستعانة بقاعدة معرفية. من المؤكد أن هناك العديد من حالات الاستخدام الأخرى التي يمكن تنفيذها للاستفادة من المنشئين ومخازن البيانات ولا يسعنا الانتظار للتعرف عليها.

تنظيف

يمكنك تنفيذ المهام التالية لتجنُّب تحمُّل أي رسوم من حسابك على Google Cloud مقابل الموارد المستخدَمة في هذا الدرس التطبيقي حول الترميز:

مزيد من المعلومات

اطّلِع على مزيد من المعلومات حول الذكاء الاصطناعي الحواري والذكاء الاصطناعي التوليدي من خلال الأدلة والمراجع التالية:

الترخيص

هذا العمل مرخّص بموجب رخصة المشاع الإبداعي 2.0 مع نسب العمل إلى مؤلف عام.