Discourse AI - Pesquisa de IA

:bookmark: Este guia explica como habilitar e configurar o recurso de pesquisa de IA, que faz parte do plugin Discourse AI.

:person_raising_hand: Nível de usuário necessário: Administrador

Semelhante aos Tópicos relacionados, a pesquisa de IA ajuda você a encontrar os tópicos mais relevantes usando similaridade textual semântica que vai além da correspondência exata de palavras-chave usada pela pesquisa tradicional. Isso resulta na descoberta de tópicos que não são correspondências exatas, mas ainda assim relevantes para a pesquisa inicial. Se você não conseguir encontrar o que procura, a pesquisa de IA está aqui para ajudar!

Funcionalidades

  • Similaridade textual semântica: indo além de uma simples correspondência de palavras-chave e usando análise semântica para encontrar similaridade textual
  • Pesquisa rápida de IA
  • Ativado/desativado para pesquisa de IA na pesquisa em página inteira
  • Resultados indicados pelo ícone :sparkles:
  • Aplicável a usuários anônimos e logados

Habilitando a Pesquisa de IA

Pré-requisitos

Para usar a Pesquisa de IA, você precisará de Embeddings e um Large Language Model (LLM).

Embeddings

Se você estiver em nossa hospedagem, forneceremos uma opção padrão. Para auto-hospedeiros, siga o guia em Discourse AI - Embeddings

Large Language Model (LLM)

Clientes hospedados pelo Discourse e auto-hospedeiros devem configurar pelo menos um Large Language Model (LLM) de um provedor.

Para começar, você pode configurá-los através da página de configurações do Discourse AI - Large Language Model (LLM).

Configuração

  1. Vá para as configurações AdminPlugins → procure ou encontre discourse-ai e certifique-se de que está habilitado
  2. Habilite ai_embeddings_enabled para Embeddings
  3. Habilite ai_embeddings_semantic_search_enabled para ativar a pesquisa de IA

FAQ Técnico

Expandir para um esboço da lógica de pesquisa de IA
mermaid height=255,auto
sequenceDiagram
    User->>+Discourse: Pesquisar "gamificação"
    Discourse->>+LLM: Criar um artigo sobre "gamificação" em um fórum sobre
  "Discourse, um sistema de fórum de Internet de código aberto."
    LLM->>+Discourse: Gamificação envolve a aplicação de elementos de design de jogos como
  pontos, distintivos, níveis e placares em contextos não relacionados a jogos...
    Discourse->>+EmbeddingsAPI: Gerar Embeddings para "Gamificação envolve a aplicação de design de jogos..."
    EmbeddingsAPI->>+Discourse: [0.123, -0.321...]
    Discourse->>+PostgreSQL: Me dê os tópicos mais próximos para [0.123, -0.321...]
    PostgreSQL->>+Discourse: Tópicos: [1, 5, 10, 50]
    Discourse->>+User: Tópicos: [1, 5, 10, 50]

Como funciona a Pesquisa de IA?

  • A consulta de pesquisa inicial é executada através de um LLM que cria um tópico/post hipotético. Depois, Embeddings é feito nesse post e, em seguida, ele procura em seu site por correspondências semelhantes à consulta de pesquisa. Finalmente, ele usa o Reciprocal Rank Fusion (RFF) para reclassificar os melhores resultados em linha com a pesquisa regular.

Como os dados de tópico/post são processados?

  • Os dados do LLM são processados por um provedor terceirizado, consulte seu provedor específico para mais detalhes. Por padrão, o microsserviço de Embeddings é executado ao lado de outros servidores que hospedam seus fóruns existentes. Não há terceiros envolvidos aqui, e essa informação específica nunca sai de sua rede interna em nosso data center virtual privado.

Para onde vão os dados?

  • Um tópico/post hipotético criado pelo provedor de LLM é temporariamente armazenado em cache ao lado dos Embeddings para esse documento. Os dados de Embeddings são armazenados no mesmo banco de dados onde armazenamos seus tópicos, posts e usuários. É outra tabela de dados lá.

Como é o “modelo semântico” de Embeddings? Como ele foi “treinado”, e há alguma maneira de testar se ele pode ser aplicado com precisão aos tópicos de nossas comunidades “especializadas”?

  • Por padrão, usamos modelos de código aberto pré-treinados, como este. Nós implementamos para muitos clientes e descobrimos que ele tem um bom desempenho tanto para comunidades de nicho quanto gerais. Se o desempenho não for bom o suficiente para o seu caso de uso, temos modelos mais complexos prontos, mas em nossa experiência, a opção padrão é uma escolha sólida.
6 curtidas

Notei um pequeno bug na interface do usuário para ai embeddings semantic search hyde model. Passos para reproduzir

  1. Instale o plugin AI Discourse
  2. Abra configurações → Configurar chave Gemini
  3. Habilite i embeddings semantic search enabled
  4. ai embeddings semantic search hyde model mostra Google - gemini-pro (não configurado)

O não configurado não desaparece até depois que todas as configurações são habilitadas e a página é atualizada depois disso.

2 curtidas

Acho que esta é uma limitação da nossa página de configurações do site, então peço desculpas por isso e fico feliz que você tenha conseguido resolver.

1 curtida

Uma pergunta sobre semântica. Em alguns módulos de IA, vejo uma referência ao uso de Gemini, enquanto em outros vejo uma referência a Gemini-Pro. Eles estão se referindo a modelos diferentes (Gemini Nano, Pro e Ultra) ou se referem ao mesmo LLM? Se sim, então o que Gemini em si se refere e importa se um tem uma assinatura paga ou gratuita do Gemini?

1 curtida

Existem diferentes modelos Gemini, como os que você mencionou. Dependendo do modelo que você tem (provavelmente o Pro, já que é gratuito no momento), você simplesmente conectaria a chave da API na configuração relevante. A configuração é para qualquer modelo Gemini que você tenha.

Isso dependeria de você e de como você quer usar o Gemini, mas qualquer um deve funcionar.

Mais informações aqui:

1 curtida

Existe uma maneira de injetar algo no prompt inicial para o LLM ou manipular os embeddings antes que eles sejam passados para a pesquisa regular?

Estou tentando aumentar (ou possivelmente separar) as respostas da equipe (mais autoritárias) das respostas da comunidade.

2 curtidas

Atualmente, não suportamos nenhuma injeção de prompt LLM personalizada na Pesquisa de IA, embora isso possa ser algo a ser adicionado no futuro.

Eu recomendaria fazer uma solicitação de #recurso!

2 curtidas

Acabei de começar a usar a pesquisa de IA e estou gostando até agora. Não consigo encontrar um motivo para não usá-la sempre. Existe alguma maneira de mostrar apenas resultados de IA (além de usar CSS para ocultar .fps-result, mas não .ai-result)?

Além disso, você pode, por favor, detalhar onde encontrar a pesquisa rápida?

1 curtida

Ei, isso esteve temporariamente disponível exclusivamente no Meta como um experimento. Removi-o do OP - obrigado por apontar isso.

Estamos usando Discourse Algolia Search para pesquisa de preenchimento automático no cabeçalho. Podemos continuar usando o Discourse AI - Pesquisa com IA?

Uma postagem foi dividida em um novo tópico: Não vendo o painel de preferências do usuário para Discourse AI