Táto príručka bude ilustrovať proces používania pamäte entít v LangChain.
Ako používať pamäť entít v LangChain?
Entita sa používa na uchovanie kľúčových faktov uložených v pamäti na extrakciu, keď sa na to človek pýta pomocou dotazov/výziev. Ak sa chcete naučiť proces používania pamäte entít v LangChain, jednoducho navštívte nasledujúcu príručku:
Krok 1: Nainštalujte moduly
Najprv nainštalujte modul LangChain pomocou príkazu pip, aby ste získali jeho závislosti:
pip install langchain
Potom nainštalujte modul OpenAI, aby ste získali jeho knižnice na vytváranie LLM a chatovacích modelov:
pip install openai
Nastavte prostredie OpenAI pomocou kľúča API, ktorý možno extrahovať z účtu OpenAI:
importovať vy
importovať getpass
vy . približne [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )
Krok 2: Použitie pamäte entít
Ak chcete použiť pamäť entity, importujte požadované knižnice na zostavenie LLM pomocou metódy OpenAI():
od langchain. llms importovať OpenAIod langchain. Pamäť importovať ConversationEntityMemory
llm = OpenAI ( teplota = 0 )
Potom definujte Pamäť premennej pomocou metódy ConversationEntityMemory() na trénovanie modelu pomocou vstupných a výstupných premenných:
Pamäť = ConversationEntityMemory ( llm = llm )_vstup = { 'vstup' : 'Joe are Root robili projekt' }
Pamäť. load_memory_variables ( _vstup )
Pamäť. save_context (
_vstup ,
{ 'výkon' : 'Skvelé! Čo je to za projekt?' }
)
Teraz otestujte pamäť pomocou dotazu/výzvy v vstup premennej volaním metódy load_memory_variables():
Pamäť. load_memory_variables ( { 'vstup' : 'kto je root' } )
Teraz uveďte ďalšie informácie, aby model mohol pridať niekoľko ďalších entít do pamäte:
Pamäť = ConversationEntityMemory ( llm = llm , návratové_správy = Pravda )_vstup = { 'vstup' : 'Joe are Root robili projekt' }
Pamäť. load_memory_variables ( _vstup )
Pamäť. save_context (
_vstup ,
{ 'výkon' : 'Skvelé! Čo je to za projekt' }
)
Vykonajte nasledujúci kód, aby ste získali výstup pomocou entít, ktoré sú uložené v pamäti. Je to možné prostredníctvom vstup obsahujúci výzvu:
Pamäť. load_memory_variables ( { 'vstup' : 'kto je Joe' } )
Krok 3: Použitie pamäte entít v reťazci
Ak chcete použiť pamäť entity po vytvorení reťazca, jednoducho importujte požadované knižnice pomocou nasledujúceho bloku kódu:
od langchain. reťaze importovať ConversationChainod langchain. Pamäť importovať ConversationEntityMemory
od langchain. Pamäť . výzva importovať ENTITY_MEMORY_CONVERSATION_TEMPLATE
od pydantický importovať BaseModel
od písanie na stroji importovať Zoznam , Dikt , akýkoľvek
Zostavte model konverzácie pomocou metódy ConversationChain() s použitím argumentov ako llm:
rozhovor = ConversationChain (llm = llm ,
podrobný = Pravda ,
výzva = ENTITY_MEMORY_CONVERSATION_TEMPLATE ,
Pamäť = ConversationEntityMemory ( llm = llm )
)
Zavolajte metódu conversion.predict() so vstupom inicializovaným výzvou alebo dotazom:
rozhovor. predpovedať ( vstup = 'Joe are Root robili projekt' )
Teraz získajte samostatný výstup pre každú entitu popisujúcu informácie o nej:
rozhovor. Pamäť . entity_store . obchod
Použite výstup z modelu na zadanie vstupu, aby model mohol uložiť viac informácií o týchto entitách:
rozhovor. predpovedať ( vstup = „Snažia sa pridať do Langchainu zložitejšie pamäťové štruktúry“ )
Po zadaní informácií, ktoré sa ukladajú do pamäte, jednoducho položte otázku, aby ste získali konkrétne informácie o entitách:
rozhovor. predpovedať ( vstup = 'Čo vieš o Joeovi a Rootovi' )
Krok 4: Testovanie úložiska pamäte
Používateľ môže priamo skontrolovať pamäťové úložiská a získať informácie v nich uložené pomocou nasledujúceho kódu:
od vytlačiť importovať vytlačiťvytlačiť ( rozhovor. Pamäť . entity_store . obchod )
Poskytnite viac informácií, ktoré sa majú uložiť do pamäte, pretože viac informácií poskytuje presnejšie výsledky:
rozhovor. predpovedať ( vstup = „Root založil firmu s názvom HJRS“ )
Extrahujte informácie z pamäte po pridaní ďalších informácií o entitách:
od vytlačiť importovať vytlačiťvytlačiť ( rozhovor. Pamäť . entity_store . obchod )
Pamäť obsahuje informácie o viacerých entitách, ako sú HJRS, Joe, LangChain a Root:
Teraz extrahujte informácie o konkrétnej entite pomocou dotazu alebo výzvy definovanej vo vstupnej premennej:
rozhovor. predpovedať ( vstup = 'Čo viete o Root' )
To je všetko o používaní pamäte entít pomocou rámca LangChain.
Záver
Ak chcete použiť pamäť entity v LangChain, jednoducho nainštalujte požadované moduly na import knižníc potrebných na zostavenie modelov po nastavení prostredia OpenAI. Potom vytvorte model LLM a uložte entity do pamäte poskytnutím informácií o entitách. Používateľ môže tiež extrahovať informácie pomocou týchto entít a vytvárať tieto pamäte v reťazcoch s miešanými informáciami o entitách. Tento príspevok rozpracoval proces používania pamäte entít v LangChain.