بريد مزعج: الحصول على الذكاء الاصطناعي بشكل رجعي لمراجعة المنشورات الأخيرة ثم حذف تلك التي تم تمييزها كبريد مزعج

,

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

يفترض هذا أنك تعرف ما هو Rails وكيفية تشغيله. إذا لم تكن كذلك، فربما لا يجب عليك القيام بذلك.

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

الحصول على المنشورات الأخيرة

بدأ الهجوم قبل أكثر من يوم بقليل، لذا عدت يومين. يمكنك أيضًا القيام بأشياء مثل 36.hours.ago إذا كنت تريد أن تكون أكثر تحديدًا. لو كنت أكثر ذكاءً، لربما فعلت شيئًا لتخطي المنشورات في الرسائل الخاصة، لكنني قررت عدم القلق بشأن ذلك.

posts = Post.where("created_at >= ?", 2.days.ago)
          .where(deleted_at: nil)
          .where("user_id > ?", 1)

استدعاء SpamScanner على تلك المنشورات

لست متأكدًا تمامًا مما حدث لجعل بعض هذه المنشورات تفشل، ولكن إذا حصلت على بعض “oops” فمن المحتمل ألا يكون ذلك مدعاة للقلق.

posts.each do |post|
  begin
    puts  "https://talk.commonmark.org/p/#{post.id}"
    DiscourseAi::AiModeration::SpamScanner.perform_scan(post)
  rescue
    puts "oops";
  end;
  sleep 0.2;
end

الحصول على المنشورات التي تحتاج الآن إلى مراجعة

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

reviewables = Reviewable.where(status: "pending")
  .where(potential_spam: true)
  .where("created_at >= ?", 1.hour.ago)
  .where("updated_at >= ?", 1.hour.ago)

الثقة العمياء بالذكاء الاصطناعي

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

سيؤدي هذا إلى حذف المنشورات وحذف وحظر المستخدمين. إنه خطير جدًا جدًا.


reviewables.each do |reviewable|
  begin
    puts "deleting https://talk.commonmark.org/t/#{reviewable.topic_id}"
    if reviewable.topic.nil?
      puts "already gone"
      next
    end
    reviewable.perform(user, :delete_user_block)
  rescue
    puts "oops"
  end
end
8 إعجابات