Bagaimana untuk Menggunakan Tetingkap Penampan Perbualan dalam LangChain?

Bagaimana Untuk Menggunakan Tetingkap Penampan Perbualan Dalam Langchain



LangChain ialah rangka kerja yang boleh digunakan dalam buku nota Python untuk melatih model bahasa atau chatbots menggunakan model pembelajaran mesin. Model bahasa ini digunakan untuk mengadakan perbualan dengan manusia dalam bahasa semula jadi mereka selepas melatih mereka dalam bahasa seperti manusia. Siaran ini akan menggambarkan proses menggunakan tetingkap penimbal perbualan dalam LangChain.

Bagaimana untuk Menggunakan Tetingkap Penampan Perbualan dalam LangChain?

Tetingkap penimbal perbualan digunakan untuk menyimpan mesej terbaharu perbualan dalam ingatan untuk mendapatkan konteks terkini. Ia menggunakan nilai K untuk menyimpan mesej atau rentetan dalam ingatan menggunakan rangka kerja LangChain.

Untuk mengetahui proses menggunakan tetingkap penimbal perbualan dalam LangChain, hanya melalui panduan berikut:







Langkah 1: Pasang Modul

Mulakan proses menggunakan tetingkap penimbal perbualan dengan memasang modul LangChain dengan kebergantungan yang diperlukan untuk membina model perbualan:



pip pasang langchain



Selepas itu, pasang modul OpenAI yang boleh digunakan untuk membina Model Bahasa Besar dalam LangChain:





pip pasang openai

sekarang, sediakan persekitaran OpenAI untuk membina rantaian LLM menggunakan kunci API daripada akaun OpenAI:



import awak
import getpass

awak . lebih kurang [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )

Langkah 2: Menggunakan Memori Tetingkap Penimbal Perbualan

Untuk menggunakan memori tetingkap penimbal perbualan dalam LangChain, import ConversationBufferWindowMemory perpustakaan:

daripada langchain. ingatan import ConversationBufferWindowMemory

Konfigurasikan memori menggunakan ConversationBufferWindowMemory () kaedah dengan nilai k sebagai hujahnya. Nilai k akan digunakan untuk menyimpan mesej terbaharu daripada perbualan dan kemudian mengkonfigurasi data latihan menggunakan pembolehubah input dan output:

ingatan = ConversationBufferWindowMemory ( k = 1 )

ingatan. simpan_konteks ( { 'input' : 'hello' } , { 'pengeluaran' : 'apa khabar' } )

ingatan. simpan_konteks ( { 'input' : 'Saya Baik Bagaimana dengan awak' } , { 'pengeluaran' : 'tidak banyak' } )

Uji memori dengan memanggil load_memory_variables () kaedah untuk memulakan perbualan:

ingatan. load_memory_variables ( { } )

Untuk mendapatkan sejarah perbualan, konfigurasikan fungsi ConversationBufferWindowMemory() menggunakan pulangkan_mesej hujah:

ingatan = ConversationBufferWindowMemory ( k = 1 , pulangkan_mesej = betul )

ingatan. simpan_konteks ( { 'input' : 'hai' } , { 'pengeluaran' : 'apa khabar' } )

ingatan. simpan_konteks ( { 'input' : 'tak banyak awak' } , { 'pengeluaran' : 'tidak banyak' } )

Sekarang, panggil memori menggunakan load_memory_variables () kaedah untuk mendapatkan respons dengan sejarah perbualan:

ingatan. load_memory_variables ( { } )

Langkah 3: Menggunakan Tingkap Penampan dalam Rantaian

Bina rantai menggunakan OpenAI dan Rantaian Perbualan perpustakaan dan kemudian konfigurasikan memori penimbal untuk menyimpan mesej terbaharu dalam perbualan:

daripada langchain. rantai import Rantaian Perbualan
daripada langchain. llms import OpenAI
#building ringkasan perbualan menggunakan berbilang parameter
perbualan_dengan_ringkasan = Rantaian Perbualan (
llm = OpenAI ( suhu = 0 ) ,
#membina penimbal memori menggunakan fungsinya dengan nilai k untuk menyimpan mesej terbaharu
ingatan = ConversationBufferWindowMemory ( k = 2 ) ,
#configure verbose variable untuk mendapatkan lebih banyak output yang boleh dibaca
bertele-tele = betul
)
perbualan_dengan_ringkasan. menjangkakan ( input = 'Hi ada apa' )

Sekarang teruskan perbualan dengan bertanya soalan yang berkaitan dengan output yang disediakan oleh model:

perbualan_dengan_ringkasan. menjangkakan ( input = 'Apa masalah mereka' )

Model ini dikonfigurasikan untuk menyimpan hanya satu mesej sebelumnya yang boleh digunakan sebagai konteks:

perbualan_dengan_ringkasan. menjangkakan ( input = 'Adakah ia berjalan lancar' )

Minta penyelesaian kepada masalah dan struktur output akan terus menggelongsor tetingkap penimbal dengan mengalih keluar mesej terdahulu:

perbualan_dengan_ringkasan. menjangkakan ( input = 'Apakah penyelesaiannya' )

Itu semua tentang proses menggunakan tingkap penimbal Perbualan LangChain.

Kesimpulan

Untuk menggunakan memori tetingkap penimbal perbualan dalam LangChain, cuma pasang modul dan sediakan persekitaran menggunakan kunci API OpenAI. Selepas itu, bina memori penimbal menggunakan nilai k untuk menyimpan mesej terbaharu dalam perbualan untuk mengekalkan konteks. Memori penimbal juga boleh digunakan dengan rantai untuk mencetuskan perbualan dengan LLM atau rantai. Panduan ini telah menghuraikan proses penggunaan tetingkap penimbal perbualan dalam LangChain.