Sou especialista em aprendizado de máquina, mas não no Discourse. No entanto, tenho usado bastante o Discourse e realmente estou gostando.
Uma ferramenta que acredito ser muito poderosa seria um script para executar (interagindo com a API) que pudesse:
Analisar o uso de tags e auto-marcar tópicos com base nos dados. Por exemplo, se uma tag sendo usada for “receita” e alguns tópicos estiverem marcados com “receita”, um algoritmo de aprendizado de máquina poderia identificar postagens adicionais que deveriam ser marcadas com “receita”.
Analisar tópicos para propor novas tags e auto-marcar tópicos relevantes.
Acho que a implementação correta disso seria em Python, fora da implementação real do Discourse. Com um bom design de software, o NLP e o ML seriam segregados do código que interage com o Discourse. Ao interagir com o Discourse por meio da API, isso permitiria o desenvolvimento de código ML arbitrário e a criação de um pacote Python de código aberto com contribuições da comunidade de ML, essencialmente de forma independente da distribuição do Discourse. Uma interface sólida também permitiria aplicar ML à gestão de fóruns do Discourse de outras formas.
Portanto, estou interessado em desenvolver uma primeira versão do ML/NLP para implementar um auto-tagador e tornar isso uma biblioteca de código aberto.
Há algum desenvolvedor do Discourse familiarizado com a API que esteja interessado em ajudar com o componente de comunicação do Discourse neste projeto/biblioteca? Este é um componente crítico da equipe que está faltando. Precisamos de alguém que possa fazer isso antes de podermos começar.
Há algum outro acadêmico/especialista que gostaria de participar do desenvolvimento do ML/NLP?
Recomendo usar webhooks aqui; você consumiria o webhook no seu aplicativo Python e reagiria a ele usando nossa API.
Fico curioso para ver como funciona.
Outra área que pode ser interessante é usar word2vec ou algum tipo de conversão de frase para vetor para identificar a similaridade de tópicos em #suporte… muitas perguntas são feitas de várias formas diferentes, e unir informações pode ser muito benéfico.
@samamorgan, você consegue criar algum código de interface para importar (usando a API) informações do Discourse para o Neo4j? Acontece que isso pode ser feito sem qualquer código Python. O Neo4j possui uma interface para fazer isso. Veja os exemplos do Twitter e do StackExchange:
Se você tem um projeto em mente, inicie um repositório Git e descreva o processo. Fico feliz em participar e contribuir conforme o tempo permitir, se você compartilhar o link aqui.