LangChain LLM is de hot talk of the town. Krijg een overzicht van wat het is en hoe je ermee aan de slag kunt.
Met de introductie van grote taalmodellen (LLM's) is Natural Language Processing het gesprek van het internet geweest. Er worden dagelijks nieuwe applicaties ontwikkeld dankzij LLM's zoals ChatGPT en LangChain.
LangChain is een open-source Python-framework waarmee ontwikkelaars applicaties kunnen ontwikkelen die worden aangedreven door grote taalmodellen. De toepassingen zijn chatbots, samenvattingen, generatieve vragen en antwoorden, en nog veel meer.
Dit artikel geeft een inleiding tot LangChain LLM. Het behandelt de basisconcepten, hoe het zich verhoudt tot andere taalmodellen en hoe je ermee aan de slag kunt.
De LangChain LLM begrijpen
Voordat u uitlegt hoe LangChain werkt, moet u het eerst begrijpen hoe grote taalmodellen werken. Een groot taalmodel is een vorm van kunstmatige intelligentie (AI) die maakt gebruik van deep learning om de machine learning-modellen te trainen op big data bestaande uit tekstuele, numerieke en codegegevens.
Door de enorme hoeveelheid gegevens kan het model de bestaande patronen en relaties tussen woorden, figuren en symbolen leren. Met deze functie kan het model een reeks taken uitvoeren, zoals:
- Tekstgeneratie, taalvertaling, creatief, technisch en academisch schrijven van inhoud, en nauwkeurige en relevante beantwoording van vragen.
- Objectdetectie in afbeeldingen.
- Samenvatting van boeken, artikelen en research papers.
De belangrijkste beperking van LLM's is dat de modellen erg algemeen zijn. Deze functie betekent dat ondanks hun vermogen om verschillende taken effectief uit te voeren, ze soms kunnen voorzien algemene antwoorden op vragen of prompts die expertise en diepgaande domeinkennis vereisen in plaats van specifiek antwoorden.
Het LangChain-framework is eind 2022 ontwikkeld door Harrison Chase en biedt een innovatieve benadering van LLM's. Het proces begint met het voorbewerken van de datasetteksten door deze op te splitsen in kleinere delen of samenvattingen. De samenvattingen worden dan ingebed in een vectorruimte. Het model ontvangt een vraag, doorzoekt de samenvattingen en geeft het juiste antwoord.
De voorverwerkingsmethode van LangChain is een kritiek kenmerk dat onvermijdelijk is naarmate LLM's krachtiger en data-intensiever worden. Deze methode wordt voornamelijk gebruikt in gevallen van code en semantisch zoeken, omdat het real-time verzameling en interactie met de LLM's biedt.
LangChain LLM vs. Andere taalmodellen
Het volgende vergelijkende overzicht is bedoeld om de unieke kenmerken en mogelijkheden te benadrukken die LangChain LLM onderscheiden van andere bestaande taalmodellen op de markt:
- Geheugen: Verschillende LLM's hebben een kort geheugen, wat meestal resulteert in contextverlies als prompts de geheugenlimiet overschrijden. LangChain biedt echter de eerdere chatprompts en -antwoorden, waarmee het probleem van geheugenlimieten wordt opgelost. De berichtengeschiedenis stelt een gebruiker in staat om de vorige berichten naar de LLM te herhalen om de vorige context samen te vatten.
- LLM-switching: Vergeleken met andere LLM's die uw software vergrendelen met de API van een enkel model, biedt LangChain een abstractie die het schakelen tussen LLM's of het integreren van meerdere LLM's in uw applicatie vereenvoudigt. Dit is handig wanneer u uw softwaremogelijkheden wilt upgraden met behulp van een compact model, zoals Stability AI's StableLM zegt van OpenAI's GPT-3.5.
- Integratie: Het integreren van LangChain in uw applicatie is eenvoudig in vergelijking met andere LLM's. Het biedt pijplijnworkflows via kettingen En agenten, zodat u LangChain snel in uw applicatie kunt integreren. In termen van lineaire pijpleidingen zijn kettingen objecten die in wezen talloze onderdelen met elkaar verbinden. Agents zijn geavanceerder, waardoor u kunt kiezen hoe de componenten moeten samenwerken met behulp van bedrijfslogica. U kunt bijvoorbeeld voorwaardelijke logica gebruiken om de volgende actie te bepalen op basis van de resultaten van een LLM.
- Gegevens doorgeven: Vanwege de algemene tekstgebaseerde aard van LLM's is het meestal lastig om gegevens door te geven aan het model. LangChain lost dit probleem op door te gebruiken indexen. Indexen stellen een applicatie in staat om gegevens in variabele formaten te importeren en op te slaan op een manier die het mogelijk maakt om ze rij voor rij aan een LLM te leveren.
- Reacties: LangChain biedt output-parsertools om antwoorden in een geschikt formaat te geven, in tegenstelling tot andere LLM's waarvan het modelantwoord uit algemene tekst bestaat. Bij het gebruik van AI in een applicatie heeft het de voorkeur om een gestructureerde respons te hebben waartegen je kunt programmeren.
Aan de slag met LangChain LLM
Nu leer je hoe je LangChain implementeert in een echt use-case scenario om te begrijpen hoe het werkt. Voordat u met de ontwikkeling begint, moet u de ontwikkelomgeving instellen.
Uw ontwikkelomgeving opzetten
Eerst, creëer een virtuele omgeving en installeer de onderstaande afhankelijkheden:
- AI openen: Om de GPT-3 API in uw applicatie te integreren.
- LangChain: Om LangChain in uw applicatie te integreren.
Gebruik pip en voer de onderstaande opdracht uit om de afhankelijkheden te installeren:
pipenv installeer langchain openai
De bovenstaande opdracht installeert de pakketten en creëert een virtuele omgeving.
Importeer de geïnstalleerde afhankelijkheden
Importeer eerst de benodigde klassen zoals LLMChain, AI openen, Conversatieketen, En PromptTemplate van de langketen pakket.
van langketen importeren ConversationChain, OpenAI, PromptTemplate, LLMChain
van langchain.geheugen importeren ConversationBufferWindowMemory
De LangChain-klassen schetsen en voeren de taalmodelketens uit.
Toegang tot OpenAI API-sleutel
Download vervolgens de OpenAI API-sleutel. Om toegang te krijgen tot de API-sleutel van OpenAI, moet u een OpenAI-account hebben en vervolgens naar de OpenAI API-platform.
Klik op het dashboard op het profielpictogram. Klik vervolgens op de Bekijk API-sleutels knop.
Klik vervolgens op de Nieuwe geheime sleutel maken knop om een nieuwe API-sleutel te krijgen.
Voer de gevraagde naam van de API-sleutel in.
U ontvangt een geheime sleutel snel.
Kopieer en bewaar de API-sleutel op een veilige plaats voor toekomstig gebruik.
Een applicatie ontwikkelen met LangChain LLM
U gaat nu als volgt te werk om een eenvoudige chattoepassing te ontwikkelen:
# Pas de LLM-sjabloon aan
sjabloon = Assistent is een groot taalmodel dat is getraind door OpenAI.{geschiedenis}
Mens: {human_input}
Assistent:
prompt = PromptTemplate (input_variables=["geschiedenis", "human_input"], sjabloon=sjabloon)
Vervolgens laad je de ChatGPT-keten met de API-sleutel die je eerder hebt opgeslagen.
chatgpt_chain = LLMChain(
llm=OpenAI(openai_api_key="OPENAI_API_KEY",temperatuur=0),
prompt=prompt,
breedsprakig=WAAR,
memory=ConversationBufferWindowMemory (k=2),
)
# Voorspel een zin met behulp van de chatgpt-keten
uitvoer = chatgpt_chain.predict(
human_input="Wat is MakeUseOf?"
)
# Geef de reactie van het model weer
afdrukken (uitvoer)
Deze code laadt de LLM-keten met de OpenAI API-sleutel en de promptsjabloon. Gebruikersinvoer wordt vervolgens geleverd en de uitvoer wordt weergegeven.
Hierboven staat de verwachte output.
De toenemende invloed van LLM's
De consumptie van LLM's groeit snel en verandert de manier waarop mensen omgaan met kennismachines. Frameworks zoals LangChain lopen voorop om ontwikkelaars een soepele en eenvoudige manier te bieden om de LLM's aan applicaties te leveren. Generatieve AI-modellen zoals ChatGPT, Bard en Hugging Face blijven ook niet achter bij het ontwikkelen van LLM-toepassingen.