Ipapakita ng gabay na ito ang proseso ng paggamit ng buffer ng buod ng pag-uusap sa LangChain.
Paano Gumamit ng Buffer ng Buod ng Pag-uusap sa LangChain?
Ang pag-uusap ay maaaring maglaman ng maraming mensahe na parang pakikipag-ugnayan sa pagitan ng tao at makina at ang buffer ay maaaring mag-imbak ng mga pinakabagong mensahe. Ang ConversationSummaryBufferMemory Ang library ay ginagamit upang pagsamahin ang parehong mga konsepto tulad ng pag-iimbak ng mga pinakabagong mensahe at pagkuha ng kanilang buod.
Upang matutunan ang proseso ng paggamit ng buffer ng buod ng pag-uusap sa LangChain, dumaan lang sa sumusunod na gabay:
Hakbang 1: I-install ang Mga Module
Una, i-install ang LangChain module gamit ang pip command para makuha ang mga kinakailangang library:
pip install langchain
I-install ang tiktoken tokenizer na maaaring gamitin upang hatiin ang mga dokumento ng teksto sa maliliit na piraso:
pip install tiktoken
Pagkatapos nito, i-install ang mga OpenAI module na maaaring magamit upang bumuo ng mga modelo ng wika tulad ng mga LLM at chain:
pip install openai
ngayon, itakda ang kapaligiran sa pamamagitan ng pagkuha ng API key mula sa OpenAI account at paggamit nito sa modelo:
angkat ikawangkat getpass
ikaw . humigit-kumulang [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )
Hakbang 2: Paggamit ng Buffer ng Buod ng Pag-uusap
Simulan ang proseso ng paggamit ng buffer ng buod ng pag-uusap sa pamamagitan ng pag-import ng mga aklatan para buuin ang LLM gamit ang OpenAI() na paraan:
mula sa langchain. alaala angkat ConversationSummaryBufferMemorymula sa langchain. llms angkat OpenAI
llm = OpenAI ( )
Buuin ang memorya gamit ang paraan ng ConversationSummaryBufferMemory() at pagkatapos ay iimbak ang pag-uusap sa memorya:
alaala = ConversationSummaryBufferMemory ( llm = llm , max_token_limit = 10 )alaala. save_context ( { 'input' : 'Kamusta' } , { 'output' : 'kamusta ka' } )
alaala. save_context ( { 'input' : 'Mabait ako, ano naman sayo' } , { 'output' : 'hindi gaano' } )
Ngayon, isagawa ang memorya sa pamamagitan ng pagtawag sa load_memory_variables () paraan upang kunin ang mga mensahe mula sa memorya:
alaala. load_memory_variables ( { } )
Ngayon, gamitin ang buffer na buod ng pag-uusap upang i-configure ang buffer sa pamamagitan ng paglilimita sa bilang ng mga mensaheng itatabi sa buffer. Pagkatapos nito, i-extract ang buod ng mga mensaheng ito na nakaimbak sa buffer at pagkatapos ay iimbak ang pag-uusap sa memorya:
alaala = ConversationSummaryBufferMemory (llm = llm , max_token_limit = 10 , return_messages = totoo
)
alaala. save_context ( { 'input' : 'Kamusta' } , { 'output' : 'kamusta ka' } )
alaala. save_context ( { 'input' : 'Mabait ako, ano naman sayo' } , { 'output' : 'hindi gaano' } )
Kunin ang buod ng mga nakaraang mensahe na nakaimbak sa buffer memory gamit ang sumusunod na code:
mga mensahe = alaala. chat_memory . mga mensahenakaraang_buod = ''
alaala. predict_new_summary ( mga mensahe , nakaraang_buod )
Hakbang 3: Paggamit ng Buffer ng Buod ng Pag-uusap sa isang Chain
Buuin ang mga kadena gamit ang ConversationChain() paraan na naglalaman ng halaga para sa buffer memory upang maiimbak ang mensahe dito:
mula sa langchain. mga tanikala angkat ConversationChainconversation_with_summary = ConversationChain (
llm = llm ,
alaala = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
verbose = totoo ,
)
conversation_with_summary. hulaan ( input = 'Kamusta ka?' )
Ibigay ang input sa anyo ng text gamit ang predict() method para makuha ang buod ng pag-uusap:
conversation_with_summary. hulaan ( input = 'Nagtatrabaho lang sa proyekto ng NLP' )
Gamitin ang output mula sa modelo at magdagdag ng higit pang data gamit ang mga mensahe sa buffer memory at ipakita ang buod nito:
conversation_with_summary. hulaan ( input = 'oo nga! Nagsusumikap ako sa pagdidisenyo ng mga LLM' )
Ang buod ay ang output ay madaling mauunawaan at mas magiliw sa tao at mas angkop para sa mga chatbot:
conversation_with_summary. hulaan (input = 'Gusto kong gamitin ang LangChain! Narinig mo na ba ito'
)
Iyon ay tungkol sa paggamit ng buffer ng buod ng pag-uusap sa LangChain.
Konklusyon
Para magamit ang buffer memory ng buffer ng pag-uusap sa LangChain, i-install lang ang mga module o frameworks para makuha ang mga kinakailangang library. Kapag na-import na ang mga aklatan, buuin ang mga LLM o chatbot upang magamit ang function na ConverstaionSummaryBufferMemory() upang makuha ang buod ng pag-uusap. Ang buffer memory ay ginagamit upang limitahan ang bilang ng mga mensaheng nakaimbak sa memorya na gagamitin para sa pagkuha ng buod. Ang post na ito ay nagpapaliwanag sa proseso ng paggamit ng buffer memory ng buffer ng pag-uusap sa LangChain.