כיצד להשתמש בחלון מאגר שיחה ב-LangChain?
חלון מאגר השיחה משמש כדי לשמור את ההודעות העדכניות ביותר של השיחה בזיכרון כדי לקבל את ההקשר העדכני ביותר. הוא משתמש בערך של K לאחסון ההודעות או המחרוזות בזיכרון באמצעות המסגרת של LangChain.
כדי ללמוד את תהליך השימוש בחלון מאגר השיחה ב-LangChain, פשוט עברו על המדריך הבא:
שלב 1: התקן מודולים
התחל את תהליך השימוש בחלון מאגר השיחה על ידי התקנת מודול LangChain עם התלות הנדרשת לבניית מודלים של שיחה:
pip להתקין langchain
לאחר מכן, התקן את מודול OpenAI שניתן להשתמש בו כדי לבנות את דגמי השפה הגדולים ב-LangChain:
pip להתקין openai
עַכשָׁיו, הגדר את סביבת OpenAI כדי לבנות את שרשראות ה-LLM באמצעות מפתח ה-API מחשבון OpenAI:
יְבוּא אתה
יְבוּא getpass
אתה . בְּעֵרֶך [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'מפתח API של OpenAI:' )
שלב 2: שימוש בזיכרון חלון מאגר שיחה
כדי להשתמש בזיכרון חלון מאגר השיחה ב-LangChain, ייבא את ConversationBufferWindowMemory סִפְרִיָה:
מ langchain. זיכרון יְבוּא ConversationBufferWindowMemoryהגדר את הזיכרון באמצעות ConversationBufferWindowMemory () שיטה עם הערך של k בתור הארגומנט שלה. הערך של k ישמש כדי לשמור את ההודעות האחרונות מהשיחה ולאחר מכן להגדיר את נתוני האימון באמצעות משתני הקלט והפלט:
זיכרון = ConversationBufferWindowMemory ( ק = 1 )זיכרון. save_context ( { 'קֶלֶט' : 'שלום' } , { 'תְפוּקָה' : 'מה שלומך' } )
זיכרון. save_context ( { 'קֶלֶט' : 'אני בסדר מה איתך' } , { 'תְפוּקָה' : 'לא הרבה' } )
בדוק את הזיכרון על ידי קריאה ל- load_memory_variables () שיטה להתחיל את השיחה:
זיכרון. load_memory_variables ( { } )
כדי לקבל את ההיסטוריה של השיחה, הגדר את הפונקציה ConversationBufferWindowMemory() באמצעות ה- return_messages טַעֲנָה:
זיכרון = ConversationBufferWindowMemory ( ק = 1 , return_messages = נָכוֹן )זיכרון. save_context ( { 'קֶלֶט' : 'היי' } , { 'תְפוּקָה' : 'מה קורה' } )
זיכרון. save_context ( { 'קֶלֶט' : 'לא הרבה אתה' } , { 'תְפוּקָה' : 'לא הרבה' } )
כעת, התקשר לזיכרון באמצעות ה load_memory_variables () שיטה כדי לקבל את התגובה עם ההיסטוריה של השיחה:
זיכרון. load_memory_variables ( { } )
שלב 3: שימוש בחלון מאגר בשרשרת
בנה את השרשרת באמצעות OpenAI ו ConversationChain ספריות ולאחר מכן הגדר את זיכרון המאגר לאחסון ההודעות האחרונות בשיחה:
מ langchain. שרשראות יְבוּא ConversationChainמ langchain. llms יְבוּא OpenAI
#בניית סיכום השיחה באמצעות מספר פרמטרים
שיחה_עם_סיכום = ConversationChain (
llm = OpenAI ( טֶמפֶּרָטוּרָה = 0 ) ,
#building מאגר זיכרון באמצעות הפונקציה שלו עם הערך של k לאחסון הודעות אחרונות
זיכרון = ConversationBufferWindowMemory ( ק = 2 ) ,
#configure משתנה מילולי כדי לקבל פלט קריא יותר
מִלוּלִי = נָכוֹן
)
שיחה_עם_סיכום. לנבא ( קֶלֶט = 'היי מה קורה' )
כעת המשיכו את השיחה על ידי שאילת השאלה הקשורה לתפוקה שמספק המודל:
שיחה_עם_סיכום. לנבא ( קֶלֶט = 'מה הבעיות שלהם' )
המודל מוגדר לאחסן רק הודעה קודמת אחת שיכולה לשמש כהקשר:
שיחה_עם_סיכום. לנבא ( קֶלֶט = 'זה הולך טוב' )
בקש את הפתרון לבעיות ומבנה הפלט ימשיך להחליק את חלון המאגר על ידי הסרת ההודעות הקודמות:
שיחה_עם_סיכום. לנבא ( קֶלֶט = 'מה הפתרון' )
זה הכל לגבי תהליך השימוש ב-Conversation buffer windows LangChain.
סיכום
כדי להשתמש בזיכרון חלון מאגר השיחה ב-LangChain, פשוט התקן את המודולים והגדר את הסביבה באמצעות מפתח ה-API של OpenAI. לאחר מכן, בנה את זיכרון המאגר באמצעות הערך של k כדי לשמור את ההודעות העדכניות ביותר בשיחה כדי לשמור על ההקשר. ניתן להשתמש בזיכרון המאגר גם עם שרשראות כדי לעורר את השיחה עם ה-LLM או השרשרת. מדריך זה הרחיב את תהליך השימוש בחלון מאגר השיחה ב-LangChain.