Πώς να χρησιμοποιήσετε την προσωρινή μνήμη σύνοψης συνομιλίας στο LangChain;

Pos Na Chresimopoiesete Ten Prosorine Mneme Synopses Synomilias Sto Langchain



Το LangChain είναι το πλαίσιο με όλες τις εξαρτήσεις και τις βιβλιοθήκες για τη δημιουργία μοντέλων που μπορούν να κατανοήσουν σύνολα δεδομένων σε φυσικές γλώσσες. Αυτά τα μοντέλα μπορούν επίσης να δημιουργήσουν κείμενο σε φυσικές γλώσσες ή να εξάγουν τα πιο παρόμοια δεδομένα με βάση τις εισόδους που παρέχονται από τον χρήστη. Τα chatbots ή τα LLM χρησιμοποιούνται για τη δημιουργία συνομιλιών με ανθρώπους και την εξαγωγή μιας περίληψης της συνομιλίας χρησιμοποιώντας όλα τα μηνύματα.

Αυτός ο οδηγός θα απεικονίσει τη διαδικασία χρήσης ενός buffer σύνοψης συνομιλιών στο LangChain.

Πώς να χρησιμοποιήσετε μια προσωρινή μνήμη σύνοψης συνομιλίας στο LangChain;

Η συνομιλία μπορεί να περιλαμβάνει πολλά μηνύματα που είναι σαν μια αλληλεπίδραση μεταξύ ανθρώπου και μηχανής και το buffer μπορεί να αποθηκεύσει τα πιο πρόσφατα μηνύματα. ο ConversationSummaryBufferMemory Η βιβλιοθήκη χρησιμοποιείται για να συνδυάσει και τις δύο έννοιες, όπως την αποθήκευση των πιο πρόσφατων μηνυμάτων και την εξαγωγή της περίληψής τους.







Για να μάθετε τη διαδικασία χρήσης του buffer σύνοψης συνομιλιών στο LangChain, απλώς μεταβείτε στον ακόλουθο οδηγό:



Βήμα 1: Εγκατάσταση μονάδων

Αρχικά, εγκαταστήστε τη λειτουργική μονάδα LangChain χρησιμοποιώντας την εντολή pip για να λάβετε τις απαιτούμενες βιβλιοθήκες:



pip install langchain





Εγκαταστήστε το tiktoken tokenizer που μπορεί να χρησιμοποιηθεί για να χωρίσει τα έγγραφα κειμένου σε μικρά κομμάτια:

pip εγκατάσταση tiktoken



Μετά από αυτό, εγκαταστήστε τις λειτουργικές μονάδες OpenAI που μπορούν να χρησιμοποιηθούν για τη δημιουργία μοντέλων γλώσσας όπως LLM και αλυσίδες:

pip εγκατάσταση openai

Τώρα, δημιουργήσει το περιβάλλον παίρνοντας το κλειδί API από τον λογαριασμό OpenAI και χρησιμοποιώντας το στο μοντέλο:

εισαγωγή εσείς
εισαγωγή getpass

εσείς . κατά προσέγγιση [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'Κλειδί OpenAI API:' )

Βήμα 2: Χρήση προσωρινής μνήμης σύνοψης συνομιλίας

Ξεκινήστε τη διαδικασία χρήσης του buffer σύνοψης συνομιλιών εισάγοντας τις βιβλιοθήκες για τη δημιουργία του 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 ( { } )

Τώρα, χρησιμοποιήστε τη σύνοψη buffer της συνομιλίας για να διαμορφώσετε την προσωρινή μνήμη περιορίζοντας τον αριθμό των μηνυμάτων που θα αποθηκευτούν στην προσωρινή μνήμη. Μετά από αυτό, εξαγάγετε τη σύνοψη αυτών των μηνυμάτων που είναι αποθηκευμένα στο buffer και, στη συνέχεια, αποθηκεύστε τη συνομιλία στη μνήμη:

μνήμη = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , επιστροφή_μηνυμάτων = Αληθής

)

μνήμη. save_context ( { 'εισαγωγή' : 'Γειά σου' } , { 'παραγωγή' : 'Πώς είσαι' } )

μνήμη. save_context ( { 'εισαγωγή' : 'Είμαι καλά εσύ' } , { 'παραγωγή' : 'όχι πολύ' } )

Λάβετε τη σύνοψη των προηγούμενων μηνυμάτων που είναι αποθηκευμένα στην προσωρινή μνήμη χρησιμοποιώντας τον ακόλουθο κώδικα:

μηνύματα = μνήμη. chat_memory . μηνύματα

προηγούμενη_σύνοψη = ''

μνήμη. predict_new_summary ( μηνύματα , προηγούμενη_σύνοψη )

Βήμα 3: Χρήση προσωρινής μνήμης σύνοψης συνομιλίας σε μια αλυσίδα

Κατασκευάστε τις αλυσίδες χρησιμοποιώντας το ConversationChain() μέθοδος που περιέχει την τιμή για την προσωρινή μνήμη για την αποθήκευση του μηνύματος σε αυτήν:

από langchain. αλυσίδες εισαγωγή Αλυσίδα συνομιλίας

συνομιλία_με_σύνοψη = Αλυσίδα συνομιλίας (
llm = llm ,
μνήμη = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
πολύλογος = Αληθής ,
)
συνομιλία_με_σύνοψη. προλέγω ( εισαγωγή = 'Γειά τι κάνεις?' )

Δώστε τα δεδομένα με τη μορφή κειμένου χρησιμοποιώντας τη μέθοδο predict() για να λάβετε τη σύνοψη της συνομιλίας:

συνομιλία_με_σύνοψη. προλέγω ( εισαγωγή = 'Απλώς δουλεύω στο έργο NLP' )

Χρησιμοποιήστε την έξοδο από το μοντέλο και προσθέστε περισσότερα δεδομένα χρησιμοποιώντας τα μηνύματα στην προσωρινή μνήμη και εμφανίστε τη σύνοψή του:

συνομιλία_με_σύνοψη. προλέγω ( εισαγωγή = 'Ναι είναι! Εργάζομαι στο σχεδιασμό LLM' )

Η περίληψη είναι ότι το αποτέλεσμα θα είναι εύκολα κατανοητό και πιο φιλικό προς τον άνθρωπο και είναι πιο κατάλληλο για chatbots:

συνομιλία_με_σύνοψη. προλέγω (

εισαγωγή = 'Θέλω να χρησιμοποιήσω το LangChain! Το έχετε ακούσει'

)

Αυτό αφορά τη χρήση του buffer σύνοψης συνομιλιών στο LangChain.

συμπέρασμα

Για να χρησιμοποιήσετε την προσωρινή μνήμη σύνοψης συνομιλιών στο LangChain, απλώς εγκαταστήστε τις μονάδες ή τα πλαίσια για να λάβετε τις απαιτούμενες βιβλιοθήκες. Μόλις εισαχθούν οι βιβλιοθήκες, δημιουργήστε τα LLM ή τα chatbot για να χρησιμοποιήσετε τη συνάρτηση ConverstaionSummaryBufferMemory() για να λάβετε τη σύνοψη της συνομιλίας. Η προσωρινή μνήμη χρησιμοποιείται για τον περιορισμό του αριθμού των αποθηκευμένων στη μνήμη μηνυμάτων που θα χρησιμοποιηθούν για την εξαγωγή της περίληψης. Αυτή η ανάρτηση έχει επεξεργαστεί τη διαδικασία χρήσης της προσωρινής μνήμης σύνοψης συνομιλιών στο LangChain.