LangChain LLM je žhavá řeč města. Získejte přehled o tom, co to je a jak s tím můžete začít.
Se zavedením velkých jazykových modelů (LLM) se o zpracování přirozeného jazyka začalo mluvit na internetu. Nové aplikace jsou denně vyvíjeny díky LLM jako ChatGPT a LangChain.
LangChain je open-source Python framework umožňující vývojářům vyvíjet aplikace založené na velkých jazykových modelech. Jeho aplikacemi jsou chatboti, sumarizace, generativní dotazování a odpovídání a mnoho dalších.
Tento článek poskytne úvod do LangChain LLM. Bude pokrývat základní pojmy, srovnání s jinými jazykovými modely a jak s tím začít.
Porozumění LangChain LLM
Než vysvětlíte, jak LangChain funguje, musíte nejprve porozumět jak fungují velké jazykové modely. Velký jazykový model je typ umělé inteligence (AI), který využívá hluboké učení trénovat modely strojového učení na velkých datech sestávajících z textových, numerických a kódových dat.
Obrovské množství dat umožňuje modelu naučit se existující vzory a vztahy mezi slovy, číslicemi a symboly. Tato funkce umožňuje modelu provádět řadu úkolů, jako například:
- Generování textu, jazykový překlad, kreativní, technické a akademické psaní obsahu a přesné a relevantní odpovědi na otázky.
- Detekce objektů v obrazech.
- Shrnutí knih, článků a výzkumných prací.
Nejvýznamnějším omezením LLM je, že modely jsou velmi obecné. Tato funkce znamená, že navzdory jejich schopnosti efektivně vykonávat několik úkolů mohou někdy poskytnout obecné odpovědi na otázky nebo výzvy vyžadující odborné znalosti a hluboké znalosti domény namísto konkrétních odpovědi.
Rámec LangChain, který vyvinul Harrison Chase na konci roku 2022, nabízí inovativní přístup k LLM. Proces začíná předzpracováním textů datasetu jeho rozdělením na menší části resp souhrny. Souhrny jsou pak vloženy do vektorového prostoru. Model obdrží otázku, prohledá souhrny a poskytne vhodnou odpověď.
Metoda předběžného zpracování LangChain je kritickou funkcí, které se nelze vyhnout, protože LLM se stávají výkonnějšími a datově náročnějšími. Tato metoda se používá hlavně v případech kódu a sémantického vyhledávání, protože poskytuje sběr a interakci s LLM v reálném čase.
LangChain LLM vs. Jiné jazykové modely
Následující srovnávací přehled si klade za cíl zdůraznit jedinečné vlastnosti a schopnosti, které odlišují LangChain LLM od ostatních existujících jazykových modelů na trhu:
- Paměť: Několik LLM má krátkou paměť, což obvykle vede ke ztrátě kontextu, pokud výzvy překročí limit paměti. LangChain však poskytuje předchozí chatové výzvy a odpovědi, čímž řeší problém s limity paměti. Historie zpráv umožňuje uživateli opakovat předchozí zprávy LLM a rekapitulovat předchozí kontext.
- Přepínání LLM: Ve srovnání s jinými LLM, které uzamknou váš software pomocí API jediného modelu, LangChain poskytuje abstrakci, která zjednodušuje přepínání LLM nebo integraci více LLM do vaší aplikace. To je užitečné, když chcete upgradovat své softwarové možnosti pomocí kompaktního modelu, jako je například StableLM od Stability AI z GPT-3.5 OpenAI.
- Integrace: Integrace LangChain do vaší aplikace je snadná ve srovnání s jinými LLM. Poskytuje pracovní toky potrubí řetězy a agenti, což vám umožní rychle začlenit LangChain do vaší aplikace. Pokud jde o lineární potrubí, řetězy jsou objekty, které v podstatě spojují četné části. Agenti jsou pokročilejší a umožňují vám zvolit, jak mají komponenty interagovat pomocí obchodní logiky. Můžete například chtít použít podmíněnou logiku k určení dalšího postupu na základě výsledků LLM.
- Předávání dat: Vzhledem k obecné textové povaze LLM je obvykle obtížné předávat data modelu. LangChain řeší tento problém pomocí indexy. Indexy umožňují aplikaci importovat data v proměnných formátech a ukládat je způsobem, který umožňuje poskytovat je řádek po řádku LLM.
- Odezvy: LangChain poskytuje nástroje výstupního analyzátoru, které poskytují odpovědi ve vhodném formátu na rozdíl od jiných LLM, jejichž modelová odpověď sestává z obecného textu. Při použití AI v aplikaci je preferováno mít strukturovanou odezvu, proti které můžete programovat.
Začínáme s LangChain LLM
Nyní se naučíte, jak implementovat LangChain ve skutečném scénáři použití, abyste pochopili, jak to funguje. Před zahájením vývoje je potřeba nastavit vývojové prostředí.
Nastavení vývojového prostředí
První, vytvořit virtuální prostředí a nainstalujte níže uvedené závislosti:
- OpenAI: Pro integraci GPT-3 API do vaší aplikace.
- LangChain: Integrace LangChain do vaší aplikace.
Pomocí pip spusťte níže uvedený příkaz a nainstalujte závislosti:
pipenv install langchain openai
Výše uvedený příkaz nainstaluje balíčky a vytvoří virtuální prostředí.
Importujte nainstalované závislosti
Nejprve naimportujte potřebné třídy jako např LLMCain, OpenAI, ConversationChain, a PromptTemplate z langchain balík.
z langchain import ConversationChain, OpenAI, PromptTemplate, LLMCain
z langchain.paměť import ConversationBufferWindowMemory
Třídy LangChain načrtávají a provádějí řetězce jazykových modelů.
Přístup ke klíči API OpenAI
Dále získejte klíč OpenAI API. Chcete-li získat přístup ke klíči API OpenAI, musíte mít účet OpenAI a poté přejít na Platforma OpenAI API.
Na hlavním panelu klikněte na ikonu Profil. Poté klikněte na Zobrazit klíče API knoflík.
Dále klikněte na Vytvořte nový tajný klíč tlačítko pro získání nového klíče API.
Zadejte požadovaný název klíče API.
Obdržíte a tajný klíč výzva.
Zkopírujte a uložte klíč API na bezpečném místě pro budoucí použití.
Vývoj aplikace pomocí LangChain LLM
Nyní budete pokračovat ve vývoji jednoduché chatovací aplikace následovně:
# Přizpůsobte šablonu LLM
šablona = Assistant je velký jazykový model vyškolený OpenAI.{Dějiny}
Člověk: {human_input}
Asistent:
prompt = PromptTemplate (input_variables=["Dějiny", "lidský_vstup"], šablona=šablona)
Dále načtete řetězec ChatGPT pomocí klíče API, který jste uložili dříve.
chatgpt_chain = LLMCain(
llm=OpenAI(openai_api_key="OPENAI_API_KEY",teplota=0),
výzva = výzva,
upovídaný=Skutečný,
memory=ConversationBufferWindowMemory (k=2),
)
# Předpovězte větu pomocí řetězce chatgpt
output = chatgpt_chain.predict(
human_input="Co je MakeUseOf?"
)
# Zobrazte odpověď modelu
tisknout (výstup)
Tento kód načte řetězec LLM s klíčem OpenAI API a šablonou výzvy. Poté je poskytnut uživatelský vstup a zobrazí se jeho výstup.
Výše je očekávaný výstup.
Rostoucí vliv LLM
Spotřeba LLM rychle roste a mění způsob, jakým lidé komunikují se znalostními stroji. Frameworky jako LangChain jsou v popředí poskytování vývojářům hladký a jednoduchý způsob poskytování LLM aplikacím. Generativní modely umělé inteligence, jako je ChatGPT, Bard a Hugging Face, také nezůstávají pozadu v rozvíjejících se aplikacích LLM.