LangChain LLM on kaupungin kuuma puheenaihe. Saat yleiskuvan siitä, mitä se on ja miten voit aloittaa sen käytön.
Suurten kielimallien (LLM) käyttöönoton myötä Natural Language Processing on ollut Internetin puheenaihe. Uusia sovelluksia kehitetään päivittäin LLM: iden, kuten ChatGPT: n ja LangChainin, ansiosta.
LangChain on avoimen lähdekoodin Python-kehys, jonka avulla kehittäjät voivat kehittää suurilla kielimalleilla toimivia sovelluksia. Sen sovelluksia ovat chatbotit, yhteenveto, generatiivinen kysely ja vastaaminen ja paljon muuta.
Tämä artikkeli tarjoaa johdannon LangChain LLM: ään. Se kattaa peruskäsitteet, miten se verrataan muihin kielimalleihin ja miten pääset alkuun.
LangChain LLM: n ymmärtäminen
Ennen kuin selität LangChainin toiminnan, sinun on ensin ymmärrettävä kuinka suuret kielimallit toimivat. Suuri kielimalli on eräänlainen tekoäly (AI), joka käyttää syväoppimista kouluttaa koneoppimismalleja big datalle, joka koostuu teksti-, numeeri- ja koodidatasta.
Valtava tietomäärä mahdollistaa sen, että malli oppii olemassa olevat mallit ja suhteet sanojen, kuvioiden ja symbolien välillä. Tämän ominaisuuden avulla malli voi suorittaa joukon tehtäviä, kuten:
- Tekstin luominen, kielten kääntäminen, luova, tekninen ja akateeminen sisällön kirjoittaminen sekä tarkka ja asiaankuuluva vastaus.
- Objektin tunnistus kuvissa.
- Yhteenveto kirjoista, artikkeleista ja tutkimuspapereista.
LLM: n merkittävin rajoitus on, että mallit ovat hyvin yleisiä. Tämä ominaisuus tarkoittaa, että vaikka he pystyvät suorittamaan useita tehtäviä tehokkaasti, ne voivat joskus tarjota yleisiä vastauksia kysymyksiin tai kehotuksiin, jotka vaativat asiantuntemusta ja syvällistä alatuntemusta erityisten sijaan vastauksia.
Harrison Chasen vuoden 2022 lopulla kehittämä LangChain-kehys tarjoaa innovatiivisen lähestymistavan LLM: ihin. Prosessi alkaa esikäsittelemällä tietojoukkotekstit jakamalla ne pienempiin osiin tai yhteenvedot. Yhteenvedot upotetaan sitten vektoriavaruuteen. Malli vastaanottaa kysymyksen, etsii yhteenvedot ja antaa oikean vastauksen.
LangChainin esikäsittelymenetelmä on kriittinen ominaisuus, joka on väistämätön, kun LLM: istä tulee tehokkaampia ja dataintensiivisempiä. Tätä menetelmää käytetään pääasiassa koodi- ja semanttisissa hakutapauksissa, koska se tarjoaa reaaliaikaisen keräämisen ja vuorovaikutuksen LLM: ien kanssa.
LangChain LLM vs. Muut kielimallit
Seuraavan vertailevan yleiskatsauksen tavoitteena on korostaa ainutlaatuisia ominaisuuksia ja ominaisuuksia, jotka erottavat LangChain LLM: n muista markkinoilla olevista kielimalleista:
- Muisti: Useilla LLM: illä on lyhyt muisti, mikä yleensä johtaa kontekstin menetykseen, jos kehotteet ylittävät muistirajan. LangChain tarjoaa kuitenkin aikaisemmat chat-kehotteet ja vastaukset, mikä ratkaisee muistirajoitusten ongelman. Viestihistorian avulla käyttäjä voi toistaa aiemmat viestit LLM: lle edellisen kontekstin tiivistämiseksi.
- LLM-vaihto: Verrattuna muihin LLM-yrityksiin, jotka lukitsevat ohjelmistosi yhden mallin API: lla, LangChain tarjoaa abstraktion, joka yksinkertaistaa LLM: ien vaihtamista tai useiden LLM: ien integroimista sovellukseesi. Tämä on hyödyllistä, kun haluat päivittää ohjelmistovalmiuksiasi käyttämällä kompaktia mallia, kuten Stability AI: n StableLM, sanotaan OpenAI: n GPT-3.5:stä.
- Liittäminen: LangChainin integrointi sovellukseesi on helppoa verrattuna muihin LLM: ihin. Se tarjoaa putkilinjan työnkulkuja ketjut ja agentit, jonka avulla voit nopeasti sisällyttää LangChainin sovellukseesi. Lineaaristen putkilinjojen kannalta ketjut ovat esineitä, jotka olennaisesti yhdistävät useita osia. Agentit ovat edistyneempiä, joten voit valita, miten komponentit toimivat vuorovaikutuksessa liiketoimintalogiikan avulla. Voit esimerkiksi käyttää ehdollista logiikkaa määrittääksesi seuraavan toimintatavan LLM: n tulosten perusteella.
- Tietojen välitys: LLM: ien yleisen tekstipohjaisen luonteen vuoksi tietojen välittäminen malliin on yleensä hankalaa. LangChain ratkaisee tämän ongelman käyttämällä indeksit. Indeksit mahdollistavat sovelluksen tuoda tietoja muuttuvissa muodoissa ja tallentaa ne tavalla, joka mahdollistaa sen palvelemisen rivi riviltä LLM: lle.
- Vastaukset: LangChain tarjoaa ulostulon jäsennystyökalut, jotka antavat vastauksia sopivassa muodossa toisin kuin muut LLM: t, joiden mallivastaus koostuu yleisestä tekstistä. Käytettäessä tekoälyä sovelluksessa on suositeltavaa, että sinulla on jäsennelty vastaus, jota vastaan voit ohjelmoida.
LangChain LLM: n käytön aloittaminen
Nyt opit ottamaan LangChainin käyttöön todellisessa käyttötapausskenaariossa ymmärtääksesi, miten se toimii. Ennen kehityksen aloittamista sinun on määritettävä kehitysympäristö.
Kehitysympäristösi luominen
Ensimmäinen, luoda virtuaalinen ympäristö ja asenna alla olevat riippuvuudet:
- OpenAI: Integroidaksesi GPT-3 API sovellukseesi.
- LangChain: LangChainin integrointi sovellukseesi.
Asenna riippuvuudet suorittamalla alla oleva komento pip: n avulla:
pipenv asentaa langchain openai
Yllä oleva komento asentaa paketit ja luo virtuaalisen ympäristön.
Tuo asennetut riippuvuudet
Tuo ensin tarvittavat luokat, kuten LLMChain, OpenAI, Keskusteluketju, ja PromptTemplate alkaen langchain paketti.
alkaen langchain tuonti ConversationChain, OpenAI, PromptTemplate, LLMChain
alkaen langchain.memory tuonti ConversationBufferWindowMemory
LangChain-luokat hahmottelevat ja suorittavat kielimalliketjut.
Käytä OpenAI-sovellusliittymäavainta
Hanki seuraavaksi OpenAI API-avain. Jotta voit käyttää OpenAI: n API-avainta, sinulla on oltava OpenAI-tili ja siirry sitten OpenAI API-alusta.
Napsauta kojelaudassa Profiili-kuvaketta. Napsauta sitten Näytä API-avaimet -painiketta.
Napsauta seuraavaksi Luo uusi salainen avain -painiketta saadaksesi uuden API-avaimen.
Syötä pyydetty API-avaimen nimi.
Saat a salainen avain kehote.
Kopioi ja säilytä API-avain turvallisessa paikassa tulevaa käyttöä varten.
Sovelluksen kehittäminen LangChain LLM: n avulla
Nyt voit jatkaa yksinkertaisen chat-sovelluksen kehittämistä seuraavasti:
# Mukauta LLM-mallia
malli = Assistant on OpenAI: n kouluttama suuri kielimalli.{historia}
Ihminen: {human_input}
Assistant:
kehote = PromptTemplate (input_variables=["historia", "ihmisen_syöttö"], malli=malli)
Seuraavaksi lataat ChatGPT-ketjun käyttämällä aiemmin tallentamaasi API-avainta.
chatgpt_chain = LLMChain(
llm=OpenAI(openai_api_key="OPENAI_API_KEY",lämpötila=0),
kehote = kehote,
sanallinen =Totta,
memory=ConversationBufferWindowMemory (k=2),
)
# Ennusta lause chatgpt-ketjun avulla
output = chatgpt_chain.predict(
human_input="What is MakeUseOf?"
)
# Näytä mallin vastaus
tulostaa (tulostus)
Tämä koodi lataa LLM-ketjun OpenAI API-avaimella ja kehotemallilla. Sitten annetaan käyttäjän syöte ja sen tulos näytetään.
Yllä on odotettu tulos.
LLM: ien kasvava vaikutus
LLM: ien kulutus kasvaa nopeasti ja muuttaa ihmisten vuorovaikutusta tietokoneiden kanssa. LangChainin kaltaiset puitteet tarjoavat kehittäjille sujuvan ja yksinkertaisen tavan palvella LLM: itä sovelluksille. Generatiiviset tekoälymallit, kuten ChatGPT, Bard ja Hugging Face, eivät myöskään jää jälkeen LLM-sovellusten kehittämisessä.