image/svg+xml
Logo Tom's Hardware
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Tom's Hardware Logo
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Forum
  • Editor's Choice
  • Sconti & Coupon
Offerte & Coupon
Accedi a Xenforo
Immagine di I migliori Mini PC da comprare nelle Offerte di Primavera Amazon I migliori Mini PC da comprare nelle Offerte di Primavera Am...
Immagine di Russia: nuovi processori a 16 e 32 core in arrivo Russia: nuovi processori a 16 e 32 core in arrivo...

Come usare ChatGPT su Raspberry Pi e su PC

Tramite questa guida vedremo come utilizzare un'apposita libreria di Python per integrare ChatGPT con un Raspberry Pi.

Advertisement

Avatar di Gabriele Scordamaglia

a cura di Gabriele Scordamaglia

@Tom's Hardware Italia

Pubblicato il 02/02/2023 alle 10:30 - Aggiornato il 05/03/2023 alle 17:26
Quando acquisti tramite i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Scopri di più

Avrete di certo sentito parlare di ChatGPT, l'intelligenza artificiale sviluppata da OpenAI che sta spopolando grazie alla naturalezza delle risposte che riesce a dare e con cui è possibile avviare vere e proprie conversazioni. Così come c'è chi la usa per puro scopo di intrattenimento, non sono rari i casi di persone che hanno fatto affidamento a ChatGPT per altri fini, come scrivere delle righe di codice in un determinato linguaggio di programmazione o banalmente farle scrivere un articolo (ma vi assicuriamo che tutto ciò che leggete qui su Tom's è totalmente scritto a mano).

Generalmente l'accesso all'intelligenza artificiale avviene via browser, collegandosi direttamente al sito web, ma tramite questa guida vedremo come utilizzare un'apposita libreria di Python per integrare ChatGPT con un Raspberry Pi (per il quale vi consigliamo la versione 4 o 3B+ in modo da godere di un'esperienza migliore), o più banalmente, per utilizzarlo da Windows, Linux e macOS.

Impostare le chiavi API su Raspberry Pi

  1. Effettuiamo il login su OpenAI;
  2. Clicchiamo su "View API keys";
    come-utilizzare-chatgpt-su-raspberry-pi-e-su-pc-265416.jpg
  3. Nella pagina che si apre, facciamo click sul pulsante "Create new secret key": annotate la chiave su un file di testo poiché ci servirà negli step successivi e non verrà mostrata di nuovo dal sito.
    come-utilizzare-chatgpt-su-raspberry-pi-e-su-pc-265417.jpg

Installare ChatGPT Python API su Raspberry Pi

  1. Apriamo il terminale su Raspberry e aggiorniamo tutto il software presente con il seguente comando:
    sudo apt update && sudo apt upgrade -y
  2. Installiamo la libreria openai utilizzando pip:
    pip3 install openai
  3. Apriamo il file bashrc (che è uno dei file nascosti nella directory principale):
    nano ~/.bashrc
  4. Andiamo alla fine del file e aggiungiamo la seguente linea:
    export PATH="$HOME/.local/bin:$PATH"
  5. Salviamo il file utilizzando CTRL + X, poi Y e diamo invio;
  6. Ricarichiamo il file bashrc per terminare la configurazione e successivamente possiamo chiudere il terminale:
    source ~/.bashrc

Creare un Chatbot per Raspberry Pi

  1. Avviamo Thonny, un editor per Python preinstallato sul Raspberry che possiamo trovare su Programming > Thonny;
    come-utilizzare-chatgpt-su-raspberry-pi-e-su-pc-265418.jpg
  2. Importiamo la libreria openai:
    import openai
  3. Creiamo un oggetto, model_engine, nel quale andremo a salvare il nostro modello di preferenza. Quello con capacità maggiore è sicuramente "text-davinci-003", ma vanno bene per l'utilizzo anche "text-curie-001", "text-babbage-001" e "text-ada-001" (il più "economico" per quanto riguarda i token):
    model_engine = "text-davinci-003"
  4. Creiamo un altro oggetto, openai.api_key, nel quale andremo a memorizzare la chiave API generata precedentemente:
    openai.api_key = "CHIAVE API"
  5. Creiamo una funzione, GPT(), che ha come argomento la query (in questo caso la domanda dell'utente):
    def GPT(query):
  6. Creiamo un altro oggetto, response, che passerà tutti i dettagli della nostra query a ChatGPT. Impostiamo la massima spesa di token a 1024, che potremo modificare successivamente poiché non verranno mai utilizzati tutti. Per quanto riguarda "temperature", il suo valore indicherà la "creatività" della risposta: per ottenere un buon compromesso tra una risposta originale e una risposta più "fattuale" vi consigliamo di impostarla a 0.5:
    response = openai.Completion.create(engine = model_engine,prompt = query,max_tokens = 1024,temperature = 0.5,)
  7. Recuperiamo i dati da ChatGPT, estraendo la risposta e il numero di token utilizzati:
    return str.strip(response['choices'][0]['text']), response['usage']['total_tokens']
  8. Creiamo una tupla per memorizzare le stringhe che utilizzeremo per uscire dalla chat:
    exit_words = ("q","Q","quit","QUIT","EXIT")
  9. Utilizziamo la seguente linea di codice per fare in modo che il codice venga eseguito in modo continuo:
    try:while True:
  10. Forniamo all'utente le istruzioni su come uscire dalla chat:
    print("Digita q, Q, quit, QUIT o EXIT e premi Invio per uscire dalla chat")
  11. Diamo poi la possibilità di fare una domanda:
     query = input("Chiedimi qualcosa: ")
  12. Definiamo la condizione di controllo per verificare la presenza delle parole utilizzate per chiudere la chat:
    if query in exit_words:
  13. Impostiamo il bot in modo da far comparire un messaggio personalizzato prima di chiudere la chat:
    print("Chat in chiusura, grazie ed arrivederci.")break
  14. Creiamo una condizione di else per gli altri casi:
    else:
  15. Salviamo l'output in due oggetti, res e usage:
    (res, usage) = GPT(query)
  16. Facciamo apparire la risposta nella shell di Python:
    print(res)
  17. Successivamente utilizziamo un separatore grafico personalizzabile e facciamo apparire il numero di token utilizzati:
    print("="*20)print("Hai utilizzato %s token" % usage)print("="*20)
  18. Creiamo un handler nel caso in cui l'utente utilizzi la combinazione CTRL + C per chiudere la chat:
    except KeyboardInterrupt:print("\nChiusura forzata della chat")
  19. Salviamo il file come ChatGPT-Chatbot.py e clicchiamo su "Run to start".

Le notizie più lette

#1
Come nasce l'oro: risolto un enigma di 20 anni

Scienze

Come nasce l'oro: risolto un enigma di 20 anni

#2
Russia: nuovi processori a 16 e 32 core in arrivo
5

Hardware

Russia: nuovi processori a 16 e 32 core in arrivo

#3
La Xbox Mode potrebbe rivoluzionare il gaming su Windows 11

Editoriale

La Xbox Mode potrebbe rivoluzionare il gaming su Windows 11

#4
Addio al problema più irritante di Google Messaggi
3

Smartphone

Addio al problema più irritante di Google Messaggi

#5
Recensione Lenovo ThinkPad L13 2-in-1 Gen 6, affidabile e versatile

Hardware

Recensione Lenovo ThinkPad L13 2-in-1 Gen 6, affidabile e versatile

👋 Partecipa alla discussione!

0 Commenti

⚠️ Stai commentando come Ospite . Vuoi accedere?

Invia

Per commentare come utente ospite, clicca quadrati

Cliccati: 0 /

Reset

Questa funzionalità è attualmente in beta, se trovi qualche errore segnalacelo.

Segui questa discussione

Advertisement

Ti potrebbe interessare anche

Russia: nuovi processori a 16 e 32 core in arrivo
5

Hardware

Russia: nuovi processori a 16 e 32 core in arrivo

Di Antonello Buzzi
I migliori Mini PC da comprare nelle Offerte di Primavera Amazon

Hardware

I migliori Mini PC da comprare nelle Offerte di Primavera Amazon

Di Dario De Vita
I migliori monitor da comprare nelle Offerte di Primavera Amazon

Hardware

I migliori monitor da comprare nelle Offerte di Primavera Amazon

Di Dario De Vita
Boox Palma 2 Pro: recensione dell'e-reader Android

Hardware

Boox Palma 2 Pro: recensione dell'e-reader Android

Di Andrea Ferrario
Parallels avverte: 8 GB limitano il MacBook Neo
6

Hardware

Parallels avverte: 8 GB limitano il MacBook Neo

Di Antonello Buzzi

Advertisement

Advertisement

Footer
Tom's Hardware Logo

 
Contatti
  • Contattaci
  • Feed RSS
Legale
  • Chi siamo
  • Privacy
  • Cookie
  • Affiliazione Commerciale
Altri link
  • Forum
Il Network 3Labs Network Logo
  • Tom's Hardware
  • SpazioGames
  • CulturaPop
  • Data4Biz
  • SosHomeGarden
  • Aibay
  • Coinlabs

Tom's Hardware - Testata giornalistica associata all'USPI Unione Stampa Periodica Italiana, registrata presso il Tribunale di Milano, nr. 285 del 9/9/2013 - Direttore: Andrea Ferrario

3LABS S.R.L. • Via Pietro Paleocapa 1 - Milano (MI) 20121
CF/P.IVA: 04146420965 - REA: MI - 1729249 - Capitale Sociale: 10.000 euro

© 2026 3Labs Srl. Tutti i diritti riservati.