O LangChain LLM se govori v mestu. Pridobite pregled, kaj je to in kako lahko začnete z njim.

Z uvedbo velikih jezikovnih modelov (LLM) je internet govoril o obdelavi naravnega jezika. Nove aplikacije se dnevno razvijajo zaradi LLM-jev, kot sta ChatGPT in LangChain.

LangChain je odprtokodno ogrodje Python, ki razvijalcem omogoča razvoj aplikacij, ki jih poganjajo veliki jezikovni modeli. Njegove aplikacije so chatboti, povzemanje, generativno spraševanje in odgovarjanje ter še veliko več.

Ta članek bo zagotovil uvod v LangChain LLM. Zajel bo osnovne koncepte, primerjavo z drugimi jezikovnimi modeli in kako začeti z njim.

Razumevanje LangChain LLM

Preden razložite, kako deluje LangChain, morate najprej razumeti kako delujejo veliki jezikovni modeli. Velik jezikovni model je vrsta umetne inteligence (AI), ki uporablja globoko učenje usposobiti modele strojnega učenja za velike podatke, sestavljene iz besedilnih, numeričnih in kodnih podatkov.

Ogromna količina podatkov omogoča modelu, da se nauči obstoječih vzorcev in odnosov med besedami, številkami in simboli. Ta funkcija omogoča modelu izvajanje vrste nalog, kot so:

instagram viewer

  • Generiranje besedila, jezikovno prevajanje, pisanje kreativnih, tehničnih in akademskih vsebin ter natančni in ustrezni odgovori na vprašanja.
  • Zaznavanje predmetov na slikah.
  • Povzetek knjig, člankov in raziskovalnih nalog.

Najpomembnejša omejitev LLM je, da so modeli zelo splošni. Ta funkcija pomeni, da lahko kljub svoji sposobnosti učinkovitega opravljanja več nalog včasih zagotovijo splošni odgovori na vprašanja ali pozive, ki zahtevajo strokovnost in poglobljeno poznavanje področja namesto specifičnih odgovori.

Ogrodje LangChain, ki ga je konec leta 2022 razvil Harrison Chase, ponuja inovativen pristop k LLM. Postopek se začne s predprocesiranjem besedil nabora podatkov tako, da ga razdelimo na manjše dele oz povzetki. Povzetki so nato vdelani v vektorski prostor. Model prejme vprašanje, preišče povzetke in zagotovi ustrezen odgovor.

LangChainova metoda predprocesiranja je kritična lastnost, ki se ji ni mogoče izogniti, saj LLM postajajo močnejši in podatkovno intenzivnejši. Ta metoda se večinoma uporablja v primerih kode in semantičnega iskanja, ker zagotavlja zbiranje v realnem času in interakcijo z LLM-ji.

LangChain LLM vs. Drugi jezikovni modeli

Naslednji primerjalni pregled želi poudariti edinstvene funkcije in zmožnosti, ki LangChain LLM ločujejo od drugih obstoječih jezikovnih modelov na trgu:

  • Spomin: Več LLM-jev ima kratek pomnilnik, kar običajno povzroči izgubo konteksta, če pozivi presežejo omejitev pomnilnika. LangChain pa ponuja prejšnje pozive in odgovore za klepet, s čimer rešuje vprašanje omejitev pomnilnika. Zgodovina sporočil omogoča uporabniku, da ponovi prejšnja sporočila LLM, da povzame prejšnji kontekst.
  • LLM preklapljanje: V primerjavi z drugimi LLM-ji, ki zaklenejo vašo programsko opremo z API-jem enega samega modela, LangChain zagotavlja abstrakcijo, ki poenostavlja preklapljanje LLM-jev ali integracijo več LLM-jev v vašo aplikacijo. To je uporabno, če želite nadgraditi zmogljivosti svoje programske opreme z uporabo kompaktnega modela, kot je StableLM Stability AI, recimo iz GPT-3.5 OpenAI.
  • Integracija: Integracija LangChaina v vašo aplikacijo je preprosta v primerjavi z drugimi LLM. Zagotavlja delovne tokove cevovoda verige in zastopniki, kar vam omogoča hitro vključitev LangChaina v vašo aplikacijo. V smislu linearnih cevovodov so verige predmeti, ki v bistvu povezujejo številne dele. Agenti so naprednejši in vam omogočajo, da izberete, kako naj komponente medsebojno delujejo z uporabo poslovne logike. Na primer, morda boste želeli uporabiti pogojno logiko za določitev naslednjega ukrepanja na podlagi rezultatov LLM.
  • Prenos podatkov: Zaradi splošne narave LLM-jev, ki temeljijo na besedilu, je običajno težko posredovati podatke modelu. LangChain rešuje to težavo z uporabo indeksi. Indeksi omogočajo, da aplikacija uvozi podatke v spremenljivih oblikah in jih shrani na način, ki omogoča, da jih postrežete LLM po vrsticah.
  • Odzivi: LangChain ponuja orodja za razčlenjevanje izhodnih podatkov za podajanje odgovorov v primerni obliki v nasprotju z drugimi LLM-ji, katerih odziv modela je sestavljen iz splošnega besedila. Pri uporabi umetne inteligence v aplikaciji je zaželeno imeti strukturiran odziv, ki ga lahko programirate.

Kako začeti z LangChain LLM

Zdaj se boste naučili implementirati LangChain v resničnem scenariju uporabe, da boste razumeli, kako deluje. Pred začetkom razvoja morate nastaviti razvojno okolje.

Nastavitev vašega razvojnega okolja

Prvič, ustvarite virtualno okolje in namestite spodnje odvisnosti:

  • OpenAI: Za integracijo GPT-3 API v vašo aplikacijo.
  • LangChain: Za integracijo LangChaina v vašo aplikacijo.

Z uporabo pip zaženite spodnji ukaz, da namestite odvisnosti:

 pipenv namestite langchain openai

Zgornji ukaz namesti pakete in ustvari virtualno okolje.

Uvozite nameščene odvisnosti

Najprej uvozite potrebne razrede, kot je npr LLMChain, OpenAI, ConversationChain, in PromptTemplate Iz Langchain paket.

od Langchain uvoz ConversationChain, OpenAI, PromptTemplate, LLMChain

od langchain.memory uvoz ConversationBufferWindowMemory

Razredi LangChain orisujejo in izvajajo verige jezikovnih modelov.

Dostop do ključa OpenAI API

Nato pridobite ključ OpenAI API. Za dostop do ključa API OpenAI morate imeti račun OpenAI, nato pa se pomaknite na OpenAI API platforma.

Na nadzorni plošči kliknite ikono profila. Nato kliknite Oglejte si ključe API gumb.

Nato kliknite Ustvari nov skrivni ključ gumb za pridobitev novega ključa API.

Vnesite zahtevano ime ključa API.

Prejeli boste a skrivni ključ poziv.

Kopirajte in shranite ključ API na varno mesto za prihodnjo uporabo.

Razvoj aplikacije z uporabo LangChain LLM

Zdaj boste nadaljevali z razvojem preproste aplikacije za klepet, kot sledi:

# Prilagodite predlogo LLM 
predloga = Pomočnik je velik jezikovni model, ki ga usposobi OpenAI.

{zgodovina}
Človek: {human_input}
Pomočnik:

prompt = PromptTemplate (input_variables=["zgodovina", "človeški_vnos"], predloga=predloga)

Nato boste naložili verigo ChatGPT z uporabo ključa API, ki ste ga prej shranili.

chatgpt_chain = LLMChain(

llm=OpenAI(openai_api_key="OPENAI_API_KEY",temperatura=0),
prompt=poziv,
podrobno=Prav,
memory=ConversationBufferWindowMemory (k=2),

)
# Predvidite stavek z uporabo verige chatgpt
izhod = chatgpt_chain.predict(
človeški_vnos="Kaj je MakeUseOf?"
)
# Prikažite odziv modela
tiskanje (izpis)

Ta koda naloži verigo LLM s ključem OpenAI API in predlogo poziva. Nato je zagotovljen vnos uporabnika in prikazan je njegov izhod.

Zgoraj je pričakovan rezultat.

Naraščajoči vpliv LLM

Poraba LLM-jev hitro narašča in spreminja način interakcije ljudi s stroji znanja. Ogrodja, kot je LangChain, so v ospredju zagotavljanja razvijalcem nemotenega in preprostega načina za streženje LLM-jev aplikacijam. Generativni modeli umetne inteligence, kot so ChatGPT, Bard in Hugging Face, prav tako ne zaostajajo pri napredovanju aplikacij LLM.