Wat is een agent in LangChain?

Wat Is Een Agent In Langchain



Het LangChain-framework wordt gebruikt om apps te ontwikkelen die taalmodellen gebruiken. LLM's geven algemene antwoorden, ze richten zich niet op een specifiek vakgebied, terwijl LangChain het krachtigste kenmerk heeft dat het biedt om ketens te creëren waarin gebruikers meerdere componenten kunnen combineren en één samenhangende applicatie kunnen maken. LangChain heeft veel modules, dataverbindingen, ketens, agenten, geheugen en callback.

In dit artikel bespreken we agenten in LangChain vanuit alle mogelijke aspecten

Wat is een agent in LangChain?

Sommige toepassingen vereisen niet alleen vooraf bepaalde ketens, maar ook een onbekende keten die afhankelijk is van de input van de gebruiker. Voor een dergelijk geval is er een “ tussenpersoon ” die toegang hebben tot de tool en beslissen welke tool nodig is op basis van de input van de gebruiker en waar hij of zij om vraagt. Een toolkit is in feite een set tools die nodig is om een ​​specifiek doel te bereiken en er zitten 3-5 tools in een toolkit.







Soorten LangChain-agenten

Er zijn twee belangrijke agenten:



  • Actie agenten
  • Agenten plannen en uitvoeren

Actieagenten: Deze agenten beslissen welke acties stap voor stap moeten worden ondernomen, evalueren elke stap en voeren deze vervolgens uit en gaan naar de volgende als we de pseudocode van de agent bespreken, wat een paar stappen omvat



  • Er wordt invoer ontvangen van de gebruiker.
  • De agent bepaalt welk gereedschap en welk type gereedschap nodig is.
  • Dat hulpmiddel wordt aangeroepen met het invoerhulpmiddel en de observatie wordt vastgelegd.
  • De geschiedenistool, observatietool en invoertool worden teruggestuurd naar de agent.
  • Herhaal het proces totdat de agent besluit dit hulpprogramma af te sluiten.

Agenten plannen en uitvoeren: Deze agenten beslissen eerst welke actie ze moeten ondernemen en voeren vervolgens al die acties uit.





  • Er is gebruikersinvoer ontvangen.
  • De agent somt alle stappen op die moeten worden uitgevoerd.
  • De uitvoerder doorloopt de lijst met stappen en voert deze uit.

Agent instellen

Voordat u de agent instelt, moet u de nieuwste versie van Python volgens uw besturingssysteem.

Stap 1: Pakketten installeren
Ten eerste moeten we hiervoor een omgeving opzetten. We moeten LangChain, google-search-results en openai installeren via de “ Pip ” commando:



! Pip installeren langketen
! Pip installeren google-zoekresultaten
! Pip installeren openai

Vereiste bibliotheken importeren:

van langchain.schema importeer Systeembericht
van langchain.agents importeer OpenAIFunctionsAgent, AgentExecutor
van de importtool van langchain.agents
van langchain.chat_models importeer ChatOpenAI
import re
van getpass importeer getpass

Stap 2: Haal uw geheime API op
Nadat u een omgeving heeft opgezet, moet u nu geheime API-sleutels ophalen van het OpenAI Platform:

openai_api_key = haalpas op ( )
llm = ChatOpenAI ( openai_api_key =openai_api_key, temperatuur = 0 )

Stap 3: Initialisatietool
Laten we vervolgens een tool definiëren, waarbij we eenvoudige Python-code schrijven om de lengte van een string te bepalen.

@ hulpmiddel
def get_word_string ( woord: str ) - > int.:
'' 'Geef me de lengte van een touwtje.' ''
opbrengst alleen ( woord )

gereedschap = [ get_word_string ]

Stap 4: Maak een promptsjabloon
Nadat u de tool hebt gedefinieerd, stelt u hiervoor een promptsjabloon in, gebruik hiervoor de “OpenAIFunctionsAgent.create_prompt()” helperfunctie die de sjabloon automatisch maakt.

system_message = Systeembericht ( inhoud = 'Je bent een zeer krachtige assistent, maar slecht in het berekenen van touwlengtes.' )
prompt = OpenAIFunctionsAgent.create_prompt ( systeem bericht =systeembericht )

Stap 5: Agent maken
Nu kunnen we alle stukken afronden en een agent maken met behulp van een functie genaamd “OpenAIFunctionsAgent()” .

agent = OpenAIFunctionsAgent ( llm =llm, hulpmiddelen =gereedschap, snel = prompt )

Stap 6: Runtime instellen
Als u met succes een agent hebt aangemaakt, maak dan een runtime voor de agent, hiervoor wordt ”AgentExecutor” gebruikt als runtime voor de agent.

agent_executor = AgentExecutor ( tussenpersoon =agent, hulpmiddelen =gereedschap, uitgebreid =Waar )

Stap 7: Agenttesten
Nadat u Runtime heeft gemaakt, is het nu tijd om de agent te testen.

agent_executor.run ( 'Hoeveel woorden heeft deze string?' )

Als u in stap 2 de juiste API-sleutel heeft ingevoerd, krijgt u een reactie.

Conclusie

Dit artikel is vanuit vele aspecten geïllustreerd. Ten eerste demonstreert het wat LangChain is en hoe het werkt. Daarna gaat het naar agenten in LangChain, bespreekt het doel van de agenten in LangChain en bevat informatie over de twee belangrijkste soorten agenten. “Actieagenten” En “Plan-en-Execute Agenten” gebruikt in LangChain en uiteindelijk was de uitvoering van de code bedoeld om een ​​agent in LangChain op te zetten