Scrivo per segnalare un bug critico che coinvolge il plugin AI nell’ultima versione di Discourse. Questo problema ha reso illeggibili tutti i post della mia community e ho impiegato molto tempo per isolare la causa. Ecco una ripartizione dettagliata del problema:
Descrizione del problema
Dopo l’aggiornamento all’ultima versione di Discourse, tutti i post della mia community sono diventati illeggibili. Quando si tenta di aprire un qualsiasi argomento, gli utenti incontrano il seguente messaggio di errore:
“Spiacenti, non è stato possibile caricare l’argomento. Ciò potrebbe essere dovuto a un problema di connessione. Riprova. Se il problema persiste, faccelo sapere.”
Ho inizialmente sospettato un problema del server o di connessione, ma dopo aver controllato, tutto sembrava funzionare normalmente.
Ho trascorso un’intera serata testando sistematicamente tutti i plugin per identificare la fonte del problema. Ecco cosa ho fatto:
Disinstallato tutti i plugin: La mia community è tornata immediatamente alla normale funzionalità.
Reinstallato tutti i plugin tranne il plugin AI: La community ha continuato a funzionare senza problemi.
Reinstallato solo il plugin AI: Il problema si è ripresentato e tutti i post sono diventati nuovamente illeggibili.
Test di conflitto:
Per escludere la possibilità di un conflitto tra il plugin AI e altri plugin, ho:
Disinstallato tutti gli altri plugin e mantenuto installato solo il plugin AI.
Il problema è persistito: tutti i post sono rimasti illeggibili.
Sulla base dei miei test, il plugin AI è la causa diretta di questo bug. Impedisce il corretto caricamento dei post e questo comportamento è riproducibile in modo coerente. Il problema si verifica indipendentemente dal fatto che altri plugin siano installati o meno.
Questo bug sta seriamente compromettendo la funzionalità della mia community e al momento non posso utilizzare il plugin AI.
Non sono sicuro se qualcun altro abbia riscontrato lo stesso problema. È possibile correggere questo bug? Grazie!
Ciao @shannon1024 - Stai usando gli embedding per caso? Se sì, sospetto che potremmo non essere riusciti a migrare la configurazione degli embedding nel nuovo modo. Quale provider di embedding stai usando? Prova a disabilitare ai_embeddings_enabled finché non risolviamo.
Wow, hai assolutamente ragione! Hai individuato perfettamente il problema!!
Quando ho abilitato l’impostazione AI embeddings semantic related topics enabled
tutti i miei post hanno smesso di funzionare e non potevano essere aperti.
Proprio ora, ho disattivato quell’impostazione e tutto è tornato alla normalità! Grazie mille per il tuo aiuto!
Ottimo. Quale provider stai utilizzando per generare gli embedding?
Mi dispiace molto che sia successo. Non è mai stato nostra intenzione lasciare le cose non configurate o in uno stato di malfunzionamento. Abbiamo una migrazione che copia automaticamente la configurazione, quindi qualcosa deve essere andato storto lì. Se potessi farmelo sapere, ci darò un’occhiata.
Sto utilizzando il modello di OpenAI per la generazione di embedding. Vorrei condividere alcuni feedback e suggerimenti personali basati sulla mia esperienza, che potrebbero aiutare a migliorare il sistema:
Problemi di migrazione con la configurazione AI:
Quando si ripristinano backup o si migra una community Discourse, le configurazioni e le impostazioni per i modelli AI (ad esempio, chiavi API, impostazioni dei plugin) non vengono migrate correttamente. Ciò ha causato diversi problemi, incluso quello che ho riscontrato oggi. Ad esempio, dopo aver migrato la mia community e ripristinato un backup, le impostazioni del modello AI, le chiavi API e le configurazioni dei plugin non sono state trasferite correttamente, portando a malfunzionamenti.
Interfaccia confusa per le impostazioni dei plugin AI:
L’attuale interfaccia delle impostazioni per il plugin AI è piuttosto opprimente. Ad esempio, anche se nessun modello di embedding è configurato, alcune impostazioni correlate (come AI embeddings semantic related topics enabled) possono comunque essere abilitate. Ciò sembra controintuitivo e può portare a problemi imprevisti. Inoltre, il plugin ha decine di impostazioni visualizzate tutte su una singola pagina, rendendo difficile la navigazione e la comprensione delle loro relazioni.
L’interfaccia delle impostazioni potrebbe essere organizzata in sezioni funzionali, come Modelli di ricerca Google, Modelli di embedding semantici, Modelli di generazione di immagini, ecc.
Se un modello AI specifico (ad esempio, embedding) non è configurato, le impostazioni correlate dovrebbero essere automaticamente disabilitate o nascoste per evitare confusione ed errori.
Il problema con la configurazione degli embedding di OpenAI è stato risolto qui:
C’è una migrazione che copierà i dati e imposterà l’impostazione del modello selezionato per te, a meno che tu non l’abbia già configurata manualmente.
Inoltre, ho unito questa modifica che aiuterà a mitigare l’impatto del fatto che la funzionalità sia in uno stato non funzionante a causa della configurazione:
Capisco quello che hai detto riguardo alla configurazione opprimente. Abbiamo lavorato per migliorare l’esperienza utente spostando la configurazione degli LLM e ora abbiamo fatto lo stesso con gli embedding, il che ha portato alla rimozione di oltre 25 impostazioni del sito. Queste modifiche spesso richiedono la riscrittura di una grossa parte dell’interno del plugin, quindi richiedono tempo e impegno, ma puoi aspettarti che le cose continuino a migliorare nel tempo.
Per quanto riguarda i problemi di ripristino che hai menzionato, non mi è chiaro se si tratti di un problema ricorrente con il backup che non acquisisce le tabelle in cui risiede la configurazione dei modelli AI. In tal caso, fammelo sapere e indagherò.
Per questo particolare caso, il problema era un bug nella migrazione del database che ho scritto, che recupera dati da più impostazioni del sito e inserisce una riga nella tabella di configurazione degli embedding. Il bug l’ha trasformata in un’operazione nulla per i modelli OpenAI ed è estranea ai backup/ripristini.
Grazie per l’aggiornamento e per aver risolto rapidamente il problema dei problemi di embedding! Apprezzo il lavoro che tu e il team state facendo per migliorare il plugin discourse-ai e renderlo più facile da usare. Continuate così!