Como usar a sumarização

A sumarização condensa conteúdos que os utilizadores consideram demasiado longos para ler. O serviço fornece soluções de resumo para três tipos de género: texto simples, conversas e documentos nativos. Selecione o separador que corresponder ao tipo de conteúdo que pretende resumir.

O resumo de texto encurta conteúdos que os utilizadores consideram demasiado longos para ler. Tanto o resumo extrativo quanto o resumo abstrativo condensam artigos, trabalhos ou documentos em frases principais.

Sumarização extrativa: Produz um resumo extraindo frases que representam coletivamente as informações mais importantes ou relevantes dentro do conteúdo original.

Sumarização abstrata: Produz um resumo gerando frases resumidas do documento que capturam a ideia principal.

Resumo focado em consulta: Permite que utilizes uma consulta ao resumir.

Cada uma destas capacidades pode resumir informações sobre itens específicos de interesse, quando estes forem especificados.

O serviço fornece os modelos de IA que a API utiliza. Basta enviar conteúdo para análise.

Para facilitar a navegação, aqui estão os links para as seções correspondentes para cada serviço:

Aspect Seção
Extrativa Sumarização extrativa
Abstrativo Sumarização abstrata
Focado em consulta Sumarização focada em consulta

Características

Tip

Para começar a usar estas funcionalidades, consulte o artigo de início rápido. Também pode fazer pedidos de exemplo usando o Microsoft Foundry sem necessidade de escrever código.

A API de resumo extrativo usa técnicas de processamento de linguagem natural para localizar frases-chave em um documento de texto não estruturado. Estas frases transmitem coletivamente a ideia principal do documento.

A sumarização extrativa devolve uma pontuação de classificação como parte da resposta do sistema, juntamente com as frases extraídas e a sua posição nos documentos originais. Uma pontuação de classificação indica quão relevante é uma frase para a ideia principal de um documento. O modelo atribui uma pontuação entre 0 e 1 (inclusive) a cada frase e devolve as frases com a pontuação mais elevada por pedido. Por exemplo, se você solicitar um resumo de três frases, o serviço retornará as três frases mais bem pontuadas.

Outra funcionalidade do Azure Language no Foundry Tools, a extração de frases-chave, pode extrair informação chave. Ao decidir entre extração de frases-chave e sumarização extrativa, considere estes fatores:

  • A extração de frases-chave retorna frases, enquanto a sumarização extrativa retorna frases.
  • A sumarização extrativa retorna frases juntamente com uma pontuação de classificação, e as sentenças mais bem classificadas são retornadas por solicitação.
  • O resumo extrativo também retorna as seguintes informações posicionais:
    • Offset: A posição inicial de cada frase extraída.
    • Comprimento: O comprimento de cada frase extraída.

Determinar como processar os dados (opcional)

Submissão de dados

Submeter documentos à API como cadeias de texto. A API realiza a análise após a receção do pedido. Como a API é assíncrona, pode haver um atraso entre o envio de uma solicitação de API e o recebimento dos resultados.

Quando utiliza esta funcionalidade, os resultados da API ficam disponíveis durante 24 horas a partir do momento em que o pedido é ingerido, e a resposta indica essa disponibilidade. Após este período, os resultados são eliminados e deixam de estar disponíveis para recolha.

Obter resultados de resumo de texto

Quando você obtém resultados da deteção de idioma, pode transmitir os resultados para um aplicativo ou salvar a saída em um arquivo no sistema local.

O exemplo seguinte mostra conteúdos que pode submeter para resumo. O conteúdo é extraído do artigo do blogue da Microsoft Uma representação holística para a IA integrativa. Este artigo é apenas um exemplo. A API pode aceitar texto de entrada mais longo. Para obter mais informações, consulteLimites de dados e serviços.

"Na Microsoft, estamos em uma busca para avançar a IA além das técnicas existentes, adotando uma abordagem mais holística e centrada no ser humano para aprender e compreender. Como Diretor de Tecnologia da Foundry Tools, tenho trabalhado com uma equipa de cientistas e engenheiros incríveis para transformar esta missão em realidade. Na minha função, desfruto de uma perspetiva única na visualização da relação entre três atributos da cognição humana: texto monolingue (X), sinais sensoriais áudio ou visuais (Y) e multilingue (Z). Na interseção de todos os três, há magia — o que chamamos de código XYZ, conforme ilustrado na Figura 1 — uma representação conjunta para criar uma IA mais poderosa que pode falar, ouvir, ver e entender melhor os seres humanos. Acreditamos que o código XYZ nos permite cumprir nossa visão de longo prazo: aprendizagem de transferência entre domínios, abrangendo modalidades e idiomas. O objetivo é ter modelos pré-treinados que possam aprender em conjunto representações para apoiar uma ampla gama de tarefas de IA a jusante, da mesma forma que os humanos fazem hoje. Nos últimos cinco anos, alcançamos o desempenho humano em benchmarks em reconhecimento de fala conversacional, tradução automática, resposta a perguntas conversacionais, compreensão de leitura automática e legendagem de imagens. Esses cinco avanços nos forneceram sinais fortes em direção à nossa aspiração mais ambiciosa de produzir um salto nas capacidades de IA, alcançando uma aprendizagem multissensorial e multilíngue mais próxima de como os humanos aprendem e entendem. Acredito que o código conjunto XYZ é um componente fundamental dessa aspiração, quando baseado em fontes de conhecimento externas na fase subsequente das tarefas de IA.

A solicitação da API de resumo de texto é processada após o recebimento da solicitação, criando um trabalho para o back-end da API. Se o trabalho for bem-sucedido, a saída da API será retornada. O resultado está disponível para recuperação por 24 horas. Após esse tempo, a saída é limpa. Devido ao suporte multilíngue e ao suporte a emojis, a resposta pode conter desvios de texto. Para obter mais informações, vejacomo processar deslocamentos.

Quando você usa o exemplo anterior, a API pode retornar estas frases resumidas:

Resumo extrativo:

  • "Na Microsoft, estamos numa missão para avançar a IA para além das técnicas existentes, adotando uma abordagem mais holística e centrada no ser humano na aprendizagem e compreensão."
  • "Acreditamos que o código XYZ nos permite cumprir nossa visão de longo prazo: aprendizagem de transferência entre domínios, abrangendo modalidades e idiomas."
  • "O objetivo é ter modelos pré-treinados que possam aprender conjuntamente representações para apoiar uma ampla gama de tarefas de IA a jusante, da mesma forma que os humanos fazem hoje."

Resumo abstrato:

  • "A Microsoft está adotando uma abordagem mais holística e centrada no ser humano para aprender e compreender. Acreditamos que o código XYZ nos permite cumprir nossa visão de longo prazo: aprendizagem de transferência entre domínios, abrangendo modalidades e idiomas. Nos últimos cinco anos, atingimos o desempenho humano em benchmarks importantes."

Experimente o resumo extrativo de texto

Você pode usar o resumo extrativo de texto para obter resumos de artigos, trabalhos ou documentos. Para ver um exemplo, consulte o artigo de início rápido.

Use o sentenceCount parâmetro para guiar quantas frases são devolvidas, sendo 3 o padrão. O intervalo é de 1 a 20.

Use o sortby parâmetro para especificar em que ordem as frases extraídas são devolvidas — ou Offset ou Rank, sendo Offset o padrão.

Valor do parâmetro Description
Rank Ordenar as frases de acordo com a sua relevância para o documento de entrada, determinada pelo serviço.
Offset Mantém a ordem original em que as frases aparecem no documento de entrada.

Experimente o resumo abstrato do texto

O exemplo seguinte mostra como começar com a sumarização abstrativa de texto:

  1. Copie o comando seguinte para um editor de texto. O exemplo BASH usa o caractere de continuação de linha \. Se o console ou terminal usar um caractere de continuação de linha diferente, use esse caractere.
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-04-01 \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
' 
{
  "displayName": "Text Abstractive Summarization Task Example",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "en",
        "text": "At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, human-centric approach to learning and understanding. As Chief Technology Officer of Foundry Tools, I have been working with a team of amazing scientists and engineers to turn this quest into a reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the intersection of all three, there's magic—what we call XYZ-code as illustrated in Figure 1—a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We believe XYZ-code enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained models that can jointly learn representations to support a broad range of downstream AI tasks, much in the way humans do today. Over the past five years, we have achieved human performance on benchmarks in conversational speech recognition, machine translation, conversational question answering, machine reading comprehension, and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious aspiration to produce a leap in AI capabilities, achieving multi-sensory and multilingual learning that is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
      }
    ]
  },
  "tasks": [
    {
      "kind": "AbstractiveSummarization",
      "taskName": "Text Abstractive Summarization Task 1",
    }
  ]
}
'
  1. Faça as seguintes alterações no comando sempre que necessário:

    • Substitua o valor your-language-resource-key pela sua chave.
    • Substitua a primeira parte da URL your-language-resource-endpoint da solicitação pela URL do ponto de extremidade.
  2. Abra uma janela de prompt de comando (por exemplo: BASH).

  3. Cole o comando a partir do editor de texto na janela da linha de comandos e, em seguida, execute o comando.

  4. Obtenha o operation-location a partir do cabeçalho da resposta. O valor é semelhante ao seguinte URL:

https://<your-language-resource-endpoint>/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-10-01-preview
  1. Para obter os resultados da solicitação, use o seguinte comando cURL. Certifique-se de substituir <my-job-id> pelo valor de ID numérico que você recebeu do cabeçalho de resposta anterior operation-location :
curl -X GET https://<your-language-resource-endpoint>/language/analyze-text/jobs/<my-job-id>?api-version=2022-10-01-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>"

Exemplo de resumo de texto abstrato Resposta JSON

{
    "jobId": "cd6418fe-db86-4350-aec1-f0d7c91442a6",
    "lastUpdateDateTime": "2022-09-08T16:45:14Z",
    "createdDateTime": "2022-09-08T16:44:53Z",
    "expirationDateTime": "2022-09-09T16:44:53Z",
    "status": "succeeded",
    "errors": [],
    "displayName": "Text Abstractive Summarization Task Example",
    "tasks": {
        "completed": 1,
        "failed": 0,
        "inProgress": 0,
        "total": 1,
        "items": [
            {
                "kind": "AbstractiveSummarizationLROResults",
                "taskName": "Text Abstractive Summarization Task 1",
                "lastUpdateDateTime": "2022-09-08T16:45:14.0717206Z",
                "status": "succeeded",
                "results": {
                    "documents": [
                        {
                            "summaries": [
                                {
                                    "text": "Microsoft is taking a more holistic, human-centric approach to AI. We've developed a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We've achieved human performance on benchmarks in conversational speech recognition, machine translation, ...... and image captions.",
                                    "contexts": [
                                        {
                                            "offset": 0,
                                            "length": 247
                                        }
                                    ]
                                }
                            ],
                            "id": "1"
                        }
                    ],
                    "errors": [],
                    "modelVersion": "latest"
                }
            }
        ]
    }
}
Parâmetro Description
-X POST <endpoint> Especifica o seu endpoint para acessar a API.
-H Content-Type: application/json O tipo de conteúdo para enviar dados JSON.
-H "Ocp-Apim-Subscription-Key:<key> Especifica a chave para acessar a API.
-d <documents> O JSON que contém os documentos que você deseja enviar.

Os seguintes comandos cURL são executados a partir de um shell BASH. Edita estes comandos com o teu próprio nome de recurso, chave de recurso e valores JSON.

Sumarização baseada em consulta

A API de resumo de texto baseada em consulta é uma extensão da API de resumo de texto existente.

A maior diferença é um novo query campo no corpo da solicitação (em tasks>parameters>query).

Tip

A sumarização baseada em consultas tem alguma diferenciação na utilização do controlo de comprimento, consoante o tipo de sumarização baseada em consultas que está a usar:

  • A sumarização extrativa baseada em consulta suporta o controlo de comprimento especificando sentenceCount.
  • A sumarização abstrativa baseada em consultas não suporta controlo de comprimento.

Aqui está um pedido de exemplo:

curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-11-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
' 
{
  "displayName": "Text Extractive Summarization Task Example",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "en",
        "text": "At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, human-centric approach to learning and understanding. As Chief Technology Officer of Foundry Tools, I have been working with a team of amazing scientists and engineers to turn this quest into a reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the intersection of all three, there's magic—what we call XYZ-code as illustrated in Figure 1—a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We believe XYZ-code enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained models that can jointly learn representations to support a broad range of downstream AI tasks, much in the way humans do today. Over the past five years, we have achieved human performance on benchmarks in conversational speech recognition, machine translation, conversational question answering, machine reading comprehension, and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious aspiration to produce a leap in AI capabilities, achieving multi-sensory and multilingual learning that is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
      }
    ]
  },
"tasks": [
    {
      "kind": "AbstractiveSummarization",
      "taskName": "Query-based Abstractive Summarization",
      "parameters": {
          "query": "XYZ-code",
          "summaryLength": "short"
      }
    },    {
      "kind": "ExtractiveSummarization",
      "taskName": "Query_based Extractive Summarization",
      "parameters": {
          "query": "XYZ-code"
      }
    }
  ]
}
'

Controlo do comprimento do resumo

Usando o parâmetro summaryLength em resumo abstrato

Se você não especificar summaryLength, o modelo determinará o comprimento do resumo.

Para o summaryLength parâmetro, três valores são aceitos:

  • oneSentence: Gera um resumo de maioritariamente uma frase, com cerca de 80 tokens.
  • short: Gera um resumo composto principalmente por duas a três frases, com cerca de 120 tokens.
  • medium: Gera um resumo composto principalmente por quatro a seis frases, com cerca de 170 tokens.
  • long: Gera um resumo com maioritariamente mais de sete frases, com cerca de 210 tokens.

Aqui está um pedido de exemplo:

curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-04-01 \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
' 
{
  "displayName": "Text Abstractive Summarization Task Example",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "en",
        "text": "At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, human-centric approach to learning and understanding. As Chief Technology Officer of Foundry Tools, I have been working with a team of amazing scientists and engineers to turn this quest into a reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the intersection of all three, there's magic—what we call XYZ-code as illustrated in Figure 1—a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We believe XYZ-code enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained models that can jointly learn representations to support a broad range of downstream AI tasks, much in the way humans do today. Over the past five years, we have achieved human performance on benchmarks in conversational speech recognition, machine translation, conversational question answering, machine reading comprehension, and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious aspiration to produce a leap in AI capabilities, achieving multi-sensory and multilingual learning that is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
      }
    ]
  },
  "tasks": [
    {
      "kind": "AbstractiveSummarization",
      "taskName": "Length controlled Abstractive Summarization",
          "parameters": {
          "summaryLength": "short"
      }
    }
  ]
}
'

Usando o parâmetro sentenceCount na sumarização extrativa

Para o sentenceCount parâmetro, introduza um valor de 1 a 20 para indicar o número desejado de frases de saída.

Aqui está um pedido de exemplo:

curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-11-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
' 
{
  "displayName": "Text Extractive Summarization Task Example",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "en",
        "text": "At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, human-centric approach to learning and understanding. As Chief Technology Officer of Foundry Tools, I have been working with a team of amazing scientists and engineers to turn this quest into a reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the intersection of all three, there's magic—what we call XYZ-code as illustrated in Figure 1—a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We believe XYZ-code enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained models that can jointly learn representations to support a broad range of downstream AI tasks, much in the way humans do today. Over the past five years, we have achieved human performance on benchmarks in conversational speech recognition, machine translation, conversational question answering, machine reading comprehension, and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious aspiration to produce a leap in AI capabilities, achieving multi-sensory and multilingual learning that is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
      }
    ]
  },
"tasks": [
    {
      "kind": "ExtractiveSummarization",
      "taskName": "Length controlled Extractive Summarization",
      "parameters": {
          "sentenceCount": "5"
      }
    }
  ]
}
'

Limites de serviço e dados

Para informações sobre o tamanho e número de pedidos que pode enviar por minuto e segundo, consulte o artigo sobre limites de serviço .

Consulte também