כיצד להשתמש במנתח הפלט ב-LangChain?

Kyzd Lhstms Bmnth Hplt B Langchain



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

פוסט זה ממחיש את שיטת השימוש בפונקציות ומחלקות מנתח הפלט דרך מסגרת LangChain.

כיצד להשתמש במנתח הפלט דרך LangChain?

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







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



צִפצוּף להתקין langchain



לאחר מכן, התקן את מודול OpenAI כדי להשתמש בספריות שלו כמו OpenAI ו- ChatOpenAI:





צִפצוּף להתקין openai

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



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

os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'מפתח API של OpenAI:' )

שלב 2: ייבוא ​​ספריות
השלב הבא הוא לייבא ספריות מ-LangChain כדי להשתמש במנתחי הפלט במסגרת:

מ-langchain.prompts ייבוא ​​PromptTemplate
מאת langchain.prompts ייבוא ​​HumanMessagePromptTemplate
מ-pydantic import Field
מאת langchain.prompts ייבוא ​​ChatPromptTemplate
מאת langchain.output_parsers ייבוא ​​PydanticOutputParser
מ-Pydantic Import BaseModel
מ-Pydantic Import Validator
מאת langchain.chat_models ייבוא ​​ChatOpenAI
מאת langchain.llms ייבוא ​​OpenAI
מהקלדת רשימת ייבוא

שלב 3: בניית מבנה נתונים
בניית מבנה הפלט היא היישום החיוני של מנתחי הפלט במודלים של שפה גדולה. לפני שמגיעים למבנה הנתונים של המודלים, נדרש להגדיר את שם המודל בו אנו משתמשים כדי לקבל את הפלט המובנה ממנתחי פלט:

model_name = 'text-davinci-003'
טמפרטורה = 0.0
דגם = OpenAI ( שם המודל =שם_דגם, טֶמפֶּרָטוּרָה =טמפרטורה )

כעת, השתמש במחלקה Joke המכילה את BaseModel כדי להגדיר את מבנה הפלט כדי לקבל את הבדיחה מהמודל. לאחר מכן, המשתמש יכול להוסיף לוגיקת אימות מותאמת אישית בקלות עם המחלקה pydantic שיכולה לבקש מהמשתמש להעלות שאילתה/הנחיה בצורה טובה יותר:

בדיחה בכיתה ( דגם בסיס ) :
הגדרה: str = שדה ( תיאור = 'שאילתה להצגת בדיחה' )
קו אגרוף: str = שדה ( תיאור = 'השב לשאילתה עם בדיחה' )
#אימות לוגי עבור השאילתה שכן המודל צריך להבין אותה כראוי
@ מאמת ( 'להכין' )
def question_ends_with_question_mark ( cls, שדה ) :
אם שדה [ - 1 ] ! = '?' :
להעלות את ValueError ( 'שאלה מעוצבת בצורה גרועה!' )
לַחֲזוֹר שדה

שלב 4: הגדרת תבנית הנחיות
הגדר את משתנה המנתח המכיל את שיטת PydanticOutputParser() המכילה את הפרמטרים שלו:

מנתח = PydanticOutputParser ( pydantic_object =בדיחה )

לאחר קביעת התצורה של המנתח, פשוט הגדר את משתנה ההנחיה באמצעות שיטת PromptTemplate() עם מבנה השאילתה/הנחיה:

prompt = PromptTemplate (
תבנית = 'ענה על שאילתת המשתמש. \n {format_instructions} \n {שאילתא} \n ' ,
משתני_קלט = [ 'שאילתא' ] ,
משתנים_חלקיים = { 'פורמט_הוראות' : parser.get_format_instructions ( ) }
)

שלב 5: בדוק את מנתח הפלט
לאחר קביעת התצורה של כל הדרישות, צור משתנה שמוקצה באמצעות שאילתה ולאחר מכן קרא למתודה format_prompt():

joke_query = 'ספר לי בדיחה'
_input = prompt.format_prompt ( שאילתא =שאילתה_בדיחה )

כעת, קרא לפונקציה model() כדי להגדיר את משתנה הפלט:

פלט = דגם ( _input.to_string ( ) )

השלם את תהליך הבדיקה על ידי קריאה לשיטת parser() עם משתנה הפלט כפרמטר שלה:

parser.parse ( תְפוּקָה )

זה הכל לגבי תהליך השימוש במנתח הפלט ב-LangChain.

סיכום

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