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

الوحدة 6 — التحكّم في الأسلوب والطول والنبرة

بعد أن أمّنّا في الوحدة السابقة شكلًا موثوقًا للمُخرَج، ننتقل إلى بُعد آخر أقلّ نظاميّة وأكثر مراوغةً: كيف نُشكِّل صوت النموذج؟ الفيل الأحمر يحوي مرحلة توليدية أيضًا — بعد استخراج الحقول من رسالة العميل، نُنتج ردًّا مُوجَّهًا إليه. وهذا الردّ يجب أن يكون مطابقًا لصوت العلامة التجارية.

الصفات المبهمة لا تُقيِّد شيئًا

الغلطة الأولى للمبتدئين: «اكتب ردًّا احترافيًا وودّيًا ومُقنعًا». هذه الصفات الثلاث لا يستطيع النموذج قياسها. «احترافي» لدى محامي عقار غير «احترافي» لدى وكالة إعلانات، و«ودّي» لدى شركة تأمين غير «ودّي» لدى تطبيق مراسلة للمراهقين.

الصفات المبهمة تُنتج مخرجات مبهمة. النموذج يستبدلها بمتوسّط ما رآه في التدريب على هذه الصفات، والنتيجة نبرة عامّة، لا تنبض بشخصيّة، ولا تُميِّز علامتك عن أيّ علامة أخرى تستخدم نفس التعليمة.

قيود مقيسة تحلّ محلّ الصفات

القاعدة الذهبية: استبدِل كلّ صفة بقيدين على الأقلّ يُمكن قياسهما. عوض «احترافي»:

  • استعمل صيغة «حضرتكم» لا «أنتم».
  • لا تستعمل رموز التعبير الوجهية.
  • افتح بجملة تحيّة قصيرة.

عوض «ودّي»:

  • ابدأ بشكر العميل على تواصله.
  • استعمل اسم العميل في الجملة الأولى إذا كان معروفًا.

هذه القيود المقيسة قابلة للتحقّق منها آليًّا (طول الردّ، وجود التحيّة، غياب رموز التعبير)، فيمكن للنموذج التحقّق منها بنفسه إن طلبنا، ويمكن للتقييم في الوحدة 9 حسابها بدقّة.

أمثلة للنبرة أفضل من وصفها

نظرية «مثال يقول ما لا تقوله عشر جمل» تعمل بقوّة استثنائيّة مع الأسلوب. بدلًا من محاولة وصف صوت العلامة بكلمات، أعطِ ثلاثة أمثلة قصيرة لردود سابقة يُوافق فريقك أنّها تُمثّل الصوت المطلوب:

SYSTEME = """أنت مساعد خدمة عملاء لشركة أثاث منزلي.

نبرة الردود (اتّبع الأمثلة بدقّة):

مثال 1:
«السلام عليكم يا سيّد كريم. أشكركم على تواصلكم بشأن الأريكة. نُدرك
أنّ التأخير مزعج. سيصلكم الطرد يوم الخميس القادم مع تعويض بقسيمة
شراء بقيمة 50 دينارًا. نبقى في خدمتكم.»

مثال 2:
«مساء الخير يا سيّدة لطيفة. الفاتورة صحيحة من جانبنا، غير أنّني أفهم
أنّها بدت مربكة. أرفق لكم جدولًا مفصّلًا يوضّح كلّ سطر. لا تتردّدوا
في العودة إن بقي شيء غير واضح.»

مثال 3:
«السلام عليكم يا سيّد سليم. آسف لأنّ الجهاز لم يعمل على النحو
المتوقَّع. سنُرسل لكم قطعة بديلة اليوم، وموظّف تركيب يوم الاثنين
بدون رسوم. تحياتنا.»

قواعد:
- افتح دائمًا بتحيّة تحوي اسم العميل.
- لا تتجاوز ثلاث جُمَل.
- اقترح إجراءً ملموسًا واحدًا أو اثنين.
- اختم بصيغة قصيرة.
"""

هذه الأمثلة تُثبِّت الطول (ثلاث جمل)، والافتتاح (تحيّة باسم العميل)، والبنية (توضيح ثمّ إجراء ثمّ ختام)، والنبرة (رسميّة لكن دافئة). كلّ ذلك دون كلمة «احترافي» ولا كلمة «ودّي».

الطول بالجُمَل لا بالكلمات

«اكتب ردًّا من 50 كلمة» توجيه شائع، وهو سيّئ. النموذج لا يعدّ الكلمات بدقّة، والنتيجة تتراوح بين 40 و80 عادةً. الأسوأ: قد يخلّ بالمعنى للوصول إلى العدد، فيقصّ جملة في المنتصف أو يُضيف حشوًا.

القيد الأنجع هو بالجُمَل: «ثلاث جمل بالضبط»، «جملة أو جملتان»، «فقرة واحدة». النموذج يُتقن عدّ الجمل بدقّة عالية. وإن أردت قيدًا أدقّ، اذكر معالم بنيوية: «افتح بجملة تحيّة، ثم جملة توضيح، ثم جملة اقتراح إجراء».

للمخرجات الطويلة (تقارير، مقالات)، بالفقرات وبالعناوين: «ثلاثة أقسام بعناوين، مع فقرة أو فقرتين لكلّ قسم». هذا أدقّ من طلب عدد محدَّد من الكلمات.

ثبات هُويّة العلامة بين النداءات

المهمّة الحقيقيّة ليست ردًّا واحدًا جميلًا، بل مئة ردّ يومًا متماسكة معًا كأنّها من قلم واحد. هنا يظهر أثر إعداد الوحدة 2: تعليمة النظام تحوي كامل توصيف الأسلوب، ولا تتغيّر بين النداءات. وإعداد الوحدة 4: temperature=0 أو قيمة منخفضة جدًّا (0.2) لتقليل التباين الأسلوبي بين المخرجات.

قيد إضافي جيّد: قائمة ممنوعات. مساعد لعلامة تفخر بأسلوب مباشر يُمكن أن يُمنَع من كلمات مثل «ربّما»، «قد»، «نأمل». هذا يُجبر النموذج على تقديم التزامات ملموسة، ولا شيء أبعد عن الصوت المؤسّسي من الغموض المكرّر.

دمج توليد الردّ في الفيل الأحمر

نُضيف الآن مرحلة توليدية بعد استخراج الحقول. النداء الثاني يستقبل الحقول المستخرَجة، ويُنتج ردًّا مطابقًا لصوت العلامة:

from openai import OpenAI
from pydantic import BaseModel

client = OpenAI()

def rediger_reponse(extraction: ExtractionEmail, prenom: str) -> str:
contexte = f"""العميل: {prenom}
Sujet: {extraction.sujet}
Produit: {extraction.produit or 'غير محدَّد'}
Urgence: {extraction.urgence}
Action attendue: {extraction.action or 'غير محدَّدة'}
"""
r = client.chat.completions.create(
model="gpt-4o-mini",
temperature=0.2,
messages=[
{"role": "system", "content": SYSTEME},
{"role": "user", "content": contexte},
],
)
return r.choices[0].message.content

نداءان في تسلسل: الأوّل يستخرج ويُصنِّف بشكل حتمي (temperature=0)، والثاني يُولِّد ردًّا مطبوعًا بأسلوب العلامة (temperature=0.2). كلٌّ منهما يستخدم SYSTEME منفصلًا مُكيَّفًا لمهمّته.

نبرة عابرة للثقافات: تنبيه للفيل الأحمر

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

لا تطلب «مبدعًا وحاسمًا»

الصفات المتناقضة الشائعة («مبدع لكن حاسم»، «قصير لكن شامل»، «ودّي لكن رسمي») تُنتج مخرجات تنتقل بين النقيضين بلا استقرار. اختَر ضلعًا واحدًا لكلّ محور من محاور الأسلوب، ثمّ ثبِّته بمثال.

اختبار «القراءة العمياء»

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

في الخلاصة

  • الصفات المبهمة لا تُقيِّد شيئًا؛ استبدِلها بقيود مقيسة قابلة للتحقّق آليًّا.
  • أمثلة الردود تُثبِّت النبرة بقوّة لا تعادلها الأوصاف الطويلة.
  • عبِّر عن الطول بالجُمَل أو بالأقسام، لا بعدد الكلمات الذي لا يُتقنه النموذج.
  • ثبات هُويّة العلامة بين النداءات يقوم على تعليمة نظام ثابتة وtemperature منخفض وقائمة ممنوعات.

الوحدة التالية: كتابة التعليمات بلغة الدورة، ومزالق الترجمة الحرفيّة من الإنجليزية، والنبرة المحلّية.