كيف بنيت بوابة مراقبة جودة (QC) لإخفاء إشارات الأتمتة

تكشف الأتمتة عن نفسها بطرق لا تتوقعها.

كنت أدير مسار محتوى مؤتمت لـ Bluesky. نُشر أحد المنشورات وهو يذكر "مسار المحتوى" (the content pipeline). في مدونة تقنية، هذا أمر طبيعي. أما في الجدول الزمني لوسائل التواصل الاجتماعي، فهذا بمثابة علامة تحذير؛ لأنه يخبر القراء بأنهم يتحدثون إلى بوت.

لقد قمت ببناء سكربت لمراقبة الجودة لإيقاف ذلك. يعمل السكربت كبوابة بين خطوة التوليد وخطوة النشر.

يبدو سير العمل الجديد كالتالي: bluesky-qc.mjs ← (PASS) bluesky-post-queue.mjs ← Bluesky API

يستخدم السكربت أربع بوابات لفحص كل مدخل:

  • البوابة 1: تصفية العبارات أستخدم قائمة regex لالتقاط الكلمات التي تشير إلى الأتمتة. فهي تحظر مصطلحات مثل "AI-generated" أو "cron" أو "content pipeline" أو "batch test". إذا بدا المنشور وكأنه تقرير مطور، فسيتم رفضه.

  • البوابة 2: فحص التقادم أقوم بفحص نوعين من المحتوى القديم: • العبارات القديمة: تلتقط كلمات مثل "اليوم" أو "أُطلق للتو" التي تفقد معناها إذا تأخر النشر. • الطوابع الزمنية القديمة: إذا كان المدخل أقدم من 14 يومًا، يتم رفضه.

  • البوابة 3: التنبؤ بالتفاعل ينظر السكربت في آخر 300 منشور لي، ويتنبأ بما إذا كانت الوسوم (hashtags) في المنشور الجديد ستحقق أداءً جيدًا. حاليًا، يكتفي هذا الإجراء بتسجيل تحذير فقط، لكنني سأحوله قريبًا إلى سبب للرفض القاطع.

  • البوابة 4: اجتياز الجودة (مخطط له) أنوي إضافة طبقة نهائية باستخدام بروتوكول جودة لالتقاط الأخطاء الدقيقة.

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

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

استخدام كلتا الطبقتين هو الطريقة الأكثر أمانًا للحفاظ على نبرة بشرية.

المصدر: https://dev.to/morinaga/how-i-built-a-pre-post-qc-gate-that-blocks-bluesky-automation-from-self-revealing-41ja