כיצד לבנות תבניות בקשה ב-LangChain?

Kyzd Lbnwt Tbnywt Bqsh B Langchain



LangChain היא המסגרת המכילה מספר תלות וספריות שניתן להשתמש בהן כדי לבנות מודלים של שפה גדולה. מודלים אלה יכולים לשמש לאינטראקציה עם בני אדם, אך ראשית, על המודל ללמוד כיצד לקבל/להבין את ההנחיה/שאלה ששאל האדם. לשם כך, יש לאמן את המודל על תבניות ההנחיה ואז המשתמש שואל את השאלה בתוך התבנית הנתונה.

מדריך זה ימחיש את תהליך בניית תבניות הנחיה ב-LangChain.







כיצד לבנות תבניות בקשה ב-LangChain?

כדי לבנות תבניות בקשות ב-LangChain, פשוט עברו על המדריך הבא עם מספר שלבים:



שלב 1: התקנת מודולים וסביבת הגדרה

התחל את תהליך בניית תבניות הנחיה ב-LangChain על ידי התקנת מסגרת LangChain:



pip להתקין langchain





כעת, התקן מודולי OpenAI כדי לגשת לספריות שלה ולהגדיר סביבה באמצעותה:

pip להתקין openai



הגדר את סביבת OpenAI שימוש בספריית מערכת ההפעלה כדי לגשת למערכת ההפעלה ולספק את מפתח ה-API של OpenAI:

לייבא אותנו
ייבוא ​​getpass

os.environ['OPENAI_API_KEY'] = getpass.getpass('OpenAI API Key:')

שלב 2: שימוש בתבנית הנחיה

לאחר התקנת LangChain, פשוט ייבא את ספריית PromptTemplate ובנה תבנית עבור השאילתה על בדיחה עם כמה היבטים נוספים כמשתנים כמו שם תואר, תוכן וכו':

מ-langchain ייבוא ​​PromptTemplate

prompt_template = PromptTemplate.from_template(
'ספר לי בדיחה {סגנון} על {נושא}'
)
prompt_template.format(style='מצחיק', theme='תרנגולות')

ההנחיה הוגדרה וניתנה למודל עם ערכי המשתנה שהוכנסו בפקודה:

המשתמש יכול להתאים אישית את תבנית ההנחיה באמצעות שאילתה פשוטה המבקשת בדיחה:

מ-langchain ייבוא ​​PromptTemplate

prompt_template = PromptTemplate.from_template(
'ספר לי בדיחה'
)
prompt_template.format()

השיטה הנ'ל מיועדת לשאילתה ותשובה בודדת אך לפעמים המשתמש רוצה ליצור אינטראקציה עם המודל בצורה של צ'אט והסעיף הבא מסביר את הפורמט שלו.

שלב 3: שימוש בתבנית בקשת הצ'אט

חלק זה מסביר את התבנית למודל צ'אט המבוסס על דפוס שיחה כמו שני בני אדם המקיימים אינטראקציה זה עם זה:

מאת langchain.prompts ייבוא ​​ChatPromptTemplate

template = ChatPromptTemplate.from_messages([
('מערכת', 'בוט צ'אט AI כדי לסייע למשתמש. קוראים לך {name}.'),
('אנושי', 'שלום, מה שלומך'),
('איי', 'איך אתה מסתדר'),
('אנושי', '{user_input}'),
])

messages = template.format_messages(
,
user_input='איך אני צריך לקרוא לך'
)

לאחר הגדרת מבנה התבנית, פשוט כתוב כמה שורות בטקסט כדי לומר למודל מה צפוי ממנו והשתמש בפונקציה llm() כדי לתת הנחיה:

מאת langchain.prompts ייבוא ​​ChatPromptTemplate
מאת langchain.prompts.chat ייבוא ​​SystemMessage, HumanMessagePromptTemplate

template = ChatPromptTemplate.from_messages(
[
הודעת מערכת(
תוכן=(
'אתה כאן כדי לסייע ולעזור למשתמש לשכתב את טקסט המשתמש בצורה יעילה יותר'
)
),
HumanMessagePromptTemplate.from_template('{text}'),
]

)

מאת langchain.chat_models ייבוא ​​ChatOpenAI

llm = ChatOpenAI()
llm(template.format_messages(text='אני לא אוהב לאכול דברים טעימים'))

השיטה SystemMessage() מכילה את תוכן התשובה עבור השאילתה המשמשת ב-LLM:

זה הכל על בניית תבניות בקשות ב-LangChain.

סיכום

כדי לבנות תבנית בקשה ב-LangChain, פשוט התקן את מודולי LangChain ו-OpenAI כדי להגדיר סביבה באמצעות מפתח ה-API של OpenAI. לאחר מכן, צור תבנית הנחיה עבור הנחיה בודדת כמו בקשת בדיחה או שאלה בודדת על כל דבר. שיטה נוספת היא התאמה אישית של תבנית למודל צ'אט המבוססת על תהליך האינטראקציה בין שני בני אדם שונים. פוסט זה המחיש את התהליך של בניית תבנית בקשה ב-LangChain.