Bouw eenvoudig autonome AI-agenten op met GPT-4o
In deze blogpost ontdek je hoe je eenvoudig krachtige autonome AI-agenten kunt bouwen met GPT-4 met behulp van het Fi-data-framework. Leer geavanceerde agenten te creëren met langetermijngeheugen, contextuele kennis en de mogelijkheid om acties uit te voeren via functieaanroepen. Optimaliseer je AI-systemen voor efficiëntie en productiviteit.
15 februari 2025

Ontdek de kracht van het bouwen van autonome AI-agenten met GPT-4o! Deze blogpost zal u begeleiden bij het eenvoudig creëren van intelligente assistenten die een breed scala aan taken kunnen aanpakken, van webzoekopdrachten tot financiële analyse en data-exploratie. Ontgrendel het potentieel van state-of-the-art taalmodellen en ontgrendel nieuwe mogelijkheden voor uw projecten.
Hoe Autonome AI-Agenten op te bouwen met GPT-4
Een Basisassistent Bouwen
Web Zoekfunctionaliteit Toevoegen
Een Financieel Assistent Creëren
Aangepaste Tools Bouwen
Data Analyseren met DuckDB
Een Onderzoeksrapport Genereren
Hoe Autonome AI-Agenten op te bouwen met GPT-4
Hoe Autonome AI-Agenten op te bouwen met GPT-4
In deze sectie zullen we onderzoeken hoe we complexe autonome AI-systemen kunnen bouwen die een langetermijngeheugen, contextuele kennis en de mogelijkheid hebben om acties uit te voeren via functieaanroepen. We zullen het Fi-data-framework gebruiken, dat een krachtige manier biedt om autonome AI-assistenten met functieaanroepen te creëren.
Eerst zullen we een basisassistent zonder hulpmiddelen maken. Deze assistent zal gebruikmaken van het GPT-4-model, dat momenteel een van de beste modellen op de markt is. Vervolgens kunnen we extra functionaliteit toevoegen aan de assistent, zoals de mogelijkheid om het web te doorzoeken met behulp van het Duco-hulpmiddel.
Vervolgens zullen we een financiële assistent bouwen die toegang heeft tot verschillende hulpmiddelen zoals Yahoo Finance om aandelenprijzen, aanbevelingen, bedrijfsinformatie en nieuws op te halen. Daarna zullen we laten zien hoe je je eigen aangepaste hulpmiddelen kunt bouwen, waarbij we de Hacker News API als voorbeeld gebruiken.
Tot slot zullen we complexere assistenten verkennen, zoals een data-analyse-assistent die DuckDB kan gebruiken om gegevens in CSV- en Parquet-bestanden te analyseren, en een onderzoeksassistent die Exa kan gebruiken om het web te doorzoeken en een rapport in een bepaald formaat te genereren.
Doorlopend zullen we het belang benadrukken van beknoptheid en focus, zodat de inhoud gemakkelijk te begrijpen en te implementeren is. De code voor deze voorbeelden is te vinden in de Fi-data-repository, en de stappen om de omgeving in te stellen, zijn opgenomen in de README.
Een Basisassistent Bouwen
Een Basisassistent Bouwen
Om een basisassistent te bouwen, moeten we eerst de benodigde componenten importeren uit de fidata
-bibliotheek. We zullen de LLMAssistant
-klasse gebruiken om onze assistent te maken.
from fidata.assistants.llm_assistant import LLMAssistant
from fidata.llms.openai import OpenAIChat
Vervolgens maken we een instantie van de LLMAssistant
-klasse, waarbij we het OpenAI GPT-4-taalmodel doorgeven als de llm
-parameter.
assistant = LLMAssistant(llm=OpenAIChat(model_name="gpt-4"))
Nu kunnen we de beschrijving en instructies voor onze assistent definiëren. Deze zullen worden gebruikt om de systeemprompt voor het taalmodel in te stellen.
description = "Je bent een behulpzame assistent die tot taak heeft een eenvoudig ontbijtrecept te geven."
instructions = "Geef een beknopt ontbijtrecept."
Tot slot kunnen we de run
-methode van het assistant
-object aanroepen, waarbij we de beschrijving en instructies doorgeven. Dit zal de assistent uitvoeren en het antwoord retourneren.
response = assistant.run(description=description, instructions=instructions)
print(response)
Dit zal een eenvoudig ontbijtrecept genereren dat is gemaakt door het GPT-4-taalmodel.
Web Zoekfunctionaliteit Toevoegen
Web Zoekfunctionaliteit Toevoegen
Om zoekfunctionaliteit op het web toe te voegen aan onze AI-assistent, zullen we het Duco-hulpmiddel importeren uit de f_tools
-module. Dit hulpmiddel stelt de assistent in staat om het web te doorzoeken en relevante informatie op te halen.
Eerst voegen we het Duco-hulpmiddel toe aan onze assistent:
from f_tools.duco import Duco
assistant.add_tool(Duco())
Vervolgens stellen we de show_tool_calls
-parameter in op True
, zodat we de hulpmiddel-aanroepen achter de schermen kunnen zien.
Daarna geven we de assistent de taak om nieuws uit Frankrijk te zoeken en er een kort gedicht over te schrijven:
assistant.run_task("Zoek naar het nieuws uit Frankrijk en schrijf er een kort gedicht over."))
Zoals je kunt zien, gebruikt de assistent het Duco-hulpmiddel om het nieuws uit Frankrijk op te halen, en genereert vervolgens een kort gedicht op basis van de verzamelde informatie. Dit laat zien hoe de assistent webzoekfuncties kan benutten om informatie te verzamelen en deze te gebruiken om taken uit te voeren.
Een Financieel Assistent Creëren
Een Financieel Assistent Creëren
Om een financiële assistent te maken, zullen we gebruikmaken van het Yahoo Finance-hulpmiddel uit de F-tools-bibliotheek. Dit hulpmiddel biedt toegang tot verschillende financiële gegevens en functies, zoals het ophalen van aandelenprijzen, bedrijfsinformatie, aanbevelingen en nieuws.
Eerst importeren we de benodigde hulpmiddelen:
from f_tools.yahoo_finance import YahooFinance
Vervolgens maken we de financiële assistent aan en voegen we de gewenste hulpmiddelen toe:
finance_assistant = Assistant(model=gpt4, name="Finance Assistant")
finance_assistant.add_tool(YahooFinance(
get_stock_price=True,
get_recommendations=True,
get_company_info=True,
get_company_news=True
))
In dit voorbeeld hebben we de functies get_stock_price
, get_recommendations
, get_company_info
en get_company_news
ingeschakeld in het Yahoo Finance-hulpmiddel.
Nu kunnen we de assistent taken laten uitvoeren, zoals het ophalen van de aandelenprijs van een bedrijf en het schrijven van een vergelijking tussen twee bedrijven:
finance_assistant.run_task("Wat is de aandelenprijs van Nvidia?")
finance_assistant.run_task("Schrijf een vergelijking tussen Nvidia en AMD met behulp van alle beschikbare hulpmiddelen."))
De assistent zal de beschikbare hulpmiddelen gebruiken om de benodigde informatie te verzamelen en een uitgebreid antwoord genereren, dat in Markdown-formaat wordt geretourneerd voor betere leesbaarheid.
Deze financiële assistent kan verder worden aangepast door meer hulpmiddelen toe te voegen, de hulpmiddel-configuraties aan te passen of de taak-instructies te wijzigen om aan je specifieke behoeften te voldoen.
Aangepaste Tools Bouwen
Aangepaste Tools Bouwen
Eén van de belangrijkste kenmerken van het Fi data-framework is de mogelijkheid om aangepaste hulpmiddelen te bouwen die kunnen worden geïntegreerd in je AI-agenten. Hiermee kun je de mogelijkheden van je agenten uitbreiden voorbij de standaard hulpmiddelen die worden aangeboden, en ze aanpassen aan je specifieke behoeften.
In de video laat de maker zien hoe je een aangepast hulpmiddel kunt bouwen om toegang te krijgen tot de Hacker News API. Zo gaat het in zijn werk:
- Beschrijf de functie die gebruikt zal worden om met de API te communiceren, inclusief de argumenten en retourwaarden.
- Voeg de functie toe aan de Fi data-assistent, waarbij je de beschrijving opgeeft en de input/output-parameters specificeert.
- Gebruik het aangepaste hulpmiddel in de taken van de assistent, net als de standaard hulpmiddelen.
De video laat ook zien hoe je de debugmodus kunt inschakelen, die gedetailleerde logboeken geeft van de interne processen van de assistent. Dit kan erg nuttig zijn bij het oplossen van problemen of het begrijpen van hoe het aangepaste hulpmiddel wordt gebruikt.
Over het geheel genomen is de mogelijkheid om aangepaste hulpmiddelen te bouwen een krachtig kenmerk van het Fi data-framework, waarmee je zeer gespecialiseerde en autonome AI-agenten kunt creëren die zijn afgestemd op je specifieke behoeften.
Data Analyseren met DuckDB
Data Analyseren met DuckDB
Dit gedeelte laat zien hoe de assistent het DuckDB-hulpmiddel kan gebruiken om gegevens in CSV- en Parquet-bestanden te analyseren. De assistent demonstreert de volgende mogelijkheden:
- Laadt de gegevens automatisch in tabellen wanneer de tabellen niet bestaan.
- Voert SQL-queries uit om de gemiddelde filmwaardering te krijgen en genereert een histogram van de waarderingen.
- Kiest een geschikte bucketgrootte voor het histogram op basis van de gegevens.
- Toont de SQL-queries en de resulterende visualisaties op een duidelijke en beknopte manier.
Het vermogen van de assistent om DuckDB naadloos te integreren en de analyseresultaten weer te geven, is een bewijs van de kracht van het gedemonstreerde framework. Dit gedeelte laat zien hoe de assistent kan worden uitgerust met data-analyse-mogelijkheden om een breed scala aan taken aan te pakken.
Een Onderzoeksrapport Genereren
Een Onderzoeksrapport Genereren
De assistent krijgt de opdracht om een onderzoeksrapport te schrijven over het onderwerp OpenGPT-4. Hij volgt de volgende stappen:
- Zoekt het web af met behulp van het Exa-hulpmiddel om de 10 meest relevante links over OpenGPT-4 te vinden.
- Leest de zoekresultaten zorgvuldig door.
- Bereidt een goed geformatteerd artikel voor in de gevraagde structuur:
- Ruwe schets
- Gedetailleerd rapport met de belangrijkste punten over OpenGPT-4
- Slaat het uiteindelijke rapport op in een Markdown-bestand met de naam "news_article.md".
De assistent toont zijn vermogen om:
- Webonderzoek uit te voeren en relevante informatie te verzamelen
- De bevindingen samen te vatten in een gestructureerd, goed geschreven rapport
- Het rapport op te maken in Markdown voor betere leesbaarheid
- De output op te slaan in een bestand zoals gevraagd
Dit demonstreert de onderzoeksvaardigheden, natuurlijke taalverwerkingsvaardigheden en het vermogen van de assistent om instructies op te volgen om een hoogwaardig eindproduct te leveren.
FAQ
FAQ