LangChain'de Temsilcilere Başlarken?

Langchain De Temsilcilere Baslarken



LangChain, insanlarla etkileşim kurabilen ve konuşabilen uygulamalar veya yazılımlar oluşturmak için Doğal Dil İşlemeyi çözen çerçevedir. Sohbet robotları veya Büyük Dil Modelleri (LLM'ler), sohbet/konuşma için bir arayüz görevi görebilecek bir ortam oluşturmak üzere tasarlanmıştır. Bu sohbetler, insanlar ve bir yapay zeka modeli arasında İngilizce gibi doğal diller olarak adlandırılan insan dillerinde gerçekleştirilir.

Hızlı Taslak

Bu gönderi aşağıdakileri gösterecektir:







Doğal Dil İşlemede (NLP) Aracılar Nelerdir?



LangChain'de Temsilcilere Başlarken



Çözüm





Doğal Dil İşlemede (NLP) Aracılar Nelerdir?

Aracılar, doğal dil uygulamasının hayati bileşenleridir ve sorguları anlamak için Doğal Dil Anlama'yı (NLU) kullanırlar. Bu aracılar, görev dizisini kullanarak insanlarla etkileşimde bulunmak için bir konuşma şablonu gibi davranan programlardır. Aracılar, birden fazla eylemi gerçekleştirmek veya gerçekleştirilecek bir sonraki görevi belirtmek için aracı tarafından çağrılabilecek birden fazla araç kullanır.

LangChain'de Temsilcilere Başlarken

LangChain'deki aracıları kullanarak çıktıları çıkararak, insanlarla sohbet edecek aracılar oluşturma sürecini başlatın. LangChain'deki acentelerle çalışmaya başlama sürecini öğrenmek için aşağıda listelenen adımları uygulamanız yeterlidir:



Adım 1: Çerçeveleri Yükleme

Öncelikle LangChain çerçevesini kurma işlemine ' pip Aracıları kullanmak için gerekli bağımlılıkları almak için ” komutu:

pip kurulumu langchain

LLM'yi oluşturmak için OpenAI modülünü yükleyin ve bunu LangChain'deki aracıları yapılandırmak için kullanın:

pip kurulumu openai

Ortamı ayarlayın OpenAI modülü için aşağıdaki kodu çalıştırarak hesaptaki API anahtarını kullanın:

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ı:' )

2. Adım: Sohbet Modelini Yapılandırın

İşlevini kullanarak LLM'yi oluşturmak için ChatOpenAI modülünü LangChain'den içe aktarın:

itibaren Langchain. chat_models içe aktarmak SohbetAçıkAI

llm = SohbetAçıkAI ( sıcaklık = 0 )

Aracı tarafından gerçekleştirilmesi gereken görevleri veya eylemleri yapılandırmak için aracıya yönelik araçları içe aktarın. Aşağıdaki kod, kullanıcı tarafından sağlanan kelimenin uzunluğunu elde etmek için get_word_length() yöntemini kullanır:

itibaren Langchain. ajanlar içe aktarmak alet

@ alet

kesinlikle get_word_length ( kelime: cadde ) - > int :

'''kelimenin uzunluğunu alma'''

geri dönmek sadece ( kelime )

aletler = [ get_word_length ]

Sohbet etmek için bir arayüz oluşturmak amacıyla sohbet modelinin şablonunu veya yapısını yapılandırın:

itibaren Langchain. istemler içe aktarmak Sohbet İstemi Şablonu , MesajlarYer tutucu

çabuk = ChatPromptTemplate. from_messages ( [

( 'sistem' , 'Asistanınız oldukça harika, ancak uzunlukları hesaplamada gelişmeniz gerekiyor' ) ,

( 'kullanıcı' , '{giriş}' ) ,

MesajlarYer tutucu ( değişken ismi = 'agent_scratchpad' ) ,

] )

Adım 3: Yapı Aracısı

LangChain modülündeki OpenAI işlevlerini kullanarak LLM'yi oluşturmak için araç kütüphanesini araçlarla içe aktarın:

itibaren Langchain. aletler . oluşturmak içe aktarmak format_tool_to_openai_function

llm_with_tools = llm. bağlamak (

işlevler = [ format_tool_to_openai_function ( T ) için T içinde aletler ]

)

Eylemleri/görev sıralarını ayarlamak için çıktı ayrıştırıcısını kullanmak üzere aracıyı OpenAI işlev aracısını kullanarak yapılandırın:

itibaren Langchain. ajanlar . format_scratchpad içe aktarmak format_to_openai_functions

itibaren Langchain. ajanlar . çıktı_ayrıştırıcıları içe aktarmak OpenAIFunctionsAgentOutputParser

ajan = {

'giriş' : lambda x: x [ 'giriş' ] ,

'agent_scratchpad' : lambda x: format_to_openai_functions ( X [ 'ara_adımlar' ] )

} | bilgi istemi | llm_with_tools | OpenAIFunctionsAgentOutputParser ( )

Adım 4: Aracıyı Çağırma

Bir sonraki adım, aracıyı input ve middle_steps bağımsız değişkenlerini kullanarak çağırmak için invoke() işlevini kullanır:

ajan. çağırmak ( {

'giriş' : 'iyi kelimesinde kaç harf var' ,

'ara_adımlar' : [ ]

} )

Adım 5: Aracı Araçlarını Yapılandırın

Bundan sonra, etkinliği tamamlamak için tüm adımları bir sırayla entegre ederek ara_steps'i yapılandırmak için AgentFinish kitaplığını içe aktarmanız yeterlidir:

itibaren Langchain. şema . ajan içe aktarmak AjanFinish
ara_adımlar = [ ]
sırasında Doğru :
çıktı = ajan. çağırmak ( {
'giriş' : 'iyi mektuplar' ,
'ara_adımlar' : ara_adımlar
} )
eğer bir örnek ( çıktı , AjanFinish ) :
son sonuç = çıktı. dönüş_değerleri [ 'çıktı' ]
kırmak
başka :
Yazdır ( çıktı. alet , çıktı. tool_input )
alet = {
'get_word_length' : get_word_length
} [ çıktı. alet ]
gözlem = alet. koşmak ( çıktı. tool_input )
ara_adımlar. eklemek ( ( çıktı , gözlem ) )
Yazdır ( son sonuç )

Adım 6: Aracıyı Test Etme

Şimdi, aracının kütüphanesini LangChain'den içe aktardıktan sonra AgentExecutor() yöntemini çağırarak aracıyı yürütün:

itibaren Langchain. ajanlar içe aktarmak AjanYürütücü

ajan_yürütücü = AjanYürütücü ( ajan = ajan , aletler = aletler , ayrıntılı = Doğru )

Sonunda, aracı sorgusunu girmek için, giriş argümanıyla aracı_yürütücüyü çağırın:

ajan_yürütücü. çağırmak ( { 'giriş' : 'iyi kelimesinde kaç harf var' } )

Aracı, zinciri tamamladıktan sonra giriş argümanında verilen sorunun cevabını görüntüledi:

LangChain çerçevesindeki aracıları kullanmaya başlamak bu kadar.

Çözüm

LangChain'deki aracıları kullanmaya başlamak için OpenAI API anahtarını kullanarak ortamı ayarlamak için gereken modülleri kurmanız yeterlidir. Bundan sonra, aracıyı ara adımlar dizisiyle oluşturmak için bilgi istemi şablonunu ayarlayarak sohbet modelini yapılandırın. Aracı yapılandırıldıktan sonra, kullanıcıya giriş dizesini verdikten sonra görevleri belirterek araçları oluşturmanız yeterlidir. Bu blog, LangChain'deki aracıların kullanım sürecini gösterdi.