Simplificando a Geração de Perguntas e Respostas com AutoQG e lmqg
Novas ferramentas tornam o QAG acessível pra galera em todo lugar.
― 6 min ler
Índice
Gerar perguntas e respostas a partir de textos é útil em várias áreas, como criar provas para estudantes ou melhorar a busca por documentos. Essa tarefa, chamada de geração de perguntas e respostas (QAG), não é simples. É preciso produzir uma lista de perguntas e respostas em vez de apenas uma afirmação, o que a torna mais complexa. Por isso, não existem muitos modelos de QAG disponíveis publicamente.
Apresentando AutoQG e lmqg
Pra atender a necessidade de ferramentas de QAG acessíveis, apresentamos o AutoQG, um serviço online que permite aos usuários gerar perguntas e respostas em várias línguas. Junto com isso, introduzimos o lmqg, um pacote Python que ajuda os usuários a ajustar modelos, gerar perguntas e avaliar seu trabalho. Também oferecemos modelos de QAG em oito idiomas que podem ser acessados através do AutoQG ou usados localmente com o lmqg. Esse kit foi feito pra profissionais de todos os níveis, com uma interface web fácil de usar para quem não é desenvolvedor e um código direto pra quem precisa de mais controle ou personalização.
Como Funciona o QAG?
QAG é um processo que cria uma lista de Pares de perguntas e respostas baseado em um trecho de texto específico. Tem aplicações em áreas como resposta a perguntas não supervisionadas, verificação de fatos e ferramentas educacionais. Embora o QAG seja versátil, gerar perguntas e respostas continua sendo um desafio por causa da necessidade de saídas estruturadas. Os esforços recentes geralmente usam sistemas complicados que envolvem vários modelos, dificultando o compartilhamento e a reprodução dos resultados.
Recursos para QAG
Agora disponibilizamos ferramentas pra ajudar os usuários a desenvolver e usar modelos de QAG. Esses recursos incluem um pacote Python chamado lmqg, que permite o ajuste fino e a avaliação de modelos de QAG. Também lançamos modelos em inglês e em sete outras línguas, todos pré-treinados e prontos pra uso. Os Conjuntos de dados usados para treinamento incluem diversos conjuntos conhecidos que são multilíngues, tornando nosso kit adaptável pra desenvolvimentos futuros.
Trabalhando com Conjuntos de Dados Multilíngues
Nosso kit incorpora todos os conjuntos de dados de QG disponíveis em um benchmark chamado QG-Bench. Esse benchmark inclui conjuntos de dados de QG de diferentes línguas, como inglês, alemão, espanhol, japonês, russo, francês, coreano e italiano. Usamos o lmqg pra ajustar modelos de linguagem nesses conjuntos de dados.
Pra criar pares de perguntas e respostas, projetamos um modelo que consiste em dois componentes separados: um pra extrair respostas e outro pra gerar perguntas. O modelo de extração de respostas identifica respostas em um parágrafo, e o modelo de geração de perguntas produz perguntas baseadas nessas respostas.
O Kit lmqg
O kit lmqg é feito pra geração de perguntas e respostas. Ele permite que os usuários ajustem modelos, gerem pares de perguntas e respostas e os avaliem. O kit pode trabalhar facilmente com conjuntos de dados e modelos existentes de uma plataforma popular, o Hugging Face.
Ajustando Modelos
Pra ajustar modelos, usamos uma ferramenta chamada GridSearcher, que otimiza o processo de treinamento testando diferentes conjuntos de parâmetros pra encontrar o modelo que melhor funciona. Por exemplo, os usuários podem ajustar um modelo em um conjunto de dados específico como SQuAD, que já inclui perguntas e respostas etiquetadas.
Gerando Perguntas e Respostas
Depois que os modelos são ajustados, gerar pares de perguntas e respostas é simples. O kit lmqg oferece uma classe que facilita esse processo, permitindo que os usuários insiram um trecho de texto e recebam uma lista de perguntas e respostas geradas em troca.
Avaliando as Saídas Geradas
Pra avaliar a qualidade dos pares de perguntas e respostas gerados, implementamos um método pra comparar com pares existentes (pares de referência) que são considerados corretos. Isso envolve calcular métricas pra ver quão bem os pares gerados correspondem aos pares de referência. Temos avaliações internas baseadas em métricas amplamente usadas, mas os usuários podem aplicar outros métodos de avaliação se necessário.
Desempenho dos Modelos de QAG
O desempenho de diferentes modelos de QAG foi medido usando vários conjuntos de dados. Por exemplo, os resultados mostram que modelos maiores geralmente produzem saídas melhores em termos de alinhamento com pares de referência. Em testes multilíngues, diferentes modelos foram avaliados em várias línguas, e embora nenhum modelo se destacasse em todas as línguas, alguns mostraram desempenho consistente.
Número de Pares Gerados
Ao examinar o número de pares de perguntas e respostas gerados por diferentes modelos, descobrimos que modelos em inglês produziram um pouco menos de pares do que o conjunto de dados padrão. Porém, em outras línguas, os pares gerados muitas vezes superaram aqueles no conjunto de dados de referência. Parece haver uma tendência onde modelos que produzem mais pares também alcançam pontuações de qualidade mais altas em certas línguas.
Demonstração Online de QAG – AutoQG
Criamos o AutoQG, uma demonstração online onde os usuários podem gerar pares de perguntas e respostas em oito línguas. Os usuários apenas fornecem um texto, e o modelo retorna uma lista de perguntas e respostas geradas. A demonstração também inclui recursos adicionais, como medir perplexidade, o que ajuda a avaliar a qualidade da saída gerada.
Desafios nos Modelos de QAG
Nossos modelos de QAG são feitos pra processar parágrafos de um certo tamanho. Se o texto de entrada ultrapassar esse limite, não pode ser usado diretamente. Além disso, os modelos se concentram em tarefas de raciocínio mais simples, o que significa que podem não lidar bem com cenários de geração de perguntas mais complexos.
Considerações Éticas
Embora tenhamos tomado medidas pra garantir que nossos modelos de QAG não produzam saídas prejudiciais ou tóxicas, ainda existe um risco potencial devido aos dados em que esses modelos são treinados. Monitoramento contínuo e melhorias ajudarão a mitigar esses problemas.
Resumo
Pra concluir, apresentamos o lmqg, um pacote Python para ajustar, gerar e avaliar modelos de perguntas e respostas. Esse kit integra tanto os processos de extração de respostas quanto de geração de perguntas e fornece métricas para avaliação. Nossa demonstração online, o AutoQG, permite que usuários não técnicos interajam facilmente com esses modelos. Estamos focados em tornar os modelos de QAG acessíveis ao maior número de pessoas possível, reconhecendo as limitações que ainda precisamos resolver.
Título: A Practical Toolkit for Multilingual Question and Answer Generation
Resumo: Generating questions along with associated answers from a text has applications in several domains, such as creating reading comprehension tests for students, or improving document search by providing auxiliary questions and answers based on the query. Training models for question and answer generation (QAG) is not straightforward due to the expected structured output (i.e. a list of question and answer pairs), as it requires more than generating a single sentence. This results in a small number of publicly accessible QAG models. In this paper, we introduce AutoQG, an online service for multilingual QAG, along with lmqg, an all-in-one Python package for model fine-tuning, generation, and evaluation. We also release QAG models in eight languages fine-tuned on a few variants of pre-trained encoder-decoder language models, which can be used online via AutoQG or locally via lmqg. With these resources, practitioners of any level can benefit from a toolkit that includes a web interface for end users, and easy-to-use code for developers who require custom models or fine-grained controls for generation.
Autores: Asahi Ushio, Fernando Alva-Manchego, Jose Camacho-Collados
Última atualização: 2023-05-27 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2305.17416
Fonte PDF: https://arxiv.org/pdf/2305.17416
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.
Ligações de referência
- https://www.latex-project.org/help/documentation/encguide.pdf
- https://github.com/asahi417/lm-question-generation
- https://huggingface.co/lmqg
- https://autoqg.net
- https://pypi.org/project/lmppl
- https://github.com/asahi417/lm-question-generation/blob/master/QG_BENCH.md
- https://huggingface.co/datasets/lmqg/qg_squad
- https://youtu.be/T6G-D9JtYyc
- https://github.com/asahi417/lmppl
- https://www.aclweb.org/portal/content/acl-code-ethics