Skip to content

QA Extrativo

Crie interfaces de perguntas e respostas no estilo SQuAD no Potato para extração de respostas baseada em spans, tarefas de compreensão de leitura e anotação de destaque em passagens.

O esquema de anotação de QA extrativo oferece uma interface de perguntas e respostas em que os anotadores destacam spans de resposta diretamente em uma passagem de texto. Esse esquema é ideal para a criação de conjuntos de dados de compreensão de leitura, anotação de QA no estilo SQuAD, verificação de fatos e qualquer tarefa em que as respostas sejam extraídas literalmente do texto de origem.

Visão Geral

O esquema de QA extrativo apresenta:

  • Uma pergunta exibida em destaque acima da passagem
  • Uma passagem de texto em que os anotadores selecionam spans de resposta por meio do destaque
  • Destaques com código de cores marcando o texto da resposta selecionada
  • Uma opção de não respondível para perguntas que não podem ser respondidas a partir da passagem

Início Rápido

yaml
annotation_schemes:
  - annotation_type: extractive_qa
    name: answer_span
    description: Highlight the answer to the question in the passage below.
    question_field: question
    passage_field: passage
    allow_unanswerable: true

Opções de Configuração

CampoTipoPadrãoDescrição
annotation_typestringObrigatórioDeve ser "extractive_qa"
namestringObrigatórioIdentificador único deste esquema
descriptionstringObrigatórioInstruções exibidas aos anotadores
question_fieldstring"question"Campo no JSON de dados que contém o texto da pergunta
passage_fieldstring""Campo no JSON de dados que contém o texto da passagem (string vazia usa o campo de texto padrão)
allow_unanswerablebooleantrueMostra uma caixa de seleção para marcar perguntas como não respondíveis
highlight_colorstring"#FFEB3B"Cor CSS para o destaque da resposta

Exemplos

QA no Estilo SQuAD

yaml
annotation_schemes:
  - annotation_type: extractive_qa
    name: squad_answer
    description: >
      Select the shortest span in the passage that answers the question.
      If the question cannot be answered from the passage, mark it as unanswerable.
    question_field: question
    passage_field: context
    allow_unanswerable: true
    highlight_color: "#FFEB3B"

Com dados de exemplo:

json
{
  "id": "q001",
  "question": "When was the university founded?",
  "context": "The University of Michigan was founded in 1817 in Detroit and moved to Ann Arbor in 1837. It is one of the oldest public universities in the United States."
}

Verificação de Fatos

yaml
annotation_schemes:
  - annotation_type: extractive_qa
    name: evidence_span
    description: >
      Highlight the evidence in the passage that supports or refutes the claim.
      Mark as unanswerable if the passage contains no relevant evidence.
    question_field: claim
    passage_field: document
    allow_unanswerable: true
    highlight_color: "#81C784"

Extração de Resposta Sem Não Respondível

yaml
annotation_schemes:
  - annotation_type: extractive_qa
    name: definition_extraction
    description: >
      Highlight the definition of the term in the passage.
      Every passage contains a definition — select the most precise span.
    question_field: term
    passage_field: text
    allow_unanswerable: false
    highlight_color: "#64B5F6"

Formato de Saída

json
{
  "answer_span": {
    "labels": {
      "answer_start": 45,
      "answer_end": 49,
      "answer_text": "1817",
      "unanswerable": false
    }
  }
}

Quando o anotador marca uma pergunta como não respondível:

json
{
  "answer_span": {
    "labels": {
      "unanswerable": true
    }
  }
}

Boas Práticas

  1. Oriente os anotadores a selecionar spans mínimos - o texto mais curto que responde plenamente à pergunta produz dados de treinamento mais limpos
  2. Use allow_unanswerable para tarefas realistas - QA do mundo real frequentemente inclui perguntas não respondíveis; desativar essa opção força os anotadores a adivinhar
  3. Escolha cores de destaque legíveis - garanta que a cor de destaque tenha contraste suficiente com o texto para facilitar a leitura
  4. Mantenha as passagens com tamanho razoável - de 100 a 500 palavras por passagem funciona bem; passagens muito longas tornam a seleção de spans cansativa
  5. Formate as perguntas com clareza - garanta que as perguntas sejam bem formuladas e sem ambiguidade para reduzir a confusão dos anotadores

Leitura Complementar

Para detalhes de implementação, consulte a documentação de origem.