Intelligenza artificiale bot Telegram: Bot di Telegram con intelligenza artificiale in 10 minuti

Quindi, per creare un chat-bot di Telegram con AI tutto ciò di cui abbiamo bisogno è:
  1. API di Telegram. Come wrapper, ho preso una comprovata libreria di python-telegram-bot
  2. IA dell’API. Ho scelto un prodotto di Google, nello specifico Dialogflow . Fornisce un’API gratuita abbastanza buona. Il wrapper Dialogflow per Python

Passaggio 1. Creiamo un bot in Telegram

Scegliamo un nome e lo inviamo a @botfather . Dopo la creazione del bot, otterremo il token API, lo salveremo da qualche parte, poiché in futuro ne avremo bisogno.

Passaggio 2. Scriviamo le basi del nostro bot

Creare una cartella denominata “Bot”, nella quale poi creare il file bot.py. Ecco il codice del nostro bot. Apri la console e vai nella directory con il file, installa python-telegram-bot.

pip install python-telegram-bot — aggiorna

Dopo l’installazione, possiamo già scrivere le “basi”, che per ora risponderanno semplicemente con lo stesso tipo di messaggi. Importiamo i moduli necessari e registriamo il nostro token API:

Successivamente, scriviamo 2 gestori di comandi. Si tratta di funzioni di callback che verranno chiamate alla ricezione dell’aggiornamento. Scriviamo due di queste funzioni per il comando / start e per qualsiasi messaggio di testo normale. Due parametri vengono passati lì come argomenti: bot e update. Bot contiene i metodi necessari per interagire con l’API e update contiene informazioni sul messaggio in arrivo.

Ora tutto ciò di cui abbiamo bisogno è assegnare questi gestori alle notifiche e iniziare a cercare gli aggiornamenti. Questo è fatto molto semplicemente:

Ora possiamo testare le prestazioni del nostro nuovo bot. Incolliamo il nostro token API sulla riga 2, quindi salviamo le modifiche, spostiamolo nella console ed eseguiamo il bot:

python bot.py

Dopo l’inizio mandagli un messaggio. Se tutto è stato fatto correttamente vedrai questo:

Le basi per il bot sono scritte, passiamo allo step successivo!
Ps non dimenticare di disattivare il bot. Per farlo torna alla console e premi Ctrl + C, attendi un paio di secondi e il bot completerà con successo il lavoro.

Passaggio 3 Impostazioni AI

Prima di tutto, registrati su Dialogflow (basta accedere con il tuo account Google). Subito dopo l’autorizzazione, si arriva al pannello di controllo.

Fai clic su Crea agente e compila i campi con quello che vuoi (questo non avrà alcun ruolo, è solo necessario per l’azione successiva).
Dopodiché fai clic su Crea.

Ora ti dirò perché l'”Agente” che abbiamo creato in precedenza non ha alcun ruolo. Nella scheda Intenti, ci sono “comandi” su cui funziona il bot. Ora può rispondere solo a frasi come “Ciao”, e se non capisce, risponde “Non ti ho capito”. Non molto impressionante. Dopo aver creato il nostro agente vuoto, abbiamo un sacco di altre schede. Dobbiamo fare clic su Agenti predefiniti (questi sono agenti già appositamente addestrati che hanno molti comandi) e selezionare Small Talk dall’intero elenco.

Fare clic su Importa. Quindi, senza modificare nulla, clicca su Ok. L’agente è stato importato e ora possiamo configurarlo. Per fare ciò, nell’angolo in alto a sinistra fai clic sull’ingranaggio vicino a Small-Talk e accedi alla pagina delle impostazioni. Ora possiamo cambiare il nome dell’agente come desiderato (lo lascio com’era). Modifichiamo il fuso orario e nella scheda Lingue ci assicuriamo che sia stata impostata la lingua inglese.

Ora torniamo in Generale e copiamo il token di accesso del cliente

Ora che la nostra intelligenza artificiale è completamente pronta, possiamo tornare al bot

Passaggio 4. Mettiamo tutto insieme

L’intelligenza artificiale è pronta, le basi dei bot sono pronte, cosa c’è dopo?

Successivamente, dobbiamo scaricare il wrapper API da Dialogflow per python.

pip install apiai

Perfetto. Ora torniamo al nostro bot.

Aggiungiamo alla nostra sezione “Impostazioni” l’importazione dei moduli apiai e json (in futuro dovrai disassemblare le risposte da dialogflow). Ora sembra così:

Vai alla funzione textMessage (che è responsabile della ricezione di qualsiasi messaggio di testo) e invia i messaggi ricevuti al server Dialogflow:

Questo codice invierà una richiesta a Dialogflow, ma dobbiamo anche estrarre la risposta. Dopo aver aggiunto un paio di righe, il messaggio di testo si presenta così:

Alcune spiegazioni:

richiesta.getresponse().read()

ottenere la risposta dal server, codificata in byte. Per decodificarlo, applichiamo semplicemente il metodo:

decodifica(‘utf-8’)

E dopo di che “avvolgiamo” tutto in:

json.loads()

Ora tutto ciò che serve è salvare tutto e controllare il bot

Passaggio 5.

Ci sono voluti 10 minuti per creare il nostro primo bot AI. Naturalmente ha ancora bisogno di un addestramento massiccio. Puoi farlo nella sezione Formazione su Dialogflow.

Ora, se vuoi ospitare il tuo bot, puoi utilizzare la guida Dove ospitare i bot di Telegram .