Share via


Párbeszédpaneltár

A KÖVETKEZŐKRE VONATKOZIK: SDK v4

A párbeszédpanelek a cMicrosoft Entral koncepciója az SDK-ban, amely lehetővé teszi a felhasználóval folytatott hosszan futó beszélgetések kezelését. A párbeszédpanelek olyan feladatokat hajtanak végre, amelyek egy teljes beszélgetési szál egy részét vagy egy teljes beszélgetési szálat jelölhetnek. Csak egy vagy több fordulóra terjedhet ki, és rövid vagy hosszú ideig is terjedhet.

Ez a cikk a párbeszédpaneltár alapvető osztályait és funkcióit ismerteti.

  • Ismernie kell a robotok működését (beleértve a sorokat is) és az állapot kezelését.
  • Minden párbeszédpanel egy beszélgetési feladatot jelöl, amely a befejezésig futtatható, és összegyűjtett információkat ad vissza.
  • Az egyes párbeszédpanelek a vezérlőfolyamat egy alapegységét jelölik: kezdődhetnek, folytathatnak és befejezhetnek; szüneteltetés és folytatás; vagy le kell mondania.
  • A párbeszédpanelek hasonlóak egy programozási nyelv metódusához vagy függvényéhez. A párbeszédpanel indításakor argumentumokat vagy paramétereket adhat át, és a párbeszédpanel később visszaadott értéket is létrehozhat, amikor az befejeződik.

Tipp.

Ha még nem fejleszt robotokat a Bot Framework használatával, vagy új beszélgetési felületet hoz létre, kezdje a Bot Framework Composerrel. A meglévő, nem a Composerben létrehozott SDK-első robotok esetében fontolja meg a robot készségként való felfedését, és a Composer használatát a robot jövőbeli fejlesztéséhez.

Párbeszédpanel állapota

A párbeszédpanelek többfordulós beszélgetéseket is megvalósíthatnak, és így a többfordulós állapotra támaszkodnak. A párbeszédpanelek állapotának megadása nélkül a robot nem tudta, hogy hol szerepel a beszélgetésben, vagy milyen információkat gyűjtött már össze.

Ha meg szeretné őrizni egy párbeszédpanel helyét a beszélgetésben, a párbeszédpanel állapotát minden egyes sorból le kell kérni, és menteni kell a memóriába. Ezt a robot beszélgetési állapotában definiált párbeszédpanel-állapottulajdonság-tartozék kezeli. Ez a párbeszédpanel-állapot kezeli az összes aktív párbeszédpanel adatait, valamint az aktív párbeszédpanelek gyermekeinek adatait. Ez lehetővé teszi a robot számára, hogy ott vegye fel a helyét, ahol utoljára abbahagyta, és kezelje a különböző beszélgetési modelleket.

Futásidőben a párbeszédpanel állapottulajdonsága tartalmazza a párbeszédpanel logikai folyamatának helyét, beleértve a párbeszédpanel-példányobjektum formájában belsőleg gyűjtött információkat is. Ezt ismét be kell olvasni a robotba, és minden egyes sorból memóriába kell menteni.

Párbeszédpanel-infrastruktúra

A különböző típusú párbeszédpanelek mellett a beszélgetések tervezésében és irányításában az alábbi osztályok is részt vesznek. Bár általában nem kell közvetlenül használnia ezeket az osztályokat, tisztában kell lenni velük, és a céljuk hasznos lehet egy robot párbeszédpaneljeinek tervezésekor.

Osztály Leírás
Párbeszédpanel-készlet Olyan párbeszédpanelek gyűjteményét határozza meg, amelyek hivatkozhatnak egymásra, és együttműködhetnek egymással.
Párbeszédpanel-környezet Az összes aktív párbeszédpanel adatait tartalmazza.
Párbeszédpanel-példány Egy aktív párbeszédpanel adatait tartalmazza.
Párbeszédpanel eredménye Aktív vagy nemrégiben aktív párbeszédpanel állapotadatait tartalmazza. Ha az aktív párbeszédpanel befejeződött, ez tartalmazza a visszatérési értékét.

Párbeszédpanel-típusok

A párbeszédpaneltár néhány párbeszédpaneltípust biztosít a robot beszélgetéseinek egyszerűbb kezeléséhez. Néhány ilyen típust részletesebben a cikk későbbi részében ismertetünk.

Type Description
Párbeszéd Az összes párbeszédpanel alaposztálya.
tároló párbeszédpanel Az összes tároló párbeszédpanel alaposztálya, például az összetevő és az adaptív párbeszédpanelek. Belső párbeszédpanel-készletet tart fenn, és lehetővé teszi a párbeszédpanelek gyűjteményének egységként való kezelését.
összetevő párbeszédpanel A tároló párbeszédpanelek általános célú típusa, amely párbeszédpanelek készletét foglalja magában, lehetővé téve a készlet egészének újbóli felhasználását. Amikor egy összetevő párbeszédpanel elindul, az a gyűjteményében egy kijelölt párbeszédpanellel kezdődik. Amikor a belső folyamat befejeződik, az összetevő párbeszédpanelje véget ér.
vízesés párbeszédpanel Lépéssorozatot határoz meg, amely lehetővé teszi, hogy a robot végigvezetje a felhasználót egy lineáris folyamaton. Ezek általában úgy vannak kialakítva, hogy egy összetevő párbeszédpaneljén belül működjenek.
parancssori párbeszédpanelek Kérje meg a felhasználót a bemenetre, és adja vissza az eredményt. A parancssor addig ismétlődik, amíg érvényes bemenetet nem kap, vagy nem törli. A vízesés párbeszédpanelek használatához lettek kialakítva.
adaptív párbeszédpanel A Composer által a természetesebb beszélgetési folyamatok biztosításához használt tároló párbeszédpanel típusa. Nem használható közvetlenül SDK-első robotban.
művelet párbeszédpanelek Egy párbeszédpanel típusa, amely támogatja a műveletek implementálását a Composerben. Nem használható közvetlenül SDK-első robotban.
beviteli párbeszédpanelek Olyan párbeszédpaneltípus, amely támogatja a bemeneti műveletek implementálását a Composerben. Nem használható közvetlenül SDK-első robotban.
szakértelem párbeszédpanel Automatizálja egy vagy több képességrobot felügyeletét egy készségfelhasználótól. A Zeneszerző közvetlenül támogatja a képességeket műveletekként.
QnA Maker párbeszédpanel Automatizálja a QnA Maker-tudásbázis való hozzáférést. Ez a párbeszédpanel úgy lett kialakítva, hogy műveletként is működjön a Composerben.

Fontos

Az adaptív párbeszédpanelek először a C# SDK 4.9-es verziójában lettek hozzáadva. Az adaptív párbeszédpanelek támogatják a Bot Framework Composert , és nem használhatók közvetlenül SDK-alapú robotokban.

Párbeszédpanel-minták

A robot párbeszédpaneleinek indítására és kezelésére két fő minta létezik.

  1. Azt javasoljuk, hogy a Bot Framework Composer használatával beszélgetési párbeszédablakokat szerkesszen, hogy kihasználhassa a természetesebb, szabad beszélgetési képességek előnyeit. További információ: Bevezetés a Bot Framework Composer használatába. Az ilyen robotok szükség esetén továbbra is bővíthetők kóddal.
  2. Fejlessze a robotot az SDK egyik nyelvén, és használja a gyökér párbeszédpanel futtatási bővítményét. A futtatási módszer összetevő-párbeszédpanellel való használatával kapcsolatos információkért tekintse meg az összetevő- és vízesés párbeszédpaneleket , valamint a szekvenciális beszélgetési folyamat implementálásának módját.

A párbeszédpanel verem

A párbeszédpanel-környezet az összes aktív párbeszédpanelről tartalmaz információkat, és tartalmaz egy párbeszédpanel-vermet, amely hívásveremként működik az összes aktív párbeszédpanelen. Minden tároló párbeszédpanel rendelkezik egy belső párbeszédpanelkészlettel, amelyet vezérel, így minden aktív tároló párbeszédpanel egy belső párbeszédpanel-környezetet és párbeszédpanel-vermet vezet be az állapot részeként.

Bár nem fér hozzá közvetlenül a veremhez, annak és funkciójának megértése segít megérteni a párbeszédpanel-kódtár különböző aspektusait.

Tároló párbeszédpanelek

A tároló párbeszédpanelje lehet nagyobb párbeszédpanel-készlet része. Minden tárolóhoz tartozik egy belső párbeszédpanel-készlet, amelyet szintén felügyelnek.

  • Minden párbeszédpanelkészlet létrehoz egy hatókört a párbeszédpanel-azonosítók feloldásához.

  • Az SDK jelenleg kétféle tároló párbeszédpanelt valósít meg: az összetevők párbeszédpaneleit és az adaptív párbeszédpaneleket.

    A kettő fogalmi szerkezete meglehetősen eltérő. A Composer robot azonban mindkettőt használhatja.

Párbeszédpanel-azonosítók

Amikor párbeszédpanelt ad hozzá egy párbeszédpanelkészlethez, az adott készleten belül egyedi azonosítót rendel hozzá. A megadott párbeszédpanelek a azonosítójuk alapján hivatkoznak egymásra.

Amikor az egyik párbeszédpanel futtatáskor egy másik párbeszédpanelre hivatkozik, azt a párbeszédpanel azonosítója alapján teszi. A párbeszédpanel környezete az azonnali párbeszédpanel többi párbeszédpanele alapján próbálja feloldani az azonosítót. Ha nincs egyezés, egyezést keres a benne vagy a külső párbeszédpanelen, és így tovább. Ha nem található egyezés, a rendszer kivételt vagy hibát hoz létre.

Összetevők párbeszédpaneljei

Az összetevők párbeszédpanelei egy szekvenciamodellt használnak a beszélgetésekhez, és a tároló minden párbeszédpanelje felelős a tárolóban lévő többi párbeszédpanel meghívásáért. Ha az összetevő párbeszédpaneljének belső párbeszédpanel-verme üres, az összetevő véget ér.

Fontolja meg az összetevők és vízesések párbeszédpanelek használatát, ha a robot viszonylag egyszerű vezérlési folyamattal rendelkezik, amely nem igényel dinamikusabb beszélgetési folyamatot.

Az összetevők és vízesések párbeszédpaneljei részletesebben ismertetik az összetevőket, a vízeséseket és a parancssori párbeszédpaneleket.

Egyéb párbeszédpanelek

A QnA Maker és a szakértelem párbeszédpanelei különálló párbeszédpanelekként vagy egy tároló párbeszédpanel-gyűjteményének részeként használhatók.

QnA Maker párbeszédpanel

Megjegyzés:

Az Azure AI QnA Maker 2025. március 31-én megszűnik. 2022. október 1-től nem hozhat létre új QnA Maker-erőforrásokat vagy tudásbázis. A kérdés- és válaszképesség újabb verziója már elérhető az Azure AI Language részeként.

Az Egyéni kérdések megválaszolása, az Azure AI Nyelv egyik funkciója a QnA Maker szolgáltatás frissített verziója. A Bot Framework SDK kérdés-válasz támogatásával kapcsolatos további információkért lásd a természetes nyelv megértését.

A QnA Maker párbeszédpanel egy QnA Maker-tudásbázis érhető el, és támogatja a QnA Maker nyomon követési parancssori és aktív tanulási funkcióit.

  • A nyomon követési kérések( más néven többfordulós kérések) lehetővé teszik, hogy a tudásbázis további információt kérjenek a felhasználótól, mielőtt válaszolnak a kérdésükre.
  • Az aktív tanulási javaslatok lehetővé teszik, hogy a tudásbázis idővel javuljanak. A QnA Maker párbeszédpanel támogatja az aktív tanulási funkció kifejezett visszajelzését.

For more information, see:

Szakértelem párbeszédpanel

Egy készség párbeszédpanel egy vagy több készséghez fér hozzá és kezel. A képesség párbeszédpanel a szülőrobottól a képességrobotig közzéteszi a tevékenységeket, és visszaadja a képességre adott válaszokat a felhasználónak.

For more information, see:

Következő lépések