notizia

Le stelle di GitHub superano le 160.000, popolare la versione avanzata di AutoGPT: nodi personalizzati, collaborazione multi-agente

2024-07-18

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Rapporto sul cuore della macchina

Dipartimento editoriale di Machine Heart

Naturalmente, la prossima generazione di AutoGPT è ancora open source.

Ricordi ancora il progetto "AutoGPT" promosso vigorosamente l'anno scorso dal guru dell'intelligenza artificiale Andrej Karpathy? Si tratta di un'applicazione open source sperimentale guidata da GPT-4 in grado di raggiungere autonomamente qualsiasi obiettivo fissato dall'utente, dimostrando il trend di sviluppo dell'intelligenza artificiale autonoma.

In più di un anno, il numero totale di stelle GitHub per questo progetto ha superato le 160.000, il che dimostra la sua continua popolarità.



Indirizzo GitHub: https://github.com/Significant-Gravitas/AutoGPT

Ieri l'autore del progetto ha annunciato l'arrivo della prossima generazione "AutoGPT" sul social media X, che attualmente è una versione pre-alpha. Rispetto alla generazione precedente, la prossima generazione "AutoGPT" semplifica più che mai la creazione, l'esecuzione e la condivisione degli agenti IA, migliorando notevolmente anche l'affidabilità.



Fonte immagine: https://x.com/SigGravitas/status/1812803289739633018

L'autore mostra come utilizzare "AutoGPT" di prossima generazione per creare, distribuire e utilizzare rapidamente un agente di marketing Reddit in grado di rispondere automaticamente ai commenti ed eseguire altre attività complesse. Il nuovo sistema non è più così inaffidabile e inefficiente come la prima versione di "AutoGPT".



Alla domanda se il progetto potesse creare applicazioni basate su più agenti, l'autore ha risposto affermativamente e ha affermato che questa era una ragione importante per realizzare il progetto.

Ora puoi progettare un diagramma che consenta a più agenti esperti di collaborare per risolvere un problema. Presto sarà disponibile anche SubGraphs, che aiuterà a semplificare il lavoro con grafici complessi.



Il progetto è anche personalizzabile per aggiungere nodi e scrivere nuovi blocchi a mano (una caratteristica chiave menzionata di seguito) è molto semplice. L'autore ha scoperto che Claude ha fatto un ottimo lavoro in questo senso ed è stato in grado di creare blocchi personalizzati in modo impeccabile.



Naturalmente, i due componenti principali del progetto (Server e Builder menzionati di seguito) possono essere eseguiti su macchine diverse.



Tuttavia, per la prossima generazione di "AutoGPT", l'autore ammette che è ancora in una fase molto iniziale, presenta difetti ed è relativamente elementare, ma spera comunque di condividerlo con tutti e di renderlo open source dall'inizio.



Componenti principali e caratteristiche chiave

Il progetto ha i seguenti due componenti principali, vale a dire il server AutoGPT back-end e il Builder AutoGPT front-end. Il server è responsabile della creazione di un sistema multi-agente composito, utilizzando gli agenti AutoGPT e altri componenti non agenti come primitive.

  • Server AutoGPT (backend):
  • https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/autogpt_server
  • AutoGPT Builder (frontend):
  • https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/autogpt_builder

I passaggi specifici per configurare ed eseguire Server e Builder sono i seguenti:

  • Passare al repository GitHub di AutoGPT;
  • Fare clic sul pulsante "Codice" e selezionare "Scarica ZIP";
  • Una volta scaricato, estrai il file ZIP in una cartella a tua scelta;
  • Apri la cartella decompressa e vai alla directory "rnd";
  • Entra nella cartella "AutoGPT Server";
  • Aprire una finestra di terminale nella directory "rnd";
  • Trova e apri il file README nella cartella AutoGPT Server;
  • Copia e incolla ogni comando nel README nel tuo terminale (Importante: attendi il completamento di ogni comando prima di eseguire quello successivo);
  • Se tutti i comandi vengono eseguiti senza errori, inserisci l'ultimo comando "poetry run app";
  • Vedi il server in esecuzione nel terminale;
  • Torna alla cartella "rnd";
  • Apri la cartella "Generatore AutoGPT";
  • Apri il file README in questa cartella;
  • Esegui il seguente comando nel terminale:

installazione npm

npm esegui sviluppo

Una volta che il front-end è in esecuzione, fare clic sul collegamento per andare a localhost:3000.

  • Dopo che il front-end è in esecuzione, fare clic sul collegamento per passare a "localhost:3000";
  • Fare clic sull'opzione "Costruisci";
  • Aggiungi alcuni blocchi per testare la funzionalità;
  • Collega i blocchi insieme;
  • Fare clic su "Esegui";
  • Controlla la finestra del tuo terminale. A questo punto dovresti vedere che il server ha ricevuto la richiesta, la sta elaborando e l'ha eseguita.

Seguendo i passaggi precedenti, puoi configurare e testare correttamente AutoGPT.



Fonte video: https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/

Oltre ai due componenti principali, la caratteristica chiave della prossima generazione di "AutoGPT" è l'uso di "Blocchi" per costruire agenti. Puoi combinare funzionalità altamente modulari per creare comportamenti personalizzati.

Attualmente, il progetto ha fornito blocchi corrispondenti per operazioni come la pubblicazione su Reddit, la messaggistica Discord e il recupero di riepiloghi di Wikipedia. Allo stesso tempo, è progettato per essere facile da creare e utilizzare. Ecco un esempio di un blocco tratto da un riassunto di Wikipedia:

classe GetWikipediaSummary(Blocco):

classe Input(BlockSchema):

argomento: str

classe Output(BlockSchema):

riassunto: str

def **init**(self):

super().__init__(

ID = "h5e7f8g9-1b2c-3d4e-5f6g-7h8i9j0k1l2m",

input_schema=OttieniWikipediaSummary.Input,

output_schema=OttieniWikipediaSummary.Output,

test_input={"topic": "Intelligenza artificiale"},

test_output={"summary": "L'intelligenza artificiale (IA) è l'intelligenza dimostrata dalle macchine..."},

def run(self, input_data: Input) -> BlockOutput:

risposta = richieste.get(f"https://en.wikipedia.org/api/rest_v1/page/summary/{input_data.topic}")

summary_data = risposta.json()

rendi "riepilogo", summary_data['estratto']

L'autore ha affermato che questo è solo l'inizio e che in futuro verranno aggiunti altri blocchi e che l'interfaccia utente verrà migliorata per migliorare notevolmente l'esperienza e la funzionalità complessive.