Este guia explica como habilitar e configurar o recurso de pesquisa de IA, que faz parte do plugin Discourse AI.
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
- 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).
- OpenAI
- Anthropic
- Azure OpenAI
- AWS Bedrock com acesso Anthropic
- Endpoints HuggingFace com modelo semelhante ao Llama2
- Auto-hospedagem de um LLM OpenSource para DiscourseAI
- Google Gemini
Configuração
- Vá para as configurações
Admin→Plugins→ procure ou encontrediscourse-aie certifique-se de que está habilitado- Habilite
ai_embeddings_enabledpara Embeddings- Habilite
ai_embeddings_semantic_search_enabledpara ativar a pesquisa de IAFAQ 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.
Notei um pequeno bug na interface do usuário para ai embeddings semantic search hyde model. Passos para reproduzir
- Instale o plugin AI Discourse
- Abra configurações → Configurar chave Gemini
- Habilite
i embeddings semantic search enabled ai embeddings semantic search hyde modelmostra 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.
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.
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?
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:
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.
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!
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?
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