LangChainđŠđ: Det kraftfulla ramverk som revolutionerar applikationer för sprĂ„kmodeller
Vad Àr LangChain?
LangChain Àr ett kraftfullt ramverk utformat för att revolutionera utvecklingen av applikationer som drivs av sprÄkmodeller. SprÄkmodeller som ChatGPT och Llama Àr otroligt mÄngsidiga och utmÀrker sig inom ett brett spektrum av uppgifter. De kan dock stöta pÄ utmaningar nÀr det gÀller att ge precisa svar eller att lösa uppgifter som krÀver djup domÀnkunskap eller expertis. Det Àr hÀr LangChain kommer till undsÀttning.
Till exempel â Med hjĂ€lp av LangChain kan vi trĂ€na en LLM som ChatGPT pĂ„ en anpassad datamĂ€ngd med restaurangrecensioner. DatamĂ€ngden innehĂ„ller specifik information om olika kök, atmosfĂ€r och servicekvalitet.
Nu, nÀr du stÀller ChatGPT en precis frÄga som "Vilken restaurang erbjuder den bÀsta sushi i stan?", kan ChatGPT, som har finjusterats pÄ den anpassade datamÀngden med restaurangrecensioner, ge ett mer exakt och specifikt svar. Det kan dra frÄn sin kunskap om datamÀngden för att rekommendera restaurangen med högst klassad sushi baserat pÄ kundrecensioner.
LĂ€s mer: Officiell dokumentation
LÄt oss bygga en liten applikation
I den hÀr artikeln visar jag en steg-för-steg-guide för att bygga en dokumentlÀsare med LangChain och HuggingFace. Jag kommer att anvÀnda Google Colab som plattform för att bygga applikationen
- Skapa en ny anteckningsbok i Google Collab och installera alla nödvÀndiga beroenden
Klicka pÄ "New Notebook" eller gÄ till "File" > "New Notebook" för att skapa en ny Colab-anteckningsbok och installera dessa beroenden nedan.

2. FĂ„ HuggingFace API-nyckeln
Om du inte redan har ett Hugging Face-konto mÄste du skapa ett. Du kan registrera dig för ett konto pÄ Hugging Face-webbplatsen.
NÀr du Àr inloggad gÄr du till avsnittet Profil genom att klicka pÄ din profilikon i det övre högra hörnet och vÀljer "Settings" frÄn rullgardinsmenyn.
GĂ„ sedan till avsnittet Access Tokens och skapa en ny token

Skapa sedan en ny kodcell och lĂ€gg till koden nedan â

ErsÀtt dummy-strÀngen med din API-nyckel och kör koden.
3. Skapa inbÀddningar och ett vektorlager för frÄga-och-svar
I mÄnga sprÄkmodellapplikationer (LLM) uppstÄr ofta ett krav pÄ anvÀndarspecifik data som inte var en del av modellens ursprungliga trÀningsdatamÀngd. LangChain utrustar dig med de nödvÀndiga elementen för att importera, transformera, lagra och effektivt frÄga din anpassade data.

Processen omfattar fem distinkta steg:
- Dokumentladdning: Detta steg Àr ansvarigt för att importera data i form av dokument.
- Dokumentsegmentering: HÀr genomgÄr dokumentet segmentering och bryts ned i mer hanterbara bitar.
- Genereering av inbÀddningar: I detta steg transformeras dessa bitar till vektorrepresentationer, Àven kÀnda som inbÀddningar.
- Vektorlager: Denna komponent fungerar som ett arkiv för att lagra de nÀmnda bitarvektorerna i en dedikerad vektordatabas.
- HÀmtningsmekanism: Det sista steget omfattar en hÀmtningsmekanism. Den anvÀnds för att hÀmta en eller flera uppsÀttningar vektorer som uppvisar högsta likhet med en frÄga, dÀr bÄde frÄgan och lagrade vektorer finns i samma latenta utrymme.
Nu börjar vi med att ladda dokumentet. Jag laddar en kort sammanfattning av Indiens konstitution genererad av ChatGPT.

Efter dokumentladdning delar vi upp lÀngre textdokument i mindre, icke-överlappande bitar pÄ 1000 tecken vardera

Efter dokumentsegmentering initialiserar vi vÄra inbÀddningar. Vi anvÀnder inbÀddningar som tillhandahÄlls av Hugging Face Transformers-biblioteket.

Nu konfigurerar vi ett vektorlager med Faiss. I huvudsak transformeras din textdata till vektorer med hjÀlp av den tillhandahÄllna inbÀddningen, och Faiss anvÀnds för att effektivt indexera och söka igenom dessa vektorer.

Nu laddar vi Googles flan-t5-xxl LLM frÄn HuggingFace. Det Àr ett vÀrdefullt verktyg för frÄga-och-svar-uppgifter pÄ grund av sitt text-till-text-tillvagagÄngssÀtt, förtrÀnade och stora modelstorlek.

LÄt oss sedan skapa en kedja med LangChain. Kedjor gör det möjligt för oss att samla flera komponenter till en sammanhÀngande applikation.

Vi skapar en enkel kedja: den börjar med en frÄga och frÄgan skickas sedan till LLM.

För sammanhang Ă€r hĂ€r delen av sammanfattningen frĂ„n vilken LLM svarade â
"Preamble: Förorden till Indiens konstitution beskriver de ideal och mÄl som konstitutionens formgivare syftade till att uppnÄ. Det betonar Indien som en suverÀn, socialistisk, sekulÀr och demokratisk republik som strÀvar efter rÀttvisa, frihet, jÀmlikhet och broderskap för sina medborgare."
LÄt oss stÀlla en annan frÄga om det

TillĂ€mpningar â
- AI-chattar och virtuella assistenter: FrÄga-och-svar-funktionerna inbÀddade i denna kod lÀgger grunden för att skapa AI-chattar och virtuella assistenter som kan ge snabba, kontextmedvetna svar pÄ anvÀndarfrÄgor. Det har tillÀmpningar inom kundsupport, e-utbildning och mer.
- Pedagogiska verktyg: LÀrare och studenter kan dra nytta av automatiserade frÄga-och-svar för att klargöra tvivel och förbÀttra lÀrarupplevelsen. Det kan ocksÄ anvÀndas för att generera utbildningsinnehÄl.
- Content Recommendation Engines: Genom att förstÄ kontexten och avsikten bakom frÄgor kan denna kod anvÀndas för att utveckla innehÄllsrekommendationssystem som sÀkerstÀller att anvÀndare fÄr mycket relevanta förslag.
För lÀsare som Àr intresserade av att dyka djupare in i dessa tillÀmpningar och utforska ytterligare verktyg för sina projekt, hÀr Àr ett par vÀrdefulla resurser:
FlowiseAI - Bygg LLM-appar enkelt Verktyget för öppen kĂ€llkod visuell anvĂ€ndargrĂ€nssnitt för att bygga ditt anpassade LLM-flöde med Langchainflowiseai.comLangflow Waitlist GĂ„ med i Langflow-vĂ€ntlistan idag och upptĂ€ck ett strömlinjeformat tillvagagĂ„ngssĂ€tt till LLM. Ăppen kĂ€llkod och anvĂ€ndarvĂ€nlig, LangflowâŠwww.langflow.orgSlutsats â
Den hÀr artikeln visade hur LangChain kan anvÀndas vid utveckling av applikationer som drivs av sprÄkmodeller och hur dess flexibla abstraktioner och omfattande verktygssamling gör det möjligt för utvecklare att utnyttja kraften i LLM.
I det stÀndigt utvecklande landskapet för AI har LLM framtrÀtt som spelbytare, och vi Àr stolta över att vara en del av denna spÀnnande resa mot en smartare och mer effektiv framtid. Vi ser fram emot att utnyttja LLM för att driva innovation, lösa komplexa utmaningar och ge Ànnu större vÀrde till vÄra klienter och partners pÄ MyNextDeveloper.



