כיצד להשתמש במאגר סיכום שיחה ב-LangChain?

Kyzd Lhstms Bm Gr Sykwm Syhh B Langchain



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

מדריך זה ימחיש את תהליך השימוש במאגר סיכום שיחה ב-LangChain.

כיצד להשתמש במאגר סיכום שיחה ב-LangChain?

שיחה יכולה לכלול מספר מסרים שהם כמו אינטראקציה בין אדם למכונה והמאגר יכול לאחסן את ההודעות העדכניות ביותר. ה ConversationSummaryBufferMemory הספרייה משמשת לשילוב שני המושגים כמו אחסון ההודעות העדכניות ביותר וחילוץ התקציר שלהן.







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



שלב 1: התקן מודולים

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



pip להתקין langchain





התקן את ה-tiktoken tokenizer שניתן להשתמש בו כדי לפצל את מסמכי הטקסט לגושים קטנים:

pip להתקין tiktoken



לאחר מכן, התקן את מודולי OpenAI שניתן להשתמש בהם לבניית מודלים של שפה כמו LLMs ורשתות:

pip להתקין openai

עַכשָׁיו, להקים את הסביבה על ידי קבלת מפתח ה-API מחשבון OpenAI ושימוש בו במודל:

יְבוּא אתה
יְבוּא getpass

אתה . בְּעֵרֶך [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'מפתח API של OpenAI:' )

שלב 2: שימוש במאגר סיכום שיחות

התחל את תהליך השימוש במאגר סיכום השיחה על ידי ייבוא ​​הספריות לבניית ה-LLM באמצעות שיטת OpenAI():

מ langchain. זיכרון יְבוּא ConversationSummaryBufferMemory

מ langchain. llms יְבוּא OpenAI

llm = OpenAI ( )

בנה את הזיכרון באמצעות שיטת ConversationSummaryBufferMemory() ולאחר מכן אחסן את השיחה בזיכרון:

זיכרון = ConversationSummaryBufferMemory ( llm = llm , max_token_limit = 10 )

זיכרון. save_context ( { 'קֶלֶט' : 'שלום' } , { 'תְפוּקָה' : 'מה שלומך' } )

זיכרון. save_context ( { 'קֶלֶט' : 'אני בסדר מה איתך' } , { 'תְפוּקָה' : 'לא הרבה' } )

כעת, הפעל את הזיכרון על ידי קריאה ל- load_memory_variables () שיטה לחילוץ הודעות מהזיכרון:

זיכרון. load_memory_variables ( { } )

כעת, השתמש בסיכום המאגר של השיחה כדי להגדיר את המאגר על ידי הגבלת מספר ההודעות שיש לאחסן במאגר. לאחר מכן, חלץ את סיכום ההודעות האלו המאוחסנות במאגר ולאחר מכן אחסן את השיחה בזיכרון:

זיכרון = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , return_messages = נָכוֹן

)

זיכרון. save_context ( { 'קֶלֶט' : 'שלום' } , { 'תְפוּקָה' : 'מה שלומך' } )

זיכרון. save_context ( { 'קֶלֶט' : 'אני בסדר מה איתך' } , { 'תְפוּקָה' : 'לא הרבה' } )

קבל את סיכום ההודעות הקודמות המאוחסנות בזיכרון המאגר באמצעות הקוד הבא:

הודעות = זיכרון. chat_memory . הודעות

הקודם_סיכום = ''

זיכרון. predict_new_summary ( הודעות , הקודם_סיכום )

שלב 3: שימוש במאגר סיכום שיחות בשרשרת

בנה את השרשראות באמצעות ה ConversationChain() שיטה המכילה את הערך עבור זיכרון המאגר לאחסון ההודעה בו:

מ langchain. שרשראות יְבוּא ConversationChain

שיחה_עם_סיכום = ConversationChain (
llm = llm ,
זיכרון = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
מִלוּלִי = נָכוֹן ,
)
שיחה_עם_סיכום. לנבא ( קֶלֶט = 'היי מה קורה?' )

ספק את הקלט בצורה של הטקסט באמצעות שיטת predict() כדי לקבל את סיכום השיחה:

שיחה_עם_סיכום. לנבא ( קֶלֶט = 'רק עובד על פרויקט ה-NLP' )

השתמש בפלט מהמודל והוסף נתונים נוספים באמצעות ההודעות בזיכרון המאגר והצג את הסיכום שלו:

שיחה_עם_סיכום. לנבא ( קֶלֶט = 'כן כן! אני עובד על עיצוב לימודי LLM' )

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

שיחה_עם_סיכום. לנבא (

קֶלֶט = 'אני רוצה להשתמש ב-LangChain! שמעת על זה'

)

זה הכל על השימוש במאגר סיכום השיחה ב-LangChain.

סיכום

כדי להשתמש בזיכרון המאגר של סיכום השיחה ב-LangChain, פשוט התקן את המודולים או המסגרות כדי לקבל את הספריות הנדרשות. לאחר ייבוא ​​הספריות, בנה את ה-LLMs או הצ'אטבוטים כדי להשתמש בפונקציה ConverstaionSummaryBufferMemory() כדי לקבל את סיכום השיחה. זיכרון המאגר משמש להגבלת מספר ההודעות המאוחסנות בזיכרון לשימוש לחילוץ הסיכום. פוסט זה הרחיב את תהליך השימוש בזיכרון המאגר של סיכום השיחה ב-LangChain.