Discourse AI - Triagem de IA

A triagem de IA foi projetada para aprimorar o gerenciamento e a moderação de postagens de fóruns, automatizando o processo de classificação de postagens.

Observe que este recurso requer os plugins discourse-automation e discourse-ai para funcionar.

Casos de Uso

  1. Categorização Automática de Postagens: A triagem de IA pode categorizar automaticamente tópicos com base em seu conteúdo. Isso é particularmente benéfico para fóruns grandes onde a categorização manual pode consumir muito tempo. Você pode aplicar as regras a um subconjunto de tópicos (apenas o primeiro tópico ou tópicos postados em categorias específicas)

  2. Marcação de Postagens: A triagem de IA pode atribuir tags especificadas a postagens. Este recurso auxilia na melhor organização de postagens e torna a busca e recuperação de tópicos mais eficientes.

  3. Respostas Automáticas: A triagem de IA pode gerar respostas para postagens usando respostas predefinidas. Isso é útil para responder a perguntas frequentes ou consultas comuns, enviar spam para categorias de lixo eletrônico e muito mais.

  4. Ocultar Tópicos: A triagem de IA pode ocultar tópicos com base em certos critérios. Isso pode ser usado para gerenciar spam ou conteúdo inadequado.

  5. Detecção de NSFW/Toxicidade/Spam

Como Funciona

A triagem de IA usa modelos de IA para analisar o conteúdo das postagens. Com base nessa análise, se o modelo retornar um texto específico, ele executa as ações especificadas. Essas ações incluem mover a postagem para uma categoria especificada, adicionar tags, responder com uma resposta predefinida e ocultar o tópico.





Configuração

:spiral_notepad: O campo de prompt do sistema foi descontinuado em favor de Personas. Se você tinha uma automação de IA antes desta alteração, uma nova Persona com o prompt do sistema associado será criada automaticamente.

Para configurar a triagem de IA, você precisa especificar certos parâmetros:

  • Persona: Persona associada à automação de IA.
  • Pesquisar por Texto: Se o texto a seguir aparecer na resposta do LLM, aplique as ações abaixo.
  • Categoria: Esta é a categoria para a qual a postagem será movida se o texto especificado for encontrado.
  • Tags: Estas são as tags que serão adicionadas à postagem se o texto especificado for encontrado.
  • Ocultar Tópico: Se esta opção estiver habilitada, o tópico será ocultado se o texto especificado for encontrado.
  • Marcar Postagem: Se isso estiver habilitado, o tópico será marcado para a fila de revisão para moderadores, equipe e administradores tomarem providências.
  • Tipo de Marcação: Opção para marcar a postagem marcada como spam e ocultá-la, ou enviá-la para a fila de revisão.
  • Usuário de Resposta: Este é o usuário que será mencionado na resposta pronta.
  • Resposta: Esta é a resposta predefinida que será postada se o texto especificado for encontrado.
  • Persona de Resposta: Persona de IA a ser usada para respostas. Deve ter um LLM padrão, será priorizado sobre a resposta pronta. Responderá condicionalmente, ao contrário do Discourse AI - AI Auto responder.
  • Responder como Sussurro: Se a resposta da persona deve aparecer como um sussurro.

Ressalvas

  • Chamadas de LLM podem ser caras. Ao aplicar um classificador, tome cuidado para monitorar os custos e sempre considere executar isso apenas em pequenos subconjuntos.
  • O caso de uso específico que testamos (e executamos em produção para um cliente) é a classificação dos primeiros tópicos de um usuário.
  • Recomendamos que você use AI bot para ajudar a criar o prompt do sistema.
37 curtidas

Ser um dos sortudos a ver isso em ação é um recurso para sites grandes que você realmente deve entender e considerar usar.

Como funciona usando uma IA baseada em LLM, ela nem sempre chega à conclusão correta, mas acerta muito nos casos em que a vi sendo usada por alguns dias, fazendo parte do trabalho de um moderador, o que definitivamente foi um benefício significativo.

Algumas das primeiras discussões sobre isso estão na categoria Lounge no site da OpenAI. Embora o acesso a essa categoria possa ser obtido por qualquer pessoa, os requisitos do TL3 devem ser atendidos e, sendo a OpenAI um site grande, leva um esforço considerável para chegar ao TL3 no site.

Para aqueles com acesso, aqui está o link

https://community.openai.com/t/lost-users-first-empirical-data/403082/95


Basicamente, a lógica que está ajudando os moderadores para um problema específico é que estamos vendo cerca de 5% das postagens de novos usuários que pensam que o fórum é onde eles postam perguntas para o ChatGPT, claramente eles estão perdidos ou talvez um resultado de pesquisa esteja fornecendo um link inválido. A IA identifica tais postagens, responde com texto pré-escrito e altera a categoria e as tags conforme necessário, por exemplo.


Para o caso observado, aqui está o que a “Regra de Automação do Classificador de Postagens de IA do Discourse” está fazendo

Categorização Automática de Postagens
O classificador está alterando a categoria para ChatGPT conforme necessário. Como a maioria dos novos usuários não selecionará uma categoria, o site da OpenAI atualmente define a categoria API como padrão para novas postagens, o que está incorreto neste caso.

Marcação de Postagens
O classificador está alterando a(s) tag(s) para lost-user neste caso. O nome da tag foi criado por um usuário TL3 no fórum que estava alterando manualmente as tags.

Respostas Automáticas
O classificador está respondendo com uma postagem pré-escrita.

Ocultar Tópicos
Os tópicos estão sendo deslistados pois não eram de valor para os desenvolvedores que usam o site.

Usuário de Resposta
System está sendo usado como o criador da resposta.

Nota: Eu forneceria a Configuração para isso, mas não tenho acesso. Talvez @Sam possa adicionar os detalhes. Pelo que sei, pode ser tornada pública, pois nada é confidencial na configuração. Como é para um site específico, não esperaria encontrá-la no repositório público. Se você entende essa tecnologia, não é difícil adivinhar os valores corretos, ou próximos a eles. O System Prompt exigiu algum trabalho e talvez @sam possa compartilhar algumas das lições aprendidas, o conhecimento de como criar o prompt foi de grande valor durante a fase de desenvolvimento.

System Prompt

Nota: Esta é uma versão postada no OpenAI Lounge (ref), tenho certeza de que a versão final é diferente, mas um exemplo economiza muitas suposições.

Você é um bot que está triando todas as primeiras interações que um usuário tem no fórum de desenvolvedores da OpenAI.

Por favor, responda apenas com "ok" ou "bad"

Postagens estão no tópico e ok se:

Relacionam-se a APIs da OpenAI / Comunidade / Desenvolvimento de Plugins / Documentação / Prompting
São sobre o desenvolvimento ou aprimoramento de métodos para prompting de modelos de linguagem grandes
Relacionam-se à IA de forma geral
Envolvem discussões complexas ou problemas lógicos relacionados à IA
Postagens são ruins se:

Um usuário parece estar tendo uma conversa aleatória com o ChatGPT
Um usuário está fora do tópico discutindo um campo não relacionado
Um usuário está solicitando a um modelo de linguagem grande para gerar texto sem um propósito claro
Você tem extrema dificuldade em entender do que se trata
Relaciona-se a um tópico da OpenAI, MAS é claramente uma conversa com um bot
Um usuário está tentando treinar ou testar o modelo de IA através de sua postagem
Um usuário está fornecendo instruções ou solicitando respostas em um formato não de discussão
Um usuário está postando conteúdo que não é propício a discussões ou aprendizado significativos
Um usuário está postando conteúdo hipotético ou especulativo sem relação clara com o escopo da OpenAI
Um usuário está postando todo o conteúdo em um idioma que não seja o inglês
Por favor, classifique o seguinte conteúdo cercado por [[[]]]:

[[[
%%POST%%
]]]

FYI

Se você for um moderador em um site que usa isso e quiser/precisar ver uma lista de postagens deslistadas, lembre-se de que não pode usar a pesquisa. No entanto, você pode navegar até essa lista usando a categoria e selecionando as tags. Ou você também poderia criar a URL manualmente, por exemplo, https://community.openai.com/tags/c/chatgpt/19/lost-user


Sim, funciona até para idiomas diferentes do inglês

No entanto, não funciona com imagens :wink:, ele não converterá uma imagem em texto e, em seguida, executará a verificação, por exemplo.

Aqui está um falso positivo recente ou pelo menos eu acho que é.


Para detalhes sobre falsos/verdadeiros negativos/positivos - Classificação: Verdadeiro vs. Falso e Positivo vs. Negativo

17 curtidas

Um recurso possível.

Pelo menos para moderadores que revisam uma postagem, converta o texto para o idioma do moderador quando ele visualizar o tópico. Isso não implica apenas para uma sinalização, mas para qualquer visualização da postagem.


Às vezes, ao revisar as ações do Classificador de Postagens de IA do Discourse, há a necessidade de converter o texto da postagem para o meu idioma (inglês) para verificar se a IA tomou uma ação correta. Atualmente, é mais fácil para mim colar o texto no Google Tradutor.

4 curtidas

Vale notar e relacionado a esta missão secundária.

@keegan está trabalhando na integração de um assistente de IA em nosso menu pop-up. Assim, no futuro, em casos onde houver muito texto em um idioma desconhecido, você poderá simplesmente destacar o texto e clicar em traduzir.

Nós suportamos isso no composer hoje, mas assim que for mesclado, você poderá destacar texto em qualquer postagem do Discourse e obter uma tradução rápida baseada em LLM.

6 curtidas

Isso … muda o jogo para mim. Onde posso enviar cartões de agradecimento.

5 curtidas

Qual é um exemplo de como fazer isso referenciando as tags existentes que seu fórum possui hoje? por exemplo, o post é analisado pelo LLM e as tags mais prováveis/relevantes são adicionadas ao post.

3 curtidas

Eu adoro essa pergunta, você pode expandi-la por favor… como você gostaria de ver isso funcionar?

  • Você aplicaria a “marcação automática” se o tópico já tiver tags?
  • Você a aplicaria em todas as primeiras postagens ou apenas nas primeiras postagens de grupos específicos? (por exemplo, tl0 / tl1)
  • Isso é algo que você prefere executar manualmente em um subconjunto de tópicos?

Precisaremos fazer alguns ajustes aqui… no momento o classificador é binário, mas as mudanças são razoavelmente fáceis, desde que saibamos qual é o objetivo?

3 curtidas
  • Aplicar a todos os novos tópicos em uma categoria
  • Você certamente poderia ter a opção de variar por nível de confiança. Como tudo (e, neste caso, toda comunidade), depende. No caso da minha comunidade, eu provavelmente a manteria ativada para todos, exceto tl4 (ou apenas para todos, se essa configuração não for uma opção)
  • Eu preferiria que funcionasse em todos os novos tópicos em categorias especificadas

O objetivo aqui, é claro, é nunca ter que trabalhar na marcação de tópicos por conta própria e deixar a IA fazer isso inteiramente com base no tópico inicial que está sendo criado e olhando as tags existentes que temos agora.

Provavelmente poderia ser ainda mais aprimorado se você tivesse a capacidade de adicionar descrições às tags no Discourse e deixá-lo usar essas descrições para contexto adicional para adicionar as tags corretas :slight_smile:

6 curtidas

Em primeiro lugar, deixe-me afirmar que apoio totalmente essa capacidade e seu aprimoramento. O seguinte são apenas alguns fatos sobre como ela funciona atualmente (16/10/2023). Diariamente, como moderador de categoria na OpenAI, reviso todas as novas postagens, não todas as respostas, e vejo todos os falsos positivos e negativos da IA.

Como um dos que usam este recurso, o Classificador de Posts da IA do Discourse - Regra de Automação, esteja ciente de que:

  • não é 100% preciso
  • atualmente requer ação manual para desfazer se a IA cometeu um falso positivo. Dependendo da alteração, pode ser necessário um moderador de categoria ou superior; especificamente listando um tópico não listado.
  • pode deixar de identificar alguns tópicos, falso negativo
  • muitos usuários que receberão a resposta automatizada da IA não entendem como sinalizar a resposta da IA se for um falso positivo, eles terão que ser identificados e alterados manualmente. Portanto, precisará da ajuda de usuários reais para capturar esses casos.
  • entender como elaborar o prompt para que funcione conforme o necessário
  • poderia potencialmente precisar de ajuste fino e/ou agentes para chegar perto de um nível de satisfação desejado, o que pode se tornar caro
  • não há como rastrear falsos positivos e negativos para usar na compreensão de como alterar o prompt e/ou possível ajuste fino e/ou agentes

falso positivo - A IA não deveria ter feito uma alteração e fez, o que está incorreto.
falso negativo - A IA deveria ter feito uma alteração e não fez, o que está incorreto.
verdadeiro positivo - A IA fez uma alteração, o que está correto.
verdadeiro negativo - A IA não fez uma alteração, o que está correto.

4 curtidas

Um bom movimento inicial aqui é experimentar um prompt no modo criativo:

Algo como…

Você é um marcador automático do Discourse, você sugere uma lista de tags para o tópico.

As tags são:

tag1: descrição
tag2: descrição

Sugira até 3 tags para o seguinte tópico:

TÓPICO

Experimente isso em alguns dos seus tópicos, quão bem ele se sai?

8 curtidas

Funciona muito bem! Obrigado

3 curtidas

Atualização recente (11/01/2023)

O ID do usuário para o bot agora é gpt-4-triage, pelo menos no fórum da OpenAI.

Isso foi feito para que os usuários possam silenciar o bot conforme necessário.

image

Exemplo do bot respondendo.

2 curtidas

Observe que isso é configurável, você pode fazer com que a resposta automática venha de qualquer usuário que desejar.

5 curtidas

Então, dando seguimento depois de experimentar isso.

Parece que isto está nas fases iniciais, e estou animado para ver para onde vai, mas a abordagem de @jordan-violet é 100% o que estou a tentar alcançar. Tentei o prompt de teste que @sam sugeriu e pareceu inteligente o suficiente para aplicar as tags corretas em teoria. No entanto, parece que o script atual limita as tags aplicáveis a 7, e nós temos consideravelmente mais do que isso.

Resumindo? Seria ótimo se aplicasse semanticamente as tags existentes a um novo tópico. Em termos de gestão de fóruns (mesmo aqui no meta, tenho notado!), a aplicação consistente de tags para melhor organizar uma comunidade e o seu conteúdo continua a ser uma batalha árdua, e é puro caos em escala. Para aqueles de nós que dependem de tags, isto seria uma bênção, mesmo que fosse 75% preciso.

Manterei os meus olhos nesta questão à medida que se desenvolve!

2 curtidas

Isso é ótimo! Você tem alguma sugestão para depurar isso? Acabei de configurar uma automação que não foi acionada como esperado. Não vejo nenhum log relevante.

1 curtida

Hmmm, o que aconteceu aqui, você pode abrir um tópico dedicado?

Pelo que me lembro, eu não defini essa opção no início. Quando o fiz, começou a funcionar.

3 curtidas

Pergunta rápida. Há planos para exibir um log de auditoria para essas automações (talvez de forma semelhante ao padrão de webhook que vocês já têm)?

Isso ajudaria a aliviar a sensação assustadora de “o que você fez” que estou tendo depois que uma automação é ativada :sweat_smile:

O Ai log já armazena todas as interações de LLM. Você pode usá-lo hoje por meio de uma consulta no explorador de dados.

2 curtidas

Embora isso seja verdade, é bastante complicado vincular as entradas de log do tipo llm_triage a uma postagem/tópico que ela afeta, ou à ação que foi tomada (ou não) como resultado.

Ter uma visão geral dessas ações seria ótimo :slight_smile:

5 curtidas