Semplice chatbot per WordPress con Cheshire Cat AI

L’esigenza di avere dei chatbot efficaci e “intelligenti” nelle proprie applicazioni e nei propri siti è sempre maggiore. Il motivo è che questo tipo di interazione può ridurre i tempi per il recupero delle informazioni di cui l’utente ha bisogno e può costituire il primo livello di un helpdesk efficiente ed utile. I vecchi e fastidiosi chatbot, che ti facevano soltanto perdere la pazienza, non si usano più perché, ormai, è molto semplice creare dei sistemi basati sugli LLM e addestrati con informazioni proprietarie e rilevanti.

In questo post vedremo come è possibile inserire un chatbot in un sito WordPress e collegarlo a Cheshire Cat AI [1], un’interfaccia per l’uso e la gestione di LLM simile a OpenWeb UI.

Descrizione del progetto

Questo progetto è simile a quello realizzato in un post precedente con OpenWebUI [7] e, come quello, utilizzerà Ollama [8] come motore di LLM e mistral:7b come LLM.

Il sistema quindi sarà costituito da un sito WordPress, sul quale installeremo un plugin chiamato Cheshire Cat Chatbot, collegato a un backend costituito da Cheshire Cat AI che, a sua volta, utilizzerà il motore Ollama per eseguire il solito modello mistral:7b. Insomma una bella catena di prodotti che però costituiranno un sistema completo e funzionante.

In questo post, installeremo tutto in locale, ma, siccome sembra che una soluzione simile sia stata adottata anche dalla Regione Toscana [4], si può pensare che, con le opportune modifiche e ottimizzazion,  potrebbe essere un sistema utilizzabile anche in produzione.

Prerequisiti

E’ necessario che, sul computer su cui si sta lavorando, ci sia già un sito WordPress in esecuzione, si può per esempio usare il programma LocalWP per tirarne su uno velocemente [10] [11].

Anche Ollama deve essere già installato e configurato, il post [8] spiega come farlo in pochi semplici passaggi e come fare in modo che utilizzi mistral:7b come LLM.

Sul sistema locale (nel mio caso Windows 11), infine, deve essere installato e in esecuzione Docker (Docker Desktop su Windows).

Installazione e configurazione

Dopo aver installato WordPress e Ollama si può procedere con i seguenti passaggi:

  1. Installazione di Cheshire Cat AI (container Docker):
    1. In una cartella a piacere (es. provacheshire) creare un file compose.yml con questo contenuto:
      services:
        cheshire-cat-core:
          image: ghcr.io/cheshire-cat-ai/core:latest
          container_name: cheshire_cat_core
          ports:
            - 1865:80
            - 5678:5678
          environment:
            - CCAT_API_KEY=Ky-dmuH27489j
          volumes:
            - ./static:/app/cat/static
            - ./plugins:/app/cat/plugins
            - ./data:/app/cat/data
          extra_hosts:
            - "host.docker.internal:host-gateway"

      Questo comando crea un container con tre volumi (dischi) su cui gira Chershire Cat AI sulla porta 80 del container. L’applicazione però è pubblicata all’esterno del container sulla porta 1865 (1865:80). Inoltre viene definito un token di connessione per proteggere la comunicazione tra il plugin WordPress e Cheshire.

    2. Creare ed eseguire il conteiner con il comando:
      docker compose up
    3. Quando il container sarà partito, si potrà accedere accedere all’interfaccia di Cheshire Cat AI dal link http://localhost:1865/admin.
    4. Ci si può autenticare con l’utente amministratore di default: admin / admin.
  2. Configurazione di Cheshire Cat AI (connessione ad Ollama):
    1. Aprire una shell ed avviare Ollama in locale con il solito comando: ollama serve. E’ importante che sia in ascolto su tutte le interfacce (0.0.0.0) e non solo su quella locale 127.0.0.1 affinché possa essere visibile dalle applicazioni che girano su un container.
    2. Da shell, eseguire il comando ollama list per vedere l’elenco dei modelli che sono stati installati e che è possibile usare, in questo caso scegliamo mistral:7b:
    3. Dall’interfaccia di Cheshire Cat AI andare su Settings–>Large Language Model–>Configure e compilare i seguenti campi:
      • Base URL: http://host.docker.internal:11434
      • Model: mistral:7b
    4. Cliccare su Save.
    5. A questo punto, tornando su Home, è possibile effettuare la prima interrogazione da interfaccia Web:
  3. Installazione e configurazione del plugin WordPress:
    1. Avviare in locale un sito WordPress, per esempio con Local [11].
    2. Autenticarsi come amministratore del sito.
    3. Andare in WP–>Plugin–>Aggiungi plugin e cercare il plugin Cheshire Cat Chatbot:
    4. Installare ed attivare il plugin.
    5. Andare in WP–>Stregatto e compilare i seguenti campi:
      • URL dello Stregatto: http://localhost:1865
      • Token dello Stregatto: Ky-dmuH27489j
    6. Cliccare su Salva le modifiche.
    7. Andare su WP–>Stregatto–>Configurazione e attivare le seguenti impostazioni:
      • Abilita chat globale: si
      • Mostra su tutte le pagine: si.
      • Abilita la chat sulla gome page: si.
    8. A questo punto, sulla home page del sito, verrà mostrato il popup con il chatbot che è possibile interrogare.

Considerazioni e possibili sviluppi

Quello presentato in questo progetto è un sistema completo nel senso che contiene tutte le componenti per poter creare un sistema chatbot personalizzabile e privato. Le componenti di cui è costituito sono open source quindi è possibile utilizzarle, nel rispetto delle licenze, all’interno delle proprie applicazioni web.

L’esempio proposto è molto semplice ed ha lo scopo solo di mettere insieme e descrivere sommariamente tutti gli elementi di cui è composto, ma è possibile realizzare soluzioni complesse ed articolate [4].

In particolare con Cheshire Cat AI è possibile realizzare sistemi RAG ed avviare script personalizzati al verificarsi di alcuni eventi, cosa molto utile se si vogliono creare procedure automatizzate.  Magari nelle prossime settimane proverò ad approfondire lo studio di questo sistema e proporre delle modifiche e dei miglioramenti a questo sistema.

Possibili approfondimenti:

  • Realizzazione di un sistema RAG con Cheshire Cat AI.
  • Gestione degli hook su Cheshire CAT AI.

Galleria fotografica

Fonti e riferimenti

    1. Cheshire Cat AI sito ufficiale.
    2. Cheshire Cat Chatbot plugin per WordPress di Marco Buttarini.
    3. Serie di lezioni sullo Stregatto del prof. Michael Saccone Informatica, Youtube.
    4. Considerazioni tecniche ed architetturali su possibili implementazioni di AI, Regione Toscana.
    5. Canale Discord di Chesire Cat AI.
    6. Cheshire Cat AI, Il Framework Rivoluzionario per LLM su Smartstrategy.eu.
    7. Open WebUI: un’interfaccia grafica per Ollama, su questo blog.
    8. Eseguire un modello LLM in locale con Ollama, su questo blog.
    9. RAG con Open WebUI: Chef Gino il chatbot che sa cucinare, su questo blog.
    10. LocalWP, sito ufficiale.
    11. Come Installare WordPress in locale con Local By Flywheel, di Pascal Claro su Youtube.
2 giorni ago

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *