{"id":86861,"date":"2020-06-30T19:42:06","date_gmt":"2020-06-30T17:42:06","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy"},"modified":"2020-06-30T19:42:06","modified_gmt":"2020-06-30T17:42:06","slug":"uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy","title":{"rendered":"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Cze\u015b\u0107, Habr! Dzisiaj opowiemy, jak za pomoc\u0105 Azure rozwi\u0105zywa\u0107 zadania, kt\u00f3re zazwyczaj wymagaj\u0105 ludzkiej ingerencji. Operatorzy sp\u0119dzaj\u0105 du\u017co czasu, odpowiadaj\u0105c na te same pytania, przetwarzaj\u0105c po\u0142\u0105czenia telefoniczne i wiadomo\u015bci tekstowe. Chatboty automatyzuj\u0105 komunikacj\u0119 i rozpoznawanie, co pozwala zmniejszy\u0107 obci\u0105\u017cenie ludzi. Boty s\u0105 r\u00f3wnie\u017c u\u017cywane w Azure DevOps, gdzie umo\u017cliwiaj\u0105, na przyk\u0142ad, zatwierdzanie wyda\u0144, zarz\u0105dzanie budowami \u2014 przegl\u0105danie, uruchamianie i zatrzymywanie \u2014 bezpo\u015brednio z Slacka lub Microsoft Teams. W zasadzie chatbot w pewnym sensie przypomina CLI, tylko \u017ce jest interaktywny i pozwala programi\u015bcie pozosta\u0107 w kontek\u015bcie rozmowy w czacie.<\/p>\n<p>W tym artykule om\u00f3wimy narz\u0119dzia do tworzenia chatbot\u00f3w, poka\u017cemy, jak mo\u017cna je poprawi\u0107 dzi\u0119ki us\u0142ugom kognitywnym, oraz opiszemy, jak przyspieszy\u0107 rozw\u00f3j dzi\u0119ki gotowym us\u0142ugom w Azure.<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/66dac4e72182da3c4acd3a25e50740b0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Chatboty i us\u0142ugi kognitywne: co je \u0142\u0105czy i jak si\u0119 r\u00f3\u017cni\u0105<\/h2>\n<p>\nDo tworzenia bot\u00f3w w Microsoft Azure u\u017cywana jest us\u0142uga Azure Bot oraz platforma Bot Framework. Razem stanowi\u0105 zestaw oprogramowania do budowy, testowania, wdra\u017cania i zarz\u0105dzania botami, kt\u00f3ry umo\u017cliwia tworzenie zar\u00f3wno prostych, jak i zaawansowanych system\u00f3w komunikacji z obs\u0142ug\u0105 mowy, rozpoznawaniem j\u0119zyka naturalnego i innymi mo\u017cliwo\u015bciami.<\/p>\n<p>Za\u0142\u00f3\u017cmy, \u017ce musisz wdro\u017cy\u0107 prostego bota na podstawie korporacyjnej us\u0142ugi pyta\u0144 i odpowiedzi lub, przeciwnie, stworzy\u0107 funkcjonalnego bota z\u0142o\u017conego z rozga\u0142\u0119zionego systemu komunikacji. Do tego mo\u017cesz skorzysta\u0107 z szeregu narz\u0119dzi, kt\u00f3re mo\u017cna podzieli\u0107 na trzy grupy:\u00a0<\/p>\n<ol>\n<li>Us\u0142ugi szybkiego rozwoju interfejs\u00f3w dialogowych (bot\u00f3w).\n<\/li>\n<li>Gotowe us\u0142ugi kognitywne AI dla r\u00f3\u017cnych scenariuszy u\u017cycia (rozpoznawanie obraz\u00f3w, mowy, baza wiedzy i wyszukiwanie).\n<\/li>\n<li>Us\u0142ugi tworzenia i szkolenia modeli AI.\n<\/li>\n<\/ol>\n<p>\nZazwyczaj ludzie intuicyjnie mieszaj\u0105 \u201eboty\u201d i \u201eus\u0142ugi kognitywne\u201d, poniewa\u017c w obu poj\u0119ciach podstaw\u0105 jest zasada komunikacji, a w scenariuszach u\u017cycia bot\u00f3w i us\u0142ug wyst\u0119puj\u0105 dialogi. Jednak chatboty dzia\u0142aj\u0105 na podstawie s\u0142\u00f3w kluczowych i wyzwalaczy, podczas gdy us\u0142ugi kognitywne przetwarzaj\u0105 dowolne zapytania, kt\u00f3re zazwyczaj s\u0105 obs\u0142ugiwane przez ludzi:\u00a0<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/645bb695955f94e4b7aacf77b8277bf1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUs\u0142ugi kognitywne to jeszcze jeden spos\u00f3b komunikacji z u\u017cytkownikiem, pomagaj\u0105cy przekszta\u0142ci\u0107 dowolne zapytanie w jasne polecenie i przes\u0142a\u0107 je dalej do bota.\u00a0<\/p>\n<p>Zatem chatboty to aplikacje do obs\u0142ugi zapyta\u0144, a us\u0142ugi kognitywne to narz\u0119dzia do inteligentnej analizy zapyta\u0144, kt\u00f3re dzia\u0142aj\u0105 osobno, ale do kt\u00f3rych chatbot mo\u017ce si\u0119ga\u0107, staj\u0105c si\u0119 \u201einteligentnym\u201d.\u00a0<\/p>\n<h2>Tworzenie chatbot\u00f3w<\/h2>\n<p>\nZalecany schemat projektowania bota w Azure wygl\u0105da nast\u0119puj\u0105co:\u00a0<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/896c6341845b1a7349418441f1df5fef.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDo projektowania i rozwijania bot\u00f3w w Azure wykorzystuje si\u0119 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Microsoft\/botframework\">Bot Framework<\/a><\/noindex>. Na GitHubie znajduj\u0105 si\u0119 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/BotBuilder-Samples\">przyk\u0142ady bot\u00f3w<\/a><\/noindex>, mo\u017cliwo\u015bci frameworka zmieniaj\u0105 si\u0119, dlatego nale\u017cy bra\u0107 pod uwag\u0119 wersj\u0119 SDK, kt\u00f3ra jest u\u017cywana w botach.<\/p>\n<p>Framework umo\u017cliwia kilka sposob\u00f3w tworzenia bot\u00f3w: za pomoc\u0105 klasycznego kodu, narz\u0119dzi wiersza polece\u0144 lub schemat\u00f3w blokowych. Ostatnia opcja wizualizuje dialogi, w tym celu mo\u017cna u\u017cy\u0107 mened\u017cera <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/BotFramework-Composer\">Bot Framework Composer<\/a><\/noindex>. Stworzono go na bazie Bot Framework SDK jako wizualne narz\u0119dzie rozwoju, kt\u00f3re interdyscyplinarne zespo\u0142y mog\u0142yby wykorzysta\u0107 do tworzenia bot\u00f3w.<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/b0228e78228e8cb12ead15317c373a3c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nBot Framework Composer pozwala za pomoc\u0105 blok\u00f3w stworzy\u0107 struktur\u0119 dialogu, z kt\u00f3r\u0105 b\u0119dzie pracowa\u0107 bot. Dodatkowo mo\u017cna tworzy\u0107 wyzwalacze, czyli s\u0142owa kluczowe, na kt\u00f3re bot b\u0119dzie reagowa\u0107 podczas dialogu. Na przyk\u0142ad, na s\u0142owa \u201eoperator\u201d, \u201ekradzie\u017c\u201d czy \u201estop\u201d oraz \u201ewystarczy\u201d.<\/p>\n<p>W Bot Framework Composer mo\u017cna stworzy\u0107 z\u0142o\u017cony, rozwidlony system dialog\u00f3w, wykorzystuj\u0105c <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/bot-service\/bot-builder-adaptive-dialog-introduction?view=azure-bot-service-4.0\">Adaptive Dialogs<\/a><\/noindex>. Dialogi mog\u0105 wykorzystywa\u0107 zar\u00f3wno us\u0142ugi kognitywne, jak i karty zdarze\u0144 (Adaptive Cards):<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/a82771a42655d4dd678abe7997859caf.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPo utworzeniu mo\u017cna wdro\u017cy\u0107 chatbota w subskrypcji, a automatycznie przygotowany skrypt stworzy wszystkie niezb\u0119dne zasoby: us\u0142ugi kognitywne, plan aplikacji, Application Insights, baz\u0119 danych itd.<\/p>\n<h3>QnA Maker<\/h3>\n<p>\nDo tworzenia prostych bot\u00f3w opartych na korporacyjnych bazach danych pyta\u0144 i odpowiedzi mo\u017cna wykorzysta\u0107 us\u0142ug\u0119 kognitywn\u0105 QnA Maker. Opisana w formie prostego kreatora internetowego, pozwala na wprowadzenie linku do korporacyjnej bazy wiedzy (FAQ Urls) lub wykorzystanie bazy dokument\u00f3w w formacie *.doc lub *.pdf. Po utworzeniu indeksu bot sam b\u0119dzie dobiera\u0107 najbardziej odpowiednie odpowiedzi na pytania u\u017cytkownik\u00f3w.<\/p>\n<p>Za pomoc\u0105 QnAMaker mo\u017cna r\u00f3wnie\u017c tworzy\u0107 \u0142a\u0144cuchy pyta\u0144 doprecyzowuj\u0105cych z automatycznym tworzeniem przycisk\u00f3w, uzupe\u0142nia\u0107 baz\u0119 wiedzy metadanymi oraz dalej szkoli\u0107 us\u0142ug\u0119 w trakcie u\u017cytkowania.<\/p>\n<p>Us\u0142uga mo\u017ce by\u0107 u\u017cywana jako chatbot, realizuj\u0105cy tylko t\u0119 funkcj\u0119, lub jako cz\u0119\u015b\u0107 z\u0142o\u017conego chatbota, kt\u00f3ry, w zale\u017cno\u015bci od zapytania, wykorzystuje r\u00f3wnie\u017c inne us\u0142ugi AI lub elementy Bot Framework.<\/p>\n<h2>Praca z innymi us\u0142ugami kognitywnymi<\/h2>\n<p>\nNa platformie Azure istnieje wiele r\u00f3\u017cnych us\u0142ug kognitywnych. Technicznie s\u0105 to autonomiczne us\u0142ugi internetowe, kt\u00f3re mo\u017cna wywo\u0142ywa\u0107 z kodu. W odpowiedzi us\u0142uga wysy\u0142a json w okre\u015blonym formacie, kt\u00f3ry mo\u017cna wykorzysta\u0107 w chatbotach.<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/9a986e53162e48c726ecab6bb0352119.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNajcz\u0119\u015bciej w chatbotach mog\u0105 by\u0107 wykorzystywane nast\u0119puj\u0105ce:<\/p>\n<ol>\n<li>Rozpoznawanie tekstu.\n<\/li>\n<li>Rozpoznawanie okre\u015blanych przez dewelopera kategorii obraz\u00f3w w Custom Vision Service (przyk\u0142ad zastosowania: rozpoznawanie, czy pracownik nosi kask, gogle ochronne lub mask\u0119).\n<\/li>\n<li>Rozpoznawanie twarzy (doskona\u0142y przypadek zastosowania \u2014 weryfikacja, czy ankietowany umie\u015bci\u0142 swoje w\u0142asne zdj\u0119cie, czy na przyk\u0142ad zdj\u0119cie psa lub osoby innej p\u0142ci).\n<\/li>\n<li>Rozpoznawanie mowy.\n<\/li>\n<li>Analiza obraz\u00f3w.\n<\/li>\n<li>T\u0142umaczenie (wszyscy pami\u0119tamy, ile ha\u0142asu narobi\u0142o t\u0142umaczenie symultaniczne w Skype).\n<\/li>\n<li>Sprawdzanie pisowni i sugestie dotycz\u0105ce poprawy b\u0142\u0119d\u00f3w.\n<\/li>\n<\/ol>\n<p><\/p>\n<h3>LUIS<\/h3>\n<p>\nDo tworzenia bot\u00f3w mo\u017ce by\u0107 r\u00f3wnie\u017c wymagane <noindex><a rel=\"nofollow\" href=\"https:\/\/www.luis.ai\/\">LUIS<\/a><\/noindex> (Language Understanding Intelligent Service). Zadania us\u0142ugi:<\/p>\n<ul>\n<li>Okre\u015blenie, czy wypowied\u017a u\u017cytkownika ma sens i czy wymagane jest dzia\u0142anie bota.\n<\/li>\n<li>Zredukowa\u0107 wysi\u0142ek zwi\u0105zany z transkrypcj\u0105 mowy (tekstu) u\u017cytkownika na zrozumia\u0142e dla bota komendy.\n<\/li>\n<li>Prognozowanie rzeczywistych cel\u00f3w\/intencji u\u017cytkownika i wydobywanie kluczowych informacji z fraz w dialogu.\n<\/li>\n<li>Umo\u017cliwienie deweloperowi uruchomienie bota przy u\u017cyciu zaledwie kilku przyk\u0142ad\u00f3w rozpoznawania sensu oraz dalsze szkolenie bota w trakcie pracy.\n<\/li>\n<li>Umo\u017cliwienie deweloperowi korzystania z wizualizacji w celu oceny jako\u015bci transkrypcji komend.\n<\/li>\n<li>Pomoc w stopniowych usprawnieniach rozpoznawania rzeczywistych cel\u00f3w.\n<\/li>\n<\/ul>\n<p>\nCelem LUIS jest z okre\u015blonym prawdopodobie\u0144stwem zrozumienie, co mia\u0142 na my\u015bli u\u017cytkownik i przekszta\u0142cenie naturalnego zapytania w uporz\u0105dkowane polecenie. Do rozpoznawania znacze\u0144 zapyta\u0144 LUIS wykorzystuje zestaw intencji (sens\u00f3w, zamiar\u00f3w) i encji (zar\u00f3wno wcze\u015bniej skonfigurowanych przez programist\u00f3w, jak i pobranych z wcze\u015bniej zdefiniowanych \"domen\" \u2013 gotowych bibliotek typowych fraz przygotowanych przez Microsoft).\u00a0<\/p>\n<p>Prosty przyk\u0142ad: macie bota, kt\u00f3ry podaje prognoz\u0119 pogody. Dla niego intencj\u0105 b\u0119dzie przet\u0142umaczenie naturalnego zapytania w \"czynno\u015b\u0107\" \u2013 zapytanie o prognoz\u0119 pogody, a encjami b\u0119d\u0105 czas i miejsce. Podajemy schemat dzia\u0142ania intencji CheckWeather dla takiego bota.<\/p>\n<p>Intencja<br \/>\nEncja<br \/>\nPrzyk\u0142ad naturalnego zapytania<\/p>\n<p>CheckWeather<br \/>\n{\"type\": \"location\", \"entity\": \"moscow\"}<br \/>\n{\u00abtype\u00bb: \u00abbuiltin.datetimeV2.date\u00bb, \u00abentity\u00bb: \u00abfuture \u00bb,\" resolution \":\" 2020-05-30 \"}<br \/>\nJaka b\u0119dzie pogoda jutro w Moskwie<\/p>\n<p>CheckWeather<br \/>\n{\"type\": \"date_range\", \"entity\": \"this weekend\"}<br \/>\nPoka\u017c mi prognoz\u0119 na te weekendy<\/p>\n<p>Do po\u0142\u0105czenia QnA Maker z LUIS mo\u017cna u\u017cy\u0107 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/botbuilder-tools\">Dispatcher<\/a><\/noindex>.\u00a0<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/5ecf836fc5675676b8460662aa30dd2d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKiedy pracujesz z QnA Maker i otrzymujesz zapytanie od u\u017cytkownika, system okre\u015bla, z jakim prawdopodobie\u0144stwem odpowied\u017a z QnA pasuje do zapytania. Je\u015bli prawdopodobie\u0144stwo jest wysokie, u\u017cytkownik otrzymuje odpowied\u017a z wewn\u0119trznej bazy wiedzy, je\u015bli niskie \u2013 zapytanie mo\u017ce zosta\u0107 przes\u0142ane do LUIS w celu wyja\u015bnienia. U\u017cycie Dispatcher pozwala nie programowa\u0107 tej logiki, ale automatycznie okre\u015bla\u0107 t\u0119 granic\u0119 podzia\u0142u zapyta\u0144 i szybko je dystrybuowa\u0107.<\/p>\n<h3>Testowanie i publikacja bota<\/h3>\n<p>\nDo testowania u\u017cywa si\u0119 jeszcze jednej lokalnej aplikacji, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/botframework-sdk#Bot-Framework-Emulator\">Bot framework emulator<\/a><\/noindex>. Za pomoc\u0105 emulatora mo\u017cna komunikowa\u0107 si\u0119 z botem i sprawdza\u0107 wiadomo\u015bci, kt\u00f3re wysy\u0142a i otrzymuje. Emulator wy\u015bwietla wiadomo\u015bci tak, jak b\u0119d\u0105 wygl\u0105da\u0107 w interfejsie czatu internetowego, i rejestruje zapytania i odpowiedzi JSON podczas wymiany wiadomo\u015bci z botem.<\/p>\n<p>Przyk\u0142ad u\u017cycia emulatora przedstawiony jest w tej demonstracji, w kt\u00f3rej pokazano tworzenie wirtualnego asystenta dla BMW. W filmie omawia si\u0119 r\u00f3wnie\u017c nowe akceleratory do tworzenia chatbot\u00f3w \u2013 szablony:<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/8e6c93f8d200fed2128e13e328c3369b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/u7Gql-ClcVA?t=564\">https:\/\/youtu.be\/u7Gql-ClcVA?t=564<\/a><\/noindex><\/i><\/p>\n<p>Mo\u017cesz r\u00f3wnie\u017c u\u017cywa\u0107 szablon\u00f3w podczas tworzenia swoich chatbot\u00f3w.\u00a0<br \/>\nSzablony pozwalaj\u0105 na unikni\u0119cie pisania typowych funkcji bota od nowa, a zamiast tego umo\u017cliwiaj\u0105 dodawanie gotowego kodu jako \"umiej\u0119tno\u015bci\". Przyk\u0142adem mo\u017ce by\u0107 praca z kalendarzem, umawianie spotka\u0144 itp. Gotowy kod umiej\u0119tno\u015bci <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/botframework-skills\">opublikowano<\/a><\/noindex> na githubie.<\/p>\n<p>Testy przebieg\u0142y pomy\u015blnie, bot jest gotowy, a teraz trzeba go opublikowa\u0107 i po\u0142\u0105czy\u0107 z kana\u0142ami. Publikacja odbywa si\u0119 za pomoc\u0105 narz\u0119dzi Azure, a jako kana\u0142y mo\u017cna wykorzysta\u0107 komunikatory lub media spo\u0142eczno\u015bciowe. Je\u015bli brakuje odpowiedniego kana\u0142u do wprowadzania danych, mo\u017cna go poszuka\u0107 w odpowiedniej spo\u0142eczno\u015bci na GitHubie.\u00a0<\/p>\n<p>Aby stworzy\u0107 pe\u0142noprawnego chatbota jako interfejs komunikacji z u\u017cytkownikiem i us\u0142ugami kognitywnymi, potrzebne b\u0119d\u0105 r\u00f3wnie\u017c dodatki Azure, takie jak bazy danych, bezserwerowe (Azure Functions), a tak\u017ce us\u0142ugi LogicApp i by\u0107 mo\u017ce Event Grid.<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/ad218db9267934e319e74b60b5b8c96a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Ocena i analityka<\/h3>\n<p>\nDo oceny interakcji z u\u017cytkownikami mo\u017cna wykorzystywa\u0107 zar\u00f3wno wbudowan\u0105 analityk\u0119 Azure Bot Service, jak i specjaln\u0105 us\u0142ug\u0119 Application Insights.<\/p>\n<p>W efekcie mo\u017cna zbiera\u0107 informacje wed\u0142ug nast\u0119puj\u0105cych kryteri\u00f3w:<\/p>\n<ul>\n<li>Ilu u\u017cytkownik\u00f3w uzyska\u0142o dost\u0119p do bota z r\u00f3\u017cnych kana\u0142\u00f3w w wybranym przedziale czasowym.\n<\/li>\n<li>Ilu u\u017cytkownik\u00f3w, kt\u00f3rzy wys\u0142ali jedn\u0105 wiadomo\u015b\u0107, wr\u00f3ci\u0142o p\u00f3\u017aniej i wys\u0142a\u0142o kolejn\u0105.\n<\/li>\n<li>Ile dzia\u0142a\u0144 zosta\u0142o wys\u0142anych i odebranych przez ka\u017cdy kana\u0142 w okre\u015blonym czasie.\n<\/li>\n<\/ul>\n<p>\nDzi\u0119ki Application Insights mo\u017cna monitorowa\u0107 dowolne aplikacje w Azure, w tym chatboty, uzyskuj\u0105c dodatkowe dane o zachowaniach u\u017cytkownik\u00f3w, obci\u0105\u017ceniach i reakcjach chatbota. Nale\u017cy zauwa\u017cy\u0107, \u017ce us\u0142uga Application Insights ma sw\u00f3j interfejs na portalu Azure.<\/p>\n<p>Zebrane dane mo\u017cna r\u00f3wnie\u017c wykorzysta\u0107 do tworzenia dodatkowych wizualizacji i raport\u00f3w analitycznych w PowerBI. Przyk\u0142ad takiego raportu i szablon dla PowerBI mo\u017cna znale\u017a\u0107 <noindex><a rel=\"nofollow\" href=\"https:\/\/microsoft.github.io\/botframework-solutions\/solution-accelerators\/tutorials\/view-analytics\/1-intro\/\">tutaj<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Przyspieszamy rozw\u00f3j za pomoc\u0105 us\u0142ug Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy\" src=\"\/wp-content\/uploads\/2020\/06\/f11895acd918e511455c56616aeb107a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDzi\u0119kuj\u0119 wszystkim za uwag\u0119! W tym artykule wykorzystali\u015bmy <noindex><a rel=\"nofollow\" href=\"https:\/\/webinars.softline.com\/mira\/miravr\/9848571835\">materia\u0142<\/a><\/noindex> materia\u0142y z webinaru architekta Microsoft Azure, Anny Feniuszowej \u201eKiedy ludzie nie nad\u0105\u017caj\u0105. Jak w 100% wykorzysta\u0107 chatboty i us\u0142ugi kognitywne do automatyzacji rutynowych proces\u00f3w\u201d, na kt\u00f3rym w przyst\u0119pny spos\u00f3b pokazali\u015bmy, czym s\u0105 chatboty w Azure i jakie s\u0105 scenariusze ich zastosowania, a tak\u017ce zaprezentowali\u015bmy, jak w 15 minut stworzy\u0107 bota w QnA Maker i w jaki spos\u00f3b interpretowa\u0107 struktur\u0119 zapyta\u0144 w LUIS.\u00a0<\/p>\n<p>Zorganizowali\u015bmy ten webinar w ramach internetowego maratonu dla programist\u00f3w Dev Bootcamp. M\u00f3wili\u015bmy o produktach, kt\u00f3re przyspieszaj\u0105 rozw\u00f3j i odci\u0105\u017caj\u0105 pracownik\u00f3w firmy, wykorzystuj\u0105c narz\u0119dzia automatyzacji i gotowe modu\u0142y Azure. Nagrania innych webinar\u00f3w, kt\u00f3re by\u0142y cz\u0119\u015bci\u0105 maratonu, dost\u0119pne s\u0105 pod poni\u017cszymi linkami:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/webinars.softline.com\/mira\/miravr\/1844543042\">Azure DevOps jako narz\u0119dzie do organizacji pe\u0142nego cyklu rozwoju w dowolnym j\u0119zyku i na dowolnej platformie, z wykorzystaniem praktyk DevOps<\/a><\/noindex>\u00a0<br \/>\nOm\u00f3wimy ewolucj\u0119 i nowe mo\u017cliwo\u015bci us\u0142ugi Azure DevOps. Szczeg\u00f3\u0142owo przeanalizujemy wszystkie pi\u0119\u0107 jej podstawowych sk\u0142adnik\u00f3w oraz to, jak us\u0142uga wspomaga organizacj\u0119 przemys\u0142owego rozwoju oprogramowania. Prowadz\u0105cy \u2014 W\u0142odzimierz Gusarow, Microsoft MVP.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/webinars.softline.com\/mira\/miravr\/3765774186\">Organizacja CI\/CD z wykorzystaniem Azure Pipelines<\/a><\/noindex><br \/>\nZastanawiamy si\u0119, jak wdro\u017cy\u0107 podej\u015bcie \u201ebuild as code\u201d dla dowolnych j\u0119zyk\u00f3w programowania, korzystaj\u0105c z multi-staged YAML pipelines. Prowadz\u0105cy \u2014 W\u0142odzimierz Gusarow, Microsoft MVP.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/webinars.softline.com\/mira\/miravr\/0241941537\">Praktyki jednoczesnego wsparcia wielu wersji produktu w przemys\u0142owym rozwoju, z u\u017cyciem Azure Repos<\/a><\/noindex><br \/>\nDyskutujemy, jak opracowa\u0107 strategie przechowywania kodu \u017ar\u00f3d\u0142owego oprogramowania, jak u\u017cywa\u0107 system\u00f3w kontroli wersji z pomoc\u0105 Azure Repos. Prowadz\u0105cy \u2014 W\u0142odzimierz Gusarow, Microsoft MVP.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/webinars.softline.com\/mira\/miravr\/7191200961\">WhiteSource. Monitorowanie bezpiecznych bibliotek open source\u00a0<\/a><\/noindex><br \/>\nZapoznajemy z metodami zarz\u0105dzania open source podczas rozwoju oraz praktycznym zastosowaniem narz\u0119dzia WhiteSource. M\u00f3wimy o wykrywaniu luk w komponentach open source oraz zapewnieniu zgodno\u015bci licencyjnej za pomoc\u0105 WhiteSource. Prowadz\u0105cy \u2014 Diana Lisbaron, Director of Sales WhiteSource, oraz Daria Oreszkina, Web Control, oficjalny dystrybutor WhiteSource w Rosji.<\/li>\n<\/ul>\n<p>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/softline\/blog\/508406\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Azure \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0447\u0430\u0441\u0442\u0438\u044f. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0442\u0440\u0430\u0442\u044f\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043d\u0430 \u043e\u0434\u043d\u0438 \u0438 \u0442\u0435 \u0436\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u044b\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 \u0438 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f. \u0427\u0430\u0442-\u0431\u043e\u0442\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u044e\u0442 \u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0438 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0441\u043d\u0438\u0437\u0438\u0442\u044c \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u043d\u0430 \u043b\u044e\u0434\u0435\u0439. \u0422\u0430\u043a\u0436\u0435 \u0431\u043e\u0442\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432\u00a0 Azure DevOps, \u0433\u0434\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":86862,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-86861","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Azure \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0447\u0430\u0441\u0442\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 Azure: \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0447\u0430\u0442-\u0431\u043e\u0442\u044b \u0438 \u043a\u043e\u0433\u043d\u0438\u0442\u0438\u0432\u043d\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Azure \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0447\u0430\u0441\u0442\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-06-30T17:42:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-30T17:42:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Przyspieszamy rozw\u00f3j dzi\u0119ki us\u0142ugom Azure: tworzymy chatboty i us\u0142ugi kognitywne przy u\u017cyciu platformy | ProHoster","description":"Cze\u015b\u0107, Habr! Dzi\u015b opowiemy, jak rozwi\u0105zywa\u0107 za pomoc\u0105 Azure problemy, kt\u00f3re zazwyczaj wymagaj\u0105 ludzkiej interwencji.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 Azure: \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0447\u0430\u0442-\u0431\u043e\u0442\u044b \u0438 \u043a\u043e\u0433\u043d\u0438\u0442\u0438\u0432\u043d\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Azure \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0447\u0430\u0441\u0442\u0438\u044f.","og:url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/uskoryaem-razrabotku-s-pomoshhyu-servisov-azure-sozdaem-chat-boty-i-kognitivnye-sluzhby-sredstvami-platformy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-06-30T17:42:06+00:00","article:modified_time":"2020-06-30T17:42:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"86861","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 14:05:26","updated":"2022-10-07 09:06:51","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/86861","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=86861"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/86861\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media\/86862"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=86861"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=86861"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=86861"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}