Bot bizə kömək edəcək

Bot bizə kömək edəcək

Bir il əvvəl sevimli HR departamentimiz bizdən şirkətə yeni gələnlərin uyğunlaşmasına kömək edəcək bir chat botu yazmağı xahiş etdi.

Gəlin qeyd edək ki, biz öz məhsullarımızı inkişaf etdirmirik, lakin biz müştərilərə inkişaf xidmətlərinin tam çeşidini təqdim edirik. Hekayə daxili layihəmiz haqqında olacaq, bunun üçün müştəri üçüncü tərəf şirkəti deyil, öz HR-mizdir. İnsanların, resursların və vaxtın məhdud olmasını nəzərə alaraq əsas vəzifə layihəni vaxtında başa çatdırmaq və məhsulu buraxmaqdır.

Əvvəlcə həll edilməli olan problemləri təsvir edək.

Tərtibatçılar əsasən introvert insanlardır və danışmağı sevmirlər; sualınızı e-poçt çatında yazmaq daha asandır. Bot ilə kimdən soruşmaq, kimə zəng etmək, hara getmək və ümumiyyətlə, məlumatı harada axtarmaq və bunun aktual olub-olmaması barədə düşünmək lazım deyil.

İkinci problem məlumatdır - çox var, müxtəlif mənbələrdə var, həmişə mövcud deyil və daimi əlavə və yenilənmə tələb edir.

Şirkətin 500-ə yaxın işçisi var, onlar müxtəlif ofislərdə, vaxt zonalarında, Rusiyanın şəhərlərində və hətta xaricdə yerləşirlər, adətən çoxlu suallar olur, buna görə də başqa bir vəzifə HR işçilərinin üzərinə ən çox verilən suallarla bağlı yükü azaltmaqdır. işçilər tərəfindən.

Həm də prosesləri avtomatlaşdırmaq lazım idi: yeni gələnlərin şirkətə qoşulması, yeni gələnlərin menecerlərinə və mentorlarına mesajların göndərilməsi, yeni gələnin uğurlu uyğunlaşma üçün keçməli olduğu kurslar və testlər haqqında avtomatik xatırlatmalar göndərilməsi.

Texniki tələblər biznes tələbləri əsasında formalaşdırılıb.

Bot Skype əsasında işləməlidir (tarixən ondan şirkətdə istifadə edirlər), ona görə də Azura-da xidmət seçilib.

Ona girişi məhdudlaşdırmaq üçün Skype vasitəsilə avtorizasiya mexanizmindən istifadə etməyə başladıq.
Mətnin tanınması üçün ParlAI kitabxanasından istifadə edilmişdir

Konfiqurasiya, təlim, sazlama, poçt göndərişlərinin qurulması və digər tapşırıqlar üçün də inzibati veb portal tələb olunur.

Bot bizə kömək edəcək

Layihə üzərində işləyərkən bir sıra problem və çətinliklərlə qarşılaşdıq.

Məsələn, Azure hesabında texniki problemlər var idi. Microsoft xidməti daxilində bəzi texniki çətinliklərə görə abunəliyimizi aktivləşdirmək istəmədi. Demək olar ki, iki ay ərzində biz bu barədə heç nə edə bilmədik; Microsoft dəstəyi nəhayət əllərini qaldırdı və bizi hər şeyi uğurla quran və bizə hesab verən tərəfdaşlara göndərdi.

Ən çətin mərhələ layihənin başlanğıcı idi, o zaman nədən istifadə edəcəyimizi, arxitekturanın nə olacağını, verilənlərin necə və harada saxlanacağını, sistemin komponentləri və modullarının bir-biri ilə necə qarşılıqlı əlaqədə olacağını seçmək lazımdır.

Bizim vəziyyətimizdə hər hansı bir layihəyə başlamağın mahiyyətcə adi problemləri kadr təminatı ilə daha da mürəkkəbləşirdi. Bizim işimizin xüsusiyyətləri elədir ki, kommersiya layihələrindən fərqli olaraq, daxili layihələr çox vaxt tələb olunan sahələrdə kifayət qədər biliyə malik olmayan tərtibatçılar tərəfindən işləyir - onlar sadəcə olaraq, taleyin iradəsi ilə, növbətisini gözləyən skamyada bitirdilər. böyük sərin kommersiya layihəsi. Məntiqlidir ki, belə bir vəziyyətdə motivasiya ilə də işlər çox çətin idi. Məhsuldarlıq aşağı düşür, komanda tez-tez boş qalır və nəticədə insanı inandırmalı (motivasiya etməli) və ya dəyişdirməlisən. Tərtibatçıları dəyişdirərkən, təlim keçirməli, bilikləri ötürməli və layihəyə yenidən başlamalısınız. Hər bir yeni tərtibatçı arxitekturanı özünəməxsus şəkildə gördü və əvvəlkiləri qəbul etdikləri qərarlara və digər insanların koduna görə danladı. Yenidən yazım sıfırdan başladı.

Bu, təxminən altı aya qədər davam etdi. Biz sadəcə vaxtı qeyd edir, kodu refaktor edir və yeni heç nə yazmırdıq.

Həmçinin, daxili layihələrdə, bir qayda olaraq, demək olar ki, heç bir sənədləşmə yoxdur və hər bir məqamda nə edilməli olduğunu və cari prioritetlərin nə olduğunu başa düşmək çətin idi. Ən azı üç ay ərzində daimi komanda yaratmaq, proseslər qurmaq, planlaşdırma və qiymətləndirmə aparmaq lazım idi. Bəs layihə kommersiya olmadığı halda bunu necə etmək olar, yəni minimum insan-saat sərf etməli və eyni zamanda xarici müştəridən daha pis nəticə əldə etməlisən?

Biz layihənin hazırlanmasında iştirak edən, onunla tanış olan və üzərində işləmək istəyən resurslar fondunu müəyyən etdik. İnsanların layihələr üzrə işlə təmin olunması üçün qrafik tərtib etdik. Biz işi qiymətləndirdik, əlaqələndirdik və bu işləri əsas layihələr arasındakı “deşiklərə” yerləşdirdik. 4 aydan sonra tətbiqin işləyən prototipini aldıq.

İndi isə botun funksionallığı, arxitekturası və texniki həlləri haqqında daha ətraflı danışaq.

HR-nin əsas tələblərindən biri suala düzgün cavab vermək üçün istifadəçinin yazdığı mətni tanımaq idi. Ona yaza bilərsiniz - mən məzuniyyətə getmək istəyirəm, məzuniyyətə getmək istəyirəm və ya məzuniyyətə getmək istərdim və o, başa düşəcək və buna uyğun cavab verəcəkdir. Və ya qəfildən işçinin kreslosu qırılır və o, “stul sınıb” və ya “stul sınıb” və ya “stulun arxası yıxılıb” yazmaq istəyir; düzgün təlimlə bot belə sorğuları tanıyacaq. Mətnin tanınmasının keyfiyyəti botun hazırlığından asılıdır, bundan sonra danışacağıq.

Növbəti tələb və funksionallığın bir hissəsi botun dialoq sistemidir. Botun dialoq apara biləcəyi və cari məsələnin kontekstini anlaya biləcəyi bir sistem hazırlanmışdır. Sualınıza cavab olaraq o, istənilən aydınlaşdırıcı sual verə bilər və əgər biz botu bunu etmək üçün öyrətmişiksə, söhbəti davam etdirə bilər. Skype istifadəçilərə söhbətləri davam etdirmək variantları haqqında məlumat vermək üçün sadə menyu seçimlərini dəstəkləyir. Həmçinin, əgər biz dialoq keçirirdiksə, amma birdən mövzudan kənar sual vermək qərarına gəlsək, bot da bunu başa düşəcək.

Bot istifadəçinin şəxsi məlumatları əsasında ona müxtəlif artefaktlar göndərməyə imkan verir. Məsələn, onun yerində. Tutaq ki, bir insan tualet tapmaq istəsəydi, ona tualetə aparan ofis xəritəsi göstərilərdi. Və kart işçinin hansı şirkət ofisində yerləşməsindən asılı olaraq seçiləcək.

Ən vacib vəzifələrdən biri istifadəçilərin şəxsi məlumatlarının qorunmasıdır. Biz hər kəsin botumuzun işlədiyi məxfi məlumatlara daxil olmasına icazə verə bilmərik. Belə bir bot üçün avtorizasiya ehtiyacı onun ayrılmaz hissəsidir. Bot istifadəçidən onunla hər hansı dialoq aparmazdan əvvəl autentifikasiya etməyi xahiş edir. Bu, işçi botla ilk dəfə əlaqə saxladıqda baş verir. Avtorizasiyanın özü istifadəçini müvafiq səhifəyə yönləndirir, burada istifadəçi işarəni alır, sonra onu Skype mesajına daxil edir. Avtorizasiya uğurlu olarsa, siz botla əlaqə qurmağa başlaya bilərsiniz.

Bot bizə kömək edəcək

Avtorizasiya Skype - portal avtorizasiya xidməti, korporativ şəbəkə və LDAP vasitəsilə həyata keçirilir. Beləliklə, avtorizasiya korporativ şəbəkədəki cari istifadəçi məlumatlarından asılıdır.

Botun hazırlanması prosesində biz anladıq ki, bizə portal funksionallığına daxil edilmiş hansısa sistemə ehtiyac var ki, bu da HR-ə botu tez bir zamanda ayırmağa kömək edə bilər. Biz portal səhifəsini əlavə etdik ki, HR botla işləyərkən istifadəçilər tərəfindən qeydə alınan səhvləri görə bilər və onları yenidən təlim vasitəsilə həll edə və ya tərtibatçılara buraxa bilər.

Bir botu birbaşa portalda öyrətmək imkanı əvvəldən daxil edilməyib. İnkişaf prosesi zamanı anladıq ki, botun öyrədilməsi HR departamentinin əməkdaşlarının onunla işləyərkən yerinə yetirəcəkləri ən ümumi işdir və mətn fayllarının botun əlavə təlimi üçün tərtibatçılara göndərilməsi tamamilə yolverilməzdir. Bu, çox vaxt aparır və çoxlu səhvlər və problemlər yaradır.

Bot bizə kömək edəcək

Biz botun istifadəçi dostu təlimi üçün portalda UI yazdıq. Bu, HR-ə botun cari təlimini görməyə, onu əlavə məşq etməyə və cari təlimə düzəlişlər etməyə imkan verir. Təlim, qovşaqların, yəni budaqların botla dialoqun davamı olduğu bir ağac quruluşu ilə təmsil olunur. Siz sadə suallar və cavablar yarada və ya ciddi dialoqlar yarada bilərsiniz, hamısı HR və onların ehtiyaclarından asılıdır.

Həll arxitekturası haqqında bir neçə söz.

Bot bizə kömək edəcək

Həll arxitekturası moduldur. Buraya müxtəlif vəzifələrə cavabdeh olan xidmətlər daxildir, yəni:
• Azure-da Skype bot xidməti - istifadəçi sorğularını qəbul edir və emal edir. Bu, sorğunu ilk qəbul edən və ilkin emalını həyata keçirən kifayət qədər sadə bir xidmətdir.
• Admin portalı - portalın qurulması və botun özü üçün veb interfeysi təmin edən xidmətdir. Bot həmişə əvvəlcə portalla əlaqə saxlayır və portal sorğu ilə sonra nə edəcəyinə qərar verir.
• Avtorizasiya xidməti - bot və admin portalı üçün autentifikasiya mexanizmlərini təmin edir. Avtorizasiya Oauth2 protokolu vasitəsilə baş verir. Müsbət avtorizasiya ilə xidmət etibarlı istifadəçi məlumatlarına uyğun olaraq korporativ şəbəkədə avtorizasiya həyata keçirir ki, sistem sinxronizasiya olunmayan məlumatlarla bağlı səhvləri idarə edə bilsin.
• Python-da yazılmış və mətnin tanınması üçün ParlAI çərçivəsindən istifadə edən AI Mətn tanıma modulu. Bu, ən azı indiki tətbiqində neyron şəbəkəsidir. Sualları başa düşmək üçün tfDiff alqoritmindən istifadə edirik. Modul onunla ünsiyyət qurmaq və öyrənmək üçün API təmin edir.

Sonda demək istəyirəm ki, bu, chat bot yaratmaqda bizim ilk təcrübəmizdir və biz sistemi mümkün qədər sadə, lakin eyni zamanda funksional, minimum əmək xərcləri ilə etməyə çalışdıq. Düşünürəm ki, çox maraqlı məhsulumuz var. Öz təlim sistemi, xətaların qeydi, bildiriş göndərilməsi ilə hər hansı digər messencerlə də inteqrasiya oluna bilər.

Mənbə: www.habr.com

Добавить комментарий