Share via


Samenvatting van documenten gebruiken

Samenvatting van documenten is ontworpen om inhoud te verkorten die gebruikers te lang achten om te lezen. Zowel extraherende als abstractieve samenvattingen condenseren artikelen, documenten of documenten tot belangrijke zinnen.

Extraheerlijke samenvatting: Produceert een samenvatting door zinnen te extraheren die gezamenlijk de belangrijkste of relevante informatie in de oorspronkelijke inhoud vertegenwoordigen.

Abstractieve samenvatting: Produceert een samenvatting door samengevatte zinnen te genereren uit het document dat het hoofdidee vastlegt.

Samenvatting op basis van query's: Hiermee kunt u een query gebruiken bij het samenvatten.

Elk van deze mogelijkheden kan een overzicht geven van specifieke interessante items wanneer deze zijn opgegeven.

De AI-modellen die door de API worden gebruikt, worden door de service verschaft. U hoeft alleen maar inhoud voor analyse te verzenden.

Voor eenvoudigere navigatie zijn hier koppelingen naar de bijbehorende secties voor elke service:

Aspect Sectie
Extractief Extractieve samenvatting
Abstractief Abstrctive Samenvatting
Querygericht Samenvatting op query's gericht

Functies

Tip

Als u deze functies wilt gaan gebruiken, kunt u het quickstart-artikel volgen om aan de slag te gaan. U kunt ook voorbeeldaanvragen indienen met Language Studio zonder dat u code hoeft te schrijven.

De extractieve samenvattings-API maakt gebruik van technieken voor verwerking van natuurlijke taal om sleutelzinnen in een ongestructureerd tekstdocument te vinden. Deze zinnen brengen gezamenlijk het hoofdidee van het document over.

Extraherende samenvatting retourneert een rangscore als onderdeel van het systeemantwoord, samen met geëxtraheerde zinnen en hun positie in de oorspronkelijke documenten. Een rangscore is een indicator van hoe relevant een zin is, tot het belangrijkste idee van een document. Het model geeft een score tussen 0 en 1 (inclusief) aan elke zin en retourneert de hoogste gescoorde zinnen per aanvraag. Als u bijvoorbeeld een samenvatting van drie zinnen aanvraagt, retourneert de service de drie hoogste gescoorde zinnen.

Er is nog een functie in Azure AI Language, sleuteltermextractie, waarmee belangrijke informatie kan worden geëxtraheerd. Houd rekening met het volgende bij het kiezen tussen sleuteltermextractie en extraherende samenvatting:

  • Sleuteltermextractie retourneert woordgroepen terwijl extraherende samenvatting zinnen retourneert.
  • Extractieve samenvatting retourneert zinnen samen met een rangscore en de hoogste gerangschikte zinnen worden per aanvraag geretourneerd.
  • Extraheerlijke samenvatting retourneert ook de volgende positionele informatie:
    • Verschuiving: de beginpositie van elke geëxtraheerde zin.
    • Lengte: De lengte van elke geëxtraheerde zin.

Bepalen hoe de gegevens moeten worden verwerkt (optioneel)

Gegevens verzenden

U verzendt documenten naar de API als tekenreeksen met tekst. Analyse wordt uitgevoerd na ontvangst van de aanvraag. Omdat de API asynchroon is, kan er een vertraging optreden tussen het verzenden van een API-aanvraag en het ontvangen van de resultaten.

Wanneer u deze functie gebruikt, zijn de API-resultaten gedurende 24 uur beschikbaar vanaf het moment dat de aanvraag is opgenomen en wordt aangegeven in het antwoord. Na deze periode worden de resultaten opgeschoond en zijn ze niet meer beschikbaar voor het ophalen.

Samenvattingsresultaten van documenten ophalen

Wanneer u resultaten van taaldetectie krijgt, kunt u de resultaten streamen naar een toepassing of de uitvoer opslaan in een bestand op het lokale systeem.

Hier volgt een voorbeeld van inhoud die u kunt indienen voor samenvatting, die wordt geëxtraheerd met behulp van het Microsoft-blogartikel Een holistische weergave voor integratieve AI. Dit artikel is slechts een voorbeeld, de API kan langere invoertekst accepteren. Zie de sectie gegevenslimieten voor meer informatie.

"Bij Microsoft hebben we een zoektocht gedaan om AI verder te zetten dan bestaande technieken, door een meer holistische, mensgerichte benadering van leren en begrijpen te gebruiken. Als Chief Technology Officer van Azure AI-services heb ik gewerkt met een team van geweldige wetenschappers en technici om deze zoektocht om te zetten in een realiteit. In mijn rol geniet ik van een uniek perspectief bij het bekijken van de relatie tussen drie kenmerken van menselijke cognitie: monoscalel text (X), audio- of visuele sensorische signalen, (Y) en meertalige (Z). Op het snijpunt van alle drie is er magie, wat we XYZ-code noemen, zoals geïllustreerd in afbeelding 1, een gezamenlijke representatie voor het creëren van krachtigere AI die mensen kan spreken, horen, zien en begrijpen. We geloven dat XYZ-code ons in staat stelt om onze langetermijnvisie te vervullen: cross-domain transfer learning, spanningsmodaliteiten en talen. Het doel is om vooraf getrainde modellen te hebben die gezamenlijk weergaven kunnen leren om een breed scala aan downstream AI-taken te ondersteunen, veel op de manier waarop mensen tegenwoordig doen. De afgelopen vijf jaar hebben we menselijke prestaties bereikt op het gebied van gespreksspraakherkenning, machinevertaling, gespreksvragen beantwoorden, begrip van machinelezen en beeld onderschrift ing. Deze vijf doorbraaken gaven ons sterke signalen voor onze ambitieuzere ambitie om een sprong in AI-mogelijkheden te produceren, waardoor multisensorische en meertalige leermogelijkheden worden bereikt die dichter bij de wijze waarop mensen leren en begrijpen. Ik geloof dat de gezamenlijke XYZ-code een fundamenteel onderdeel van deze ambitie is, indien geaard met externe kennisbronnen in de downstream AI-taken."

De documentsamenvattings-API-aanvraag wordt verwerkt na ontvangst van de aanvraag door een taak voor de API-back-end te maken. Als de taak is geslaagd, wordt de uitvoer van de API geretourneerd. De uitvoer is 24 uur beschikbaar voor ophalen. Na deze tijd wordt de uitvoer leeggemaakt. Vanwege meertalige ondersteuning voor emoji's kan het antwoord tekstverschuivingen bevatten. Zie Verschuivingen verwerken voor meer informatie.

Wanneer u het bovenstaande voorbeeld gebruikt, kan de API de volgende samengevatte zinnen retourneren:

Extraheersende samenvatting:

  • "Bij Microsoft hebben we een zoektocht gedaan om AI verder te zetten dan bestaande technieken, door een meer holistische, mensgerichte benadering van leren en begrijpen te nemen."
  • "We geloven dat XYZ-code ons in staat stelt om onze langetermijnvisie te vervullen: cross-domain transfer learning, spanningsmodaliteiten en talen."
  • "Het doel is om vooraf getrainde modellen te hebben die gezamenlijk weergaven kunnen leren om een breed scala aan downstream AI-taken te ondersteunen, veel op de manier waarop mensen vandaag de dag doen."

Abstractieve samenvatting:

  • "Microsoft maakt gebruik van een meer holistische, mensgerichte benadering van leren en begrijpen. We geloven dat XYZ-code ons in staat stelt om onze langetermijnvisie te vervullen: cross-domain transfer learning, spanningsmodaliteiten en talen. De afgelopen vijf jaar hebben we menselijke prestaties op benchmarks bereikt."

Samenvatting van documentextractief proberen

U kunt samenvattingen van documenten gebruiken om samenvattingen van artikelen, documenten of documenten op te halen. Zie het quickstart-artikel voor een voorbeeld.

U kunt de sentenceCount parameter gebruiken om te bepalen hoeveel zinnen worden geretourneerd, waarbij 3 dit de standaardwaarde is. Het bereik is van 1 tot 20.

U kunt ook de sortby parameter gebruiken om op te geven in welke volgorde de geëxtraheerde zinnen worden geretourneerd, Offset ofwel Rank, met Offset de standaardwaarde.

parameterwaarde Beschrijving
Positie Zinnen ordenen op basis van hun relevantie voor het invoerdocument, zoals bepaald door de service.
Verschuiving Hiermee behoudt u de oorspronkelijke volgorde waarin de zinnen worden weergegeven in het invoerdocument.

Samenvatting van documentabstrenting proberen

In het volgende voorbeeld gaat u aan de slag met samenvatting van het document:

  1. Kopieer de onderstaande opdracht naar een teksteditor. In het BASH-voorbeeld wordt het vervolgteken voor de \ regel gebruikt. Als in de console of terminal een ander regelvervolgteken wordt gebruikt, gebruikt u dat teken.
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
      }
    }
  ]
}
'

Als u dit niet opgeeft sentenceCount, bepaalt het model de samenvattingslengte. Let op: sentenceCount de benadering van het aantal zinnen van de uitvoersamenvatting, bereik 1 tot en met 20. Het gebruik van zinCount wordt niet aanbevolen voor abstractieve samenvatting.

  1. Breng waar nodig de volgende wijzigingen in de opdracht aan:

    • Vervang de waarde van your-language-resource-key door uw sleutel.
    • Vervang het eerste deel van de aanvraag-URL your-language-resource-endpoint door uw eindpunt-URL.
  2. Open een opdrachtpromptvenster (bijvoorbeeld: BASH).

  3. Plak de opdracht uit de teksteditor in het opdrachtpromptvenster en voer de opdracht uit.

  4. Haal de operation-location antwoordheader op. De waarde ziet er ongeveer als volgt uit:

https://<your-language-resource-endpoint>/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-10-01-preview
  1. Gebruik de volgende cURL-opdracht om de resultaten van de aanvraag op te halen. Zorg ervoor dat u vervangt door <my-job-id> de numerieke id-waarde die u hebt ontvangen van de vorige operation-location antwoordheader:
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>"

Samenvattingsvoorbeeld van abstractief document JSON-antwoord

{
    "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 Description
-X POST <endpoint> Hiermee geeft u het eindpunt voor toegang tot de API op.
-H Content-Type: application/json Het inhoudstype voor het verzenden van JSON-gegevens.
-H "Ocp-Apim-Subscription-Key:<key> Hiermee geeft u de sleutel voor toegang tot de API op.
-d <documents> De JSON met de documenten die u wilt verzenden.

De volgende cURL-opdrachten worden uitgevoerd vanuit een Bash-shell. Bewerk deze opdrachten met uw eigen resourcenaam, resourcesleutel en JSON-waarden.

Samenvatting op basis van query's

De op query's gebaseerde documentsamenvattings-API is een extensie voor de bestaande documentsamenvattings-API.

Het grootste verschil is een nieuw query veld in de aanvraagbody (onder>tasksparameters>query). Daarnaast is er een nieuwe manier om de voorkeur summaryLength op te geven in buckets van korte/middelgrote/lange, die we aanbevelen in plaats van sentenceCount, vooral wanneer u abstractief gebruikt. Hieronder ziet u een voorbeeldaanvraag:

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
      }
    }
  ]
}
'

De summaryParameter gebruiken

Voor de summaryLength parameter worden drie waarden geaccepteerd:

  • kort: Genereert een samenvatting van voornamelijk 2-3 zinnen, met ongeveer 120 tokens.
  • medium: Genereert een samenvatting van voornamelijk 4-6 zinnen, met ongeveer 170 tokens.
  • lang: Genereert een samenvatting van voornamelijk meer dan 7 zinnen, met ongeveer 210 tokens.

Service- en gegevenslimieten

Zie het artikel over servicelimieten voor informatie over de grootte en het aantal aanvragen dat u per minuut en seconde kunt verzenden.

Zie ook