LangChain, Büyük Dil Modelleri veya LLM'ler oluşturmak için kütüphaneleri ve bağımlılıkları içe aktarmak için kullanılabilecek çerçevedir. Dil modelleri, konuşmanın bağlamını elde etmek amacıyla verileri veya geçmişi gözlem olarak veritabanında depolamak için belleği kullanır. Bellek, modelin kullanıcı tarafından verilen belirsiz istemleri anlayabilmesi için en son mesajları saklayacak şekilde yapılandırılmıştır.
Bu blog, LangChain aracılığıyla LLMChain'de bellek kullanma sürecini açıklıyor.
LangChain Aracılığıyla LLMChain'de Bellek Nasıl Kullanılır?
Bellek eklemek ve bunu LangChain aracılığıyla LLMChain'de kullanmak için, ConversationBufferMemory kütüphanesi LangChain'den içe aktarılarak kullanılabilir.
LLMChain'deki belleği LangChain aracılığıyla kullanma sürecini öğrenmek için aşağıdaki kılavuzu inceleyin:
Adım 1: Modülleri Kurun
Öncelikle pip komutunu kullanarak LangChain'i yükleyerek hafızayı kullanma işlemini başlatın:
pip kurulumu langchain
Yüksek Lisans veya sohbet modelleri oluşturmak amacıyla bağımlılıklarını veya kitaplıklarını almak için OpenAI modüllerini yükleyin:
pip kurulumu openai
Ortamı ayarlayın OpenAI için os ve getpass kitaplıklarını içe aktararak API anahtarını kullanarak:
bizi ithal etgetpass'ı içe aktar
os.environ['OPENAI_API_KEY'] = getpass.getpass('OpenAI API Anahtarı:')
Adım 2: Kitaplıkları İçe Aktarma
Ortamı kurduktan sonra, LangChain'den ConversationBufferMemory gibi kitaplıkları içe aktarmanız yeterlidir:
langchain.chains'ten LLMChain'i içe aktarınlangchain.llms'den OpenAI'yi içe aktarın
langchain.memory'den ConversationBufferMemory'yi içe aktarın
langchain.prompts'tan PromptTemplate'i içe aktarın
Kullanıcıdan sorguyu almak için 'giriş' ve verileri ara bellekte saklamak için 'geçmiş' gibi değişkenleri kullanarak istem şablonunu yapılandırın:
şablon = '''Siz bir insanla sohbet eden bir Modelsiniz{geçmiş}
İnsan: {giriş}
Sohbet robotu:'''
istem = PromptTemplate(
input_variables=['geçmiş', 'giriş'], şablon=şablon
)
bellek = ConversationBufferMemory(memory_key = 'hist')
Adım 3: LLM'yi Yapılandırma
Sorgu şablonu oluşturulduktan sonra LLMChain() yöntemini birden çok parametre kullanarak yapılandırın:
llm = OpenAI()llm_chain = LLMChain(
llm=llm,
istem=istem,
ayrıntılı=Doğru,
hafıza=hafıza,
)
Adım 4: LLMChain'i test etme
Bundan sonra, kullanıcıdan istemi metin biçiminde almak için giriş değişkenini kullanarak LLMChain'i test edin:
llm_chain.predict(input = 'Merhaba arkadaşım')
Bağlamı kullanarak çıktıyı çıkarmak için bellekte saklanan verileri almak için başka bir giriş kullanın:
llm_chain.predict(input = 'İyi! iyiyim - sen nasılsın')
Adım 5: Sohbet Modeline Bellek Ekleme
Bellek, kitaplıkları içe aktararak sohbet modeli tabanlı LLMChain'e eklenebilir:
langchain.chat_models'den ChatOpenAI'yi içe aktarınlangchain.schema'dan SystemMessage'ı içe aktarın
langchain.prompts'tan ChatPromptTemplate, HumanMessagePromptTemplate, MesajlarPlaceholder'ı içe aktarın
Kullanıcıdan gelen girişi ayarlamak için farklı değişkenler kullanarak ConversationBufferMemory() işlevini kullanarak bilgi istemi şablonunu yapılandırın:
istem = ChatPromptTemplate.from_messages([SystemMessage(content = 'Siz bir insanla sohbet eden bir Modelsiniz'),
MesajlarPlaceholder(değişken_adı = 'hist'),
HumanMessagePromptTemplate.from_template('{input}'),
])
bellek = ConversationBufferMemory(memory_key='hist', return_messages=True)
Adım 6: LLMChain'i Yapılandırma
Modeli farklı bağımsız değişkenler ve parametreler kullanarak yapılandırmak için LLMChain() yöntemini ayarlayın:
llm = ChatOpenAI()chat_llm_chain = LLMChain(
llm=llm,
istem=istem,
ayrıntılı=Doğru,
hafıza=hafıza,
)
Adım 7: LLMChain'i test etme
Sonunda, girdiyi kullanarak LLMChain'i test edin, böylece model istem doğrultusunda metni üretebilir:
chat_llm_chain.predict(input = 'Merhaba arkadaşım')
Model, önceki konuşmayı belleğe kaydetmiştir ve sorgunun gerçek çıktısından önce bunu görüntüler:
llm_chain.predict(input = 'İyi! iyiyim - sen nasılsın')
Bu tamamen LangChain kullanarak LLMChain'de hafıza kullanmakla ilgilidir.
Çözüm
LLMChain'deki belleği LangChain çerçevesi aracılığıyla kullanmak için, modüllerden bağımlılıkları alacak ortamı ayarlamak üzere modülleri kurmanız yeterlidir. Bundan sonra, önceki konuşmayı depolamak amacıyla ara belleği kullanmak için kütüphaneleri LangChain'den içe aktarmanız yeterlidir. Kullanıcı ayrıca LLMChain'i oluşturarak ve ardından girişi sağlayarak zinciri test ederek sohbet modeline bellek ekleyebilir. Bu kılavuz, LangChain aracılığıyla LLMChain'deki belleği kullanma sürecini ayrıntılı olarak ele almıştır.