Bagaimana Cara Menggunakan Memori Entitas di LangChain?

Bagaimana Cara Menggunakan Memori Entitas Di Langchain



LangChain adalah modul yang memungkinkan pembuatan model yang dapat memproses bahasa alami, yaitu bahasa yang digunakan manusia untuk berkomunikasi. LangChain berisi semua modul dan dependensi yang diperlukan yang dapat digunakan untuk membangun Model Bahasa atau chatbots yang besar. Model ini perlu dilatih untuk mempelajari bahasa alami untuk menghasilkan teks berdasarkan kueri yang diberikan oleh pengguna.

Panduan ini akan mengilustrasikan proses penggunaan memori entitas di LangChain.

Bagaimana Cara Menggunakan Memori Entitas di LangChain?

Entitas ini digunakan untuk menyimpan fakta-fakta kunci yang disimpan dalam memori untuk diekstraksi ketika ditanya oleh manusia menggunakan kueri/perintah. Untuk mempelajari proses penggunaan memori entitas di LangChain, cukup kunjungi panduan berikut:







Langkah 1: Instal Modul

Pertama, instal modul LangChain menggunakan perintah pip untuk mendapatkan dependensinya:



pip instal langchain



Setelah itu, instal modul OpenAI untuk mendapatkan perpustakaannya guna membangun LLM dan model obrolan:





pip instal openai

Siapkan lingkungan OpenAI menggunakan kunci API yang dapat diekstraksi dari akun OpenAI:



impor Anda

impor dapatkan pass

Anda . sekitar [ 'OPENAI_API_KEY' ] = dapatkan pass . dapatkan pass ( 'Kunci API OpenAI:' )

Langkah 2: Menggunakan Memori Entitas

Untuk menggunakan memori entitas, impor pustaka yang diperlukan untuk membangun LLM menggunakan metode OpenAI():

dari rantailang. llms impor OpenAI

dari rantailang. Penyimpanan impor PercakapanEntityMemory

llm = OpenAI ( suhu = 0 )

Setelah itu, tentukan Penyimpanan variabel menggunakan metode ConversationEntityMemory() untuk melatih model menggunakan variabel input dan output:

Penyimpanan = PercakapanEntityMemory ( llm = llm )

_memasukkan = { 'memasukkan' : 'Joe adalah Root sedang mengerjakan sebuah proyek' }

Penyimpanan. memuat_memori_variabel ( _memasukkan )

Penyimpanan. simpan_konteks (

_memasukkan ,

{ 'keluaran' : 'Hebat! Proyek macam apa itu?' }

)

Sekarang, uji memori menggunakan query/prompt di memasukkan variabel dengan memanggil metode load_memory_variables():

Penyimpanan. memuat_memori_variabel ( { 'memasukkan' : 'siapa Akar' } )

Sekarang, berikan lebih banyak informasi sehingga model dapat menambahkan beberapa entitas lagi ke dalam memori:

Penyimpanan = PercakapanEntityMemory ( llm = llm , pesan_kembali = BENAR )

_memasukkan = { 'memasukkan' : 'Joe adalah Root sedang mengerjakan sebuah proyek' }

Penyimpanan. memuat_memori_variabel ( _memasukkan )

Penyimpanan. simpan_konteks (

_memasukkan ,

{ 'keluaran' : 'Hebat! Proyek macam apa itu' }

)

Jalankan kode berikut untuk mendapatkan output menggunakan entitas yang disimpan dalam memori. Hal ini dimungkinkan melalui memasukkan berisi perintah:

Penyimpanan. memuat_memori_variabel ( { 'memasukkan' : 'siapa Joe' } )

Langkah 3: Menggunakan Memori Entitas dalam Rantai

Untuk menggunakan memori entitas setelah membuat rantai, cukup impor pustaka yang diperlukan menggunakan blok kode berikut:

dari rantailang. rantai impor Rantai Percakapan

dari rantailang. Penyimpanan impor PercakapanEntityMemory

dari rantailang. Penyimpanan . mengingatkan impor ENTITY_MEMORY_CONVERSATION_TEMPLATE

dari gila-gilaan impor Model Dasar

dari mengetik impor Daftar , Dikte , Setiap

Bangun model percakapan menggunakan metode ConversationChain() menggunakan argumen seperti llm:

percakapan = Rantai Percakapan (

llm = llm ,

bertele-tele = BENAR ,

mengingatkan = ENTITY_MEMORY_CONVERSATION_TEMPLATE ,

Penyimpanan = PercakapanEntityMemory ( llm = llm )

)

Panggil metode percakapan.predict() dengan input yang diinisialisasi dengan prompt atau kueri:

percakapan. meramalkan ( memasukkan = 'Joe adalah Root sedang mengerjakan sebuah proyek' )

Sekarang, dapatkan keluaran terpisah untuk setiap entitas yang menjelaskan informasi tentangnya:

percakapan. Penyimpanan . entitas_toko . toko

Gunakan keluaran dari model untuk memberikan masukan sehingga model dapat menyimpan lebih banyak informasi tentang entitas berikut:

percakapan. meramalkan ( memasukkan = 'Mereka mencoba menambahkan struktur memori yang lebih kompleks ke Langchain' )

Setelah memberikan informasi yang disimpan dalam memori, ajukan pertanyaan untuk mengekstrak informasi spesifik tentang entitas:

percakapan. meramalkan ( memasukkan = 'Apa yang kamu ketahui tentang Joe dan Root' )

Langkah 4: Menguji Penyimpanan Memori

Pengguna dapat memeriksa penyimpanan memori secara langsung untuk mendapatkan informasi yang tersimpan di dalamnya menggunakan kode berikut:

dari mencetak impor mencetak

mencetak ( percakapan. Penyimpanan . entitas_toko . toko )

Memberikan lebih banyak informasi untuk disimpan dalam memori karena lebih banyak informasi memberikan hasil yang lebih akurat:

percakapan. meramalkan ( memasukkan = 'Root telah mendirikan Bisnis bernama HJRS' )

Ekstrak informasi dari penyimpanan memori setelah menambahkan lebih banyak informasi tentang entitas:

dari mencetak impor mencetak

mencetak ( percakapan. Penyimpanan . entitas_toko . toko )

Memori memiliki informasi tentang beberapa entitas seperti HJRS, Joe, LangChain, dan Root:

Sekarang ekstrak informasi tentang entitas tertentu menggunakan kueri atau perintah yang ditentukan dalam variabel input:

percakapan. meramalkan ( memasukkan = 'Apa yang kamu ketahui tentang Root' )

Itu semua tentang penggunaan memori entitas menggunakan kerangka LangChain.

Kesimpulan

Untuk menggunakan memori entitas di LangChain, cukup instal modul yang diperlukan untuk mengimpor perpustakaan yang diperlukan untuk membangun model setelah menyiapkan lingkungan OpenAI. Setelah itu, bangun model LLM dan simpan entitas di memori dengan memberikan informasi tentang entitas tersebut. Pengguna juga dapat mengekstrak informasi menggunakan entitas ini dan membangun ingatan ini dalam rantai dengan informasi yang diaduk tentang entitas. Posting ini telah menguraikan proses penggunaan memori entitas di LangChain.