Modelli e piattaforme di IA

Auto-GPT & GPT-Engineer: Una Guida Approfondita agli Agenti AI Leader di Oggi

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Quando si confronta ChatGPT con agenti AI autonomi come Auto-GPT e GPT-Engineer, emerge una differenza significativa nel processo decisionale. Mentre ChatGPT richiede un intervento umano attivo per guidare la conversazione, fornendo indicazioni in base ai prompt dell’utente, il processo di pianificazione dipende in larga misura dall’intervento umano.

I modelli di intelligenza artificiale generativa come i trasformatori sono la tecnologia core di stato dell’arte, alla base di questi agenti AI autonomi. Questi trasformatori sono addestrati su grandi set di dati, consentendo loro di simulare capacità di ragionamento e decisione complesse.

Radici Open-Source degli Agenti Autonomi: Auto-GPT e GPT-Engineer

Molti di questi agenti AI autonomi derivano da iniziative open-source guidate da individui innovativi che trasformano i flussi di lavoro convenzionali. Agenti come Auto-GPT possono gestire autonomamente compiti, dalle compravendite online alla creazione di app di base. L’interprete di codice di OpenAI mira ad aggiornare ChatGPT da semplice suggeritore di idee a soluzione attiva di problemi con quelle idee.

Sia Auto-GPT che GPT-Engineer sono dotati del potere di GPT 3.5 e GPT-4. Comprendono la logica del codice, combinano più file e accelerano il processo di sviluppo.

Il nucleo centrale della funzionalità di Auto-GPT risiede nei suoi agenti AI. Questi agenti sono programmati per eseguire compiti specifici, dalle attività più banali come la pianificazione a compiti più complessi che richiedono decisioni strategiche. Tuttavia, questi agenti AI operano all’interno dei limiti imposti dagli utenti. Controllando l’accesso tramite API, gli utenti possono determinare la profondità e la portata delle azioni che l’AI può eseguire.

Ad esempio, se incaricati di creare un’app web di chat integrata con ChatGPT, Auto-GPT divide autonomamente l’obiettivo in passaggi eseguibili, come la creazione di un front-end HTML o la scrittura di un back-end Python. Mentre l’applicazione produce autonomamente questi prompt, gli utenti possono ancora monitorarli e modificarli. Come dimostrato dal creatore di AutoGPT @SigGravitas, è in grado di costruire ed eseguire un programma di test basato su Python.

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

Mentre il diagramma seguente descrive un’architettura generale di un agente AI autonomo, offre una visione preziosa dei processi che si svolgono dietro le quinte.

Architettura dell'Agente AI Autonomo come Autogpt, GPT Engineer

Architettura dell’Agente AI Autonomo

Il processo inizia con la verifica della chiave API di OpenAI e l’inizializzazione di vari parametri, tra cui la memoria a breve termine e il contenuto del database. Una volta che i dati chiave vengono passati all’agente, il modello interagisce con GPT3.5/GPT4 per ottenere una risposta. Questa risposta viene quindi trasformata in formato JSON, che l’agente interpreta per eseguire una varietà di funzioni, come condurre ricerche online, leggere o scrivere file o anche eseguire codice. Auto-GPT utilizza un modello pre-addestrato per archiviare queste risposte in un database e le interazioni future utilizzano queste informazioni archiviate come riferimento. Il ciclo continua fino a quando il compito non viene considerato completato.

Guida di Configurazione per Auto-GPT e GPT-Engineer

La configurazione di strumenti all’avanguardia come GPT-Engineer e Auto-GPT può semplificare il tuo processo di sviluppo. Di seguito è riportata una guida strutturata per aiutarti a installare e configurare entrambi gli strumenti.

Auto-GPT

La configurazione di Auto-GPT può sembrare complessa, ma con i passaggi giusti, diventa più semplice. Questa guida copre la procedura per configurare Auto-GPT e offre approfondimenti su vari scenari.

1. Prerequisiti:

  1. Ambiente Python: Assicurati di avere Python 3.8 o successivo installato. Puoi ottenere Python dal suo sito web ufficiale.
  2. Se intendi clonare repository, installa Git.
  3. Chiave API di OpenAI: Per interagire con OpenAI, è necessaria una chiave API. Ottieni la chiave dal tuo account OpenAI
Generazione della Chiave API di Open AI

Generazione della Chiave API di Open AI

Opzioni di Backend di Memoria: Un backend di memoria serve come meccanismo di archiviazione per AutoGPT per accedere ai dati essenziali per le sue operazioni. AutoGPT utilizza sia la memorizzazione a breve termine che a lungo termine. Pinecone, Milvus, Redis e altri sono alcune opzioni disponibili.

2. Configurazione dell’Ambiente di Lavoro:

  1. Crea un ambiente virtuale: python3 -m venv myenv
  2. Attiva l’ambiente:
    1. MacOS o Linux: source myenv/bin/activate

3. Installazione:

  1. Clona il repository di Auto-GPT (assicurati di avere Git installato): git clone https://github.com/Significant-Gravitas/Auto-GPT.git
  2. Per assicurarti di lavorare con la versione 0.2.2 di Auto-GPT, esegui il checkout di quella versione specifica: git checkout stable-0.2.2
  3. Spostati nel repository scaricato: cd Auto-GPT
  4. Installa le dipendenze richieste: pip install -r requirements.txt

4. Configurazione:

  1. Trova .env.template nella directory principale di /Auto-GPT. Duplica e rinomina in .env
  2. Apre .env e imposta la tua chiave API di OpenAI accanto a OPENAI_API_KEY=
  3. Allo stesso modo, per utilizzare Pinecone o altri backend di memoria, aggiorna il file .env con la tua chiave API di Pinecone e la regione.

5. Istruzioni della Riga di Comando:

Auto-GPT offre un set ricco di argomenti della riga di comando per personalizzare il suo comportamento:

  • Uso Generale:
    • Visualizza Aiuto: python -m autogpt --help
    • Regola le Impostazioni AI: python -m autogpt --ai-settings <nome_file>
    • Specifica un Backend di Memoria: python -m autogpt --use-memory <backend_di_memoria>
AutoGPT nella Riga di Comando

AutoGPT nella Riga di Comando

6. Avvio di Auto-GPT:

Una volta completate le configurazioni, avvia Auto-GPT utilizzando:

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

Integrazione con Docker (Approccio di Configurazione Raccomandato)

Per coloro che desiderano containerizzare Auto-GPT, Docker offre un approccio semplificato. Tuttavia, è importante notare che la configurazione iniziale di Docker può essere leggermente intricata. Fare riferimento alla guida di installazione di Docker per assistenza.

Procedi seguendo i passaggi seguenti per modificare la chiave API di OpenAI. Assicurati che Docker sia in esecuzione in background. Ora vai alla directory principale di AutoGPT e segui i passaggi seguenti nel terminale

  • Crea l’immagine di Docker: docker build -t autogpt .
  • Esegui: docker run -it --env-file=./.env -v$PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt

Con docker-compose:

  • Esegui: docker-compose run --build --rm auto-gpt
  • Per ulteriori personalizzazioni, puoi integrare argomenti aggiuntivi. Ad esempio, per eseguire con –gpt3only e –continuous: docker-compose run --rm auto-gpt --gpt3only--continuous
  • Considerando l’estesa autonomia di Auto-GPT nel generare contenuti da grandi set di dati, esiste un potenziale rischio che possa accedere involontariamente a fonti web dannose.

Per mitigare i rischi, esegui Auto-GPT all’interno di un contenitore virtuale, come Docker. Ciò garantisce che eventuali contenuti potenzialmente dannosi rimangano confinati all’interno dello spazio virtuale, lasciando i tuoi file e il sistema esterni intatti. In alternativa, Windows Sandbox è un’opzione, sebbene si azzera dopo ogni sessione, fallendo nel mantenimento dello stato.

Per motivi di sicurezza, esegui sempre Auto-GPT in un ambiente virtuale, assicurandoti che il tuo sistema rimanga isolato da output inaspettati.

Considerando tutto ciò, esiste ancora la possibilità che non si possano ottenere i risultati desiderati. Gli utenti di Auto-GPT hanno segnalato problemi ricorrenti nel tentativo di scrivere su un file, incontrando spesso tentativi falliti a causa di nomi di file problematici. Ecco uno di questi errori: Auto-GPT (rilascio 0.2.2) non appende il testo dopo l'errore "write_to_file returned: Error: File has already been updated

Variante soluzioni per affrontare questo problema sono state discusse nella relativa pagina degli issue di GitHub per riferimento.

GPT-Engineer

Flusso di lavoro di GPT-Engineer:

  1. Definizione del Prompt: Crea una descrizione dettagliata del tuo progetto utilizzando il linguaggio naturale.
  2. Generazione del Codice: In base al tuo prompt, GPT-Engineer genera codici, funzioni o addirittura applicazioni complete.
  3. Rifinizione e Ottimizzazione: Dopo la generazione, c’è sempre spazio per miglioramenti. Gli sviluppatori possono modificare il codice generato per soddisfare requisiti specifici, garantendo la qualità.

Il processo di configurazione di GPT-Engineer è stato condensato in una guida facile da seguire. Ecco una panoramica passo dopo passo:

1. Preparazione dell’Ambiente: Prima di iniziare, assicurati di avere la directory del tuo progetto pronta. Apri un terminale e esegui il comando seguente

  • Crea una nuova directory chiamata ‘sito web’: mkdir website
  • Spostati nella directory: cd website

2. Clona il Repository:  git clone https://github.com/AntonOsika/gpt-engineer.git .

3. Naviga e Installa le Dipendenze: Una volta clonato, spostati nella directory cd gpt-engineer e installa tutte le dipendenze necessarie make install

4. Attiva l’Ambiente Virtuale: A seconda del tuo sistema operativo, attiva l’ambiente virtuale creato.

  • Per macOS/Linux: source venv/bin/activate
  • Per Windows, è leggermente diverso a causa della configurazione della chiave API: set OPENAI_API_KEY=[la tua chiave API]

5. Configurazione – Impostazione della Chiave API: Per interagire con OpenAI, avrai bisogno di una chiave API. Se non ne hai ancora una, iscriviti alla piattaforma OpenAI, quindi:

  • Per macOS/Linux: export OPENAI_API_KEY=[la tua chiave API]
  • Per Windows (come menzionato in precedenza): set OPENAI_API_KEY=[la tua chiave API]

6. Inizializzazione del Progetto e Generazione del Codice: La magia di GPT-Engineer inizia con il file main_prompt trovato nella cartella projects .

  • Se desideri avviare un nuovo progetto: cp -r projects/example/ projects/website

Sostituisci ‘website’ con il nome del tuo progetto.

  • Modifica il file main_prompt utilizzando un editor di testo a tua scelta, scrivendo le esigenze del tuo progetto.

  • Una volta soddisfatto del prompt, esegui: gpt-engineer projects/website

Il codice generato si troverà nella directory workspace all’interno della cartella del progetto.

7. Post-Generazione: Sebbene GPT-Engineer sia potente, potrebbe non essere sempre perfetto. Ispeziona il codice generato, apporta modifiche manuali se necessario e assicurati che tutto funzioni correttamente.

Esempio di Esecuzione

Prompt:

“Desidero sviluppare un’app di base Streamlit in Python che visualizzi i dati degli utenti attraverso grafici interattivi. L’app dovrebbe consentire agli utenti di caricare un file CSV, selezionare il tipo di grafico (ad esempio, barra, torta, linea) e visualizzare dinamicamente i dati. Può utilizzare librerie come Pandas per la manipolazione dei dati e Plotly per la visualizzazione.”

Impostazione e Esecuzione di GPT-Engineer

Impostazione e Esecuzione di GPT-Engineer

Proprio come Auto-GPT, GPT-Engineer può talvolta incontrare errori anche dopo una configurazione completa. Tuttavia, al mio terzo tentativo, sono riuscito ad accedere con successo alla seguente pagina Streamlit. Assicurati di esaminare eventuali errori nella pagina degli issue del repository ufficiale di GPT-Engineer.

App Streamlit generata utilizzando GPT-Engineer

App Streamlit generata utilizzando GPT-Engineer

Colli di Bottiglia Attuali degli Agenti AI

Spese Operative

Un singolo compito eseguito da Auto-GPT potrebbe coinvolgere numerosi passaggi. Ogni uno di questi passaggi potrebbe essere addebitato singolarmente, aumentando i costi. Auto-GPT può rimanere intrappolato in cicli ripetitivi, fallendo nel fornire i risultati promessi. Tali eventi compromettono la sua affidabilità e sminuiscono l’investimento.

Immagina di voler creare un breve saggio con Auto-GPT. La lunghezza ideale del saggio è di 8K token, ma durante la creazione, il modello si impegna in numerosi passaggi intermedi per finalizzare il contenuto. Se stai utilizzando GPT-4 con una lunghezza di contesto di 8k, per l’input verresti addebitato $0.03. E per l’output, il costo sarebbe $0.06. Ora, supponi che il modello si imbatta in un ciclo imprevisto, ripetendo certe parti più volte. Non solo il processo diventa più lungo, ma ogni ripetizione aggiunge anche al costo.

Per proteggerti da questo:
Imposta i limiti di utilizzo nella sezione di fatturazione e limiti di OpenAI:

  • Limite Rigido: Limita l’utilizzo oltre la tua soglia impostata.
  • Limite Morbido: Ti invia un’e-mail di allerta una volta raggiunto il limite.

Limitazioni Funzionali

Le capacità di Auto-GPT, come rappresentate nel suo codice sorgente, presentano alcune limitazioni. Le sue strategie di risoluzione dei problemi sono governate dalle sue funzioni intrinseche e dall’accessibilità fornita dall’API di GPT-4. Per discussioni approfondite e possibili soluzioni, considera di visitare: Discussione su Auto-GPT.

Impatto dell’AI sul Mercato del Lavoro

La dinamica tra AI e mercato del lavoro è in continua evoluzione e viene documentata estensivamente in questo documento di ricerca. Un punto chiave è che mentre il progresso tecnologico spesso beneficia i lavoratori qualificati, rappresenta un rischio per coloro che svolgono compiti routinari. In realtà, gli avanzamenti tecnologici potrebbero sostituire alcuni compiti, ma allo stesso tempo creare nuove opportunità per compiti diversificati e intensivi in termini di lavoro.

Mercato del Lavoro e Agenti AI Autonomi

Si stima che circa l’80% dei lavoratori americani potrebbe scoprire che i modelli di apprendimento linguistico (LLM) influenzano circa il 10% delle loro attività quotidiane. Questa statistica sottolinea la fusione dei ruoli dell’AI e umani.

Il ruolo duplice dell’AI nel mercato del lavoro:

  • Aspetti Positivi: L’AI può automatizzare molti compiti, dalle attività di customer service ai consigli finanziari, offrendo un sollievo alle piccole imprese che non hanno i fondi per team dedicati.
  • Preoccupazioni: Il vantaggio dell’automazione solleva preoccupazioni riguardo alle potenziali perdite di lavoro, in particolare nei settori in cui l’intervento umano è fondamentale, come il supporto clienti. Insieme a ciò, c’è il labirinto etico legato all’accesso dell’AI a dati riservati. Ciò richiede una forte infrastruttura che garantisca trasparenza, responsabilità e utilizzo etico dell’AI.

Conclusione

Evidentemente, strumenti come ChatGPT, Auto-GPT e GPT-Engineer sono alla forente della trasformazione dell’interazione tra tecnologia e utenti. Con radici nelle iniziative open-source, questi agenti AI manifestano le possibilità dell’autonomia delle macchine, semplificando compiti che vanno dalla pianificazione allo sviluppo software.

Mentre ci muoviamo verso un futuro in cui l’AI si integra più profondamente nelle nostre routine quotidiane, diventa cruciale trovare un equilibrio tra l’accettazione delle capacità dell’AI e la salvaguardia dei ruoli umani. In una prospettiva più ampia, la dinamica tra AI e mercato del lavoro disegna un’immagine duplice di opportunità di crescita e sfide, richiedendo un’integrazione consapevole di etica tecnologica e trasparenza.

Ho trascorso gli ultimi cinque anni immergendomi nel mondo affascinante del Machine Learning e del Deep Learning. La mia passione e la mia esperienza mi hanno portato a contribuire a oltre 50 progetti di ingegneria del software diversi, con un focus particolare su AI/ML. La mia curiosità in corso mi ha anche portato verso l'elaborazione del linguaggio naturale, un campo che sono ansioso di esplorare ulteriormente.