# Discourse AI - Ricerca AI

**URL:** https://meta.discourse.org/t/discourse-ai-ai-search/282420
**Category:** Site Management
**Tags:** how-to, ai, ai-search
**Created:** [16 Ottobre 2023, 4:55pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420 "2023-10-16T16:55:50Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [16 Ottobre 2023, 4:55pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/1 "2023-10-16T16:55:51Z")

</div>

> 🔖 Questa guida spiega come abilitare e configurare la funzionalità di ricerca AI, che fa parte del plugin [Discourse AI](https://meta.discourse.org/t/discourse-ai/259214).
> 
> 🙋 Livello utente richiesto: Amministratore

Simile a [Argomenti correlati](https://meta.discourse.org/t/discourse-ai-related-topics/281807), la ricerca AI ti aiuta a trovare gli argomenti più pertinenti utilizzando la somiglianza testuale semantica che va oltre la corrispondenza esatta di parole chiave utilizzata dalla ricerca tradizionale. Ciò porta alla scoperta di argomenti che non sono corrispondenze esatte ma sono comunque pertinenti alla ricerca iniziale. Se non riesci a trovare ciò che stai cercando, la ricerca AI è qui per aiutarti!

## Funzionalità

- Somiglianza testuale semantica: va oltre la semplice corrispondenza di parole chiave e utilizza l’analisi semantica per trovare la somiglianza testuale
- Ricerca rapida AI: aggiunge automaticamente risultati AI nel popup del menu di ricerca quando vengono trovati pochi risultati regolari (abilitabile con `ai_embeddings_semantic_quick_search_enabled`)
- Attivabile/disattivabile per la ricerca AI nella ricerca a pagina intera
- HyDE (Hypothetical Document Embeddings) opzionale: utilizza un LLM per espandere le query per risultati migliori
- Risultati indicati dall’icona ✨
- Applicabile sia agli utenti anonimi che a quelli autenticati

## Abilitazione della Ricerca AI

### Prerequisiti

Per utilizzare la Ricerca AI è necessario configurare gli Embeddings. Un Large Language Model (LLM) è opzionalmente necessario se si abilita HyDE (Hypothetical Document Embeddings) per una migliore qualità di ricerca.

**Embeddings**

Se si utilizza il nostro hosting, forniremo un’opzione predefinita. Per gli self-hoster, seguire la guida su [Discourse AI - Embeddings](https://meta.discourse.org/t/discourse-ai-embeddings/259603)

**Large Language Model (LLM) (opzionale — per HyDE)**

Un LLM è richiesto solo se si abilita l’impostazione `ai_embeddings_semantic_search_use_hyde`, che utilizza un LLM per creare un documento ipotetico dalla query di ricerca prima di incorporarlo. Ciò può migliorare la qualità dei risultati, ma aggiunge latenza e costi.

Per iniziare, è possibile configurarli tramite la pagina delle impostazioni [Discourse AI - Large Language Model (LLM)](https://meta.discourse.org/t/discourse-ai-large-language-model-llm-settings-page/319903).

- [OpenAI](https://meta.discourse.org/t/discourse-ai-openai-configure-api-keys/280783)
- [Anthropic](https://meta.discourse.org/t/discourse-ai-anthropic-configure-api-key/280936)
- [Azure OpenAI](https://meta.discourse.org/t/discourse-ai-azure-openai-configure-api-keys/282442)
- AWS Bedrock con accesso Anthropic
- [Self-Hosting di un LLM OpenSource per DiscourseAI](https://meta.discourse.org/t/self-hosting-an-opensource-llm-for-discourseai/290923)
- [Google Gemini](https://meta.discourse.org/t/configure-api-keys-for-google-gemini/289556)

### Configurazione

1. Accedere a `Admin` → `Plugins` → `Discourse AI` → `Features` → `Embeddings` per trovare tutte le impostazioni di ricerca AI
2. Abilitare `ai_embeddings_enabled` per gli Embeddings
3. Abilitare `ai_embeddings_semantic_search_enabled` per attivare la ricerca AI sulla ricerca a pagina intera
4. Abilitare facoltativamente `ai_embeddings_semantic_quick_search_enabled` per aggiungere risultati AI nel popup del menu di ricerca
5. Abilitare facoltativamente `ai_embeddings_semantic_search_use_hyde` per utilizzare HyDE per risultati migliorati (richiede un LLM)

## FAQ Tecnico

> **Espandi per una panoramica della logica di ricerca AI (con HyDE abilitato)**
>
> ```plaintext
> mermaid height=255,auto
> sequenceDiagram
> User->>+Discourse: Cerca "gamification" 
> Discourse->>+LLM: Crea un articolo su "gamification" in un forum su<br> "Discourse, un sistema di forum Internet open source."
> LLM->>+Discourse: La gamification comporta l'applicazione di elementi di game design come<br>punti, badge, livelli e classifiche a contesti non di gioco...
> Discourse->>+EmbeddingsAPI: Genera Embeddings per "La gamification comporta l'applicazione del game design..."
> EmbeddingsAPI->>+Discourse: [0.123, -0.321...]
> Discourse->>+PostgreSQL: Dammi gli argomenti più vicini per [0.123, -0.321...]
> PostgreSQL->>+Discourse: Argomenti: [1, 5, 10, 50]
> Discourse->>+User: Argomenti: [1, 5, 10, 50]
> 
> ```

**Come funziona la Ricerca AI?**

- Quando HyDE è abilitato (`ai_embeddings_semantic_search_use_hyde`), la query di ricerca viene eseguita tramite un LLM che [crea un argomento/post ipotetico](https://arxiv.org/abs/2212.10496). Gli Embeddings vengono quindi generati da quel post ipotetico e utilizzati per cercare corrispondenze simili sul tuo sito. Quando HyDE è disabilitato (impostazione predefinita), la query di ricerca viene incorporata direttamente e utilizzata per il _matching_ di similarità. In entrambi i casi, i risultati vengono uniti ai risultati di ricerca regolari utilizzando la Reciprocal Rank Fusion (RRF) per riordinare i primi risultati.

**Come vengono elaborati i dati di argomenti/post?**

- Quando HyDE è abilitato, i dati LLM sono elaborati da un fornitore di terze parti; fare riferimento al proprio fornitore specifico per maggiori dettagli. Per impostazione predefinita, il microservizio Embeddings viene eseguito insieme ad altri server che ospitano i vostri forum esistenti. Non è coinvolta alcuna terza parte qui, e tali informazioni specifiche non lasciano mai la vostra rete interna nel nostro data center privato virtuale.

**Dove vanno i dati?**

- Quando HyDE è abilitato, un argomento/post ipotetico creato dal fornitore LLM viene temporaneamente memorizzato nella cache insieme agli Embeddings per quel documento. I dati degli Embeddings sono archiviati nello stesso database in cui archiviamo i vostri argomenti, post e utenti, È un’altra tabella di dati al suo interno.

**Che aspetto ha il “modello semantico” degli Embeddings? Come è stato “addestrato” e c’è un modo per testare che possa applicarsi accuratamente agli argomenti nelle nostre comunità “specializzate”?**

- Per impostazione predefinita utilizziamo modelli open source pre-addestrati, [come questo](https://huggingface.co/sentence-transformers/all-mpnet-base-v2). Li abbiamo implementati per molti clienti e abbiamo scoperto che funzionano bene sia per le comunità di nicchia che per quelle generiche. Se le prestazioni non sono sufficienti per il vostro caso d’uso, abbiamo modelli più complessi pronti all’uso, ma secondo la nostra esperienza, l’opzione predefinita è una scelta solida.

---

<div class="post-metadata">

### Author: ![RBoy](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@RBoy](https://meta.discourse.org/u/RBoy)
#### Post date: [13 Febbraio 2024, 4:36pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/4 "2024-02-13T16:36:17Z")

</div>

Ho notato un piccolo bug nell’interfaccia utente per `ai embeddings semantic search hyde model`. Passaggi per replicare

1. Installa il plugin AI Discourse
2. Apri impostazioni → Configura chiave Gemini
3. Abilita `i embeddings semantic search enabled`
4. `ai embeddings semantic search hyde model` mostra _Google - gemini-pro (non configurato)_

Il _non configurato_ non scompare fino a dopo che tutte le configurazioni sono state abilitate e la pagina viene aggiornata successivamente.

---

<div class="post-metadata">

### Author: ![Saif](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saif/32/318253_2.png) [@Saif](https://meta.discourse.org/u/Saif)
#### Post date: [16 Febbraio 2024, 11:25pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/8 "2024-02-16T23:25:20Z")

</div>

> [@RBoy](#):
>
> Il _non configurato_ non scompare finché tutte le configurazioni non sono abilitate e la pagina non viene aggiornata successivamente.

Penso che questa sia una limitazione della nostra pagina delle impostazioni del sito, quindi mi scuso per questo e sono contento che tu sia riuscito a risolvere.

---

<div class="post-metadata">

### Author: ![RBoy](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@RBoy](https://meta.discourse.org/u/RBoy)
#### Post date: [29 Febbraio 2024, 7:39am UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/9 "2024-02-29T07:39:07Z")

</div>

Una domanda sulla semantica. In alcuni moduli AI vedo un riferimento all’uso di `Gemini` mentre in altri vedo un riferimento a `Gemini-Pro`. Si riferiscono a modelli diversi (Gemini Nano, Pro e Ultra) o si riferiscono allo stesso LLM? Se è così, a cosa si riferisce Gemini stesso e ha importanza se si ha un abbonamento a pagamento o gratuito a Gemini?

---

<div class="post-metadata">

### Author: ![Saif](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saif/32/318253_2.png) [@Saif](https://meta.discourse.org/u/Saif)
#### Post date: [29 Febbraio 2024, 7:01pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/10 "2024-02-29T19:01:42Z")

</div>

> [@RBoy](#):
>
> Una domanda sulla semantica. In alcuni moduli AI vedo un riferimento all’uso di `Gemini` mentre in altri vedo un riferimento a `Gemini-Pro`.

Esistono diversi modelli Gemini come quelli che hai indicato. A seconda di quello che hai (probabilmente pro dato che è gratuito al momento), ti basterà inserire la chiave API nell’impostazione pertinente. L’impostazione è per qualsiasi modello Gemini tu abbia.

> [@RBoy](#):
>
> fa differenza se si ha un abbonamento a pagamento o gratuito a Gemini?

Dipende da te e da come vuoi usare Gemini, ma entrambi dovrebbero funzionare.

Maggiori informazioni qui:

> [@Configure API Keys for Google Gemini](https://meta.discourse.org/t/configure-api-keys-for-google-gemini/289556):
>
> bookmark This guide explains how to configure API keys for Google Gemini to enable Discourse AI features that require 3rd party LLM keys. person_raising_hand Required user level: Administrator Google Gemini In this example, we are using Google Gemini to generate the keys. information_source In order to use certain AI feature, users must have an API Key from a 3rd party provider such as OpenAI (ChatGPT), Anthropic (Claude), Stability AI (Stable Diffusion), etc. Please check each AI …

---

<div class="post-metadata">

### Author: ![smithmarkl](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/smithmarkl/32/482322_2.png) [@smithmarkl](https://meta.discourse.org/u/smithmarkl)
#### Post date: [20 Gennaio 2025, 1:26pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/11 "2025-01-20T13:26:29Z")

</div>

C’è un modo per iniettare qualcosa nel prompt iniziale all’LLM o manipolare gli embedding prima che vengano passati alla ricerca normale?

Sto cercando di potenziare (o eventualmente separare) le risposte del personale (più autorevoli) da quelle della community.

---

<div class="post-metadata">

### Author: ![Saif](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saif/32/318253_2.png) [@Saif](https://meta.discourse.org/u/Saif)
#### Post date: [20 Gennaio 2025, 6:16pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/12 "2025-01-20T18:16:21Z")

</div>

> [@smithmarkl](#):
>
> Esiste un modo per iniettare qualcosa nel prompt iniziale del LLM o per manipolare gli embedding prima che vengano passati alla ricerca standard?

Attualmente, non supportiamo alcuna iniezione di prompt personalizzato nei LLM all’interno di AI Search, sebbene potrebbe trattarsi di una funzionalità da aggiungere in futuro.

Ti consiglio di presentare una richiesta di funzionalità #Contribute!

---

<div class="post-metadata">

### Author: ![markschmucker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/markschmucker/32/141599_2.png) [@markschmucker](https://meta.discourse.org/u/markschmucker)
#### Post date: [12 Febbraio 2025, 7:39pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/13 "2025-02-12T19:39:29Z")

</div>

Ho appena iniziato a usare la ricerca AI e mi piace finora. Non riesco a trovare un motivo per non usarla sempre. C’è un modo per mostrare solo i risultati AI (oltre a usare css per nascondere .fps-result ma non .ai-result)?

Inoltre, puoi spiegare meglio dove trovare la ricerca rapida?

> [@Discourse](#):
>
> **Vedo un’opzione per l’AI dalla ricerca rapida?**
> 
> - L’opzione di ricerca rapida AI esegue la ricerca AI più velocemente saltando la creazione del post ipotetico. A volte questa opzione è più veloce e fornisce risultati più pertinenti, altre volte è inferiore.

---

<div class="post-metadata">

### Author: ![Saif](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saif/32/318253_2.png) [@Saif](https://meta.discourse.org/u/Saif)
#### Post date: [13 Febbraio 2025, 7:44pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/14 "2025-02-13T19:44:05Z")

</div>

> [@markschmucker](#):
>
> Ho appena iniziato a giocare con la ricerca AI e mi piace finora. Non riesco a trovare un motivo per non usarla sempre. C’è un modo per mostrare solo i risultati AI (oltre a usare css per nascondere .fps-result ma non .ai-result)?
> 
> Inoltre, puoi spiegare meglio dove trovare la ricerca rapida?

Ehi, era temporaneamente disponibile esclusivamente su Meta come esperimento. L’ho rimosso dall’OP - grazie per averlo segnalato

---

<div class="post-metadata">

### Author: ![James\_Oh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/james_oh/32/310172_2.png) [@James\_Oh](https://meta.discourse.org/u/James_Oh)
#### Post date: [2 Luglio 2025, 6:43pm UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/15 "2025-07-02T18:43:21Z")

</div>

Stiamo utilizzando [Discourse Algolia Search](https://meta.discourse.org/t/discourse-algolia-search/73517) per la ricerca di completamento automatico nell’intestazione. Possiamo continuare a utilizzare Discourse AI - Ricerca AI?

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [5 Agosto 2025, 2:39am UTC](https://meta.discourse.org/t/discourse-ai-ai-search/282420/16 "2025-08-05T02:39:04Z")

</div>

Un post è stato diviso in un nuovo argomento: [Non vedere il pannello delle preferenze utente per Discourse AI](https://meta.discourse.org/t/not-seeing-the-user-pref-panel-for-discourse-ai/377302)
