Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Helo, Habr! Heddiw, byddwn yn dangos i chi sut i ddefnyddio Azure i ddatrys problemau sydd fel arfer yn gofyn am ymyrraeth ddynol. Mae asiantau yn treulio llawer o amser yn ateb yr un cwestiynau, yn trin galwadau ffôn a negeseuon testun. Mae Chatbots yn awtomeiddio cyfathrebu a chydnabod ac yn lleihau'r baich ar bobl. Defnyddir bots hefyd yn Azure DevOps, lle maent yn caniatáu, er enghraifft, i gymeradwyo datganiadau, rheoli adeiladau - gweld, cychwyn a stopio - yn uniongyrchol gan Slack neu Microsoft Teams. Yn ei hanfod, mae chatbot braidd yn atgoffa rhywun o CLI, dim ond yn rhyngweithiol, ac yn caniatáu i'r datblygwr aros yng nghyd-destun y sgwrs sgwrs.

Yn yr erthygl hon, byddwn yn siarad am offer ar gyfer creu chatbots, yn dangos sut y gellir eu gwella gyda gwasanaethau gwybyddol, ac yn disgrifio sut i gyflymu datblygiad gyda gwasanaethau parod yn Azure.

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Chatbots a gwasanaethau gwybyddol: beth sy'n debyg a beth yw'r gwahaniaethau?

I greu bots yn Microsoft Azure, rydych chi'n defnyddio'r Gwasanaeth Bot Azure a'r Fframwaith Bot. Gyda'i gilydd maent yn cynrychioli set o feddalwedd ar gyfer adeiladu, profi, defnyddio a gweinyddu bots, sy'n eich galluogi i greu o fodiwlau parod systemau cyfathrebu syml ac uwch gyda chymorth lleferydd, adnabod iaith naturiol a galluoedd eraill.

Gadewch i ni dybio bod angen i chi weithredu bot syml yn seiliedig ar wasanaeth Holi ac Ateb corfforaethol neu, i'r gwrthwyneb, creu bot swyddogaethol gyda system gyfathrebu gymhleth, ganghennog. I wneud hyn, gallwch ddefnyddio nifer o offer, wedi'u rhannu'n dri grŵp: 

  1. Gwasanaethau ar gyfer datblygiad cyflym rhyngwynebau deialog (bots).
  2. Gwasanaethau AI gwybyddol parod ar gyfer achosion defnydd gwahanol (adnabod patrwm, adnabod lleferydd, sylfaen wybodaeth a chwilio).
  3. Gwasanaethau ar gyfer creu a hyfforddi modelau AI.

Yn nodweddiadol, mae pobl yn drysu “bots” a “gwasanaethau gwybyddol” yn reddfol oherwydd bod y ddau gysyniad yn seiliedig ar yr egwyddor o gyfathrebu, ac mae'r achos defnyddio ar gyfer bots a gwasanaethau yn cynnwys deialogau. Ond mae chatbots yn gweithio gydag allweddeiriau a sbardunau, ac mae gwasanaethau gwybyddol yn gweithio gyda cheisiadau mympwyol sydd fel arfer yn cael eu prosesu gan fodau dynol: 

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Mae gwasanaethau gwybyddol yn ffordd arall o gyfathrebu â'r defnyddiwr, gan helpu i drosi cais mympwyol yn orchymyn clir a'i drosglwyddo i'r bot. 

Felly, mae chatbots yn gymwysiadau ar gyfer gweithio gyda cheisiadau, ac mae gwasanaethau gwybyddol yn offer ar gyfer dadansoddiad deallus o geisiadau sy'n cael eu lansio ar wahân, ond y gall y chatbot gael mynediad atynt, gan ddod yn “ddeallus.” 

Creu chatbots

Mae'r diagram dylunio a argymhellir ar gyfer bot yn Azure fel a ganlyn: 

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

I ddylunio a datblygu bots yn Azure, defnyddiwch Fframwaith Bot. Ar gael ar GitHub enghreifftiau o bots, mae galluoedd y fframwaith yn newid, felly mae angen ystyried y fersiwn o'r SDK a ddefnyddir yn y bots.

Mae'r fframwaith yn darparu sawl opsiwn ar gyfer creu bots: defnyddio cod clasurol, offer llinell orchymyn neu siartiau llif. Mae'r opsiwn olaf yn delweddu deialogau; ar gyfer hyn gallwch ddefnyddio'r rheolwr Cyfansoddwr Fframwaith Bot. Fe'i hadeiladwyd ar y Fframwaith Bot SDK fel offeryn datblygu gweledol y gallai timau trawsddisgyblaethol ei ddefnyddio i greu bots.

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Mae Bot Framework Composer yn caniatáu ichi ddefnyddio blociau i greu strwythur deialog y bydd y bot yn gweithio ag ef. Yn ogystal, gallwch greu sbardunau, hynny yw, geiriau allweddol y bydd y bot yn ymateb iddynt yn ystod y ddeialog. Er enghraifft, y geiriau “gweithredwr”, “lladrad” neu “stopio” a “digon”.

Yn Bot Framework Composer, gallwch greu systemau deialog cymhleth gan ddefnyddio Dialogau Addasol. Gall deialogau ddefnyddio gwasanaethau gwybyddol a chardiau digwyddiad (Cardiau Addasol):

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Ar ôl ei greu, gallwch chi ddefnyddio'r chatbot mewn tanysgrifiad, a bydd sgript a baratowyd yn awtomatig yn creu'r holl adnoddau angenrheidiol: gwasanaethau gwybyddol, Cynllun Cymhwysiad, Mewnwelediadau Cymhwysiad, cronfa ddata, ac ati.

Gwneuthurwr QnA

I greu bots syml yn seiliedig ar gronfeydd data Holi ac Ateb corfforaethol, gallwch ddefnyddio gwasanaeth gwybyddol QnA Maker. Wedi'i weithredu fel dewin gwe syml, mae'n caniatáu i chi fewnbynnu dolen i sylfaen wybodaeth gorfforaethol (FAQ Urls) neu ddefnyddio cronfa ddata o ddogfennau mewn fformat *.doc neu *.pdf fel sail. Ar ôl creu'r mynegai, bydd y bot yn dewis yr atebion mwyaf priodol i gwestiynau'r defnyddiwr yn awtomatig.

Gan ddefnyddio QnAmaker, gallwch hefyd greu cadwyni o egluro cwestiynau trwy greu botymau yn awtomatig, ychwanegu metadata at y sylfaen wybodaeth, a hyfforddi'r gwasanaeth ymhellach wrth ei ddefnyddio.

Gellir defnyddio'r gwasanaeth fel chatbot sy'n gweithredu'r un swyddogaeth hon yn unig, neu fel rhan o chatbot cymhleth sy'n defnyddio, yn dibynnu ar y cais, wasanaethau AI eraill neu elfennau o'r Fframwaith Bot.

Gweithio gyda gwasanaethau gwybyddol eraill

Mae yna lawer o wahanol wasanaethau gwybyddol ar blatfform Azure. Yn dechnegol, mae'r rhain yn wasanaethau gwe annibynnol y gellir eu galw o god. Mewn ymateb, mae'r gwasanaeth yn anfon json o fformat penodol, y gellir ei ddefnyddio yn y chatbot.

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform
Y defnydd mwyaf cyffredin o chatbots yw:

  1. Adnabod testun.
  2. Cydnabod categorïau delwedd Custom Vision Service a ddiffinnir gan y datblygwr (achos cynhyrchu: cydnabod a yw gweithiwr yn gwisgo het galed, gogls neu fwgwd).
  3. Adnabod wynebau (achos defnydd rhagorol yw gwirio a bostiodd y person sy'n cael ei arolygu ei wyneb ei hun, neu, dyweder, llun o gi neu lun o berson o ryw gwahanol).
  4. Adnabod lleferydd.
  5. Dadansoddiad delwedd.
  6. Cyfieithu (rydym i gyd yn cofio faint o sŵn a achosodd cyfieithu ar y pryd yn Skype).
  7. Gwiriad sillafu ac awgrymiadau ar gyfer cywiro gwallau.

LUIS

Hefyd, efallai y bydd eu hangen arnoch i greu bots LUIS (Gwasanaeth Deall Iaith Deallus). Amcanion y gwasanaeth:

  • Penderfynwch a yw datganiad y defnyddiwr yn gwneud synnwyr ac a oes angen ymateb y bot.
  • Lleihau ymdrechion i drawsgrifio lleferydd defnyddiwr (testun) yn orchmynion sy'n ddealladwy i'r bot.
  • Rhagfynegi gwir nodau/bwriadau defnyddiwr a thynnu mewnwelediadau allweddol o ymadroddion mewn deialog.
  • Gadewch i'r datblygwr lansio'r bot gan ddefnyddio dim ond ychydig o enghreifftiau o gydnabod ystyr a hyfforddiant ychwanegol dilynol o'r bot yn ystod y llawdriniaeth.
  • Galluogi'r datblygwr i ddefnyddio delweddu i asesu ansawdd trawsgrifio gorchymyn.
  • Cynorthwyo gyda gwelliannau cynyddrannol o ran adnabod gwir darged.

Mewn gwirionedd, prif nod LUIS yw deall gyda thebygolrwydd penodol beth oedd ystyr y defnyddiwr a throsi cais naturiol yn orchymyn cytûn. Er mwyn adnabod gwerthoedd ymholiad, mae LUIS yn defnyddio set o fwriadau (ystyron, bwriadau) ac endidau (naill ai wedi'u rhag-gyflunio gan ddatblygwyr, neu "barthau" a gymerwyd a'u ffurfio ymlaen llaw - rhai llyfrgelloedd parod o ymadroddion safonol a baratowyd gan Microsoft). 

Enghraifft syml: mae gennych chi bot sy'n rhoi rhagolwg tywydd i chi. Iddo ef, y bwriad fydd trosi cais naturiol yn “weithred” - cais am ragolygon tywydd, a bydd yr endidau yn amser a lle. Dyma ddiagram o sut mae bwriad CheckWeather yn gweithio ar gyfer bot o'r fath.

Bwriad
Hanfod
Enghraifft o ymholiad naturiol

Tywydd Gwirio
{ "type": "lleoliad", "endid": "moscow"}
{ "type": "builtin.datetimeV2.date", "entity": "dyfodol", "resolution": "2020-05-30"}
Sut fydd y tywydd yfory ym Moscow?

Tywydd Gwirio
{ " type " : " date_range " , " endid " : " penwythnos yma " }
Dangoswch y rhagolygon i mi ar gyfer y penwythnos hwn

I gyfuno QnA Maker a LUIS gallwch ddefnyddio Anfonwr

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Pan fyddwch yn gweithio gyda QnA Maker ac yn derbyn cais gan ddefnyddiwr, mae'r system yn pennu pa ganran o debygolrwydd y mae ateb QnA yn cyfateb i'r cais. Os yw'r tebygolrwydd yn uchel, yn syml, mae'r defnyddiwr yn cael ateb o'r sylfaen wybodaeth gorfforaethol; os yw'n isel, gellir anfon y cais at LUIS am eglurhad. Mae defnyddio Dispatcher yn caniatáu ichi beidio â rhaglennu'r rhesymeg hon, ond i benderfynu'n awtomatig ar ymyl gwahanu ceisiadau a'u dosbarthu'n gyflym.

Profi a chyhoeddi'r bot

Defnyddir cymhwysiad lleol arall ar gyfer profi, Efelychydd fframwaith bot. Gan ddefnyddio'r efelychydd, gallwch gyfathrebu â'r bot a gwirio'r negeseuon y mae'n eu hanfon a'u derbyn. Mae'r efelychydd yn dangos negeseuon fel y byddent yn ymddangos mewn rhyngwyneb gwe sgwrsio ac yn logio ceisiadau ac ymatebion JSON wrth anfon neges at y bot.

Cyflwynir enghraifft o ddefnyddio'r efelychydd yn y demo hwn, sy'n dangos creu cynorthwyydd rhithwir ar gyfer BMW. Mae'r fideo hefyd yn sôn am gyflymwyr newydd ar gyfer creu chatbots - templedi:

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform
https://youtu.be/u7Gql-ClcVA?t=564

Gallwch hefyd ddefnyddio templedi wrth greu eich chatbots. 
Mae templedi yn caniatáu ichi beidio ag ysgrifennu swyddogaethau bot safonol o'r newydd, ond i ychwanegu cod parod fel “sgil”. Gallai enghraifft gynnwys gweithio gyda chalendr, gwneud apwyntiadau, ac ati. Cod sgiliau parod cyhoeddi ar github.

Roedd y profion yn llwyddiannus, mae'r bot yn barod, a nawr mae angen ei gyhoeddi a chysylltu sianeli. Cyflawnir cyhoeddi gan ddefnyddio Azure, a gellir defnyddio negeswyr neu rwydweithiau cymdeithasol fel sianeli. Os nad oes gennych y sianel ofynnol ar gyfer mewnbynnu data, gallwch chwilio amdano yn y gymuned gyfatebol ar GitHab. 

Hefyd, i greu chatbot cyflawn fel rhyngwyneb ar gyfer cyfathrebu â'r defnyddiwr a gwasanaethau gwybyddol, bydd angen gwasanaethau Azure ychwanegol arnoch, wrth gwrs, megis cronfeydd data, di-weinydd (Azure Functions), yn ogystal â gwasanaethau LogicApp ac, o bosibl , Grid Digwyddiad.

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Asesu a dadansoddeg

I werthuso rhyngweithio defnyddwyr, gallwch ddefnyddio dadansoddeg adeiledig Gwasanaeth Bot Azure a'r gwasanaeth Cais Insights arbennig.

O ganlyniad, gallwch gasglu gwybodaeth yn seiliedig ar y meini prawf canlynol:

  • Faint o ddefnyddwyr gyrchodd y bot o wahanol sianeli yn ystod y cyfnod amser a ddewiswyd.
  • Faint o ddefnyddwyr a anfonodd un neges a ddychwelodd yn ddiweddarach ac anfon un arall.
  • Faint o gamau gweithredu a anfonwyd ac a dderbyniwyd gan ddefnyddio pob sianel yn ystod y cyfnod amser penodedig.

Gan ddefnyddio Cais Insights, gallwch fonitro unrhyw raglen yn Azure ac, yn benodol, chatbots, gan gael data ychwanegol am ymddygiad defnyddwyr, llwythi ac adweithiau chatbot. Dylid nodi bod gan y gwasanaeth Cais Insights ei ryngwyneb ei hun ym mhorth Azure.

Gallwch hefyd ddefnyddio'r data a gesglir trwy'r gwasanaeth hwn i greu delweddiadau ychwanegol ac adroddiadau dadansoddol yn PowerBI. Gellir cymryd enghraifft o adroddiad a thempled o'r fath ar gyfer PowerBI yma.

Rydym yn cyflymu datblygiad gan ddefnyddio gwasanaethau Azure: rydym yn creu chatbots a gwasanaethau gwybyddol gan ddefnyddio'r platfform

Diolch i chi gyd am eich sylw! Yn yr erthygl hon rydym yn defnyddio y deunydd o’r weminar gan bensaer Microsoft Azure Anna Fenyushina “Pan nad oes gan bobl amser. Sut i 100% ddefnyddio chatbots a gwasanaethau gwybyddol i awtomeiddio prosesau arferol”, lle gwnaethom ddangos yn glir beth yw chatbots yn Azure a beth yw'r senarios ar gyfer eu defnyddio, a dangoswyd hefyd sut i greu bot yn QnA Maker mewn 15 munud a sut mae'r mae strwythur ymholiad yn cael ei ddehongli yn LUIS. 

Gwnaethom y gweminar hwn fel rhan o'r marathon ar-lein i'r datblygwyr Dev Bootcamp. Roedd yn ymwneud â chynhyrchion sy'n cyflymu datblygiad ac yn lleddfu rhywfaint o'r llwyth gwaith arferol gan weithwyr cwmni gan ddefnyddio offer awtomeiddio a modiwlau Azure parod parod. Mae recordiadau o weminarau eraill sydd wedi’u cynnwys yn y marathon ar gael trwy’r dolenni canlynol:

Ffynhonnell: hab.com

Ychwanegu sylw