استراتيجيات التحفيز: قوالب التحفيز

تعرف على كيفية تنفيذ قوالب مطالبة LangChain.

سنغطي ما يلي...

يسهل LangChain استخدام القوالب المستقلة عن النموذج، مما يسمح بسهولة استخدام القوالب الموجودة عبر نماذج اللغة المختلفة.

يستخدم قالب PromptTemplate دالة str.format في بايثون لآلية إنشاء القوالب: str.format(*args, **kwargs) . تُستدعى هذه الدالة على سلسلة نصية تحتوي على نص عادي مع حقول بديلة محصورة بين أقواس {} . يمكن لهذه الحقول تحديد إما الفهرس الرقمي لمتغير موضعي أو اسم متغير كلمة رئيسية. تُنتج هذه الدالة سلسلة نصية جديدة، حيث يُستبدل كل حقل بديل بالتمثيل النصي للمتغير المقابل.

مثال:

Press + to interact
Python
print("The sum of 1 + 2 is {0}".format(1+2))

PromptTemplate

نحن نستخدم PromptTemplate لإنشاء قالب لمطالبة السلسلة.

Press + to interact
Python
from langchain_core.prompts import PromptTemplate
prompt = "I need you to book a reservation for me tonight at {time} at {place}"
prompt_template = PromptTemplate.from_template(prompt)
# Print the formatted prompt
print(prompt_template.format(time="9:00 PM", place="LaVie restaurant"))

في هذا الكود نقوم بالخطوات التالية:

  • السطر 1 : نقوم باستيراد PromptTemplate من وحدة langchain_core.prompts .

  • السطر 3 : يتم تعريف سلسلة المطالبة مع عناصر نائبة للوقت والمكان.

  • السطر 4 : نقوم بإنشاء مثيل لـ PromptTemplate باستخدام طريقة فئة from_template ، ونمرر سلسلة المطالبة المحددة مسبقًا.

  • السطران 6 و7 : نستخدم دالة التنسيق الخاصة بكائن قالب prompt_template لإدراج تفاصيل محددة في المطالبة. في هذه الحالة، يُستبدل العنصران " time و place " بـ "9:00 مساءً" و"مطعم لافي" على التوالي. يوضح هذا كيفية تخصيص المطالبة ديناميكيًا، ثم نطبعها.

Zero-shot ChatPromptTemplate

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

Basic ChatPromptTemplate

...