Cosa sono gli AI Artifacts?
Gli AI Artifacts sono strumenti potenti che consentono agli utenti di creare, incorporare e interagire con componenti web dinamici direttamente all’interno di un post su Discourse. Questi componenti possono contenere HTML, CSS e JavaScript personalizzati, abilitando una varietà di casi d’uso come:
- Incorporare quiz o moduli interattivi.
- Visualizzare dati con grafici ricchi e animazioni.
- Integrare applicazioni o strumenti web leggeri.
- Uno strumento per apprendere framework web, librerie JavaScript e altro.
Gli AI Artifacts migliorano seamless i post di Discourse aggiungendo interattività, garantendo al contempo un’esperienza di navigazione sicura.
Impostazioni del sito
Gli amministratori possono configurare diverse impostazioni:
1. Abilitazione della funzionalità
- Impostazione:
discourse_ai_enabled- Assicurati che questa impostazione globale sia abilitata affinché gli AI Artifacts funzionino.
2. Modalità di sicurezza
- Impostazione:
ai_artifact_security- Opzioni:
disabled: Disabilita il sistema degli artifactslax: Gli artifacts appaiono automaticamente nei post senza richiedere interazione dell’utente.hybrid: Gli artifacts richiedono un clic per l’esecuzione per impostazione predefinita, ma gli autori dei post possono aggiungeredata-ai-artifact-autorunal markup di incorporamento per far sì che specifici artifacts vengano eseguiti immediatamente.strict: Gli utenti devono attivare esplicitamente gli artifacts nel proprio browser cliccando un pulsante “Visualizza” o “Esegui”. Questa impostazione è raccomandata per ambienti attenti alla sicurezza. (predefinito)
- Opzioni:
3. Accesso al creatore degli artifacts
- Per impostazione predefinita, l’agente Artifact Creator è limitato ai soli utenti dello staff. Questa restrizione garantisce che solo individui fidati possano creare artifacts, minimizzando il rischio di utilizzi impropri o malevoli.
- Se è richiesto un accesso più ampio, le autorizzazioni devono essere configurate manualmente da un amministratore del sito.
Utilizzo degli AI Artifacts nei post
Gli artifacts vengono creati automaticamente dall’agente Artifact Creator su richiesta.
L'artifact sopra è stato generato utilizzando GPT-4o e la libreria anime.jsUna volta creati, sono privati per te e per l’agente Artifact Creator. Gli utenti che possono condividere conversazioni AI (quelli che appartengono ai gruppi ai bot public sharing allowed groups) possono anche rendere pubblico un artifact condividendo la conversazione.
Una volta condiviso, puoi utilizzare il seguente markup HTML per renderizzarlo in un post:
<div class="ai-artifact" data-ai-artifact-version="3" data-ai-artifact-id="71"></div>
(dove la versione e l’ID dell’artifact sono la tua versione dell’artifact)
Considerazioni sulla sicurezza
Dato che gli AI Artifacts possono eseguire HTML, CSS e JavaScript scritti su misura, Discourse ha implementato robuste misure di sicurezza:
1. Sandbox in iframe
- Gli artifacts vengono renderizzati all’interno di contenitori
iframeisolati con attributisandboxper limitare operazioni potenzialmente pericolose come:- Cross-site scripting.
- Accesso a siti o API esterne.
2. Content Security Policy (CSP)
- Tutte le risorse negli artifacts (come le librerie JavaScript) sono limitate a domini sicuri e preapprovati, come:
- https://cdn.jsdelivr.net
- https://cdnjs.cloudflare.com
- https://unpkg.com
- https://ajax.googleapis.com
- https://d3js.org
- https://code.jquery.com
- https://esm.sh
3. Modalità di sicurezza
- Modalità Strict: È raccomandata per ambienti in cui gli artifacts non sono completamente fidati. Gli utenti dovranno attivare manualmente gli artifacts nel proprio browser prima che vengano renderizzati.
4. Accesso e autorizzazioni
- Gli artifacts sono visibili solo a:
- Il loro creatore.
- Gli utenti con le autorizzazioni corrette per visualizzare il post associato (ad esempio, messaggi personali).
- Gli artifacts pubblici devono essere esplicitamente contrassegnati come tali condividendo la conversazione AI.
5. Limiti di lunghezza
- La dimensione di HTML, CSS e JavaScript in un artifact è limitata a 64 KB ciascuno. Questo garantisce che i componenti rimangano leggeri e non sovraccarichino gli utenti o i sistemi.
Archiviazione degli artifacts
Gli artifacts web possono opzionalmente memorizzare dati per utente. Per farlo, suggerisci al creatore dell’artifact di “usare l’archiviazione utente” o qualcosa di simile.
Questo sistema consente di memorizzare coppie chiave-valore:
- Private (visibili solo agli amministratori e a utenti specifici)
- Pubbliche (visibili a tutti gli utenti, inclusi quelli anonimi)
Le coppie chiave-valore sono protette rispetto al post da cui è originato l’artifact; tuttavia, se condividi pubblicamente un artifact, tutti saranno autorizzati ad aggiungere chiavi.
Per controllare l’archiviazione puoi utilizzare le impostazioni nascoste:
ai_artifact_kv_value_max_length(gli elementi predefiniti possono essere lunghi al massimo 5000 caratteri)ai_artifact_max_keys_per_user_per_artifact(predefinito 100)
FAQ
Chi può creare AI Artifacts?
Per impostazione predefinita, solo gli utenti dello staff (ad esempio, amministratori o moderatori) possono creare artifacts tramite l’agente Artifact Creator. Questo agente semplifica il processo di progettazione di widget web interattivi utilizzando HTML, CSS e JavaScript.
Cosa succede se clicco su un artifact?
- In modalità lax, gli artifacts appaiono automaticamente.
- In modalità hybrid, gli artifacts richiedono un clic per impostazione predefinita, ma possono essere eseguiti automaticamente se l’incorporamento include
data-ai-artifact-autorun. - In modalità strict, cliccare il pulsante “Esegui” attiva l’artifact e ne consente il caricamento nel browser.
Gli AI Artifacts sono sicuri?
Sì. Gli AI Artifacts vengono eseguiti in ambienti strettamente controllati:
- Sono isolati in sandbox e non possono interagire direttamente con l’applicazione Discourse o il contesto utente, ma solo tramite messaggistica iframe.
- La modalità strict ti dà il controllo sull’attivazione.
- Gli artifacts sono privati per impostazione predefinita; devi condividerli attivamente per concedere accesso globale.
Posso vedere il codice sorgente degli artifacts?
Sì. Quando Discourse AI genera artifacts, includerà il markup completo, il CSS e il JavaScript.
Quali LLM sono supportati?
Gli artifacts possono essere generati utilizzando qualsiasi LLM configurato; tuttavia, vari LLM sono specializzati e meglio ottimizzati per la creazione di artifacts.
Abbiamo ottenuto buoni risultati con o3, Anthropic Claude Sonnet 3.7 - 4.0, GPT-4.1, Gemini Pro 2.5 e altri. In generale, i modelli più avanzati funzionano meglio.
La creazione di artifacts comporta un ampio processo di prova ed errore; la sperimentazione è fondamentale.