Agenten aangedreven door Llama 3.1: Testen van functie-aanroepende mogelijkheden
Ontdek de mogelijkheden van Llama 3.1 in functie-aanroepen en tool-gebruik. Leer hoe u observability-tools zoals LangTrace kunt inzetten om de prestaties van LLM te bewaken. Ontdek de sterke en zwakke punten van verschillende Llama-modelgroottes bij het verwerken van complexe taken.
24 februari 2025

Ontgrendel de kracht van Llama 3.1 met deze uitgebreide gids over zijn functie-aanroepende mogelijkheden. Ontdek hoe dit toonaangevende taalmodel kan worden ingezet als een intelligente agent, naadloos geïntegreerd met API's om complexe taken aan te pakken. Verken de observeerbaarheidsaspecten en krijg inzicht in de prestaties van het model, waardoor u geïnformeerde beslissingen kunt nemen voor uw volgende project.
Mogelijkheden van Llama 3.1 en Meta's Agentic System
LangTrace instellen voor observeerbaarheid
Functie-aanroepen testen met Llama 3.1 70B en 8B-modellen
Parallelle functie-aanroepen en geneste sequentiële functie-aanroepen
Problemen van het Llama 3.1 8B-model met functie-aanroepen
Groq's fijnafgestelde Llama 3-model voor functie-aanroepen
Conclusie
Mogelijkheden van Llama 3.1 en Meta's Agentic System
Mogelijkheden van Llama 3.1 en Meta's Agentic System
Eén van de belangrijkste mogelijkheden van Llama 3.1 die Meta in de release benadrukte, is functie-aanroepen of tool-gebruik. De auteur wilde deze mogelijkheid testen.
De auteur heeft eerst de nodige tools en API's opgezet, waaronder de Groq API, die één van de snelste API's biedt voor interactie met Llama 3.1. Ze hebben de 70 miljard en 8 miljard Llama 3.1-modellen getest, evenals een Groq-specifiek fijn-afgestemd versie van het 70 miljard model.
De auteur begon met een eenvoudig voorbeeld van een enkele functie-aanroep, en ging vervolgens over op meer complexe scenario's met parallelle en geneste functie-aanroepen. Ze gebruikten het LangTrace observability platform om het token-gebruik en andere metriek tijdens de experimenten bij te houden.
LangTrace instellen voor observeerbaarheid
LangTrace instellen voor observeerbaarheid
In dit gedeelte zullen we LangTrace opzetten, een open-source en open-telemetrie observability platform voor LLM-applicaties. LangTrace stelt ons in staat om het aantal aanvragen en tokens bij te houden die worden uitgewisseld tussen onze lokale omgeving en de LLM-API.
Eerst moeten we de vereiste pakketten installeren, waaronder de LangTrace Python SDK, de Groq Python SDK en de OpenAI Python SDK (hoewel we de OpenAI LLM niet gebruiken, is het een afhankelijkheid van de LangTrace SDK).
Vervolgens stellen we onze API-sleutels in. Voor dit experiment hebben we LangTrace niet strikt nodig, maar het kan waardevolle inzichten bieden in het gebruik van onze tokens. LangTrace is vergelijkbaar in functionaliteit met LangSmith, een observability platform van LangChain, maar ondersteunt een breder scala aan leveranciers, waaronder OpenAI, Groq, Cohere en Perplexity.
Functie-aanroepen testen met Llama 3.1 70B en 8B-modellen
Functie-aanroepen testen met Llama 3.1 70B en 8B-modellen
De auteur begint met het benadrukken van Meta's release van een agentisch systeem rond functie-aanroepen in Llama 3.1. Aangezien de auteur het systeem niet lokaal heeft ingesteld, besluit ze de Groq-API te gebruiken, die één van de snelste API's biedt voor interactie met Llama 3.1.
De auteur test de 70B en 8B Llama 3.1-modellen, evenals een Groq-specifiek fijn-afgestemd versie van het 70B-model. Ze gebruiken LangTrace, een open-source observability platform voor LLM-applicaties, om het aantal aanvragen en uitgewisselde tokens tussen de lokale omgeving en de LLM-API bij te houden.
De auteur begint met een eenvoudig voorbeeld, waarbij het model een "get game scores"-functie moet gebruiken om de winnaar van een NBA-wedstrijd te bepalen. Het 70B-model voert deze taak succesvol uit, en de auteur onderzoekt de LangTrace-gegevens om het interne mechanisme te begrijpen.
Parallelle functie-aanroepen en geneste sequentiële functie-aanroepen
Parallelle functie-aanroepen en geneste sequentiële functie-aanroepen
De Llama 3.1-model, vooral de 70B-versie, toonde indrukwekkende mogelijkheden in het omgaan met parallelle functie-aanroepen en geneste sequentiële functie-aanroepen.
Wanneer ze werd geconfronteerd met een complexe opdracht om een reis van New York naar Parijs te plannen, inclusief het controleren van het weer, het vinden van vluchten, hotels en attracties, was het 70B-model in staat de taak te ontleden en parallelle functie-aanroepen te doen om de nodige informatie te verzamelen. Het combineerde vervolgens de resultaten van de verschillende functies om een uitgebreide samenvatting van de reisdetails te geven.
Het model toonde ook zijn vermogen om geneste functie-aanroepen te verwerken, waarbij de output van de ene functie als input voor de andere werd gebruikt. In het scenario voor filmrecommendaties was het model in staat eerst een film te selecteren op basis van de voorkeur van de gebruiker, en vervolgens een geschikte snack en streamingplatform aan te bevelen om de film te kijken.
Problemen van het Llama 3.1 8B-model met functie-aanroepen
Problemen van het Llama 3.1 8B-model met functie-aanroepen
De Llama 3.1 8B-model worstelde aanzienlijk met de complexere functie-aanroeptaken in vergelijking met het grotere 70B-model. Enkele belangrijke observaties:
-
Voor de eenvoudige "get game scores"-functie kon het 8B-model er zonder problemen mee omgaan, net als het 70B-model.
-
Maar wanneer het ging om parallelle functie-aanroepen voor taken zoals reisplanning, faalde het 8B-model. Het was niet in staat om uitgebreide informatie over weer, vluchten, hotels en attracties te verstrekken, en verzon vaak details of slaagde er niet in beschikbare opties op te sommen.
-
Met de uitgebreide set functies worstelde het 8B-model nog meer, waarbij het informatie over evenementen en weerdetails verzon die niet waren gevraagd.
Groq's fijnafgestelde Llama 3-model voor functie-aanroepen
Groq's fijnafgestelde Llama 3-model voor functie-aanroepen
De Groq fijn-afgestemde Llama 3-model voor functie-aanroepen worstelde in de tests in vergelijking met het grotere 70B Llama 3.1-model. Enkele belangrijke bevindingen:
- Toen hem werd gevraagd de score van een Warriors-wedstrijd te geven, vroeg het model om meer specifieke details zoals de datum of de tegenstander, in plaats van de beschikbare "get game scores"-functie te gebruiken.
- Voor reisplanningsverzoeken vroeg het model herhaaldelijk om meer specifieke details zoals reisdatums, in plaats van de beschikbare functies te gebruiken om een antwoord te genereren.
- Voor de filmnacht-aanbevelingstaak worstelde het model om de geneste functies te gebruiken en gaf het vaak een directe filmrecommendatie in plaats daarvan.
Conclusie
Conclusie
Het 70 miljard LLAMA 3.1-model van Groq presteerde uitzonderlijk goed in de functie-aanroep- en tool-gebruikstests. Het was in staat om zowel parallelle functie-aanroepen als geneste functie-aanroepen met gemak te verwerken, wat zijn sterke mogelijkheden als een agentisch systeem demonstreert.
In tegenstelling daarmee worstelde het 8 miljard LLAMA 3.1-model met deze complexere taken, wat het belang onderstreept van het gebruik van grotere en capabelere taalmodellen voor dergelijke toepassingen.
Het gespecialiseerde functie-aanroepmodel van Groq presteerde echter niet zo goed als verwacht, zelfs met het gegeven voorbeeld. Dit suggereert dat het fijn-afstemproces voor dit model mogelijk niet zo effectief is geweest als gehoopt.
FAQ
FAQ