Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Sveiks, Habr! Šodien mēs parādīsim, kā izmantot Azure, lai atrisinātu problēmas, kurām parasti nepieciešama cilvēka iejaukšanās. Aģenti pavada daudz laika, atbildot uz tiem pašiem jautājumiem, apstrādājot tālruņa zvanus un īsziņas. Tērzēšanas roboti automatizē saziņu un atpazīšanu un samazina cilvēku slogu. Boti tiek izmantoti arī Azure DevOps, kur tie ļauj, piemēram, apstiprināt laidienus, pārvaldīt būvējumus — skatīt, sākt un apturēt — tieši no Slack vai Microsoft Teams. Būtībā tērzēšanas robots nedaudz atgādina CLI, ir tikai interaktīvs un ļauj izstrādātājam palikt tērzēšanas diskusijas kontekstā.

Šajā rakstā mēs runāsim par tērzēšanas robotu izveides rīkiem, parādīsim, kā tos var uzlabot, izmantojot kognitīvos pakalpojumus, un aprakstīsim, kā paātrināt izstrādi ar gataviem pakalpojumiem pakalpojumā Azure.

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Tērzēšanas roboti un kognitīvie pakalpojumi: kādas ir līdzības un kādas ir atšķirības?

Lai izveidotu robotprogrammatūras programmā Microsoft Azure, izmantojiet Azure Bot Service un Bot Framework. Kopā tie ir programmatūras komplekts robotu veidošanai, testēšanai, izvietošanai un administrēšanai, kas ļauj no gataviem moduļiem izveidot gan vienkāršas, gan uzlabotas komunikācijas sistēmas ar runas atbalstu, dabiskās valodas atpazīšanu un citām iespējām.

Pieņemsim, ka jums ir jāievieš vienkāršs robots, kas balstīts uz korporatīvo jautājumu un atbilžu pakalpojumu, vai, gluži pretēji, jāizveido funkcionāls robots ar sarežģītu, sazarotu sakaru sistēmu. Lai to izdarītu, varat izmantot vairākus rīkus, kas iedalīti trīs grupās: 

  1. Pakalpojumi ātrai dialoga interfeisu (botu) izstrādei.
  2. Gatavi kognitīvie AI pakalpojumi dažādiem lietošanas gadījumiem (modeli atpazīšana, runas atpazīšana, zināšanu bāze un meklēšana).
  3. AI modeļu izveides un apmācības pakalpojumi.

Parasti cilvēki intuitīvi jauc “botus” un “kognitīvos pakalpojumus”, jo abi jēdzieni ir balstīti uz saziņas principu, un robotprogrammatūras un pakalpojumu lietošanas gadījums ietver dialogus. Taču tērzēšanas roboti darbojas ar atslēgvārdiem un aktivizētājiem, un kognitīvie pakalpojumi darbojas ar patvaļīgiem pieprasījumiem, kurus parasti apstrādā cilvēki. 

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Kognitīvie pakalpojumi ir vēl viens veids, kā sazināties ar lietotāju, palīdzot pārvērst patvaļīgu pieprasījumu skaidrā komandā un nodot to robotam. 

Tādējādi tērzēšanas roboti ir lietojumprogrammas darbam ar pieprasījumiem, un kognitīvie pakalpojumi ir rīki inteliģentai pieprasījumu analīzei, kas tiek palaisti atsevišķi, bet kuriem tērzēšanas robots var piekļūt, kļūstot par "inteliģentu". 

Tērzēšanas robotu izveide

Ieteicamā robota dizaina diagramma Azure ir šāda: 

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Lai izstrādātu un izstrādātu botus pakalpojumā Azure, izmantojiet Botu sistēma. Pieejams vietnē GitHub robotu piemēri, ietvara iespējas mainās, tāpēc ir jāņem vērā robotos izmantotā SDK versija.

Ietvars nodrošina vairākas robotu izveides iespējas: izmantojot klasisko kodu, komandrindas rīkus vai blokshēmas. Pēdējā opcija vizualizē dialogus; šim nolūkam varat izmantot pārvaldnieku Bot Framework komponists. Tā tika veidota uz Bot Framework SDK kā vizuālas izstrādes rīks, ko starpdisciplināras komandas varēja izmantot, lai izveidotu robotprogrammatūras.

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Bot Framework Composer ļauj izmantot blokus, lai izveidotu dialoga struktūru, ar kuru robots darbosies. Turklāt jūs varat izveidot trigerus, tas ir, atslēgvārdus, uz kuriem robots reaģēs dialoga laikā. Piemēram, vārdi “operators”, “zādzība” vai “stop” un “pietiekami”.

Programmā Bot Framework Composer varat izveidot sarežģītas dialogu sistēmas, izmantojot Adaptīvie dialogi. Dialogos var izmantot gan kognitīvos pakalpojumus, gan notikumu kartes (adaptīvās kartes):

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Pēc izveides jūs varat izvietot tērzēšanas robotu abonementā, un automātiski sagatavots skripts izveidos visus nepieciešamos resursus: kognitīvos pakalpojumus, lietojumprogrammu plānu, lietojumprogrammu ieskatus, datu bāzi utt.

QnA veidotājs

Lai izveidotu vienkāršus robotprogrammatūras, kuru pamatā ir korporatīvās jautājumu un atbilžu datu bāzes, varat izmantot kognitīvo pakalpojumu QnA Maker. Ieviests kā vienkāršs tīmekļa vednis, tas ļauj ievadīt saiti uz korporatīvo zināšanu bāzi (FAQ URL) vai izmantot dokumentu datubāzi *.doc vai *.pdf formātā kā pamatu. Pēc indeksa izveides robots automātiski atlasīs atbilstošākās atbildes uz lietotāja jautājumiem.

Izmantojot QnAMaker, varat arī izveidot precizējošu jautājumu ķēdes ar automātisku pogu izveidi, papildināt zināšanu bāzi ar metadatiem un tālāk apmācīt pakalpojumu lietošanas laikā.

Pakalpojumu var izmantot kā tērzēšanas robotu, kas īsteno tikai šo vienu funkciju, vai kā daļu no sarežģīta tērzēšanas robota, kas atkarībā no pieprasījuma izmanto citus AI pakalpojumus vai Bot Framework elementus.

Darbs ar citiem kognitīvajiem pakalpojumiem

Azure platformā ir daudz dažādu kognitīvo pakalpojumu. Tehniski tie ir neatkarīgi tīmekļa pakalpojumi, kurus var izsaukt no koda. Atbildot uz to, pakalpojums nosūta noteikta formāta json, ko var izmantot tērzēšanas robotā.

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu
Visbiežāk lietotie tērzēšanas roboti ir:

  1. Teksta atpazīšana.
  2. Izstrādātāja definētu Custom Vision Service attēlu kategoriju atpazīšana (ražošanas gadījums: atpazīšana, vai darbinieks valkā aizsargcepuri, aizsargbrilles vai masku).
  3. Sejas atpazīšana (izcils lietošanas gadījums ir pārbaude, vai aptaujātā persona ir ievietojusi savu seju vai, piemēram, suņa fotoattēlu vai cita dzimuma personas fotoattēlu).
  4. Runas atpazīšana.
  5. Attēlu analīze.
  6. Tulkošana (mēs visi atceramies, cik daudz trokšņa radīja sinhronā tulkošana Skype).
  7. Pareizrakstības pārbaude un ieteikumi kļūdu labošanai.

LUIS

Turklāt, lai izveidotu robotprogrammatūras, kas jums var būt nepieciešamas LUIS (Language Understanding Intelligent Service). Pakalpojuma mērķi:

  • Nosakiet, vai lietotāja paziņojumam ir jēga un vai robota atbilde ir nepieciešama.
  • Samaziniet centienus pārrakstīt lietotāja runu (tekstu) robotam saprotamās komandās.
  • Paredziet patiesos lietotāja mērķus/nodomus un iegūstiet galvenos ieskatus no dialoga frāzēm.
  • Ļaujiet izstrādātājam palaist robotu, izmantojot tikai dažus nozīmes atpazīšanas piemērus un turpmāko robota papildu apmācību darbības laikā.
  • Ļaujiet izstrādātājam izmantot vizualizāciju, lai novērtētu komandu transkripcijas kvalitāti.
  • Palīdziet pakāpeniski uzlabot patieso mērķa atpazīšanu.

Faktiski LUIS galvenais mērķis ir ar noteiktu varbūtību saprast, ko lietotājs domāja, un pārvērst dabisku pieprasījumu harmoniskā komandā. Lai atpazītu vaicājuma vērtības, LUIS izmanto nodomu (nozīmju, nolūku) un entītiju kopu (vai nu iepriekš konfigurētus izstrādātājus, vai arī pieņemtus un iepriekš izveidotus “domēnus” — dažas gatavas standarta frāžu bibliotēkas, ko sagatavojis Microsoft). 

Vienkāršs piemērs: jums ir robots, kas sniedz laika prognozi. Viņam nolūks būs dabiska pieprasījuma tulkošana “darbībā” - laika prognozes pieprasījumā, un entītijas būs laiks un vieta. Šeit ir diagramma, kā CheckWeather nolūks darbojas šādam robotam.

Nolūks
Būtība
Dabiskā vaicājuma piemērs

Pārbaudiet Weather
{"tips": "atrašanās vieta", "entitāte": "maskava"}
{"type": "builtin.datetimeV2.date", "entity": "future","resolution":"2020-05-30"}
Kādi laikapstākļi būs rīt Maskavā?

Pārbaudiet Weather
{ "type": "date_range", "entity": "šajā nedēļas nogalē" }
Parādiet man prognozi šai nedēļas nogalei

Lai apvienotu QnA Maker un LUIS, varat izmantot Dispečers

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Kad strādājat ar QnA Maker un saņemat pieprasījumu no lietotāja, sistēma nosaka, cik procentu no varbūtības QnA atbilde atbilst pieprasījumam. Ja iespējamība ir augsta, lietotājam vienkārši tiek sniegta atbilde no korporatīvās zināšanu bāzes, ja tā ir zema, pieprasījumu var nosūtīt LUIS precizēšanai. Dispečera izmantošana ļauj neieprogrammēt šo loģiku, bet automātiski noteikt šo pieprasījumu atdalīšanas malu un ātri tos izplatīt.

Bota testēšana un publicēšana

Testēšanai tiek izmantota cita vietējā lietojumprogramma, Botu sistēmas emulators. Izmantojot emulatoru, varat sazināties ar robotprogrammatūru un pārbaudīt tā sūtītos un saņemtos ziņojumus. Emulators parāda ziņojumus tā, kā tie būtu redzami tīmekļa tērzēšanas saskarnē, un reģistrē JSON pieprasījumus un atbildes, kad tiek nosūtīta ziņojumapmaiņa robotam.

Šajā demonstrācijā ir parādīts emulatora izmantošanas piemērs, kas parāda BMW virtuālā asistenta izveidi. Video arī runāts par jauniem akseleratoriem tērzēšanas robotu izveidei – veidnēm:

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu
https://youtu.be/u7Gql-ClcVA?t=564

Veidojot tērzēšanas robotus, varat arī izmantot veidnes. 
Veidnes ļauj nerakstīt standarta bota funkcijas no jauna, bet pievienot gatavu kodu kā “prasmi”. Piemērs varētu būt darbs ar kalendāru, tikšanās reizēs utt. Gatavo prasmju kods publicēta vietnē github.

Testēšana bija veiksmīga, robots ir gatavs, un tagad tas ir jāpublicē un jāsavieno kanāli. Publicēšana tiek veikta, izmantojot Azure, un kā kanālus var izmantot kurjeru vai sociālos tīklus. Ja jums nav vajadzīgā kanāla datu ievadīšanai, varat to meklēt attiecīgajā GitHab kopienā. 

Tāpat, lai izveidotu pilnvērtīgu tērzēšanas robotu kā saskarni saziņai ar lietotāju un kognitīviem pakalpojumiem, jums, protams, būs nepieciešami papildu Azure pakalpojumi, piemēram, datu bāzes, bez servera (Azure Functions), kā arī LogicApp pakalpojumi un, iespējams, , notikumu režģis.

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Novērtēšana un analīze

Lai novērtētu lietotāja mijiedarbību, varat izmantot gan Azure Bot Service iebūvēto analīzi, gan īpašo Application Insights pakalpojumu.

Rezultātā varat apkopot informāciju, pamatojoties uz šādiem kritērijiem:

  • Cik lietotāju izvēlētajā laika periodā piekļuva robotam no dažādiem kanāliem.
  • Cik lietotāju, kuri nosūtīja vienu ziņojumu, atgriezās vēlāk un nosūtīja citu.
  • Cik darbību tika nosūtītas un saņemtas, izmantojot katru kanālu norādītajā laika intervālā.

Izmantojot Application Insights, varat pārraudzīt jebkuru Azure lietojumprogrammu un jo īpaši tērzēšanas robotus, iegūstot papildu datus par lietotāju uzvedību, ielādēm un tērzēšanas robotu reakcijām. Jāņem vērā, ka pakalpojumam Application Insights ir savs interfeiss Azure portālā.

Varat arī izmantot šajā pakalpojumā savāktos datus, lai programmā PowerBI izveidotu papildu vizualizācijas un analītiskos pārskatus. Var izmantot šāda PowerBI atskaites un veidnes piemēru šeit.

Mēs paātrinām izstrādi, izmantojot Azure pakalpojumus: mēs veidojam tērzēšanas robotus un kognitīvos pakalpojumus, izmantojot platformu

Paldies visiem par uzmanību! Šajā rakstā mēs izmantojām materiāls no Microsoft Azure arhitektes Annas Fenjušinas vebināra “Kad cilvēkiem nav laika. Kā 100% izmantot tērzēšanas robotus un kognitīvos pakalpojumus, lai automatizētu rutīnas procesus”, kurā mēs uzskatāmi parādījām, kas ir Azure tērzēšanas roboti un kādi ir to izmantošanas scenāriji, kā arī parādījām, kā 15 minūtēs izveidot robotu programmā QnA Maker un kā vaicājuma struktūra tiek atšifrēta LUIS. 

Mēs veidojām šo vebināru kā daļu no tiešsaistes maratona izstrādātājiem Dev Bootcamp. Runa bija par produktiem, kas paātrina izstrādi un atbrīvo daļu no uzņēmuma darbinieku ikdienas darba slodzes, izmantojot automatizācijas rīkus un gatavus iepriekš konfigurētus Azure moduļus. Citu maratonā iekļauto vebināru ieraksti pieejami šajās saitēs:

Avots: www.habr.com

Iegādājieties uzticamu mitināšanu vietnēm ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa vietņu mitināšanu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster