Bagaimana untuk Menambah Keadaan Memori dalam Rantaian Menggunakan LangChain?

Bagaimana Untuk Menambah Keadaan Memori Dalam Rantaian Menggunakan Langchain



LangChain membenarkan pembangun membina model sembang yang boleh mengadakan perbualan dengan manusia menggunakan bahasa semula jadi. Untuk mempunyai perbualan yang berkesan, model perlu mempunyai ingatan tentang tempat konteks perbualan itu disimpan. Model LangChain boleh menyimpan mesej sembang sebagai pemerhatian supaya output boleh berada dalam konteks perbualan sepanjang masa

Panduan ini akan menggambarkan proses pemuatan rantai dari LangChain Hub.

Bagaimana untuk Menambah Keadaan Memori dalam Rantaian Menggunakan LangChain?

Keadaan memori boleh digunakan untuk memulakan rantai kerana ia boleh merujuk kepada nilai terkini yang disimpan dalam rantai yang akan digunakan semasa mengembalikan output. Untuk mempelajari proses menambah keadaan ingatan dalam rantai menggunakan rangka kerja LangChain, hanya melalui panduan mudah ini:







Langkah 1: Pasang Modul

Pertama, masuk ke dalam proses dengan memasang rangka kerja LangChain dengan kebergantungannya menggunakan arahan pip:



pip pasang langchain



Pasang modul OpenAI juga untuk mendapatkan perpustakaannya yang boleh digunakan untuk menambah keadaan memori dalam rantaian:





pip pasang openai

Dapatkan kunci API daripada akaun OpenAI dan menetapkan persekitaran menggunakannya supaya rantai boleh mengaksesnya:



import awak

import getpass

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

Langkah ini penting untuk kod berfungsi dengan betul.

Langkah 2: Import Perpustakaan

Selepas menyediakan persekitaran, hanya import perpustakaan untuk menambah keadaan memori seperti LLMChain, ConversationBufferMemory dan banyak lagi:

daripada langchain. rantai import Rantaian Perbualan

daripada langchain. ingatan import ConversationBufferMemory

daripada langchain. chat_models import ChatOpenAI

daripada langchain. rantai . llm import LLMChain

daripada langchain. gesaan import PromptTemplate

Langkah 3: Membina Rantaian

Sekarang, hanya bina rantai untuk LLM menggunakan kaedah OpenAI() dan templat gesaan menggunakan pertanyaan untuk memanggil rantai:

berbual = ChatOpenAI ( suhu = 0 )

prompt_template = 'Tulis jenaka {style}'

llm_chain = LLMChain ( llm = berbual , segera = PromptTemplate. from_template ( prompt_template ) )

llm_chain ( input = { 'gaya' : 'kecoh' } )

Model telah memaparkan output menggunakan model LLM seperti yang dipaparkan dalam tangkapan skrin di bawah:

Langkah 4: Menambah Keadaan Memori

Di sini kita akan menambah keadaan memori dalam rantai menggunakan kaedah ConversationBufferMemory() dan menjalankan rantai untuk mendapatkan 3 warna dari pelangi:

perbualan = Rantaian Perbualan (

llm = berbual ,

ingatan = ConversationBufferMemory ( )

)

perbualan. lari ( 'berikan secara ringkas 3 warna dalam pelangi' )

Model ini telah memaparkan hanya tiga warna pelangi dan konteksnya disimpan dalam ingatan rantai:

Di sini kami menjalankan rantaian dengan arahan yang tidak jelas sebagai ' 4 lagi? ” jadi model itu sendiri mendapat konteks daripada memori dan memaparkan warna pelangi yang tinggal:

perbualan. lari ( '4 lagi?' )

Model itu telah melakukannya dengan tepat, kerana ia memahami konteks dan mengembalikan empat warna yang tinggal dari set pelangi:

Itu semua tentang memuatkan rantai dari Hab LangChain.

Kesimpulan

Untuk menambah memori dalam rantai menggunakan rangka kerja LangChain, cuma pasang modul untuk menyediakan persekitaran untuk membina LLM. Selepas itu, import perpustakaan yang diperlukan untuk membina rantai dalam LLM dan kemudian tambahkan keadaan memori kepadanya. Selepas menambah keadaan memori pada rantai, hanya berikan arahan kepada rantai untuk mendapatkan output dan kemudian berikan arahan lain dalam konteks yang sebelumnya untuk mendapatkan balasan yang betul. Siaran ini telah menghuraikan proses menambah keadaan ingatan dalam rantai menggunakan rangka kerja LangChain.