تلخيص المواضيع باستخدام LLM (GPT, BERT, ...)؟

عزيزي فريق ديسكورس،

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

نهج أكثر قوة سيكون استخدام نموذج لغوي كبير مثل GPT-3 أو BERT لتلخيص الموضوع بأكمله عند الطلب (مقابل مجرد تصفية المنشورات). التلخيص هو حالة استخدام تتفوق فيها النماذج اللغوية الكبيرة (شبه شعارها) وأعتقد أن هذا سيكون أكثر فعالية بكثير من النهج الحالي الذي يعتمد على إشارات ضعيفة (في بعض المجتمعات ، قد لا يستخدم الأشخاص ردود الفعل أو يردون على منشورات محددة).

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

أتخيل أن الميزة ستعمل على هذا النحو:

  • عند قراءة موضوع طويل لأول مرة (يتم تعريف الطويل بإعداد) لم يتم تلخيصه من قبل ، اقترح تلخيصه عند الطلب.
  • سيتم إدراج التلخيص في الموضوع (على سبيل المثال: كل ما سبق تم تلخيصه)
  • سيتم ربطه من أعلى الموضوع (على سبيل المثال: القفز إلى الملخص)
  • من الناحية المثالية ، ستكون هناك آلية ردود فعل :+1: :-1:
  • بعد N ردود إضافية ، اعرض نشر ملخص جديد وتحديث الرابط في الأعلى.
  • سيتم تكوين المكون الإضافي بمفتاح openai (بافتراض أن هذا هو النموذج اللغوي الكبير المستخدم). في النهاية ، إذا أثبت نجاحه ، سترغب في تقديم الوصول إلى نماذج مختلفة.

على الأقل هذه هي النظرية :slight_smile:. من الناحية العملية ، هناك أمور غير معروفة حول مدى جودتها ، أو كيفية تكوين درجة التلخيص. حدسي هو أن هذا عائد استثمار مرتفع للغاية لبعض المجتمعات. المشكلة الأولى التي أسمعها هي أن الناس يكرهون اللحاق بالمواضيع. سيكون هذا مساعدة كبيرة.

ما رأيك؟

8 إعجابات

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

سنرد هنا بمجرد أن يكون لدينا شيء نعرضه.

8 إعجابات

FWIW:

import openai
import requests
from bs4 import BeautifulSoup

openai.api_key = "KEY"

url = "https://meta.discourse.org/t/summarising-topics-with-an-llm-gpt-bert/254951.json"

response = requests.get(url)
data = response.json()

messages = []
messages.append("Title: " + data["title"])
for post in data['post_stream']['posts']:
    soup = BeautifulSoup(post['cooked'], 'html.parser')
    messages.append("Post #" + str(post["post_number"]) + " by " + post["username"])
    messages.append(soup.get_text())

text_blob = "\n".join(messages)

print(text_blob)

max_chunk_len = 4000  # Maximum length of each chunk

chunks = [text_blob[i:i+max_chunk_len] for i in range(0, len(text_blob), max_chunk_len)]

summaries = []
for chunk in chunks:
    print("processing chunk")
    response = openai.Completion.create(
        engine="text-davinci-003",
        prompt="prompt:\n" + chunk + "\nsummary:",
        temperature=0.7,
        max_tokens=200,
        top_p=1,
        frequency_penalty=0,
        presence_penalty=0
    )
    summary = response.choices[0].text.strip()
    print("\nSUMMARY")
    print(summary)
    print("\nSUMMARY")

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

إنه مثير للاهتمام ولكنه غير متساوٍ إلى حد معقول

9 إعجابات

لم أستطع منع نفسي من تجربته اليوم:

إنه تجريبي للغاية وهناك القليل جدًا من الضمانات لما قد يحدث بشكل خاطئ في الوقت الحالي، لذا فهو بالتأكيد ليس للاستخدام المهني (!!)

ملاحظة: بسبب حدود الرموز، يمكنه حاليًا أخذ أول ~40 مشاركة فقط في الاعتبار (بناءً على نشاط أحد منتدياتي).

يحتوي على نظام تصويت سلبي. معاينة واجهة المستخدم:

(بالمناسبة، هذا المثال يعتمد على البيانات العشوائية إلى حد ما في أدوات التطوير، وهو يعمل بشكل أفضل بكثير على البيانات الحقيقية).

بالمناسبة، لقد “أنفقت” 0.33 دولار على المكالمات لبناء هذا حتى الآن :smiley:

(18 دولارًا هو تخصيص مجاني)

8 إعجابات

@Julienlavigne لقد أجريت بعض التحسينات الهامة على هذا من حيث الاستقرار والمرونة وردود الفعل الإدارية.

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

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

مجموعة الإعدادات الكاملة الآن هي:

5 إعجابات

@merefield هذا يبدو رائعًا!

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

3 إعجابات

@sam هل كان هناك أي تقدم في هذا الجهد؟

لقد قدم المكون الإضافي الخاص بي هذا لفترة طويلة جدًا.

أصدرت CDCK لاحقًا المكون الإضافي Discourse AI مع حل تلخيص مشابه تقريبًا أيضًا.

املأ أحذيتك.

شكرًا @merefield روبرت، ونعم لقد رأيت ذلك، وشكرًا لك على عملك في هذا. كنت آمل، مع ذلك، أن يعمل @sam (أو شخص ما لديه دعم Discourse) على ميزة تلخيص LLM مع تكامل كامل مع Discourse الأصلي. من الواضح، إذا كان يتعين ببساطة فرض رسوم إضافية على عملاء خطة أعمال Discourse مقابل مفتاح OpenAI الخاص بهم (أو أيًا كان المزود الذي سيتم تحديده)، فسيكون ذلك أبسط بكثير من منظور التكوين والتوافق الأعلى والصيانة. كل التوفيق.

إعجاب واحد (1)

لا يمكنني التحدث نيابة عن CDCK هنا، ولكن الدقة هنا هي أنني أشك في أن العديد من المواقع تفضل أن يكون هذا اختياريًا حيث أن البعض قلق بشأن الذكاء الاصطناعي (بينما يرغب البعض الآخر في احتضانه بالكامل).

لذلك، أشك في أن هذا سيظل مكونًا إضافيًا اختياريًا ويسمح لـ CDCK بتخصيص عروض المنتجات كما يرونها والعملاء يرونها مناسبة.

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

لا يمكنني التحدث عن الفوترة/تكوين حساب OpenAI.

مرحباً مايك، لقد قمنا مؤخرًا بتفعيل روبوت الذكاء الاصطناعي، انظر:

هذا متاح الآن في تثبيتك، يمكنك المتابعة وتوصيل بيانات الاعتماد لـ anthropic أو openai.

من حيث خارطة الطريق، نفكر في تفعيل “التضمين” تاليًا، والذي سيعطيك مواضيع ذات صلة دلاليًا. بعد ذلك، أعتقد أن الميزتين التاليتين ستكونان مساعد الذكاء الاصطناعي والملخص.

لا يمكنني تحديد موعد دقيق لإطلاق جميع هذه الميزات في خطة الأعمال، لكننا نعتزم طرحها خلال الأشهر القليلة القادمة.

يمكن لمستضيفي الخدمة الذاتية وعملاء المؤسسات الوصول إليها بالفعل اليوم.


التلخيص مثير للاهتمام بشكل خاص، نحن نشتري عددًا قليلاً من خوادم A100 ويجب أن تكون جاهزة في الأسابيع القليلة القادمة. Mistral قادر وسريع بشكل مدهش، بمجرد طرح السعة، قد نتمكن من توفير الملخص حتى لخطط الأعمال بدون مفاتيح خاصة بك، ولكن يجب علينا أولاً استكشاف خصائص الأداء قبل تقديم أي التزامات هناك.

4 إعجابات

شكرًا لك يا سام. سنكون مهتمين جدًا بهذه الميزة، وأعتقد أن عملاء الاستضافة الآخرين سيكونون كذلك. كل التوفيق.

إعجاب واحد (1)