LangChain LLM er byens hete snakk. Få en oversikt over hva det er og hvordan du kan komme i gang med det.

Med introduksjonen av store språkmodeller (LLM) har Natural Language Processing vært snakk om internett. Nye applikasjoner utvikles daglig på grunn av LLM-er som ChatGPT og LangChain.

LangChain er et åpen kildekode Python-rammeverk som gjør det mulig for utviklere å utvikle applikasjoner drevet av store språkmodeller. Applikasjonene er chatbots, oppsummering, generative spørsmål og svar, og mange flere.

Denne artikkelen vil gi en introduksjon til LangChain LLM. Den vil dekke de grunnleggende konseptene, hvordan det er sammenlignet med andre språkmodeller, og hvordan du kommer i gang med det.

Forstå LangChain LLM

Før du forklarer hvordan LangChain fungerer, må du først forstå hvordan store språkmodeller fungerer. En stor språkmodell er en type kunstig intelligens (AI) som bruker dyp læring å trene maskinlæringsmodellene på big data bestående av tekstdata, numeriske og kodedata.

Den enorme mengden data gjør det mulig for modellen å lære de eksisterende mønstrene og relasjonene mellom ord, figurer og symboler. Denne funksjonen lar modellen utføre en rekke oppgaver, for eksempel:

  • Tekstgenerering, språkoversettelse, kreativ, teknisk og akademisk innholdsskriving og nøyaktig og relevant spørsmålssvar.
  • Objektdeteksjon i bilder.
  • Oppsummering av bøker, artikler og forskningsartikler.

LLMs viktigste begrensning er at modellene er veldig generelle. Denne funksjonen betyr at til tross for deres evne til å utføre flere oppgaver effektivt, kan de noen ganger tilby generelle svar på spørsmål eller forespørsler som krever ekspertise og dyp domenekunnskap i stedet for spesifikke svar.

LangChain-rammeverket ble utviklet av Harrison Chase sent i 2022, og tilbyr en innovativ tilnærming til LLM-er. Prosessen starter med å forhåndsbehandle datasetttekstene ved å bryte det ned i mindre deler eller sammendrag. Sammendragene blir deretter innebygd i et vektorrom. Modellen mottar et spørsmål, søker i sammendragene og gir passende svar.

LangChains forbehandlingsmetode er en kritisk funksjon som er uunngåelig ettersom LLM-er blir kraftigere og mer dataintensive. Denne metoden brukes hovedsakelig i kode- og semantiske søk fordi den gir sanntidsinnsamling og interaksjon med LLM-ene.

LangChain LLM vs. Andre språkmodeller

Den følgende komparative oversikten har som mål å fremheve de unike funksjonene og egenskapene som skiller LangChain LLM fra andre eksisterende språkmodeller på markedet:

  • Hukommelse: Flere LLM-er har kort minne, noe som vanligvis resulterer i tap av kontekst hvis spørsmål overskrider minnegrensen. LangChain, derimot, gir de tidligere chattene og svarene, og løser problemet med minnegrenser. Meldingshistorikken gjør det mulig for en bruker å gjenta de forrige meldingene til LLM for å oppsummere den forrige konteksten.
  • LLM-bytte: Sammenlignet med andre LLM-er som låser programvaren din med en enkelt modells API, gir LangChain en abstraksjon som forenkler bytte av LLM-er eller integrering av flere LLM-er i applikasjonen din. Dette er nyttig når du vil oppgradere programvarefunksjonene dine ved å bruke en kompakt modell, slik som Stability AIs StableLM si fra OpenAIs GPT-3.5.
  • Integrering: Det er enkelt å integrere LangChain i applikasjonen din sammenlignet med andre LLM-er. Det gir rørledningsarbeidsflyter gjennom kjeder og agenter, slik at du raskt kan inkorporere LangChain i applikasjonen din. Når det gjelder lineære rørledninger, er kjeder objekter som i hovedsak forbinder mange deler. Agenter er mer avanserte, slik at du kan velge hvordan komponentene skal samhandle ved hjelp av forretningslogikk. For eksempel kan det være lurt å bruke betinget logikk for å bestemme neste handlingsmåte basert på resultatene av en LLM.
  • Dataoverføring: På grunn av den generelle tekstbaserte naturen til LLM-er, er det vanligvis vanskelig å sende data til modellen. LangChain løser dette problemet ved å bruke indekser. Indekser gjør det mulig for en applikasjon å importere data i variable formater og lagre dem på en måte som gjør det mulig å levere dem rad for rad til en LLM.
  • Svar: LangChain tilbyr utdataparserverktøy for å gi svar i et passende format i motsetning til andre LLM-er hvis modellrespons består av generell tekst. Når du bruker AI i en applikasjon, er det foretrukket å ha en strukturert respons som du kan programmere mot.

Komme i gang med LangChain LLM

Nå vil du lære hvordan du implementerer LangChain i et virkelig bruksscenario for å forstå hvordan det fungerer. Før du starter utviklingen, må du sette opp utviklingsmiljøet.

Sette opp utviklingsmiljøet ditt

Først, lage et virtuelt miljø og installer avhengighetene nedenfor:

  • OpenAI: For å integrere GPT-3 API i applikasjonen din.
  • Langkjede: For å integrere LangChain i applikasjonen din.

Bruk pip, kjør kommandoen nedenfor for å installere avhengighetene:

 pipenv installer langkjede openai

Kommandoen ovenfor installerer pakkene og skaper et virtuelt miljø.

Importer de installerte avhengighetene

Importer først de nødvendige klassene som f.eks LLMChain, OpenAI, Samtalekjede, og PromptTemplate fra langkjede pakke.

fra langkjede import ConversationChain, OpenAI, PromptTemplate, LLMChain

fra langkjede.minne import ConversationBufferWindowMemory

LangChain-klassene skisserer og utfører språkmodellkjedene.

Få tilgang til OpenAI API-nøkkel

Deretter får du OpenAI API-nøkkelen. For å få tilgang til OpenAIs API-nøkkel, må du ha en OpenAI-konto, og gå deretter til OpenAI API-plattform.

På dashbordet klikker du på profilikonet. Klikk deretter på Se API-nøkler knapp.

Deretter klikker du på Opprett ny hemmelig nøkkel for å få en ny API-nøkkel.

Skriv inn det forespurte navnet på API-nøkkelen.

Du vil motta en hemmelig nøkkel ledetekst.

Kopier og oppbevar API-nøkkelen på et trygt sted for fremtidig bruk.

Utvikle en applikasjon ved hjelp av LangChain LLM

Du vil nå fortsette å utvikle en enkel chat-applikasjon som følger:

# Tilpass LLM-malen 
mal = Assistant er en stor språkmodell opplært av OpenAI.

{historie}
Menneske: {human_input}
Assistent:

prompt = PromptTemplate (input_variables=["historie", "human_input"], template=mal)

Deretter laster du ChatGPT-kjeden ved hjelp av API-nøkkelen du lagret tidligere.

chatgpt_chain = LLMChain(

llm=OpenAI(openai_api_key="OPENAI_API_KEY",temperatur=0),
prompt = ledetekst,
verbose=ekte,
memory=ConversationBufferWindowMemory (k=2),

)
# Forutsi en setning ved å bruke chatgpt-kjeden
output = chatgpt_chain.predict(
human_input="Hva er MakeUseOf?"
)
# Vis modellens svar
print (utgang)

Denne koden laster LLM-kjeden med OpenAI API-nøkkelen og ledetekstmalen. Brukerinndata blir deretter gitt, og utgangen vises.

Ovenfor er forventet utgang.

LLMs økende innflytelse

LLMs forbruk vokser raskt og endrer hvordan mennesker samhandler med kunnskapsmaskiner. Rammer som LangChain er i forkant med å gi utviklere en smidig og enkel måte å betjene LLM-ene til applikasjoner. Generative AI-modeller som ChatGPT, Bard og Hugging Face blir heller ikke etterlatt i utviklingen av LLM-applikasjoner.