LangChain je ogrodje z aplikacijo v domeni obdelave naravnega jezika ali NLP za gradnjo modelov v človeku podobnih jezikih. Te modele lahko ljudje uporabljajo za pridobivanje odgovorov od modela ali za pogovor kot kateri koli drug človek. LangChain se uporablja za gradnjo verig s shranjevanjem vsakega stavka v pogovoru in nadaljnjo interakcijo z uporabo tega kot konteksta.
Ta objava bo ponazorila postopek gradnje LLM in LLMChain v LangChain.
Kako zgraditi LLM in LLMChain v LangChainu?
Če želite zgraditi LLM in LLMChain v LangChain, preprosto pojdite skozi navedene korake:
1. korak: Namestite module
Najprej namestite modul LangChain, da uporabite njegove knjižnice za gradnjo LLM in LLMChain:
pip namestite langchain
Drugi modul, ki je potreben za gradnjo LLM-jev, je OpenAI in ga je mogoče namestiti z ukazom pip:
pip namestite openai
2. korak: Nastavite okolje
Nastavite okolje s ključem OpenAI API iz njegovega okolja:
uvažajte nasimport getpassos.environ['OPENAI_API_KEY'] = getpass.getpass('Ključ OpenAI API:')
1. primer: zgradite LLM z uporabo LangChain
Prvi primer je izdelava velikih jezikovnih modelov z uporabo LangChain z uvozom knjižnic OpenAI in ChatOpenAI ter uporabo funkcije llm():
1. korak: Uporaba modela klepeta LLM
Uvozite module OpenAI in ChatOpenAI za izdelavo preprostega LLM z uporabo okolja OpenAI iz LangChaina:
iz langchain.chat_models uvozi ChatOpenAIiz langchain.llms uvozi OpenAI
llm = OpenAI()
chat_model = ChatOpenAI()
llm.predict('živjo!')
Model je odgovoril z odgovorom »zdravo«, kot je prikazano na spodnjem posnetku zaslona:
Funkcija predict() iz chat_modela se uporablja za pridobivanje odgovora ali odgovora iz modela:
chat_model.predict('živjo!')Izhod pokaže, da je model na voljo uporabniku, ki postavlja poizvedbe:
2. korak: Uporaba besedilne poizvedbe
Uporabnik lahko dobi tudi odgovore iz modela tako, da poda celoten stavek v besedilni spremenljivki:
text = 'Kako bi bilo dobro ime za podjetje, ki izdeluje pisane nogavice?'llm.predict(besedilo)
Model ima prikazanih več barvnih kombinacij za pisane nogavice:
Pridobite podroben odgovor modela s funkcijo predict() z barvnimi kombinacijami za nogavice:
chat_model.predict(besedilo)
3. korak: Uporaba besedila z vsebino
Uporabnik lahko dobi odgovor z majhno razlago o odgovoru:
iz langchain.schema uvozite HumanMessagetext = 'Kaj bi bil dober naslov za podjetje, ki izdeluje pisana oblačila'
sporočila = [HumanMessage(content=text)]
llm.predict_messages(sporočila)
Model je ustvaril naslov za podjetje, ki je 'Creative Clothing Co':
Predvidite sporočilo, da dobite tudi odgovor za naziv podjetja z njegovo razlago:
chat_model.predict_messages(sporočila)
Primer 2: Zgradite LLMChain z uporabo LangChain
Drugi primer našega vodnika zgradi LLMChain, da dobi model v obliki človeške interakcije, da združi vse korake iz prejšnjega primera:
iz langchain.chat_models uvozi ChatOpenAIiz langchain.prompts.chat uvoz ChatPromptTemplate
iz langchain.prompts.chat uvoz ChatPromptTemplate
iz langchain.prompts.chat uvoz SystemMessagePromptTemplatfrom langchain.prompts.chat uvoz HumanMessagePromptTemplate
iz langchain.chains uvozite LLMChain
iz langchain.schema import BaseOutputParserclass CommaSeparatedListOutputParser(BaseOutputParser):
def parse(self, text: str):
vrni text.strip().split(', ')
Zgradite predlogo za model klepeta s podrobno razlago njegovega delovanja in nato zgradite funkcijo LLMChain(), ki vsebuje knjižnice LLM, izhodni razčlenjevalnik in chat_prompt:
template = '''Morate pomagati pri ustvarjanju seznamov, ločenih z vejicamiPridobite kategorijo od uporabnika in ustvarite z vejicami ločen seznam s petimi predmeti
Edina stvar naj bo predmet iz kategorije'''
system_message_prompt = SystemMessagePromptTemplate.from_template(template)
human_template = '{text}'
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)
#Konfigurirajte LLMChain s strukturo poizvedbe
chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])
veriga = LLMChain(
llm=ChatOpenAI(),
prompt=chat_prompt,
output_parser=CommaSeparatedListOutputParser()
)
veriga.run('barve')
Model je zagotovil odgovor s seznamom barv, saj mora kategorija vsebovati samo 5 predmetov, navedenih v pozivu:
To je vse o izgradnji LLM in LLMChain v LangChainu.
Zaključek
Če želite zgraditi LLM in LLMChain z uporabo LangChain, preprosto namestite modula LangChain in OpenAI, da nastavite okolje z njegovim ključem API. Nato zgradite model LLM z uporabo chat_model, potem ko ustvarite predlogo poziva za posamezno poizvedbo do celotnega klepeta. LLMChain se uporablja za ustvarjanje verig vseh opažanj v pogovoru in njihovo uporabo kot kontekst interakcije. Ta objava ponazarja postopek gradnje LLM in LLMChain z uporabo ogrodja LangChain.