AI-modellen en platforms
Auto-GPT & GPT-Engineer: Een diepgaande gids voor de toonaangevende AI-agents van vandaag
Wanneer we ChatGPT vergelijken met autonome AI-agents zoals Auto-GPT en GPT-Engineer, komt een significant verschil in het beslissingsproces naar voren. Terwijl ChatGPT actieve menselijke betrokkenheid vereist om het gesprek te sturen, waarbij richtlijnen op basis van gebruikersprompts worden verstrekt, is het planningsproces voornamelijk afhankelijk van menselijke interventie.
Generatieve AI-modellen zoals transformers vormen de State-of-the-Art-kern technologie, die deze autonome AI-agents aandrijft. Deze transformers zijn getraind op grote datasets, waardoor ze complexe redenering en beslissingsvermogens kunnen simuleren.
Open-Source Roots of Autonomous Agents: Auto-GPT en GPT-Engineer
Veel van deze autonome AI-agents hebben hun oorsprong in open-source-initiatieven geleid door innovatieve individuen die conventionele workflows transformeren. In plaats van alleen suggesties te doen, kunnen agents zoals Auto-GPT taken onafhankelijk uitvoeren, van online winkelen tot het bouwen van basis-apps. OpenAI’s Code Interpreter heeft tot doel ChatGPT van het suggereren van ideeën te upgraden naar het actief oplossen van problemen met die ideeën.
Zowel Auto-GPT als GPT-Engineer zijn uitgerust met de kracht van GPT 3.5 en GPT-4. Het begrijpt code-logica, combineert meerdere bestanden en versnelt het ontwikkelingsproces.
Het kern van Auto-GPT’s functionaliteit ligt in zijn AI-agents. Deze agents zijn geprogrammeerd om specifieke taken uit te voeren, van alledaagse taken zoals plannen tot complexe taken die strategisch beslissen vereisen. Echter, deze AI-agents opereren binnen de grenzen die door gebruikers zijn ingesteld. Door hun toegang via API’s te controleren, kunnen gebruikers de diepte en het bereik van acties die de AI kan uitvoeren, bepalen.
Als voorbeeld, als de taak is om een chat-webapp te maken die geïntegreerd is met ChatGPT, breekt Auto-GPT het doel autonomously af in actiebare stappen, zoals het maken van een HTML-frontend of het schrijven van een Python-backend. Terwijl de applicatie deze prompts autonomously produceert, kunnen gebruikers ze nog steeds controleren en wijzigen. Zoals aangetoond door de maker van AutoGPT @SigGravitas, is het in staat om een testprogramma te bouwen en uit te voeren op basis van Python.
https://twitter.com/SigGravitas/status/1642181498278408193
Terwijl de onderstaande diagram een meer algemene architectuur van een autonome AI-agent beschrijft, biedt het waardevolle inzicht in de processen achter de schermen.
Het proces wordt geïnitieerd door de OpenAI API-sleutel te verifiëren en verschillende parameters te initialiseren, waaronder kortetermijngeheugen en database-inhoud. Zodra de sleutelgegevens aan de Agent zijn doorgegeven, interacteert het model met GPT3.5/GPT4 om een reactie op te halen. Deze reactie wordt vervolgens omgezet in een JSON-formaat, dat de Agent interpreteert om verschillende functies uit te voeren, zoals het uitvoeren van online zoekopdrachten, lezen of schrijven van bestanden, of zelfs het uitvoeren van code. Auto-GPT gebruikt een vooraf getraind model om deze reacties in een database op te slaan, en toekomstige interacties gebruiken deze opgeslagen informatie als referentie. De cyclus gaat door totdat de taak als voltooid wordt beschouwd.
Setup Gids voor Auto-GPT en GPT-Engineer
Het opzetten van cutting-edge tools zoals GPT-Engineer en Auto-GPT kan uw ontwikkelingsproces stroomlijnen. Hieronder vindt u een gestructureerde gids om u te helpen bij het installeren en configureren van beide tools.
Auto-GPT
Het opzetten van Auto-GPT kan complex lijken, maar met de juiste stappen wordt het eenvoudig. Deze gids behandelt het proces om Auto-GPT op te zetten en biedt inzicht in zijn diverse scenario’s.
1. Vereisten:
- Python-omgeving: Zorg ervoor dat u Python 3.8 of later hebt geïnstalleerd. U kunt Python downloaden vanaf de officiële website.
- Als u van plan bent om repositories te klonen, installeer Git.
- OpenAI API-sleutel: Om te interacteren met OpenAI, is een API-sleutel nodig. Haal de sleutel op van uw OpenAI-account
Geheugen-backend opties: Een geheugen-backend dient als een opslagmechanisme voor AutoGPT om essentiële gegevens voor zijn bewerkingen te benaderen. AutoGPT gebruikt zowel kortetermijn- als langetermijnopslagmogelijkheden. Pinecone, Milvus, Redis en anderen zijn enkele opties die beschikbaar zijn.
2. Uw werkruimte instellen:
- Maak een virtuele omgeving:
python3 -m venv myenv - Activeer de omgeving:
- MacOS of Linux:
source myenv/bin/activate
- MacOS of Linux:
3. Installatie:
- Kloon de Auto-GPT-repository (zorg ervoor dat u Git hebt geïnstalleerd):
git clone https://github.com/Significant-Gravitas/Auto-GPT.git - Om te werken met versie 0.2.2 van Auto-GPT, wilt u checkout naar die specifieke versie:
git checkout stable-0.2.2 - Ga naar de gedownloade repository:
cd Auto-GPT - Installeer de vereiste afhankelijkheden:
pip install -r requirements.txt
4. Configuratie:
- Zoek
.env.templatein de hoofdmap/Auto-GPT. Dupliceer en hernoem het naar.env - Open
.enven stel uw OpenAI API-sleutel in naastOPENAI_API_KEY= - Als u Pinecone of andere geheugen-backend opties wilt gebruiken, werk de
.env-bestand bij met uw Pinecone API-sleutel en regio.
5. Opdrachtregel instructies:
Auto-GPT biedt een rijke set opdrachtregelargumenten om zijn gedrag aan te passen:
- Algemene gebruiksvoorbeelden:
- Help weergeven:
python -m autogpt --help - AI-instellingen aanpassen:
python -m autogpt --ai-settings <bestandsnaam> - Een geheugen-backend specificeren:
python -m autogpt --use-memory <geheugen-backend>
- Help weergeven:
6. Auto-GPT starten:
Zodra de configuratie is voltooid, initieer Auto-GPT met:
- Linux of Mac:
./run.sh start - Windows:
.run.bat
Docker Integratie (Aanbevolen Setup Benadering)
Voor diegenen die Auto-GPT in een container willen plaatsen, biedt Docker een gestroomlijnde aanpak. Houd er echter rekening mee dat Docker’s initiële setup enigszins ingewikkeld kan zijn. Raadpleeg Docker’s installatiegids voor assistentie.
Ga verder door de onderstaande stappen te volgen om de OpenAI API-sleutel te wijzigen. Zorg ervoor dat Docker op de achtergrond draait. Ga nu naar de hoofdmap van AutoGPT en volg de onderstaande stappen in uw terminal
- Bouw het Docker-image:
docker build -t autogpt . - Voer nu uit:
docker run -it --env-file=./.env -v$PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt
Met docker-compose:
- Voer uit:
docker-compose run --build --rm auto-gpt - Voor aanvullende aanpassingen kunt u extra argumenten integreren. Bijvoorbeeld, om uit te voeren met zowel –gpt3only als –continuous:
docker-compose run --rm auto-gpt --gpt3only--continuous - Gezien de uitgebreide autonomie die Auto-GPT bezit bij het genereren van inhoud uit grote datasets, is er een potentieel risico dat het onbewust toegang krijgt tot kwaadaardige webbronnen.
Om risico’s te mitigeren, voer Auto-GPT uit in een virtuele container, zoals Docker. Dit zorgt ervoor dat eventueel schadelijke inhoud binnen de virtuele ruimte blijft en uw externe bestanden en systeem onaangetast blijven. Als alternatief kan Windows Sandbox worden gebruikt, hoewel deze na elke sessie wordt gewist en zijn staat niet behoudt.
Om veiligheidsredenen moet u Auto-GPT altijd in een virtuele omgeving uitvoeren, waardoor uw systeem beschermd blijft tegen onverwachte uitvoer.
Gezien al het bovenstaande, is er nog steeds een kans dat u uw gewenste resultaten niet kunt behalen. Gebruikers van Auto-GPT meldden herhaalde problemen bij het schrijven naar een bestand, waarbij ze vaak mislukte pogingen ondervonden vanwege problematische bestandsnamen. Hier is een dergelijke fout: Auto-GPT (release 0.2.2) voegt de tekst niet toe na de fout "write_to_file returned: Error: Bestand is al bijgewerkt
Verschillende oplossingen om dit aan te pakken zijn besproken op de bijbehorende GitHub-thread voor referentie.
GPT-Engineer
GPT-Engineer Workflow:
- Prompt Definitie: Maak een gedetailleerde beschrijving van uw project met behulp van natuurlijke taal.
- Code Generatie: Op basis van uw prompt, genereert GPT-Engineer codefragmenten, functies of zelfs complete toepassingen.
- Verfijning en Optimalisatie: Na generatie is er altijd ruimte voor verbetering. Ontwikkelaars kunnen de gegenereerde code aanpassen om specifieke vereisten te vervullen, waardoor de kwaliteit optimaal is.
Het proces van het opzetten van GPT-Engineer is samengevat in een eenvoudig te volgen gids. Hieronder vindt u een stap-voor-stap uitleg:
1. Omgevingsvoorbereiding: Voordat u begint, zorg ervoor dat u uw projectmap klaar heeft. Open een terminal en voer de onderstaande opdracht uit
- Maak een nieuwe map met de naam ‘website’:
mkdir website- Ga naar de map:
cd website
2. Repository Klonen: git clone https://github.com/AntonOsika/gpt-engineer.git .
3. Navigeren en Afhankelijkheden Installeren: Zodra u het hebt gekloond, ga naar de map cd gpt-engineer en installeer alle benodigde afhankelijkheden make install
4. Virtuele Omgeving Activeren: Afhankelijk van uw besturingssysteem, activeer de gemaakte virtuele omgeving.
- Voor macOS/Linux:
source venv/bin/activate
- Voor Windows, is het iets anders vanwege de API-sleutelinstelling:
set OPENAI_API_KEY=[uw API-sleutel]
5. Configuratie – API-sleutel Instellen: Om te interacteren met OpenAI, heeft u een API-sleutel nodig. Als u er nog geen heeft, meld u aan op het OpenAI-platform en voer dan uit:
- Voor macOS/Linux:
export OPENAI_API_KEY=[uw API-sleutel]
- Voor Windows (zoals eerder vermeld):
set OPENAI_API_KEY=[uw API-sleutel]
6. Project Initialisatie en Code Generatie: GPT-Engineer’s magie begint met de main_prompt bestand in de projects map.
- Als u een nieuw project wilt starten:
cp -r projects/example/ projects/website
Hier vervangt u ‘website’ door uw gekozen projectnaam.
- Bewerk de
main_promptbestand met een teksteditor naar keuze, waarin u de vereisten van uw project beschrijft.
- Zodra u tevreden bent met de prompt, voer uit:
gpt-engineer projects/website
Uw gegenereerde code bevindt zich in de workspace map binnen de projectmap.
7. Na Generatie: Hoewel GPT-Engineer krachtig is, kan het niet altijd perfect zijn. Controleer de gegenereerde code, maak handmatige aanpassingen als nodig en zorg ervoor dat alles soepel verloopt.
Voorbeeld Uitvoering
Prompt:
“Ik wil een basis Streamlit-app in Python ontwikkelen die gebruikersgegevens visualiseert via interactieve grafieken. De app moet gebruikers in staat stellen om een CSV-bestand te uploaden, het type grafiek (bijv. staaf, pie, lijn) te selecteren en de gegevens dynamisch te visualiseren. Het kan bibliotheken zoals Pandas voor gegevensmanipulatie en Plotly voor visualisatie gebruiken.”
Net als Auto-GPT kan GPT-Engineer soms fouten tegenkomen, zelfs na een complete setup. Echter, bij mijn derde poging slaagde ik erin om de onderstaande Streamlit-webpagina te bereiken. Zorg ervoor dat u eventuele fouten controleert op de officiële GPT-Engineer repository’s issue-pagina.
Huidige Knelpunten van AI-Agents
Operationele Uitgaven
Een enkele taak die door Auto-GPT wordt uitgevoerd, kan meerdere stappen omvatten. Belangrijk is dat elk van deze stappen afzonderlijk in rekening kan worden gebracht, waardoor de kosten toenemen. Auto-GPT kan vast komen te zitten in herhalende lussen, waardoor het zijn beloofde resultaten niet kan leveren. Dergelijke gebeurtenissen ondermijnen zijn betrouwbaarheid en de investering.
Stel dat u een kort essay met Auto-GPT wilt maken. De ideale lengte van het essay is 8K tokens, maar tijdens het creatieproces duikt het model in meerdere tussenstappen om de inhoud te finaliseren. Als u GPT-4 met 8k contextlengte gebruikt, zou u voor de invoer $0,03 in rekening worden gebracht. En voor de uitvoer zou de kosten $0,06 bedragen. Stel dat het model in een onvoorziene lus terechtkomt en bepaalde delen meerdere keren herhaalt. Niet alleen wordt het proces langer, maar elke herhaling voegt ook extra kosten toe.
Om u te beschermen tegen dit:
Stel gebruiksbeperkingen in bij OpenAI Billing & Limits:
- Harde Limiet: Beperkt het gebruik tot uw ingestelde drempel.
- Zachte Limiet: Verzendt u een e-mailmelding zodra de drempel is bereikt.
Functionele Beperkingen
De mogelijkheden van Auto-GPT, zoals weergegeven in zijn broncode, komen met bepaalde grenzen. Zijn probleemoplossingsstrategieën worden beheerst door zijn intrinsieke functies en de toegang die wordt geboden door GPT-4’s API. Voor diepgaande discussies en mogelijke workarounds, overweeg om te bezoeken: Auto-GPT Discussie.
Impact van AI op de Arbeidsmarkt
De dynamiek tussen AI en arbeidsmarkten is voortdurend in ontwikkeling en wordt uitgebreid gedocumenteerd in dit onderzoeksrapport. Een belangrijke conclusie is dat, hoewel technologische vooruitgang vaak gunstig is voor geschoolde werknemers, het risico’s met zich meebrengt voor diegenen die betrokken zijn bij routineuze taken. In feite kunnen technologische vooruitgangen bepaalde taken verplaatsen, maar tegelijkertijd de weg vrijmaken voor diverse, arbeidsintensieve taken.
Ongeveer 80% van de Amerikaanse werknemers kan ontdekken dat LLM’s (Language Learning Models) ongeveer 10% van hun dagelijkse taken beïnvloeden. Deze statistiek onderstreept de samensmelting van AI- en menselijke rollen.
AI’s dubbele rol in de werkgelegenheid:
- Positieve Aspecten: AI kan veel taken automatiseren, van klantenservice tot financieel advies, waardoor kleine ondernemingen die geen middelen hebben voor speciale teams, worden ontlast.
- Bezorgdheden: Het voordeel van automatisering roept vragen op over potentiële banenverlies, met name in sectoren waar menselijke betrokkenheid essentieel is, zoals klantenservice. Naast dit is er de ethische doolhof verbonden aan AI-toegang tot vertrouwelijke gegevens. Dit vereist een sterke infrastructuur die transparantie, verantwoordelijkheid en ethisch gebruik van AI waarborgt.
Conclusie
Het is duidelijk dat tools zoals ChatGPT, Auto-GPT en GPT-Engineer aan de vooravond staan van de transformatie van de interactie tussen technologie en gebruikers. Met wortels in open-source bewegingen, vertegenwoordigen deze AI-agents de mogelijkheden van machineautonomie, waardoor taken van plannen tot softwareontwikkeling worden gestroomlijnd.
Terwijl we ons een toekomst inbeelden waarin AI dieper in onze dagelijkse routines wordt geïntegreerd, wordt het vinden van een balans tussen het omarmen van AI’s mogelijkheden en het beschermen van menselijke rollen cruciaal. In het bredere spectrum schildert de AI-arbeidsmarkt dynamiek een tweeslachtig beeld van groeimogelijkheden en uitdagingen, waardoor een bewuste integratie van technische ethiek en transparantie noodzakelijk wordt.


















