Discourse Chatbot 🤖

:information_source: Riepilogo Il primo Chatbot AI per Discourse
:hammer_and_wrench: Link al Repository GitHub - merefield/discourse-chatbot: An AI bot with RAG capability for Topics, Chat & Customer Support in Discourse, currently powered by OpenAI · GitHub
:open_book: Guida all’installazione Come installare i plugin in Discourse
:heart: Sponsorizzazione Considera la possibilità di diventare un sponsor del mio lavoro open source con un livello adeguato alle risorse e alle esigenze tue o della tua organizzazione, per garantire che questo plugin riceva le cure necessarie e continui a funzionare sul tuo sito in futuro.

Ti piace questo plugin? Metti una :star: su GitHub! :pray:

:information_source: Poiché si tratta di un plugin contribuito in modo indipendente, effettua richieste di supporto, segnalazione bug, UX e funzionalità qui in questo argomento. NB Questo plugin non è disponibile sull’hosting di Discourse.org. Puoi installarlo se sei self-hosted e forse se sei su hosting di terze parti (ma verifica con il tuo provider).

Che cos’è?

  • Il primo Chatbot AI per Discourse!
  • Puoi usare questo bot per alcune attività di supporto clienti (vedi questa guida Building a technical support chatbot)
  • Conversa con il bot in qualsiasi Topic o Canale Chat, uno a uno o con altri! Supporta i Thread.
  • Personalizza il carattere del tuo bot per adattarlo al tuo forum!
    • vuoi che suoni come William Shakespeare o Winston Churchill? fattibile!
  • Il bot in “Modalità RAG” può:
    • Cercare nel tuo forum** risposte, così il bot può diventare un esperto sull’argomento del tuo forum.
      • Riclassificare le ricerche per favorire particolari gruppi di autori o tag dei Topic
      • non limitarsi a essere a conoscenza delle informazioni sull’attuale Topic o Canale.
    • Chiedere ai tuoi utenti in privato i loro campi utente incompleti.
    • Generare e modificare immagini AI
    • Cercare su Wikipedia
    • Cercare notizie attuali*
    • Cercare su Google*
    • Fare il crawling di siti remoti*
    • Restituire i dati di mercato End Of Day per le azioni.*
    • Eseguire calcoli “complessi” in modo accurato (senza risposte inventate o “allucinazioni”!)
    • Questi “strumenti” possono essere estesi con un plugin, vedi sotto.
  • Supporto Vision - il bot può vedere le tue immagini e rispondere a domande su di esse!
  • Rispondere automaticamente ai nuovi Topic in Categorie specifiche
  • Utilizza l’API Open AI all’avanguardia e le funzionalità delle loro eccellenti Large Language Models (LLM) leader del settore.
  • Include un sistema di quote speciale per gestire l’accesso al bot: membri più fidati e/o paganti possono avere un accesso maggiore al bot!
    • Misurare l’utilizzo per Query o per Token.
  • Supporta anche connessioni Azure e server proxy.
    • Usa processi proxy di terze parti per tradurre le chiamate per supportare LLM alternativi come Gemini, ad esempio questo

*è necessario registrarsi per servizi API esterni (non affiliati). Link nelle impostazioni.

La modalità RAG è molto intelligente e conosce i fatti pubblicati sul tuo forum:

La modalità bot di base può a volte commettere errori, ma è più economica da gestire perché effettua meno chiamate al Large Language Model:


(Sorry Cina! :wink: )

:biohazard: **“Visione” del bot - cosa può vedere (potenzialmente condividere) e privacy :biohazard:

Questo bot può essere utilizzato in spazi pubblici sul tuo forum. Per rendere il bot particolarmente utile, esiste la modalità RAG (una impostazione per ogni livello di fiducia del bot). Questa non è impostata di default.

In questa modalità, il bot ha accesso, di default, a tutto il contenuto che un utente di Trust Level 1 vedrebbe, lavorando con questa impostazione:

Quindi, se interagisci con un Topic pubblico, c’è la possibilità che il bot possa “trapelare” informazioni se tendi a limitare l’accesso ai contenuti al livello di fiducia 0 o 1 tramite i permessi della Categoria. Questo livello è stato scelto perché, per esperienza, la maggior parte dei siti non limita i contenuti sensibili ai livelli di fiducia bassi, ma dipende dalle tue esigenze specifiche.

Per questa modalità, assicurati di avere almeno un utente con Trust Level 1 e nessuna appartenenza aggiuntiva a gruppi oltre ai gruppi automatizzati. (tieni presente che il bot conoscerà tutto ciò che un utente TL1 conoscerebbe e potrebbe condividerlo). Puoi scegliere di abbassare chatbot embeddings benchmark user trust level se hai un utente Trust Level 0 senza appartenenza aggiuntiva a gruppi oltre a quelli automatizzati.

In alternativa:

  • Passa chatbot embeddings strategy a category e popola chatbot embeddings categories con le Categorie di cui desideri che il bot sia a conoscenza. (Tieni presente che se aggiungi Categorie private, il bot dovrebbe esserne a conoscenza e qualsiasi cosa il bot dica in pubblico, ovunque, potrebbe trapelare a utenti con privilegi inferiori, quindi fai attenzione a cosa aggiungi).
  • usa il bot solo in modalità normale (ma il bot non vedrà alcun post)
  • mitiga con la moderazione

Inoltre, tieni presente che tutto ciò che il bot può “vedere” viene condiviso con Open AI.

Puoi vedere che questa configurazione è un compromesso. Per rendere il bot utile, deve essere a conoscenza dei contenuti del tuo sito. Attualmente non è possibile per il bot leggere selettivamente i contenuti riservati ai membri e condividerli solo con i membri, cosa che alcuni amministratori potrebbero trovare limitante, ma non c’è un modo semplice per risolvere questo problema mentre il bot è in grado di parlare in pubblico. Contattami se hai esigenze speciali e desideri sponsorizzare del lavoro in questo ambito. La gestione dei permessi del bot con la ricerca semantica è un problema non banale. Il sistema è attualmente ottimizzato per la velocità. NB I messaggi privati non vengono mai letti dal bot.

Informazioni utili

  • Potrebbe non funzionare su installazioni multi-sito (non testate esplicitamente), ma le PR sono benvenute per migliorare il supporto :+1:
  • La risposta dell’API Open AI può essere lenta a volte sui modelli più avanzati a causa dell’alta domanda. Tuttavia, il Chatbot supporta anche GPT 3.5, che è veloce e reattivo e perfettamente capace.
  • È estensibile e il supporto per altri bot cloud è previsto (da qui il nome generico del plugin), ma attualmente supporta ‘solo’ l’interazione con i Large Language Models (LLM) di Open AI come GPT-4 nativamente. Contattami se desideri aggiungere ulteriori tipi di bot o vuoi supportarmi per aggiungerne altri. PR benvenute. È già possibile usare server proxy per accedere ad altri servizi senza modifiche al codice!
  • È estensibile per supportare la ricerca di altri contenuti oltre all’insieme corrente fornito.

Configurazione

Prerequisiti

Oltre alle normali modifiche a app.yml, devi essere consapevole del seguente:

Per compilare con Chatbot o AI Topic Summary hai bisogno almeno della versione 0.5.1 dell’estensione postgres pgvector.

La maggior parte delle persone avrà già almeno questa versione. Tuttavia, occasionalmente alcune installazioni hanno una versione più vecchia installata. Questo ti impedirà di compilare con un errore simile a: PG::UndefinedObject: ERROR: access method "hnsw" does not exist

Prima assicurati che il tuo container sia in esecuzione:

./launcher restart app

poi entra nel tuo container

./launcher enter app

poi entra nel database e aggiorna la versione di pgvector:

:/var/www/discourse# su postgres -c 'psql discourse'
\dx
ALTER EXTENSION vector UPDATE;
\dx
exit

ora esci dal container con exit

Ora dovresti essere in grado di ricompilare.

Creazione degli Embeddings

Se desideri che il Chatbot conosca i contenuti del tuo sito, attiva questa impostazione:

chatbot_embeddings_enabled

Necessario solo se vuoi usare il bot di tipo RAG e assicurarti che sia a conoscenza dei contenuti del tuo forum, non solo dell’attuale Topic.

Inizialmente, dobbiamo creare gli embeddings per tutti i post nell’ambito, così il bot può trovare informazioni sul forum. Questo ora avviene in background una volta attivata questa impostazione e non devi fare nulla.

Questo lavoro di seeding può richiedere un periodo di giorni per siti molto grandi.

Ambito degli Embeddings

Questo è determinato da diverse impostazioni:

  • chatbot_embeddings_strategy che può essere “benchmark_user” o “category”
  • chatbot_embeddings_benchmark_user_trust_level imposta il livello di fiducia rilevante per il primo caso
  • chatbot_embeddings_categories se la strategia è impostata su category, dà al bot accesso a considerare tutti i post nella Categoria specificata.

Se cambi queste impostazioni, nel tempo, la popolazione degli Embeddings si modificherà.

Per accelerare la popolazione

Entra nel container:

./launcher enter app

ed esegui il seguente comando rake:

rake chatbot:refresh_embeddings[1]

che attualmente si eseguirà due volte per ragioni sconosciute (scusa! sentiti libero di inviare una PR) ma il [1] assicura che la seconda volta aggiungerà solo gli embeddings mancanti (cioè nessuno immediatamente dopo la prima esecuzione) quindi è in qualche modo irrilevante.

Nel caso improbabile che tu venga rate limited da OpenAI (improbabile!) puoi completare gli embeddings facendo questo:

rake chatbot:refresh_embeddings[1,1]

che riempirà i mancanti (quindi nulla perso dall’errore) ma continuerà più cautamente inserendo un ritardo di 1 secondo tra ogni chiamata a Open AI.

Rispetto alle interazioni del bot, gli embeddings non sono costosi da creare, ma tieni d’occhio il tuo utilizzo sulla dashboard di Open AI in ogni caso.

NB Gli embeddings vengono creati solo per i Post e solo per quei Post a cui un utente Trust Level One avrebbe accesso. Questo sembrava un compromesso ragionevole. Non creerà embeddings per post da contenuti accessibili solo a Trust Level 2+.

Query utile per Data Explorer per monitorare la popolazione degli embeddings

@37Rb scrive: “Ecco una query SQL che sto usando con il plugin Data Explorer per monitorare e verificare gli embeddings… nel caso possa aiutare qualcun altro.”

SELECT e.id, e.post_id AS post, p.topic_id AS topic, p.post_number,
       p.topic_id, e.created_at, e.updated_at, p.deleted_at AS post_deleted
FROM chatbot_post_embeddings e LEFT JOIN posts p ON e.post_id = p.id

Errore quando stai cercando di ottenere un embedding per troppi caratteri.

Potresti ottenere un errore del genere:

OpenAI HTTP Error (spotted in ruby-openai 6.3.1): {"error"=>{"message"=>"This model's maximum context length is 8192 tokens, however you requested 8528 tokens (8528 in your prompt; 0 for the completion). Please reduce your prompt; or completion length.", "type"=>"invalid_request_error", "param"=>nil, "code"=>nil}}

Ecco come risolverlo …

Come indicato nel tuo messaggio di errore, il modello di embedding ha un limite di:

8192 token

tuttavia ne hai richiesti 8528

Devi ridurre il valore corrente di questa impostazione:

chatbot_open_ai_embeddings_char_limit:

di circa 4 volte la differenza e vedere se funziona (un token è circa 4 caratteri).

Quindi, in questo esempio, 4 x (8528 - 8192) = 1344

Quindi abbassa il valore corrente di chatbot_open_ai_embeddings_char_limit di 1500 per essere sicuro. Tuttavia, il valore predefinito è stato impostato in base a molti test per post in inglese, ma per altre lingue potrebbe essere necessario abbassarlo.

Questo taglierà più testo e richiederà token e sperabilmente l’embedding passerà. Se non dovesse funzionare, dovrai confermare la differenza e ridurla ulteriormente di conseguenza. Alla fine sarà abbastanza basso da non doverlo più guardare.

Come cambiare il modello di Embeddings

Non devi fare nulla se non cambiare l’impostazione: il lavoro in background si occuperà delle cose, seppur gradualmente.

Se vuoi davvero accelerare il processo, fai:

  • Cambia l’impostazione chatbot_open_ai_embeddings_model nel tuo nuovo modello preferito
  • È meglio prima eliminare tutti i tuoi embeddings attuali:
    • entra nel container ./launcher enter app
    • entra nella console rails rails c
    • esegui ::DiscourseChatbot::PostEmbedding.delete_all
    • exit (per tornare alla root all’interno del container)
  • esegui rake chatbot:refresh_embeddings[1]
  • se per qualsiasi motivo lato Open AI fallisce a metà, eseguilo di nuovo fino ad arrivare al 100%
  • il nuovo modello è noto per essere più accurato, quindi potresti dover abbassare chatbot_forum_search_function_similarity_threshold o potresti non ottenere risultati :). Ho abbassato il mio valore predefinito da 0.8 a 0.6, ma i risultati possono variare.

Tipo di Bot

Prenditi un momento per leggere l’intero set di impostazioni del Plugin. L’impostazione chatbot bot type è fondamentale, e ce n’è una per ogni “Livello di Fiducia” del chatbot:

La modalità RAG è superiore ma effettuerà più chiamate all’API, potenzialmente aumentando i costi. Detto questo, la riduzione della sua propensione a produrre ‘allucinazioni’ potrebbe facilitarti il passaggio da GPT-4 a GPT-3.5 e potresti finire per spendere meno nonostante il significativo aumento di utilità e affidabilità dell’output. GPT 3.5 è anche più adatto per il tipo Agent in base ai tempi di risposta. Un potenziale win-win! Sperimenta!

Per far funzionare il Chatbot in Chat devi avere la Chat abilitata.

Come far rispondere il bot

Regole di base

  • Se autorizzato nelle impostazioni del plugin, il bot risponderà a ogni Post o Messaggio se invocato in un Topic o Canale Chat con un solo Utente finché non si uniscono altre persone.
  • il bot sarà sempre invocato se lo @ menzioni

Auto-risponditore speciale per Categoria

  • Per Categoria, puoi far sì che il Chatbot risponda a ogni nuovo Topic e puoi dargli istruzioni speciali su cosa fare, governate da un prompt specifico della Categoria che imposti nelle impostazioni della Categoria.

Dovrebbe iniziare qualcosa come:

“Damm il benvenuto dicendo ciao e presentati. Condividi con me 5 post sul forum usando la ricerca locale del forum rilevante per il mio primo post, includi i link”

cioè devi scriverlo in prima persona come se l’utente stesse chiedendo aiuto. Non è un prompt di sistema. Non descrive come il bot dovrebbe comportarsi (quello è per il prompt di sistema che viene comunque inviato). È un utente che chiede aiuto specifico (seppur nascosto). Fondamentalmente lo scrivi come se fosse un post di un utente senza dover menzionare il bot.

Velocità di risposta del bot

Questo è governato principalmente da un’impostazione: ‎chatbot_reply_job_time_delay‎ sulla quale hai discrezione.

L’intenzione di avere questa impostazione è:

  • proteggerti dal raggiungere i limiti di rate di Open AI
  • proteggere il tuo sito da utenti che potrebbero voler spammare il bot e farti spendere soldi.
  • dare a Discourse abbastanza tempo per caricare immagini hotlinkate così il bot può vederle.

È ora di default ‘2’ secondi e può essere ridotto a zero :racing_car: , ma tieni presenti i rischi sopra. La visione del bot (se la stai usando) è particolarmente sensibile a questa impostazione. Se noti che il bot non vede le tue immagini, prova ad aumentare questo valore.

Impostando questo a zero e il bot, anche in modalità ‘agent’, diventa molto più ‘reattivo’.

Ovviamente questo può essere un po’ artificiale e nessuna persona reale scriverebbe davvero così velocemente … ma impostalo a tuo gusto e in base al tuo budget.

NB Non posso controllare direttamente la velocità di risposta dell’API di Open AI - e la regola generale era che più sofisticato è il modello che imposti, più lenta sarà solitamente questa risposta. Ciò che è più comunemente il caso ora è che i modelli ‘mini’ tendono a essere più veloci.

Raccolta dei Campi Utente alimentata da AI (sperimentale)

Se un Utente ha alcuni Campi Utente Opzionali che sono attualmente vuoti, abilitando questa impostazione, farà sì che il bot inizi a chiedere all’utente le informazioni. Progrederà attraverso i Campi Utente pendenti fino a quando non saranno completati e poi tornerà al comportamento normale.

image

(scusa per la lentezza di risposta - questo è stato registrato in dev)

NB Questa funzione supporta solo:

  • Testo
  • Dropdown
  • Conferme

La selezione multipla non è ancora supportata.

I campi devono essere opzionali

L’ordine dei Campi Utente determina la priorità.

Supporto Ollama & llama3

Il supporto Ollama per (il completamente FANTASTICO!) llama3 è ora disponibile:

Questo è per quando il bot viene eseguito localmente in dev o nel cloud con server ollama … e in modalità Basic:

  • assicurati che il modello sia llama3:

  • l’URL personalizzato deve essere impostato su http://localhost:11434:

image

Se hai un server abbastanza grande, potresti servire ollama nel cloud lì.

DeepSeek Hype :sweat_smile:

Entra nell’azione con Chatbot :rocket:

Puoi usare il bot almeno in modalità Basic per accedere a V3 e R1

Ho usato:

(nessun affiliazione)

che ospita i loro modelli.

Configura così:

Assicurati di impostare la modalità bot Basic e sostituisci la tua chiave.

Ma potresti essere in grado di usare DeepSeek AI direttamente se puoi accedere al loro sito web per registrarti :sweat_smile:

L’URL di base sarebbe “https://api.deepseek.com”.

OpenAI

Devi ottenere un token da https://platform.openai.com/ per usare l’attuale bot. È impostato un modello linguistico predefinito (uno dei più sofisticati), ma puoi provare un’alternativa più economica, la lista è qui

C’è una parte automatizzata della configurazione: all’aggiunta a un Discourse, il plugin attualmente imposta un utente bot AI con i seguenti attributi

  • Nome: ‘Chatbot’
  • User Id: -4
  • Bio: “Ciao, non sono una persona reale. Sono un bot che può discutere con te. Non prendermi troppo sul serio. A volte, ho anche ragione su alcune cose!”
  • Nome Gruppo: “ai_bot_group”
  • Nome Completo Gruppo: “AI Bots”

Puoi modificare il nome, l’avatar e la bio (vedi stringa locale in admin → customize → text) come desideri, ma rendilo facile da menzionare.

Non è gratis, quindi c’è un sistema di quote, e devi configurarlo

Inizialmente nessuno avrà accesso al bot, nemmeno lo staff.

Chiamare l’API Open AI non è gratis dopo che si è esaurita l’allocation iniziale gratuita! Quindi, ho implementato un sistema di quote per tenerlo sotto controllo, ridurre i costi e prevenire abusi. Il costo non è folle con queste piccole interazioni, ma potrebbe accumularsi se diventa popolare. Puoi leggere di più sui prezzi di OpenAI nella loro pagina prezzi.

Per interagire con il bot devi appartenere a un gruppo che è stato aggiunto a uno dei tre livelli di set di gruppi fidati, basso, medio e alto. Puoi modificare ciascuno del numero di interazioni consentite a settimana per set di gruppi fidati nelle impostazioni corrispondenti.

Devi anche popolare i gruppi. Questa configurazione è interamente a tua discrezione. Partono vuoti quindi inizialmente nessuno avrà accesso al bot:

In questo esempio ho fatto in modo che staff abbia accesso ad alta fiducia, mentre trust_level_0 abbia bassa fiducia. Ottengono le quote corrispondenti in tre impostazioni aggiuntive.

Nota che l’utente ottiene la quota in base al gruppo fidato più alto a cui appartiene.

“Prompt Engineering”

Ci sono diverse impostazioni di testo “locale” che influenzano ciò che il bot riceve e come il bot risponde.

La più importante che dovresti considerare di cambiare è il prompt system del bot. Questo viene inviato ogni volta che parli con il bot.

Per il bot di base, puoi provare un prompt di sistema come:

‘Sei un fan estremo della Formula Uno, ami tutto ciò che riguarda lo sport motoristico e i suoi livelli di eccitazione ad alta ottanazione’ invece del predefinito.

(Per il bot rag devi mantenere tutto dopo “Sei un assistente utile.” o potresti rompere il comportamento dell’agente. Resetta se incontri problemi. Anche qui sperimenta!)

Prova uno più appropriato per l’argomento del tuo forum. Sii creativo!

Nota che ora ci sono due prompt di sistema per ogni tipo di bot. Uno .open è usato quando si parla con il bot in “pubblico”. L’altro .private è applicato quando si parla con il bot in Messaggi Personali o chat Direct Message. Questo è così che puoi personalizzare il comportamento privato per esempio per un bot di supporto.

Cambiare queste stringhe locali può far comportare il bot in modo molto diverso ma non possono essere modificate al volo. Raccomanderei di cambiare solo il prompt di sistema poiché gli altri svolgono un ruolo importante nel comportamento dell’agente o nel fornire informazioni su chi ha detto cosa al bot.

NB Nei Topic, il primo Post e il Titolo del Topic vengono inviati in aggiunta alla finestra di Post (determinata dall’impostazione lookback) per dare al bot più contesto.

Puoi modificare queste stringhe in Admin → Customize → Text sotto chatbot.prompt., le più importanti delle quali sono i prompt di sistema che sono in: chatbot.prompt.system.

Supporta sia Post che Messaggi Chat!

Il bot supporta Messaggi Chat e Post Topic, inclusi Messaggi Privati (se configurato).

Puoi invitare il bot a rispondere rispondendogli, o @ menzionandolo. Puoi impostare quanto indietro il bot guardi per ottenere contesto per una risposta. Più grande è il valore, più costosa sarà ogni chiamata.

C’è un pulsante di chat rapida fluttuante che ti connette immediatamente al bot. Il suo stile è un po’ sperimentale (modificando alcuni valori z-index del tuo forum base su mobile) e potrebbe entrare in conflitto su alcune pagine. Questo può essere disabilitato nelle impostazioni. Puoi scegliere se caricare il bot in una chat 1 a 1 o in un Messaggio Personale.

Ora puoi scegliere la tua icona preferita (default :robot: ) o se l’impostazione è lasciata vuota, prenderà l’avatar dell’utente bot! :sunglasses:

avatar:

OR icon:

E ricorda, puoi anche personalizzare il testo che appare quando è espanso:

image

… usando Admin → Customize → Text

(sebbene potresti dover personalizzare un po’ il CSS per adattarlo ai colori e alle dimensioni che desideri).

Qualche aiuto per il debugging

  • assicurati che l’impostazione chatbot include inner thoughts in private messages sia ON
  • assicurati che l’impostazione chatbot enable verbose rails logging sia ON
  • ssh sul tuo server
  • cd /var/discourse/shared/standalone/log/rails
  • in parallelo chiedi qualcosa al bot nel PM
  • torna alla console immediatamente
  • cerca questo tipo di messaggi:
    • chat generale = tail -n 2000 production.log | grep {\"model\":\"
    • chiamate vision = tail -n 2000 production.log | grep {\"type\":\"image_url\"
  • controlla i “pensieri interni” nel PM

Estensione del set di strumenti del Chatbot con plugin

Il plugin Chatbot ha la capacità di aggiungere altre funzioni in plugin separati, così non devi mantenere una fork del repo Chatbot.

Esempio di plugin funzione qui:

ma ovviamente potresti aggiungerlo a qualsiasi plugin …

Questa funzione è stata aggiunta in questa PR

Se hai bisogno di aiuto per estendere Chatbot, puoi assumermi per aiutarti.

Disinstallazione del plugin - Importante!

A causa dei recenti sforzi per semplificare il plugin, gli unici passaggi necessari per disinstallare il plugin ora sono rimuovere la dichiarazione clone.

Grazie per il tuo interesse nel plugin!

Disclaimer: Non sono responsabile di ciò che il bot risponde. Considera il plugin in fase Beta e le cose potrebbero andare storte. Migliorerà con il feedback. Ma non necessariamente la risposta del bot :rofl: Ti preghiamo di capire i pro e i contro di un LLM e di cosa sono e non sono capaci e dei loro limiti. Sono molto bravi a creare testo convincente ma spesso possono essere fattualmente sbagliati.

Nota Importante sulla Privacy: qualsiasi cosa scrivi sul tuo forum potrebbe essere inoltrata a Open AI come parte della scansione del bot degli ultimi post una volta che viene invitato a rispondere (ovviamente questo è limitato all’attuale Topic o Canale Chat). Sebbene sia quasi certo che non verrà incorporato nei loro modelli pre-addestrati, useranno i dati nelle loro analisi e log. Assicurati di aggiungere questo fatto nelle tue TOS & dichiarazioni sulla privacy del forum. Link correlati: https://openai.com/policies/terms-of-use, https://openai.com/policies/privacy-policy, https://platform.openai.com/docs/data-usage-policies

Copyright: Open AI ha fatto una dichiarazione sul Copyright qui: https://help.openai.com/en/articles/5008634-will-openai-claim-copyright-over-what-outputs-i-generate-with-the-api

TODO/Voci della Roadmap

  • Aggiungere test front-end e back-end :construction:
  • Aggiungere indicatore “bot che digita” e “streaming delle risposte” (@Aizada_M, @MarcP) :construction:
  • dimenticato di menzionare il bot? Far sì che il bot risponda alle modifiche che aggiungono la sua @ menzione (@frold )
  • Aggiungere un badge? Hai menzionato @botname (@frold )
  • Aggiungere impostazione per includere prompt Categoria e Post Fissati? (@Ed_S)
  • Idem Bio per ogni prompt della cronologia dei messaggi? (@Ed_S , @codergautam). Funzionerà davvero. Otteniamo prove.
  • Aggiornare Discourse Frotz con questa codebase migliore?
  • Passare a usare pgvector a favore di pgembedding per la ricerca vettoriale ora che il primo supporta la ricerca HNSW veloce. :white_check_mark:
  • Aggiungere ricerca semantica così che il bot possa leggere i tuoi Post del forum e diventare un “esperto” :wink: :white_check_mark:
  • Aggiungere comportamento agente per ridurre le allucinazioni e sfruttare informazioni affidabili e fattuali. :white_check_mark:
  • Aggiungere logica extra per convertire i nomi utente sospetti in @ menzioni (@frold ) :white_check_mark:
  • Aggiungere supporto GPT-4 (quando Open AI mi riterrà degno di accesso! :sweat_smile: ) :white_check_mark:
  • Aggiungere supporto nome modello personalizzato. :white_check_mark:
  • Aggiungere opzione per rimuovere le citazioni dai Post prima di passare il testo all’API. :white_check_mark:
  • Migliorare trasparenza e gestione degli errori quando Open AI restituisce uno stato di errore :white_check_mark:
  • Aggiungere capacità di retry per richieste API scadute :white_check_mark:
  • Aggiungere supporto per ChatGPT :white_check_mark:
  • Lint del plugin agli standard core di Discourse :white_check_mark:
  • Aggiungere workflow CI :white_check_mark:
  • Aggiungere impostazioni per influenzare la natura della risposta del bot (es. quanto è stravagante). :white_check_mark:
  • includere Titolo Topic & primi Post al prompt :white_check_mark:
  • Aggiungere impostazione per passare dai dati grezzi Post/Messaggio a cooked per potenzialmente sfruttare meglio i dati di addestramento web (suggerimento di @MarcP). NB Potrebbe costare di più e limitare ciò che viene restituito poiché i token di input sono contati e cooked è molto più grande. penso che abbiamo abbandonato questa idea

Crediti:

*Usa ancora il motore chat GPT di OpenAI, ma ora può sfruttare funzioni locali e dati da chiamate API per limitare le allucinazioni.

104 Mi Piace
Building a technical support chatbot
Answer feature
Webhooks on chat messages?
How to check what prevents rake migrate?
Creating bot on discourse
AI Helper Plugin
Copy custom file in discourse container while build
Voice to text integration
Allow specifiy user different from guardian.user in chat services such as Chat::CreateMessage
How to add a ChatGPT trained AI to discourse?
Cannot get the js in my component to compile SyntaxError: Private field must be used in an enclosing class
Allow ChatBot to read PDFs so it can join in a group discussion
How to create a custom ChatGPT based bot?
Discourse and Coveo
Link for new DM / personal chat message with pre-filled information
UX IPhone issues
How to respond to automatic topics with AI
Comparison between discourse-ai AI Bot and merefield/discourse-chatbot
Allow multiple ‘new topic’ drafts
I have error when upgrade the latest discourse
Two different answers from gpt4o - one right, one wrong.. !?
Is the shortcut to start AI conversation a user setting or not?
Setting Form Templates with a tag
Recommendation: chatbot to support discussion in threads
Photography Mentor Bot
Grouped Site Settings under Headings in Plugins
Update Not Completed and Discourse not opening
Recommendation: chatbot to support discussion in threads
Discourse AI Topic Summary :robot:
Discourse AI Topic Summary :robot:
Hubot Adapter for Discourse
Hubot Adapter for Discourse
Verbose log
Making the case for a hard cap feature on user group AI usage for AI bots and AI Helper
LLMs and the impact on customer support
2024: The Year in Review
How to respond to automatic topics with AI
What User Information is Exposed to LLMs in Discourse AI
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Configure AI Chatbot for Trust Level 0 Access
Auto responder using AI
Discourse AI Topic Summary :robot:
Discourse Chat Bridge (Telegram)
AI personas integration of the chat plugin: It would be great if site users could chat with AI personas
What's the best way to store data with a plugin?
ChatGPT Assistant Integration
Create posts with AI
Multisite vs multiple containers
Training a model on a site's posts?
How are we all feeling about ChatGPT and other LLMs and how they'll impact forums?
GPT-4 with vision available
Use AI to request summary and others things from topic
Upgrading from /admin/upgrade takes *very* long
Embed additional explainer text in Form Template
We need prompt chains: Allow custom AI persona tools to access LangChain.js and/or longer execution time
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Configure AI Chatbot for Trust Level 0 Access
Enabling AI Bot in Chat
When I start a conversation with the AI, it gives two answers to my question
Balancing Costs and Functionality in AI-Powered Forums
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Weekly Summary of AI topics
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Interact with discourse from Python?
Sidekiq not working
Locations Plugin :earth_africa:
Lessons from Colossal Caves
Issue after Rebuilding Discourse on Digital Ocean Droplet
Locations Plugin :earth_africa:
I have error when upgrade new version of discourse
I have error when upgrade new version of discourse
Site down after upgrade via SSH - how to fix?
2023: The Year in Review
Character count when writing description
Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)
Is there an option to use Discourse Chat as a customer service type of chat?
Configure AI Chatbot for Trust Level 0 Access