انتقل إلى المحتوى الرئيسي

كيفية استخدام الإضافة

يوفر مُدمج الدردشة بالذكاء الاصطناعي في وقت التشغيل وظيفتين رئيسيتين: الدردشة من نص إلى نص وتحويل النص إلى كلام (TTS). تتبع كلتا الميزتين سير عمل مشابه:

  1. تسجيل رمز موفر واجهة برمجة التطبيقات (API) الخاص بك
  2. تكوين إعدادات خاصة بالميزة
  3. إرسال الطلبات ومعالجة الردود

تسجيل رمز المزود

قبل إرسال أي طلبات، قم بتسجيل رمز موفر واجهة برمجة التطبيقات (API) الخاص بك باستخدام الدالة RegisterProviderToken.

ملاحظة

يعمل Ollama محليًا ولا يتطلب رمز واجهة برمجة تطبيقات (API). يمكنك تخطي هذه الخطوة لـ Ollama.

تسجيل رمز المزود في Blueprint

وظيفة الدردشة من نص إلى نص

يدعم البرنامج المساعد وضعين لطلب الدردشة لكل مزود:

طلبات الدردشة غير المتدفقة

استرجاع الرد الكامل في مكالمة واحدة.

إرسال طلب دردشة OpenAI

طلبات الدردشة المتدفقة

تلقي أجزاء الرد في الوقت الفعلي لتفاعل أكثر ديناميكية.

إرسال طلب دردشة OpenAI متدفق

وظيفة تحويل النص إلى كلام (TTS)

تحويل النص إلى صوت كلام عالي الجودة باستخدام مزودي خدمة تحويل النص إلى كلام الرائدين. تُرجع الإضافة بيانات الصوت الخام (TArray<uint8>) والتي يمكنك معالجتها وفقًا لاحتياجات مشروعك.

بينما تُظهر الأمثلة أدناه معالجة الصوت للتشغيل باستخدام إضافة Runtime Audio Importer (انظر توثيق استيراد الصوت)، فإن Runtime AI Chatbot Integrator مصمم ليكون مرنًا. تُرجع الإضافة ببساطة بيانات الصوت الخام، مما يمنحك الحرية الكاملة في كيفية معالجتها لحالة استخدامك المحددة، والتي قد تشمل تشغيل الصوت، الحفظ في ملف، معالجة صوتية إضافية، إرسال إلى أنظمة أخرى، تصورات مخصصة، وأكثر من ذلك.

طلبات تحويل النص إلى كلام غير المتدفقة (Non-Streaming)

تُرجع طلبات تحويل النص إلى كلام غير المتدفقة بيانات الصوت الكاملة في استجابة واحدة بعد معالجة النص بالكامل. هذا النهج مناسب للنصوص الأقصر حيث لا يمثل انتظار الصوت الكامل مشكلة.

Send OpenAI TTS Request

طلبات توليف الكلام النصي بالبث المباشر (Streaming TTS)

يقوم توليف الكلام النصي بالبث المباشر (Streaming TTS) بتسليم مقاطع الصوت فور توليدها، مما يسمح لك بمعالجة البيانات بشكل تدريجي بدلاً من الانتظار حتى يتم توليف الصوت بالكامل. هذا يقلل بشكل كبير من زمن الانتظار الملحوظ للنصوص الطويلة ويمكن التطبيقات التي تعمل في الوقت الفعلي. كما يدعم توليف الكلام النصي بالبث المباشر (Streaming TTS) من ElevenLabs وظائف البث المجزء المتقدمة لسيناريوهات توليد النصوص الديناميكية.

إرسال طلب OpenAI Streaming TTS

الحصول على الأصوات المتاحة

تقدم بعض مزودي خدمة تحويل النص إلى كلام واجهات برمجة تطبيقات لعرض الأصوات لاكتشاف الأصوات المتاحة برمجيًا.

Get Google Cloud Voices

سرد نماذج أولاما

يمكنك الاستعلام عن مثيل أولاما المحلي الخاص بك لجميع النماذج المتاحة باستخدام دالة ListOllamaModels. يمكن أن يكون هذا مفيدًا، على سبيل المثال، لملء منتقي نموذج ديناميكيًا في واجهة المستخدم الخاصة بك. يقوم المساعد GetModelNames باستخراج أسماء السلاسل فقط من النتيجة للراحة.

سرد نماذج أولاما

معالجة الأخطاء

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

معالجة الأخطاء

إلغاء الطلبات

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

إلغاء الطلب

أفضل الممارسات

  1. تعامل دائمًا مع الأخطاء المحتملة عن طريق التحقق من ErrorStatus في رد الاتصال الخاص بك
  2. كن حذرًا بشأن حدود معدل الطلبات والتكاليف لكل مزود خدمة
  3. استخدم وضع التدفق للمحادثات الطويلة أو التفاعلية
  4. فكر في إلغاء الطلبات التي لم تعد هناك حاجة إليها لإدارة الموارد بكفاءة
  5. استخدم تحويل النص إلى كلام بالتدفق للنصوص الطويلة لتقليل زمن التأخير الملحوظ
  6. لمعالجة الصوت، يقدم مكون Runtime Audio Importer الإضافي حلاً مناسبًا، ولكن يمكنك تنفيذ معالجة مخصصة بناءً على احتياجات مشروعك
  7. عند استخدام نماذج التفكير (DeepSeek Reasoner, Grok)، تعامل مع مخرجات التفكير والمحتوى بشكل مناسب
  8. اكتشف الأصوات المتاحة باستخدام واجهات برمجة التطبيقات الخاصة بسرد الأصوات قبل تنفيذ ميزات تحويل النص إلى كلام
  9. للتدفق المجزأ لـ ElevenLabs: استخدم الوضع المستمر عندما يتم إنشاء النص تدريجيًا (مثل ردود الذكاء الاصطناعي) والوضع الفوري لقطع النص المشكلة مسبقًا
  10. قم بتكوين مهلات إفراغ مناسبة للوضع المستمر لتحقيق التوازن بين سرعة الاستجابة وتدفق الكلام الطبيعي
  11. اختر أحجام القطع المثلى وفترات التأخير في الإرسال بناءً على متطلبات التطبيق في الوقت الفعلي
  12. لـ Ollama: استخدم ListOllamaModels لاكتشاف النماذج المتاحة ديناميكيًا بدلاً من ترميز أسماء النماذج بشكل ثابت

استكشاف الأخطاء وإصلاحها

  • تحقق من صحة بيانات اعتماد واجهة برمجة التطبيقات الخاصة بك لكل مزود خدمة
  • تحقق من اتصالك بالإنترنت
  • تأكد من تثبيت أي مكتبات لمعالجة الصوت تستخدمها (مثل Runtime Audio Importer) بشكل صحيح عند العمل مع ميزات تحويل النص إلى كلام
  • تحقق من أنك تستخدم تنسيق الصوت الصحيح عند معالجة بيانات استجابة تحويل النص إلى كلام
  • لتحويل النص إلى كلام بالتدفق، تأكد من أنك تتعامل مع قطع الصوت بشكل صحيح
  • لنماذج التفكير، تأكد من أنك تعالج مخرجات التفكير والمحتوى معًا
  • راجع الوثائق الخاصة بالمزود لتوافر النماذج وإمكانياتها
  • للتدفق المجزأ لـ ElevenLabs: تأكد من استدعاء FinishChunkedStreaming عند الانتهاء لإغلاق الجلسة بشكل صحيح
  • لمشاكل الوضع المستمر: تحقق من اكتشاف حدود الجمل بشكل صحيح في نصك
  • للتطبيقات في الوقت الفعلي: اضبط فترات التأخير في إرسال القطع ومهلات الإفراغ بناءً على متطلبات زمن التأخير لديك
  • لـ Ollama: تأكد من أن خادم Ollama قيد التشغيل ويمكن الوصول إليه عند BaseUrl المُكون قبل إرسال الطلبات