تلخيص المحادثة
نظرة عامة : يقوم تطبيق Streamlit هذا بإنشاء روبوت ملخص للمحادثة باستخدام نموذج اللغة LangChain وOpenAI. فهو يسمح للمستخدمين بتحميل ملف JSON يحتوي على محادثة، ومعالجة المحادثة، وإنشاء ملخص باستخدام تقنيات معالجة اللغة الطبيعية.
المكونات والمكتبات المستخدمة:
Streamlit : لإنشاء واجهة تطبيق الويب
JSON : لتحليل ملف JSON الذي تم تحميله
LangChain : لإنشاء وتشغيل سلسلة التلخيص
OpenAI : كنموذج لغة للتلخيص
dotenv : لتحميل متغيرات البيئة
** الوظائف الرئيسية وأدوارها: **
أ. تحميل الملف:
- يستخدم file_uploader الخاص بـ Streamlit للسماح للمستخدمين بتحميل ملف JSON
ب. معالجة جسون:
- يوزع ملف JSON الذي تم تحميله
- يستخرج بيانات المحادثة من بنية JSON
ج. تنسيق المحادثة:
- تنسيق المحادثة المستخرجة في سلسلة
- إنشاء كائن مستند LangChain من المحادثة المنسقة
د. تلخيص:
- يستخدم نموذج لغة OpenAI من خلال LangChain
- إنشاء سلسلة تلخيص باستخدام استراتيجية "map_reduce".
- يولد ملخصا للمحادثة
ه. عرض:
- يعرض الملخص الذي تم إنشاؤه في واجهة Streamlit
سير العمل:
- يقوم المستخدم بتحميل ملف JSON يحتوي على محادثة
- يقرأ التطبيق ويعالج ملف JSON
- يتم استخراج المحادثة وتنسيقها
- تم إنشاء خط أنابيب تلخيص LangChain
- يتم تلخيص المحادثة باستخدام نموذج OpenAI
- يتم عرض الملخص للمستخدم
متطلبات :
- بايثون 3.6+
- ستريمليت
- لانجشين
- مفتاح OpenAI API (المخزن في متغير البيئة)
- بيانات المحادثة بتنسيق JSON
إعداد البيئة:
- يستخدم التطبيق dotenv لتحميل متغيرات البيئة
- يجب تخزين مفتاح OpenAI API في ملف .env أو تعيينه كمتغير بيئة
خيارات النموذج : بينما يستخدم هذا الرمز نموذج OpenAI، يدعم LangChain نماذج لغوية مختلفة. يمكن أن تشمل البدائل ما يلي:
- نماذج الوجه المعانقة
- جوجل بالم
- كلود الأنثروبي
- نماذج لغة كوهير
لاستخدام نموذج مختلف، ستحتاج إلى استيراد تكامل LangChain المناسب وتعديل تهيئة llm.
- نموذج Hugging Face: ستحتاج إلى تعيين HUGGINGFACEHUB_API_TOKEN في متغيرات البيئة لديك.
- Google PaLM: ستحتاج إلى تعيين GOOGLE_PALM_API_KEY في متغيرات البيئة لديك.
- Anthropic's Claude: ستحتاج إلى تعيين ANTHROPIC_API_KEY في متغيرات البيئة الخاصة بك.
- Cohere: ستحتاج إلى تعيين COHERE_API_KEY في متغيرات البيئة لديك.
ملاحظة: لتنفيذ أي من هذه التغييرات، يجب عليك استبدال تهيئة نموذج OpenAI في الكود الأصلي الخاص بك:
تذكر تثبيت الحزم اللازمة لكل طراز. يمكنك القيام بذلك باستخدام النقطة:
- نقطة تثبيت langchain المجتمع
- تثبيت النقطة Huggingface_hub # لـ HuggingFace
- تثبيت النقطة google-api-python-client # لـ Google PaLM
- نقطة تثبيت الأنثروبي # للأنثروبي
- نقطة تثبيت cohere # لـ Cohere
إمكانيات التخصيص :
- ضبط معلمات التلخيص (على سبيل المثال، max_tokens، ودرجة الحرارة)
- تنفيذ استراتيجيات تلخيص مختلفة (على سبيل المثال، "أشياء" أو "تحسين" بدلاً من "map_reduce")
- أضف معالجة الأخطاء لمعالجة الملفات واستدعاءات API
- قم بتحسين واجهة المستخدم باستخدام مكونات Streamlit الإضافية
القيود : يعتمد على بنية ملف JSON المدخل. يتطلب اتصال إنترنت نشطًا لاستدعاءات API إلى OpenAI. تعتمد جودة الملخص على إمكانيات نموذج اللغة المختار