AI bot - Agenti

:bookmark: Questa guida spiega come configurare e gestire gli Agenti per Discourse AI - Bot AI.

:person_raising_hand: Livello utente richiesto: Amministratore

Il bot AI di Discourse include un sistema flessibile per la gestione degli Agenti. Questa guida copre:

  • Metodi di interazione per gli Agenti AI
  • Opzioni di configurazione
  • Impostazioni avanzate
  • Comandi supportati
  • Possibilità di personalizzazione

:link: Scopri di più sul bot AI e su come abilitarlo in questa guida.

Cosa sono gli agenti?

Gli Agenti sono una potente funzionalità che ti consente di personalizzare il comportamento del motore AI nel tuo forum Discourse. Agiscono come un “messaggio di sistema” che guida le risposte e le interazioni dell’IA, aiutando a creare un’esperienza utente più personalizzata e coinvolgente.

Perché usare gli agenti?

Con gli agenti, puoi adattare il comportamento dell’IA per adattarlo meglio al contesto e al tono del tuo forum. Sia che tu voglia che l’IA sia più formale per un ambiente professionale, più informale per un forum della comunità o che incarni un personaggio specifico per un gioco di ruolo, gli agenti ti danno la flessibilità per farlo.

Accesso specifico per gruppo agli agenti

Inoltre, puoi configurarlo in modo che determinati gruppi di utenti abbiano accesso a agenti specifici. Ciò significa che puoi avere comportamenti AI diversi per diverse sezioni del tuo forum, migliorando ulteriormente la diversità e la ricchezza delle interazioni della tua comunità.

Interazione con gli Agenti

È possibile interagire con gli Agenti in diversi modi:

  1. Messaggio privato (PM)
  2. Messaggio diretto di chat (DM)
  3. Menzioni nei canali di chat
  4. Menzione in un argomento pubblico tramite @nome_utente_bot_esempio

Gli amministratori possono controllare quali metodi di interazione sono consentiti per ciascun agente.

Configurazione

Per configurare gli Agenti, vai su discourse.example.com/admin/plugins/discourse-ai/ai-agents.

Le opzioni di configurazione chiave includono:

  • Prompt di sistema: Guida la conversazione
  • Supporto Visione: Abilita per gli LLM basati sulla Visione, ad esempio GPT-4 Turbo, Claude 3
  • Modello predefinito: Richiesto per gli agenti menzionabili
  • Gruppi consentiti: Definisce le autorizzazioni utilizzando la sicurezza dei gruppi di Discourse
  • Caricamenti: Indicizza i file di testo per conoscenze aggiuntive (utilizzando RAG - Generazione Aumentata dal Recupero)
  • Comandi abilitati: Controlla l’accesso a comandi specifici
  • Abilita chat: Abilita la chat tramite DM (richiede il plugin chat, un modello linguistico di grandi dimensioni (LLM) predefinito e un utente)

Ecco una panoramica di una schermata di configurazione completa dell’agente AI:

Opzioni di configurazione avanzate

L’editor degli agenti offre diverse opzioni avanzate:

  • Temperatura e top_p (campionamento per nucleo): Controlla la creatività rispetto alla prevedibilità
  • Post di contesto massimi: Limita il numero di post forniti all’LLM per la cronologia - meno post ridurranno i costi, ma faranno “dimenticare” all’IA i contenuti più vecchi
  • Opzioni di caricamento:
    • Token di chunk: Controlla la divisione dei documenti
    • Token di sovrapposizione dei chunk: Imposta la sovrapposizione tra i chunk
    • Chunk di conversazione da cercare: Numero di frammenti di documento aggiunti alle query utente
    • LLM per il consolidamento delle domande: Scegli l’LLM per determinare le domande dell’utente

Prerequisiti per il supporto ai caricamenti

Per utilizzare il supporto ai caricamenti:

  1. Abilita l’impostazione ai_embeddings_enabled
  2. Configura un modello ai_embeddings_model

Discourse AI supporta vari modelli di embedding. I clienti con hosting gestito ottengono accesso gratuito al modello bge-large-en.

:information_source: Gli utenti self-hoster o coloro che desiderano più scelta possono ospitare autonomamente un modello di embedding o utilizzare modelli di Open AI, Google (Gemini) e altri.

Suddivisione del testo in Discourse AI

Discourse utilizza un Recursive Character Text Splitter per mantenere insieme paragrafi, righe e parole durante la divisione del testo. È possibile controllare la suddivisione del testo utilizzando il separatore [[metadata IL TUO METADATO QUI]]:

[[metadata sui gatti]]
una lunga storia sui gatti
[[metadata sui cani]]
una lunga storia sui cani

Questo metodo previene la “contaminazione dei chunk” assicurando che solo i dati pertinenti siano inclusi in ciascun chunk.

Debug degli agenti AI

Per eseguire il debug del tuo agente:

  1. Aggiungi utenti al gruppo specificato nell’impostazione ai bot debugging enabled groups
  2. Gli utenti di questo gruppo vedranno un pulsante di debug AI nella parte inferiore dei post AI
  3. Fai clic sul pulsante per accedere alla modale dell’interfaccia utente di debug

:warning: Ricorda: se fornisci informazioni vaghe o poco utili a un LLM, avrà grandi difficoltà a convertirle in informazioni utili.

Comandi supportati

Discourse AI supporta vari comandi, tra cui:

  • Categorie
  • Tag
  • Ricerca
  • Browser Web
  • Integrazione GitHub (Ricerca codice, Differenza Pull Request, Contenuto file)
    • Richiede che sia compilata l’impostazione ai bot github access token
  • Cerca Meta Discourse
  • Selezionatore casuale (Random Picker)
  • Leggi
  • Ora
  • Ricerca Google
    • Richiede che siano compilate le impostazioni ai google custom search api key e ai google custom search cx
  • Generazione di immagini tramite DALL-E
    • Richiede una chiave open_ai
  • Generazione di immagini tramite Stable Diffusion
    • Richiede che sia compilata l’impostazione ai stability api key
    • L’impostazione ai stability engine controlla l’algoritmo di generazione delle immagini
  • Schema
  • Impostazioni di ricerca
  • Impostazione del contesto

Alcuni comandi richiedono configurazioni aggiuntive o chiavi API.

Supporto per strumenti personalizzati

Puoi creare i tuoi strumenti utilizzando il supporto per strumenti personalizzati.

Personalizzazione degli agenti di sistema

  1. Crea un nuovo agente
  2. Copia e incolla il prompt di sistema dall’agente che desideri personalizzare
  3. Modifica secondo necessità
  4. Facoltativamente, disabilita l’agente di sistema originale per evitare duplicazioni

Personalizzazione della ricerca

Per personalizzare la ricerca per un nuovo agente:

  1. Crea un nuovo agente
  2. Aggiungi il comando “search”
  3. Configura le opzioni di ricerca, tra cui:

Ciò ti consente di delegare i permessi di ricerca, aumentare il numero di risultati o limitare la ricerca a sezioni specifiche del tuo sito.

7 Mi Piace

Un post è stato diviso in un nuovo argomento: Posso fornire una funzione generatrice di immagini a Discourse AI

Cosa fa esattamente lo strumento Leggi?

Inoltre, le menzioni nei post sono attualmente non funzionanti secondo questo bug report.

In sintesi, consente all’LLM la capacità di leggere argomenti e post sul tuo forum.

1 Mi Piace

In sostanza legge un argomento/post quando viene fornito un URL, un nome o un ID e altrimenti, o comunque, utilizza embed e cosa, quando, perché e come dipende dal modello stesso, dal prompting, ecc.?

2 Mi Piace

Oh scusa, stavo rispondendo a un post diverso :slight_smile:

Utilizza l’ID dell’argomento o l’ID dell’argomento + il numero del post per trovare il markdown grezzo di un argomento/post con alcune protezioni per la lunghezza massima.

Non dipende dall’embedding.

5 Mi Piace

Un po’ fuori tema, ma dato che non ho niente da chiedere e voi ragazzi pulirete questi argomenti di tanto in tanto, non mi interessa.

I titoli automatici nei messaggi privati con l’IA sono ora nella lingua corretta. Non è una cosa da poco, ma il suo valore psicologico è grande. Grazie!

4 Mi Piace

C’è un modo per aggiungere gli utenti Bot a un gruppo? Fondamentalmente voglio aggiungere un’icona avatar a quegli utenti, ma quando li aggiungo a un gruppo, non compaiono

Non compaiono, ma ci sono ancora. Puoi esserne sicuro provando ad aggiungere una persona AI una seconda volta. Oppure vedi il gruppo necessario nelle impostazioni di questi pseudo utenti.

1 Mi Piace

Quale parte del repository Discourse AI dovrei consultare se volessi sapere con precisione come funzionano gli strumenti del bot AI?

Strumento, Playground e Bot sono tutte buone aree con cui iniziare.

Vedi questo esempio: Understanding Tools in Discourse AI System - AI Conversation - Discourse Meta

3 Mi Piace

Precisamente la risposta che stavo cercando — grazie mille! Per chiunque possa interessare: consiglio di leggere il codice in questo repository per poter indirizzare meglio i tuoi prompt per gli strumenti della tua persona.

1 Mi Piace

Un post è stato diviso in un nuovo argomento: Ingegnerizzare una persona su cui fare affidamento nella cronologia della chat

Sto attualmente cercando di recuperare tutti i post di un argomento tramite lo strumento “Leggi”, ma fornisce solo un massimo di 100 post al modello LLM. Ho già impostato “Max post” su 999 nelle impostazioni della persona, ma il problema persiste.

Potrebbe esserci una limitazione della richiesta API lato server che causa il problema?

@sam hai qualche idea su questo, quale potrebbe essere la causa?

Non ho controllato il codice sorgente, ma sospetto che possa essere un limite fisso impostato nel codice stesso. Posso chiedere cosa stai cercando di ottenere con questo? Questo è un fattore chiave qui.

E forse sarebbe meglio usare la persona del Ricercatore del Forum?

Abbiamo la categoria “journal/log” che spesso contiene diverse centinaia di post in cui il proprietario dell’argomento segnala i progressi del suo progetto nell’arco di 4-5 mesi.

Il mio obiettivo è recuperare tutti i post all’interno di quell’argomento, filtrarli per autore = proprietario dell’argomento e creare un riassunto.

1 Mi Piace

Devi usare il ricercatore di forum per questo, è l’esatto caso d’uso per la persona

2 Mi Piace

@sam Mi piacerebbe, ma attualmente non supporta le immagini. È qualcosa che è in programma o non è una priorità al momento?

3 Mi Piace

Certo, posso aggiungerlo, non è un cambiamento troppo grande.

3 Mi Piace