LangChain'de Konuşma Bilgi Grafiği Nasıl Kullanılır?

Langchain De Konusma Bilgi Grafigi Nasil Kullanilir



LangChain, insanların birbirleriyle etkileşime girmesi gibi konuşma formatını taklit edebilen dil modelleri yaratan modüldür. Kullanıcı, doğal dillerde dizeler veya metinler şeklinde sorular sorabilir ve model, kullanıcı için bilgi çıkaracak veya üretecektir. Bu modellerde, konuşmanın içeriğini elde etmek için önceki mesajları saklayabilmeleri için kendilerine takılı bir bellek bulunur.

Bu kılavuz, LangChain'de konuşma bilgisi grafiğini kullanma sürecini gösterecektir.

LangChain'de Konuşma Bilgi Grafiği Nasıl Kullanılır?

KonuşmaKGBellek Kütüphane, etkileşimin bağlamını elde etmek için kullanılabilecek belleği yeniden oluşturmak için kullanılabilir. LangChain'de konuşma bilgisi grafiğini kullanma sürecini öğrenmek için listelenen adımları uygulamanız yeterlidir:







Adım 1: Modülleri Kurun

Öncelikle LangChain modülünü yükleyerek konuşma bilgisi grafiğini kullanma sürecine başlayın:



pip kurulumu langchain



Büyük Dil Modelleri oluşturmaya yönelik kitaplıklarını almak için pip komutu kullanılarak kurulabilen OpenAI modülünü yükleyin:





pip kurulumu openai

Şimdi, ortamı kurmak hesabından oluşturulabilecek OpenAI API anahtarını kullanarak:



içe aktarmak Sen

içe aktarmak geçiş izni

Sen . yaklaşık olarak [ 'OPENAI_API_KEY' ] = geçiş izni . geçiş izni ( 'OpenAI API Anahtarı:' )

Adım 2: Belleği Yüksek Lisans Programlarıyla Kullanma

Modüller kurulduktan sonra gerekli kütüphaneleri LangChain modülünden içe aktararak belleği LLM ile kullanmaya başlayın:

itibaren Langchain. hafıza içe aktarmak KonuşmaKGBellek

itibaren Langchain. lms içe aktarmak OpenAI

OpenAI() yöntemini kullanarak LLM'yi oluşturun ve belleği kullanarak KonuşmaKGBellek () yöntem. Bundan sonra, modeli bu veriler üzerinde eğitmek için birden fazla giriş kullanarak bilgi istemi şablonlarını ilgili yanıtlarıyla birlikte kaydedin:

llm = OpenAI ( sıcaklık = 0 )

hafıza = KonuşmaKGBellek ( llm = llm )

hafıza. save_context ( { 'giriş' : 'John'a merhaba de' } , { 'çıktı' : 'John! Kim' } )

hafıza. save_context ( { 'giriş' : 'o bir arkadaş' } , { 'çıktı' : 'Elbette' } )

Belleği yükleyerek test edin hafıza_değişkenleri Yukarıdaki verilerle ilgili sorguyu kullanan () yöntemi:

hafıza. load_memory_variables ( { 'giriş' : 'John kimdir' } )

ConversationKGMemory() yöntemini kullanarak belleği yapılandırın. return_messages girdinin geçmişini de almak için argüman:

hafıza = KonuşmaKGBellek ( llm = llm , return_messages = Doğru )

hafıza. save_context ( { 'giriş' : 'John'a merhaba de' } , { 'çıktı' : 'John! Kim' } )

hafıza. save_context ( { 'giriş' : 'o bir arkadaş' } , { 'çıktı' : 'Elbette' } )

Giriş argümanını değeriyle birlikte bir sorgu biçiminde sağlayarak belleği test etmeniz yeterlidir:

hafıza. load_memory_variables ( { 'giriş' : 'John kimdir' } )

Şimdi, eğitim verilerinde belirtilmeyen soruyu sorarak hafızayı test edin; modelin yanıt hakkında hiçbir fikri yoktur:

hafıza. get_current_entities ( 'John'un en sevdiği renk nedir' )

Kullan get_knowledge_triplets () yöntemiyle daha önce sorulan sorguya yanıt vererek:

hafıza. get_knowledge_triplets ( 'En sevdiği renk kırmızı' )

Adım 3: Zincirdeki Belleği Kullanma

Bir sonraki adım, OpenAI() yöntemini kullanarak LLM modelini oluşturmak için zincirlerle konuşma belleğini kullanır. Bundan sonra, konuşma yapısını kullanarak bilgi istemi şablonunu yapılandırın; modele göre çıktı alınırken metin görüntülenecektir:

llm = OpenAI ( sıcaklık = 0 )
itibaren Langchain. istemler . çabuk içe aktarmak İstem Şablonu
itibaren Langchain. zincirler içe aktarmak Konuşma Zinciri

şablon = '''Bu, insan ve makine arasındaki etkileşimin şablonudur
Sistem, birden fazla husus hakkında konuşabilen veya bilgi çıkarabilen bir yapay zeka modelidir.
Soruyu anlamıyorsa veya cevabı bilmiyorsa, sadece öyle söyler
Sistem 'Özel' bölümünde saklanan verileri çıkarır ve halüsinasyon görmez

Özel:

{tarih}

Konuşma:
İnsan: {giriş}
AI:'''

#İstemleri sağlamak ve yapay zeka sisteminden yanıt almak için şablonu veya yapıyı yapılandırın
çabuk = İstem Şablonu ( girdi_değişkenleri = [ 'tarih' , 'giriş' ] , şablon = şablon )
konuşma_with_kg = Konuşma Zinciri (
llm = llm , ayrıntılı = Doğru , çabuk = çabuk , hafıza = KonuşmaKGBellek ( llm = llm )
)

Model oluşturulduktan sonra aramanız yeterlidir. konuşma_with_kg Kullanıcı tarafından sorulan sorguyla tahmin() yöntemini kullanan model:

konuşma_with_kg. tahmin etmek ( giriş = 'Merhaba, naber?' )

Şimdi, yöntemin giriş argümanı olarak bilgiyi vererek konuşma belleğini kullanarak modeli eğitin:

konuşma_with_kg. tahmin etmek (

giriş = 'Benim adım James ve Will'e yardım ediyorum, o bir mühendis'

)

Verilerden bilgi çıkarmak için sorgular sorarak modeli test etmenin zamanı geldi:

konuşma_with_kg. tahmin etmek ( giriş = 'Will kimdir' )

Tamamen LangChain'deki konuşma bilgisi grafiğini kullanmakla ilgilidir.

Çözüm

LangChain'de konuşma bilgisi grafiğini kullanmak için, ConversationKGMemory() yöntemini kullanmak üzere kitaplıkları içe aktarmak üzere modülleri veya çerçeveleri yükleyin. Bundan sonra, zincirleri oluşturmak ve konfigürasyonda sağlanan eğitim verilerinden bilgi çıkarmak için belleği kullanarak modeli oluşturun. Bu kılavuz, LangChain'deki konuşma bilgisi grafiğini kullanma sürecini ayrıntılı olarak ele almıştır.