AI-modeller og plattformer

Auto-GPT og GPT-Engineer: En dybdeguide til dagens ledende AI-agenter

mm
Legg til Unite.AI blant dine foretrukne kilder på Google

Når man sammenligner ChatGPT med autonome AI-agenter som Auto-GPT og GPT-Engineer, kommer det frem en betydelig forskjell i beslutningsprosessen. Mens ChatGPT krever aktiv menneskelig innblanding for å drive samtalen, og gir veiledning basert på brukerens påminnelser, er planleggingsprosessen i stor grad avhengig av menneskelig innblanding.

Generative AI-modeller som transformers er den nyeste teknologien som driver disse autonome AI-agentene. Disse transformerne er trent på store datamengder, og kan simulere komplekse resonnerings- og beslutningsprosesser.

Åpne kilde-røtter av autonome agenter: Auto-GPT og GPT-Engineer

Mange av disse autonome AI-agentene stammer fra åpne kilde-initiativer ledet av innovative personer som transformerer konvensjonelle arbeidsflyter. I stedet for bare å gi forslag, kan agenter som Auto-GPT håndtere oppgaver uavhengig, fra nettbutikking til å bygge grunnleggende applikasjoner. OpenAI’s Code Interpreter har som mål å oppgradere ChatGPT fra å bare gi ideer til å aktivt løse problemer med disse ideene.

Både Auto-GPT og GPT-Engineer er utstyrt med kraften fra GPT 3.5 og GPT-4. Den forstår kode-logikk, kombinerer flere filer og akselererer utviklingsprosessen.

Kjernen i Auto-GPT’s funksjonalitet ligger i dens AI-agenter. Disse agentene er programmert for å utføre spesifikke oppgaver, fra hverdagslige oppgaver som planlegging til mer komplekse oppgaver som krever strategisk beslutning. Disse AI-agentene opererer imidlertid innenfor grensene satt av brukerne. Ved å kontrollere tilgangen via API-er, kan brukerne bestemme dybden og omfanget av handlinger AI-en kan utføre.

For eksempel, hvis oppgaven er å lage en chat-nettapplikasjon integrert med ChatGPT, bryter Auto-GPT målet ned i håndterbare steg, som å lage en HTML-frontend eller å skrive en Python-bakend. Mens applikasjonen selv genererer disse påminnelsene, kan brukerne fortsatt overvåke og modifisere dem. Som vist av skaperen av AutoGPT @SigGravitas, er det mulig å bygge og kjøre en testprogram basert på Python.

https://twitter.com/SigGravitas/status/1642181498278408193

Mens diagrammet under beskriver en mer generell arkitektur for en autonom AI-agent, gir det verdifull innsikt i prosessene bak scenen.

AI Agent Architecture like Autogpt, GPT Engineer

Autonom AI-Agent Arkitektur

Prosessen starter med å verifisere OpenAI API-nøkkel og initialisere forskjellige parametre, inkludert korttidsminne og databaseinnhold. Når nøkkeldataene sendes til agenten, interagerer modellen med GPT3.5/GPT4 for å hente en respons. Denne responsen omgjøres til JSON-format, som agenten tolker for å utføre ulike funksjoner, som å utføre nett-søk, lese eller skrive filer eller kjøre kode. Auto-GPT bruker en forhånds-trent modell for å lagre disse responsene i en database, og fremtidige interaksjoner bruker denne lagrede informasjonen som referanse. Løkken fortsetter til oppgaven er fullført.

Oppsettsguide for Auto-GPT og GPT-Engineer

Oppsett av innovative verktøy som GPT-Engineer og Auto-GPT kan strømlinje utviklingsprosessen din. Under følger en strukturert guide for å installere og konfigurere begge verktøyene.

Auto-GPT

Oppsett av Auto-GPT kan se komplekst ut, men med riktige steg blir det enkelt. Denne guiden dekker prosessen for å sette opp Auto-GPT og gir innsikt i dens ulike scenarioer.

1. Forutsetninger:

  1. Python-miljø: Sørg for at du har Python 3.8 eller nyere installert. Du kan laste ned Python fra offisiell nettside.
  2. Hvis du planlegger å klone repositoryer, installer Git.
  3. OpenAI API-nøkkel: For å interagere med OpenAI, er en API-nøkkel nødvendig. Få nøkkelen fra din OpenAI-konto
Open AI API-nøkkel

Open AI API-nøkkel Generering

Minne-bakende alternativer: En minne-bakende tjener som en lagringsmekanisme for AutoGPT å få tilgang til essensiell data for sine operasjoner. AutoGPT bruker både korttids- og langtids-lagringskapasiteter. Pinecone, Milvus, Redis og andre er noen alternativer som er tilgjengelige.

2. Oppsett av arbeidsplassen:

  1. Opprett en virtuell miljø: python3 -m venv myenv
  2. Aktiver miljøet:
    1. MacOS eller Linux: source myenv/bin/activate

3. Installering:

  1. Klon Auto-GPT-repository (sørg for at du har Git installert): git clone https://github.com/Significant-Gravitas/Auto-GPT.git
  2. For å sikre at du arbeider med versjon 0.2.2 av Auto-GPT, må du checkout til denne bestemte versjonen: git checkout stable-0.2.2
  3. Naviger til det lastede repository: cd Auto-GPT
  4. Installer de nødvendige avhengighetene: pip install -r requirements.txt

4. Konfigurasjon:

  1. Finne .env.template i hoved-/Auto-GPT-katalogen. Duplisere og omdøpe den til .env
  2. Åpne .env og sett din OpenAI API-nøkkel ved siden av OPENAI_API_KEY=
  3. Liknende, for å bruke Pinecone eller andre minne-bakende alternativer, oppdater .env-filen med din Pinecone API-nøkkel og region.

5. Kommandolinje-instruksjoner:

Auto-GPT tilbyr en rekke kommandolinje-argumenter for å tilpasse dens atferd:

  • Generell bruk:
    • Vis hjelp: python -m autogpt --help
    • Justere AI-innstillinger: python -m autogpt --ai-settings <filnavn>
    • Spesifiser en minne-bakende: python -m autogpt --use-memory <minne-bakende>
AutoGPT CLI

AutoGPT i CLI

6. Kjøring av Auto-GPT:

Når konfigurasjonen er fullført, initiér Auto-GPT ved hjelp av:

  • Linux eller Mac: ./run.sh start
  • Windows: .run.bat

Docker-integrasjon (Anbefalt oppsett-tilnærming)

For de som ønsker å containerisere Auto-GPT, tilbyr Docker en strømlinjet tilnærming. Imidlertid kan Docker’s oppsett være litt komplisert. Se Docker’s installasjonsveiledning for hjelp.

Følg disse stegene for å modifisere OpenAI API-nøkkelen. Sørg for at Docker kjører i bakgrunnen. Gå nå til hovedkatalogen for AutoGPT og følg disse stegene på terminalen

  • Bygg Docker-bildet: docker build -t autogpt .
  • Kjør nå: docker run -it --env-file=./.env -v$PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt

Med docker-compose:

  • Kjør: docker-compose run --build --rm auto-gpt
  • For tilleggs-konfigurasjon, kan du integrere flere argumenter. For eksempel, for å kjøre med både –gpt3only og –continuous: docker-compose run --rm auto-gpt --gpt3only--continuous
  • Gitt den omfattende autonomi Auto-GPT besitter i å generere innhold fra store datamengder, er det en potensiell risiko for at den uforvoldt kan få tilgang til skadelige nett-kilder.

For å minimere risiko, kjør Auto-GPT i en virtuell container, som Docker. Dette sikrer at eventuelt skadelig innhold holder seg innenfor den virtuelle rommet, og din eksterne filer og system forblir uberørt. Alternativt kan Windows Sandbox brukes, selv om den gjenopprettes etter hver sesjon og ikke beholder sin tilstand.

For sikkerhet, kjør alltid Auto-GPT i en virtuell miljø, og sikre at systemet ditt forblir isolert fra uventede utdata.

Gitt all dette, er det fortsatt en sjanse for at du ikke vil kunne få dine ønskede resultater. Auto-GPT-brukere rapporterte gjentakende problemer når de prøvde å skrive til en fil, ofte møtte de feil forsøk på grunn av problematisk filnavn. Her er ett slikt feil: Auto-GPT (release 0.2.2) ikke legge til tekst etter feil "write_to_file returned: Error: Fil har allerede blitt oppdatert

Forskjellige løsninger for å håndtere dette er diskutert på den tilhørende GitHub-tråden for referanse.

GPT-Engineer

GPT-Engineer-arbeidsflyt:

  1. Prompt-definisjon: Lag en detaljert beskrivelse av prosjektet ditt ved hjelp av naturlig språk.
  2. Kode-generering: Basert på din prompt, genererer GPT-Engineer kode-fragmenter, funksjoner eller komplette applikasjoner.
  3. Forbedring og optimalisering: Etter generering, er det alltid rom for forbedring. Utviklere kan modifisere den genererte koden for å møte bestemte krav, og sikre toppkvalitet.

Prosessen med å sette opp GPT-Engineer er kondensert til en enkel å følge guide. Her er en steg-for-steg-gjennomgang:

1. Forberedelse av miljøet: Før du begynner, sørg for at du har prosjekt-katalogen klar. Åpne en terminal og kjør kommandoen under

  • Opprett en ny katalog ved navn ‘nettsted’: mkdir nettsted
  • Flytt til katalogen: cd nettsted

2. Klon repository:  git clone https://github.com/AntonOsika/gpt-engineer.git .

3. Naviger og installer avhengigheter: Når klonet, skift til katalogen cd gpt-engineer og installer alle nødvendige avhengigheter make install

4. Aktiver virtuell miljø: Avhengig av ditt operativsystem, aktiver den opprettede virtuelle miljøet.

  • For macOS/Linux: source venv/bin/activate
  • For Windows, er det litt annerledes på grunn av API-nøkkeloppsett: set OPENAI_API_KEY=[din api-nøkkel]

5. Konfigurasjon – API-nøkkeloppsett: For å interagere med OpenAI, trenger du en API-nøkkel. Hvis du ikke har en ennå, meld deg på OpenAI-plattformen, og deretter:

  • For macOS/Linux: export OPENAI_API_KEY=[din api-nøkkel]
  • For Windows (som nevnt tidligere): set OPENAI_API_KEY=[din api-nøkkel]

6. Prosjekt-initiering og kode-generering: GPT-Engineer’s magi starter med main_prompt -filen funnet i projects -katalogen.

  • Hvis du ønsker å starte et nytt prosjekt: cp -r projects/example/ projects/nettsted

Her erstatter du ‘nettsted’ med ditt valgte prosjektnavn.

  • Rediger main_prompt -filen ved hjelp av en teksteditor, og skriv ned prosjektets krav.

  • Når du er fornøyd med prompten, kjør: gpt-engineer projects/nettsted

Den genererte koden vil være i workspace -katalogen innenfor prosjektkatalogen.

7. Etter generering: Mens GPT-Engineer er kraftig, kan den ikke alltid være perfekt. Inspektér den genererte koden, gjør manuelle endringer hvis nødvendig, og sikre at alt kjører smertefritt.

Eksempelkjøring

Prompt:

“Jeg ønsker å utvikle en enkel Streamlit-applikasjon i Python som visualiserer brukerdata gjennom interaktive diagrammer. Applikasjonen skal tillate brukerne å laste opp en CSV-fil, velge diagramtype (f.eks. bar, pie, linje) og dynamisk visualisere dataene. Den kan bruke biblioteker som Pandas for data-manipulering og Plotly for visualisering.”

Setting Up and Running Engineering-GPT

Setting Up and Running GPT-Engineer

Mye likt Auto-GPT, kan GPT-Engineer noen ganger møte feil selv etter fullstendig oppsett. Imidlertid, på mitt tredje forsøk, lyktes jeg å få tilgang til følgende Streamlit-nettside. Sørg for å gjennomgå eventuelle feil på den offisielle GPT-Engineer-repositorys issueside.

Streamlit-applikasjon generert med GPT-Engineer

Streamlit-applikasjon generert med GPT-Engineer

Aktuelle begrensninger for AI-agenter

Drifts-utgifter

En enkelt oppgave utført av Auto-GPT kan involvere mange steg. Viktigst, hver av disse stegene kan faktureres individuelt, og øke kostnadene. Auto-GPT kan bli fanget i repetitive løkker, og mislykkes i å levere lovet resultat. Slike hendelser underminerer dens pålitelighet og undergraver investeringen.

Tenkt deg at du ønsker å lage en kort essay med Auto-GPT. Essayets ideelle lengde er 8K token, men under skriveprosessen dykker modellen ned i flere mellomliggende steg for å fullføre innholdet. Hvis du bruker GPT-4 med 8k kontekstlengde, vil du bli faktureret $0.03 for inndata. Og for utdata, vil kostnaden være $0.06. Nå, la oss si at modellen havner i en uforutsett løkke, og gjentar visse deler flere ganger. Ikke bare blir prosessen lengre, men hver gjentakelse legger også til kostnader.

For å beskytte deg mot dette:
Sett bruks-grenser i OpenAI Fakturering & Grenser:

  • Hard grense: Begrenser bruk utover din fastsatte terskel.
  • Myk grense: Sender deg en e-post-advarsel når terskelen er nådd.

Funksjons-begrensninger

Auto-GPT’s funksjonalitet, som vist i dens kildekode, kommer med visse grenser. Dens problemløsings-strategier er styrt av dens innebygde funksjoner og tilgangen gitt av GPT-4’s API. For dyptgående diskusjoner og mulige løsninger, vurdér å besøke: Auto-GPT Diskusjon.

AI’s påvirkning på arbeidsmarkedet

Forholdet mellom AI og arbeidsmarkedet er i konstant utvikling og er omfattende dokumentert i denne forskningsrapporten. En nøkkel-observasjon er at mens teknologisk fremgang ofte er til fordel for kvalifiserte arbeidere, utgjør det en risiko for de som er engasjert i rutine-oppdrag. Faktisk kan teknologiske fremskritt kunne erstatte visse oppdrag, men samtidig åpne opp for nye, arbeidskrevende oppdrag.

AI Arbeidsmarked Autonome Agenter overtar

En estimert 80% av amerikanske arbeidere kan finne at LLM’er (Language Learning Models) påvirker rundt 10% av deres daglige oppgaver. Denne statistikken understreker sammensmeltingen av AI og menneskelige roller.

AI’s dobbelt-rolle i arbeidsstyrken:

  • Positive aspekter: AI kan automatisere mange oppgaver, fra kundeservice til finansiell rådgivning, og gi en lettelse til små bedrifter som mangler midler for dedikerte team.
  • Bekymringer: Fordelen med automatisering reiser øynebryn om potensielle jobbtap, spesielt i sektorer hvor menneskelig innblanding er avgjørende, som kundesupport. I tillegg kommer det etiske labyrinten knyttet til AI’s tilgang til konfidensielle data. Dette krever en sterk infrastruktur som sikrer transparens, ansvar og etisk bruk av AI.

Konklusjon

Tydeligvis står verktøy som ChatGPT, Auto-GPT og GPT-Engineer i forkant av å endre interaksjonen mellom teknologi og dens brukere. Med røtter i åpne kilde-bevegelser, manifestere disse AI-agentene mulighetene for maskin-automoni, og strømlinjeformer oppgaver fra planlegging til programvare-utvikling.

Ettersom vi skyter inn i en fremtid hvor AI integreres dyptere i våre daglige rutiner, blir balansen mellom å omfavne AI’s muligheter og å beskytte menneskelige roller avgjørende. I det bredere perspektivet, maler AI-arbeidsmarked-dynamikken et dobbelt bilde av vekst-muligheter og utfordringer, og krever en bevisst integrasjon av teknologi-etikk og transparens.

Jeg har brukt de siste fem årene på å dykke ned i den fasiniserende verden av Maskinlæring og Dypt Læring. Min lidenskap og ekspertise har ledet meg til å bidra til over 50 ulike programvareprosjekter, med særlig fokus på AI/ML. Min pågående nysgjørhet har også trukket meg mot Naturlig Språkbehandling, et felt jeg er ivrig etter å utforske videre.