Questa guida spiega come creare, configurare e integrare strumenti AI personalizzati all’interno del plugin Discourse AI, consentendo agli amministratori di estendere le capacità del bot con funzioni JavaScript definite dall’utente.
Livello utente richiesto: Amministratore
Gli strumenti sono funzionalità programmabili che possono essere utilizzate dal bot AI per eseguire attività specifiche o recuperare informazioni oltre alle semplici risposte basate su testo. Questi strumenti sono script o integrazioni che consentono al bot di interagire con API esterne, manipolare dati o eseguire funzioni aggiuntive per estendere le proprie capacità.
Riepilogo
Questa documentazione copre:
- Creazione di un nuovo strumento AI personalizzato
- Configurazione dei parametri e degli script degli strumenti
- API disponibili per gli script degli strumenti
- Integrazione di strumenti personalizzati con le persone AI
- Test e risoluzione dei problemi degli strumenti personalizzati
Creazione di un nuovo strumento AI personalizzato
Per creare un nuovo strumento AI:
- Navigare in Pannello di amministrazione > Plugin > Discourse AI > Strumenti
- Fare clic su “Nuovo strumento” (è possibile utilizzare preset esistenti per conoscere le opzioni)
- Compilare i seguenti campi:
- Nome: Il nome dello strumento così come presentato all’LLM
- Descrizione: La descrizione dello strumento così come presentato all’LLM
- Riepilogo: Riepilogo di ciò che lo strumento fa per assistere gli utenti (visualizzato nei dettagli)
- Parametri: Definire gli input di cui il tuo strumento ha bisogno così come presentati all’LLM
- Script: Il codice JavaScript che alimenta il tuo strumento
- Fare clic su “Salva”
Configurazione degli script degli strumenti
API disponibili
I tuoi script degli strumenti hanno accesso alle seguenti API:
-
Richieste HTTP:
http.get(url, options) http.post(url, options)Utilizzare queste per interagire con servizi esterni. È possibile utilizzare
optionsper specificare gli header HTTP:http.get(url, { headers: { Auth: "some value" } }) http.post(url, { headers: { Auth: "some value", body: "some body" } }) http.patch(url, { headers: { Auth: "some value", body: "some body" } }) http.delete(url, { headers: ...}) http.put(url, { headers: ... , body: ...}) -
Integrazione LLM (Language Model):
llm.truncate(text, length)Ciò consente di manipolare il testo entro i limiti di token del modello AI.
-
Integrazione di caricamento personalizzato (RAG)
index.search(query, { filenames: options, limit: max_fragments_optional }) -
Supporto per la creazione di caricamenti
upload.create(filename, base_64_content) -
Controllo della catena di esecuzione
chain.setCustomRaw(raw) - imposta il corpo della richiesta POST nella catena.
Funzioni richieste
Il tuo script deve implementare:
invoke(params): La funzione principale che viene eseguita quando lo strumento viene chiamatodetails(): (Opzionale) Fornisce informazioni aggiuntive sull’esecuzione dello strumento
Esempio di script:
function invoke(params) {
let result = http.get("https://api.example.com/data?query=" + params.query);
return JSON.parse(result.body);
}
function details() {
return "Fetched data from Example API";
}
Limitazioni e sicurezza
- Timeout di esecuzione: gli strumenti hanno un timeout predefinito di 2 secondi
- Richieste HTTP: Massimo 20 richieste per esecuzione dello strumento
- Ambiente Sandboxed: Nessun accesso al file system del server o alle librerie Ruby
Test del tuo strumento
Dovresti testare qualsiasi strumento che costruisci per assicurarti che i risultati forniti all’LLM corrispondano alle tue aspettative.
Integrazione di strumenti con persone AI
Per aggiungere il tuo strumento personalizzato a una Persona AI:
- Vai su Pannello di amministrazione > Plugin > Discourse AI > Persone
- Modifica una persona esistente o creane una nuova
- Nella sezione “Strumenti”, vedrai i tuoi strumenti personalizzati elencati accanto agli strumenti integrati
- Seleziona il tuo strumento personalizzato per aggiungerlo alla persona
Strumenti personalizzati in azione
Una volta fornito lo strumento personalizzato al tuo LLM, questo può utilizzarlo per migliorare la conversazione.
Risoluzione dei problemi
Se il tuo strumento non funziona come previsto:
- Utilizza l’interfaccia di test per assicurarti che si comporti come previsto per i tuoi input.
- Assicurati che il tuo gruppo sia in
ai_bot_debugging_allowed_groups. I membri di questo gruppo hanno pieno accesso alle trascrizioni del bot; puoi visualizzare i log dell’AI lì. - Se sta succedendo qualcosa di inaspettato, visita
https://NOME_SITO/logsper verificare la presenza di errori.





