Come usare il riepilogo dei documenti

Il riepilogo dei documenti è progettato per abbreviare il contenuto che gli utenti considerano troppo lungo per la lettura. Riepiloghi estrattivi e astrattivi condensano articoli, documenti o documenti in frasi chiave.

Riepilogo estrativo: produce un riepilogo estraendo frasi che rappresentano collettivamente le informazioni più importanti o rilevanti all'interno del contenuto originale.

Riepilogo astratta: produce un riepilogo generando frasi riepilogate dal documento che acquisiscono l'idea principale.

Entrambe queste funzionalità sono in grado di riepilogare gli elementi specifici di interesse quando specificato.

I modelli di intelligenza artificiale usati dall'API vengono forniti dal servizio, quindi è sufficiente inviare contenuto per l'analisi.

Funzionalità

Suggerimento

Per iniziare a usare queste funzionalità, è possibile seguire l'articolo di avvio rapido per iniziare. È anche possibile effettuare richieste di esempio usando Language Studio senza dover scrivere codice.

L'API di riepilogo estrattivo usa tecniche di elaborazione del linguaggio naturale per individuare frasi chiave in un documento di testo non strutturato. Queste frasi trasmettono collettivamente l'idea principale del documento.

Il riepilogo estrativo restituisce un punteggio di classificazione come parte della risposta di sistema insieme alle frasi estratte e alla relativa posizione nei documenti originali. Un punteggio di classificazione è un indicatore del modo in cui una frase è determinata, per l'idea principale di un documento. Il modello assegna un punteggio compreso tra 0 e 1 (inclusi) a ogni frase e restituisce le frasi con punteggio più alto per ogni richiesta. Ad esempio, se si richiede un riepilogo a tre frasi, il servizio restituisce le tre frasi con punteggio più alto.

È disponibile un'altra funzionalità del linguaggio di intelligenza artificiale di Azure, l'estrazione di frasi chiave, che può estrarre informazioni chiave. Quando si decide tra estrazione di frasi chiave e riepilogo estrativo, tenere presente quanto segue:

  • L'estrazione di frasi chiave restituisce frasi mentre il riepilogo estrativo restituisce frasi.
  • Il riepilogo estrativo restituisce frasi insieme a un punteggio di classificazione e vengono restituite le frasi classificate più in alto per ogni richiesta.
  • Il riepilogo estrativo restituisce anche le informazioni posizionale seguenti:
    • Offset: posizione iniziale di ogni frase estratta.
    • Lunghezza: lunghezza di ogni frase estratta.

Determinare come elaborare i dati (facoltativo)

Invio di dati

I documenti vengono inviati all'API come stringhe di testo. Al momento della ricezione della richiesta viene eseguita l'analisi. Poiché l'API è asincrona, potrebbe verificarsi un ritardo tra l'invio di una richiesta API e la ricezione dei risultati.

Quando si usa questa funzionalità, i risultati dell'API sono disponibili per 24 ore dal momento in cui la richiesta è stata inserita e viene indicata nella risposta. Dopo questo periodo di tempo, i risultati vengono eliminati e non sono più disponibili per il recupero.

Recupero dei risultati del riepilogo dei documenti

Quando si ottengono risultati dal rilevamento della lingua, è possibile trasmettere i risultati a un'applicazione o salvare l'output in un file nel sistema locale.

Di seguito è riportato un esempio di contenuto che è possibile inviare per il riepilogo, estratto usando l'articolo del blog Microsoft Una rappresentazione olistica verso l'intelligenza artificiale integrata. Questo articolo è solo un esempio, l'API può accettare testo di input più lungo. Per altre informazioni, vedere la sezione limiti dei dati.

"Microsoft è stata in cerca di promuovere l'intelligenza artificiale oltre le tecniche esistenti, adottando un approccio più olistico e incentrato sull'uomo sull'apprendimento e la comprensione. Come Chief Technology Officer dei servizi di intelligenza artificiale di Azure, ho lavorato con un team di scienziati e ingegneri incredibili per trasformare questa ricerca in una realtà. Nel mio ruolo, godo di una prospettiva unica nella visualizzazione della relazione tra tre attributi della conoscenza umana: testo monolinguale (X), segnali sensoriali audio o visivi, (Y) e multilingue (Z). All'intersezione di tutti e tre, c'è la magia, ovvero quello che chiamiamo XYZ-code come illustrato nella figura 1, una rappresentazione congiunta per creare un'intelligenza artificiale più potente in grado di parlare, ascoltare, vedere e comprendere meglio gli esseri umani. Crediamo che XYZ-code ci consenta di soddisfare la nostra visione a lungo termine: apprendimento tra domini di trasferimento, spanning modalità e linguaggi. L'obiettivo è avere modelli con training preliminare in grado di apprendere congiuntamente le rappresentazioni per supportare un'ampia gamma di attività di IA downstream, molto nel modo in cui gli esseri umani fanno oggi. Negli ultimi cinque anni, abbiamo ottenuto prestazioni umane su benchmark nel riconoscimento vocale conversazionale, traduzione automatica, risposte alle domande conversazionali, comprensione della lettura automatica e didascalia di immagini. Queste cinque innovazioni ci hanno fornito segnali forti verso le nostre aspirazioni più ambiziose di produrre un salto nelle capacità di IA, ottenendo apprendimento multisensoriale e multilingue più vicino in linea con il modo in cui gli esseri umani imparano e comprendono. Credo che il codice XYZ congiunto sia una componente fondamentale di questa aspirazione, se basata su fonti di conoscenza esterne nelle attività di IA downstream".

La richiesta API di riepilogo del documento viene elaborata al ricevimento della richiesta creando un processo per il back-end dell'API. Se il processo ha avuto esito positivo, viene restituito l'output dell'API. L'output è disponibile per il recupero per 24 ore. Dopo questa volta, l'output viene eliminato. A causa del supporto multilingue ed emoji, la risposta potrebbe contenere offset di testo. Per altre informazioni, vedere come elaborare gli offset.

Quando si usa l'esempio precedente, l'API potrebbe restituire le frasi riepilogate seguenti:

Riepilogo estrativo:

  • "Microsoft è stata in cerca di promuovere l'intelligenza artificiale oltre le tecniche esistenti, adottando un approccio più olistico e incentrato sull'uomo per imparare e comprendere".
  • "Crediamo che XYZ-code ci consenta di soddisfare la nostra visione a lungo termine: apprendimento tra domini di trasferimento, spanning modalità e linguaggi."
  • "L'obiettivo è avere modelli con training preliminare in grado di apprendere congiuntamente le rappresentazioni per supportare un'ampia gamma di attività di IA downstream, molto nel modo in cui gli esseri umani fanno oggi".

Riepilogo astratto:

  • "Microsoft sta prendendo un approccio più olistico e incentrato sull'uomo per imparare e comprendere. Crediamo che XYZ-code ci consenta di soddisfare la nostra visione a lungo termine: apprendimento tra domini di trasferimento, spanning modalità e linguaggi. Negli ultimi cinque anni abbiamo raggiunto le prestazioni umane sui benchmark".

Provare il riepilogo estrattivo del documento

È possibile usare il riepilogo estrattore di documenti per ottenere riepiloghi di articoli, documenti o documenti. Per un esempio, vedere l'articolo di avvio rapido.

È possibile usare il sentenceCount parametro per guidare il numero di frasi restituite, con 3 il valore predefinito. L'intervallo è compreso tra 1 e 20.

È anche possibile usare il sortby parametro per specificare in quale ordine vengono restituite le frasi estratte, ovvero Offset o Rank, con Offset l'impostazione predefinita.

valore del parametro Descrizione
Classifica Ordinare le frasi in base alla pertinenza del documento di input, come deciso dal servizio.
Contropartita Mantiene l'ordine originale in cui le frasi vengono visualizzate nel documento di input.

Provare il riepilogo astrattivo del documento

L'esempio seguente illustra come iniziare a eseguire il riepilogo astrattivo del documento:

  1. Copiare il comando seguente in un editor di testo. L'esempio BASH usa il carattere di continuazione della \ riga. Se la console o il terminale usa un carattere di continuazione di riga diverso, usare invece tale carattere.
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2022-10-01-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
' 
{
  "displayName": "Document 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 Azure AI services, 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": "Document Abstractive Summarization Task 1",
      "parameters": {
        "summaryLength": short
      }
    }
  ]
}
'

Se non si specifica sentenceCount, il modello determina la lunghezza di riepilogo. Si noti che sentenceCount è l'approssimazione del conteggio delle frasi del riepilogo dell'output, compreso tra 1 e 20. L'uso di sentenceCount non è consigliato per il riepilogo astrattivo.

  1. Apportare le modifiche seguenti al comando, dove necessario:

    • Sostituire il valore your-language-resource-key con la propria chiave.
    • Sostituire la prima parte dell'URL your-language-resource-endpoint della richiesta con l'URL dell'endpoint.
  2. Aprire una finestra del prompt dei comandi, ad esempio BASH.

  3. Incollare il comando dall'editor di testo nella finestra del prompt dei comandi, quindi eseguire il comando .

  4. Ottenere l'oggetto operation-location dall'intestazione della risposta. Il valore è simile all'URL seguente:

https://<your-language-resource-endpoint>/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-10-01-preview
  1. Per ottenere i risultati della richiesta, usare il comando cURL seguente. Assicurarsi di sostituire <my-job-id> con il valore ID numerico ricevuto dall'intestazione della risposta precedente 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>"

Risposta JSON di esempio di riepilogo di documenti astrattivi

{
    "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": "Document Abstractive Summarization Task Example",
    "tasks": {
        "completed": 1,
        "failed": 0,
        "inProgress": 0,
        "total": 1,
        "items": [
            {
                "kind": "AbstractiveSummarizationLROResults",
                "taskName": "Document 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"
                }
            }
        ]
    }
}
parameter Descrizione
-X POST <endpoint> Specifica l'endpoint per l'accesso all'API.
-H Content-Type: application/json Il tipo di contenuto per l'invio di dati JSON.
-H "Ocp-Apim-Subscription-Key:<key> Specifica la chiave per l'accesso all'API.
-d <documents> Il codice JSON contenente i documenti da inviare.

I comandi cURL seguenti vengono eseguiti da una shell BASH. Modificare questi comandi con il nome e la chiave della risorsa e con i valori del file JSON.

Riepilogo basato su query

L'API di riepilogo dei documenti basata su query è un'estensione per l'API di riepilogo dei documenti esistente.

La differenza principale è un nuovo query campo nel corpo della richiesta (in tasks>parameters>query). Inoltre, esiste un nuovo modo per specificare il preferito summaryLength in "bucket" di short/medium/long, che è consigliabile usare invece di sentenceCount, soprattutto quando si usa l'astrazione. Di seguito è riportata una richiesta di esempio:

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": "Document 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 Azure AI services, 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": "Document Extractive Summarization Task 1",
      "parameters": {
        "query": "XYZ-code",
        "summaryLength": short
      }
    }
  ]
}
'

Uso di summaryParameter

Per il summaryLength parametro vengono accettati tre valori:

  • short: genera un riepilogo di 2-3 frasi, con circa 120 token.
  • medium: genera un riepilogo di 4-6 frasi, con circa 170 token.
  • long: genera un riepilogo di quasi 7 frasi, con circa 210 token.

Limiti relativi a servizi e dati

Per informazioni sulle dimensioni e sul numero di richieste che è possibile inviare al minuto e al secondo, vedere l'articolo limiti del servizio.

Vedi anche