Dokumentumösszesítés használata

A dokumentumösszesítés célja, hogy lerövidítse azokat a tartalmakat, amelyeket a felhasználók túl hosszúnak tartanak az olvasáshoz. A kivonatoló és az absztraktív összegzés egyaránt a legfontosabb mondatokra tömöríti a cikkeket, dokumentumokat vagy dokumentumokat.

Kivonatoló összegzés: Összegzést hoz létre olyan mondatok kinyerésével, amelyek együttesen képviselik az eredeti tartalom legfontosabb vagy releváns információit.

Absztraktív összegzés: Összegzést hoz létre úgy, hogy összegzett mondatokat hoz létre a dokumentumból, amelyek rögzítik a fő gondolatot.

Lekérdezésközpontú összegzés: Lehetővé teszi, hogy lekérdezést használjon összegzéskor.

Ezen képességek mindegyike képes összegezni az egyes érdekes elemeket, ha meg vannak adva.

Az API által használt AI-modelleket a szolgáltatás biztosítja, csak elemzés céljából kell tartalmat küldenie.

A könnyebb navigálás érdekében az alábbi hivatkozások az egyes szolgáltatások megfelelő szakaszaira mutatnak:

Szempont Section
Kitermelő Kivonatoló összegzés
Absztraktív Abstrctive Summarization
Lekérdezésközpontú Lekérdezésközpontú összegzés

Funkciók

Tipp.

Ha el szeretné kezdeni ezeket a funkciókat, az első lépésekhez kövesse a rövid útmutatót . Példakéréseket is létrehozhat a Language Studio használatával anélkül, hogy kódokat kellene írnia.

A kivonatoló összegzési API természetes nyelvi feldolgozási technikákat használ a kulcsmondatok strukturálatlan szöveges dokumentumokban való megkereséséhez. Ezek a mondatok együttesen közvetítik a dokumentum fő gondolatát.

A kivonatoló összegzés a rendszer válaszának részeként egy rangpontot ad vissza a kinyert mondatokkal és az eredeti dokumentumokban elfoglalt helyükkel együtt. A rangpontszám azt jelzi, hogy egy mondat mennyire releváns a dokumentum fő gondolata szempontjából. A modell minden mondathoz 0 és 1 (beleértve) pontszámot ad, és kérésenként a legmagasabb pontszámot adja vissza. Ha például három mondatos összegzést kér, a szolgáltatás a három legmagasabb pontszámú mondatot adja vissza.

Az Azure AI Language egy másik funkciója, a kulcskifejezések kinyerése, amely képes kinyerni a kulcsinformációkat. Amikor a kulcskifejezések kinyerése és a kivonatoló összegzés között dönt, vegye figyelembe a következőket:

  • A kulcskifejezések kinyerése kifejezéseket ad vissza, míg a kivonatoló összegzés mondatokat ad vissza.
  • A kivonatoló összegzés a rangpontszámmal együtt visszaadja a mondatokat, a legmagasabb rangsorolt mondatok pedig kérésenként jelennek meg.
  • A kivonatoló összegzés a következő pozícióadatokat is visszaadja:
    • Eltolás: Az egyes kinyert mondatok kezdőpozíciója.
    • Hossz: Az egyes kinyert mondatok hossza.

Az adatok feldolgozásának meghatározása (nem kötelező)

Adatok beküldése

A dokumentumokat szöveges sztringekként küldi el az API-nak. Az elemzés a kérelem megkapásakor történik meg. Mivel az API aszinkron, előfordulhat, hogy az API-kérés küldése és az eredmények fogadása között késés áll fenn.

A funkció használatakor az API-eredmények a kérelem betöltésétől számítva 24 órán át érhetők el, és a válasz jelzi. Ez után az idő elteltével az eredmények törlődnek, és már nem érhetők el a lekéréshez.

Dokumentumösszesítési eredmények lekérése

Ha nyelvfelismerési eredményeket kap, streamelheti az eredményeket egy alkalmazásba, vagy mentheti a kimenetet a helyi rendszer egyik fájljához.

Az alábbiakban egy példát mutatunk be az összegzéshez beküldhető tartalmakra, amelyeket a Microsoft egy holisztikus ábrázolása az integratív MI felé című Microsoft-blogcikkből nyer ki. Ez a cikk csak egy példa, az API elfogadhat hosszabb bemeneti szöveget. További információért tekintse meg az adatkorlátokat ismertető szakaszt.

"A Microsoftnál arra a küldetésre jutottunk, hogy a meglévő technikákon túlmutató mivoltunkkal holisztikusabb, emberközpontúbb megközelítést alkalmazzunk a tanuláshoz és a megértéshez. Az Azure AI-szolgáltatások technológiai igazgatójaként csodálatos tudósokból és mérnökökből álló csapattal dolgoztam, hogy ezt a küldetést valósággá alakítsam. Az én szerepkörömben az emberi megismerés három attribútuma közötti kapcsolatot tekinthetem meg: egynyelvű szöveg (X), hang- vagy vizuális érzékszervi jelek, (Y) és többnyelvű (Z). Mindhárom metszéspontjában van egy varázslat – amit XYZ-kódnak hívunk az 1. ábrán látható módon – egy közös ábrázolás, amely erősebb mesterséges intelligenciát hoz létre, amely jobban tud beszélni, hallani, látni és megérteni az embereket. Úgy gondoljuk, hogy az XYZ-kód lehetővé teszi számunkra, hogy megvalósítsuk hosszú távú elképzeléseinket: a tartományok közötti átvitel tanulását, a modalitásokon és nyelveken. A cél olyan előre betanított modellek használata, amelyek közösen tanulják meg a reprezentációkat az alsóbb rétegbeli AI-feladatok széles skálájának támogatásához, sok olyan módon, ahogyan az emberek ma. Az elmúlt öt évben emberi teljesítményt nyújtottunk a beszédfelismerés, a gépi fordítás, a beszélgetési kérdések megválaszolása, a gépi olvasás megértése és a képi képaláírás terén. Ez az öt áttörés erős jelzéseket adott számunkra a mi ambiciózusabb törekvésünk felé, hogy ugrást érjünk el a mesterséges intelligenciával kapcsolatos képességek terén, és olyan többérzékelős és többnyelvű tanulást érjünk el, amely közelebb áll az emberek tanulásához és megértéséhez. Úgy gondolom, hogy a közös XYZ-kód ennek a törekvésnek az alapja, ha az alsóbb rétegbeli AI-feladatokban külső tudásforrásokkal van alapozva."

A dokumentumösszesítési API-kérés feldolgozása a kérelem beérkezésekor történik, és létrehoz egy feladatot az API háttérrendszeréhez. Ha a feladat sikeres volt, a függvény visszaadja az API kimenetét. A kimenet 24 órán keresztül kérhető le. Ezután a kimenet törlődik. A többnyelvű és emoji támogatás miatt a válasz szövegeltolásokat tartalmazhat. További információkért tekintse meg az eltolások feldolgozásának módját.

A fenti példa használata esetén az API a következő összegzett mondatokat adja vissza:

Kivonatoló összegzés:

  • "A Microsoftnál arra a küldetésre jutottunk, hogy a meglévő technikákon túlmutató mivoltunkkal holisztikusabb, emberközpontúbb megközelítést alkalmazzunk a tanuláshoz és a megértéshez."
  • "Úgy gondoljuk, hogy az XYZ-kód lehetővé teszi számunkra, hogy megvalósítsuk a hosszú távú elképzeléseinket: a tartományok közötti átvitel tanulását, a modalitásokon és nyelveken."
  • "A cél az, hogy olyan előre betanított modellekkel rendelkezzenek, amelyek közösen tanulhatnak ábrázolásokat az alsóbb rétegbeli AI-feladatok széles skálájának támogatásához, sok olyan módon, ahogyan az emberek ma."

Absztraktív összegzés:

  • "A Microsoft holisztikusabb, emberközpontúbb megközelítést alkalmaz a tanuláshoz és a megértéshez. Úgy gondoljuk, hogy az XYZ-kód lehetővé teszi számunkra, hogy megvalósítsuk hosszú távú elképzeléseinket: a tartományok közötti átvitel tanulását, a modalitásokon és nyelveken. Az elmúlt öt évben emberi teljesítményt értünk el a teljesítményteszteken."

Dokumentum kinyerési összegzésének kipróbálása

A dokumentumok kivonatoló összegzésével cikkeket, dokumentumokat vagy dokumentumokat összegzhet. Egy példa megtekintéséhez tekintse meg a rövid útmutatót.

A paraméterrel sentenceCount megtudhatja, hogy hány mondatot ad vissza a rendszer alapértelmezettként 3 . A tartomány 1 és 20 között van.

A paraméterrel sortby azt is megadhatja, hogy a kinyert mondatok milyen sorrendben lesznek visszaadva – vagy OffsetOffsetRankalapértelmezettként.

paraméter értéke Leírás
Helyezés A mondatokat a szolgáltatás által meghatározott módon rendelje meg a bemeneti dokumentumhoz való relevanciájuknak megfelelően.
Eltolás Megtartja az eredeti sorrendet, amelyben a mondatok megjelennek a bemeneti dokumentumban.

Dokumentum absztraktív összegzésének kipróbálása

Az alábbi példa a dokumentum absztraktív összegzésének első lépéseit ismerteti:

  1. Másolja az alábbi parancsot egy szövegszerkesztőbe. A BASH-példa a sor folytatási karakterét \ használja. Ha a konzol vagy a terminál egy másik sor-folytatási karaktert használ, használja inkább ezt a karaktert.
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
      }
    }
  ]
}
'

Ha nem adja meg sentenceCount, a modell határozza meg az összegzés hosszát. Vegye figyelembe, hogy sentenceCount a kimeneti összegzés mondatszámának közelítése, tartománya 1 és 20 között. A sentenceCount használata nem ajánlott absztraktív összegzéshez.

  1. Hajtsa végre a következő módosításokat a parancs megfelelő területein:

    • Cserélje le az értéket your-language-resource-key a kulcsra.
    • Cserélje le a kérelem URL-címének your-language-resource-endpoint első részét a végpont URL-címére.
  2. Nyisson meg egy parancssori ablakot (például: BASH).

  3. Illessze be a parancsot a szövegszerkesztőből a parancssori ablakba, majd futtassa a parancsot.

  4. operation-location A válasz fejlécének lekérése. Az érték a következő URL-címhez hasonló:

https://<your-language-resource-endpoint>/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-10-01-preview
  1. A kérés eredményeinek lekéréséhez használja a következő cURL-parancsot. Mindenképpen cserélje le <my-job-id> az előző operation-location válaszfejléctől kapott numerikus azonosítót:
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>"

Absztraktív dokumentumösszesítési példa – JSON-válasz

{
    "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"
                }
            }
        ]
    }
}
paraméter Leírás
-X POST <endpoint> Megadja a végpontot az API eléréséhez.
-H Content-Type: application/json A JSON-adatok küldéséhez használt tartalomtípus.
-H "Ocp-Apim-Subscription-Key:<key> Megadja az API eléréséhez szükséges kulcsot.
-d <documents> A elküldeni kívánt dokumentumokat tartalmazó JSON.

A következő cURL-parancsok bash-rendszerhéjból lesznek végrehajtva. Szerkessze ezeket a parancsokat saját erőforrásnevével, erőforráskulcsával és JSON-értékeivel.

Lekérdezésalapú összegzés

A lekérdezésalapú dokumentumösszesítési API a meglévő dokumentumösszesítő API kiterjesztése.

A legnagyobb különbség egy új query mező a kérelem törzsében (alatt>tasksparameters>query). Emellett van egy új módszer a rövid/közepes/hosszú "gyűjtőkben" előnyben részesített summaryLength érték megadására, amelyet ahelyett sentenceCountjavasoljuk, hogy használjon, különösen absztraktív használat esetén. Az alábbiakban egy példakérés látható:

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

Az summaryParameter használata

A paraméter esetében a summaryLength rendszer három értéket fogad el:

  • rövid: Többnyire 2-3 mondat összegzését hozza létre, körülbelül 120 jogkivonattal.
  • közepes: Többnyire 4-6 mondat összegzését hozza létre, körülbelül 170 jogkivonattal.
  • hosszú: Több mint 7 mondat összegzését hozza létre, körülbelül 210 jogkivonattal.

Szolgáltatási és adatkorlátok

A percenként és másodpercenként küldhető kérelmek méretével és számával kapcsolatos információkért tekintse meg a szolgáltatáskorlátokról szóló cikket.

Lásd még