Cum să faci un Chatbot în Python pas cu pas [Ghid Python Chatterbox]
Publicat: 2020-07-27Cuprins
Cum să faci un Chatbot în Python?
În ultimii câțiva ani, chatboții din Python au devenit extrem de populari în sectoarele tehnologice și de afaceri. Acești roboți inteligenți sunt atât de adepți în a imita limbajele umane naturale și în a conversa cu oamenii, încât companiile din diverse sectoare industriale le adoptă. De la firmele de comerț electronic la instituțiile de asistență medicală, toată lumea pare să folosească acest instrument ingenios pentru a genera beneficii de afaceri . În acest articol, vom afla despre chatbot folosind Python și cum să facem chatbot în Python.
Învață învățarea automată online de la cele mai bune universități din lume – Master, Programe Executive Postuniversitare și Program de certificat avansat în ML și AI pentru a-ți accelera cariera.
Ce este un Chatbot?
Un chatbot este un software bazat pe inteligență artificială conceput pentru a interacționa cu oamenii în limbajele lor naturale. Acești roboti de chat conversează de obicei prin metode auditive sau textuale și pot imita fără efort limbile umane pentru a comunica cu ființele umane într-un mod asemănător omului. Un chatbot este, fără îndoială, una dintre cele mai bune aplicații de procesare a limbajului natural.
Chatbot-urile pot fi clasificate în două variante principale – bazate pe reguli și auto-învățare.
Abordarea bazată pe reguli antrenează un chatbot să răspundă la întrebări pe baza unui set de reguli predeterminate pe baza cărora a fost antrenat inițial. Aceste reguli stabilite pot fi fie foarte simple, fie foarte complexe. În timp ce chatbot-urile bazate pe reguli pot gestiona destul de bine interogările simple, de obicei nu reușesc să proceseze interogări/cereri mai complicate.
După cum sugerează și numele, roboții cu auto-învățare sunt chatbot care pot învăța pe cont propriu. Acestea folosesc tehnologii avansate precum inteligența artificială și învățarea automată pentru a se antrena din instanțe și comportamente. Desigur, acești roboti de chat sunt mult mai inteligenți decât roboții bazați pe reguli. Boții cu auto-învățare pot fi împărțiți în continuare în două categorii – bazați pe recuperare sau generativi.

1. Chatbot-uri bazate pe recuperare
Un chatbot bazat pe recuperare este unul care funcționează pe modele de intrare predefinite și răspunsuri setate. Odată ce întrebarea/modelul este introdus, chatbot-ul folosește o abordare euristică pentru a oferi răspunsul adecvat. Modelul bazat pe recuperare este utilizat pe scară largă pentru a proiecta chatbot-uri orientate spre obiective, cu funcții personalizate, cum ar fi fluxul și tonul botului, pentru a îmbunătăți experiența clientului.
2. Chatbot-uri generative
Spre deosebire de chatbot-urile bazate pe recuperare, chatbot-urile generative nu se bazează pe răspunsuri predefinite – ei folosesc rețelele neuronale seq2seq. Aceasta se bazează pe conceptul de traducere automată în care codul sursă este tradus dintr-o limbă în altă limbă. În abordarea seq2seq, intrarea este transformată într-o ieșire.
Primul chatbot datează din 1966 când Joseph Weizenbaum a creat ELIZA care putea imita limbajul unui psihoterapeut în doar 200 de linii de cod. Cu toate acestea, datorită progresului rapid al tehnologiei, am parcurs un drum lung de la chatbot-uri cu scripturi la chatbot-uri în python astăzi.
Chatbot în generația de astăzi
Astăzi, avem chatbot inteligenți, bazați pe inteligență artificială, care utilizează procesarea limbajului natural (NLP) pentru a înțelege comenzile umane (text și voce) și pentru a învăța din experiență. Chatbot-urile au devenit un instrument de bază de interacțiune cu clienții pentru companiile și mărcile care au o prezență online activă (site-uri web și platforme de rețele sociale).
Chatboții care folosesc python sunt un instrument ingenios, deoarece facilitează mesageria instantanee între brand și client. Gândiți-vă la Siri de la Apple, Alexa de la Amazon și Cortana de la Microsoft. Nu sunt acestea pur și simplu minunate? Nu ești deja curios să înveți cum să faci un chatbot în Python?
Sursă
În esență, chatbot-ul care utilizează Python este programat să preia informațiile pe care le furnizați și apoi să le analizeze cu ajutorul algoritmilor complecși AI și să vă ofere fie un răspuns scris, fie verbal. Deoarece acești roboți pot învăța din comportament și experiențe, ei pot răspunde la o gamă largă de interogări și comenzi.
Sursă
Deși chatbot-ul din python a început deja să domine scena tehnologică în prezent, Gartner prezice că până în 2020, chatboții se vor ocupa de aproape 85% din interacțiunile client-marcă .
Având în vedere popularitatea și adoptarea în creștere a chatbot-urilor în industrie, vă puteți crește valoarea de piață învățând cum să faceți un chatbot în Python – unul dintre cele mai utilizate limbaje de programare din lume.
Astăzi, vă vom învăța cum să creați un chatbot simplu în Python folosind biblioteca ChatterBot Python. Asadar, haideti sa începem!
Biblioteca ChatterBot
ChatterBot este o bibliotecă Python care este concepută pentru a furniza răspunsuri automate la intrările utilizatorilor. Utilizează o combinație de algoritmi ML pentru a genera multe tipuri diferite de răspunsuri. Această caracteristică permite dezvoltatorilor să creeze chatbot-uri folosind python care pot conversa cu oamenii și pot oferi răspunsuri adecvate și relevante. Nu doar atât, algoritmii ML ajută botul să-și îmbunătățească performanța cu experiență.
O altă caracteristică excelentă a ChatterBot este independența sa de limbă. Biblioteca este concepută într-un mod care face posibilă antrenamentul botului dumneavoastră în mai multe limbaje de programare.
Cum funcționează ChatterBot?
Când un utilizator introduce o anumită intrare în chatbot (dezvoltat pe ChatterBot), botul salvează intrarea împreună cu răspunsul, pentru utilizare ulterioară. Aceste date (din experiențele colectate) permit chatbot-ului să genereze răspunsuri automate de fiecare dată când o nouă intrare este introdusă în el.
Programul alege răspunsul cel mai potrivit din declarația cea mai apropiată care se potrivește cu intrarea și apoi furnizează un răspuns din selecția deja cunoscută de declarații și răspunsuri. În timp, pe măsură ce chatbot-ul se angajează în mai multe interacțiuni, precizia răspunsului se îmbunătățește.
Sursă
Cum să faci un chatbot în Python?
Vom lua o abordare pas cu pas și vom dezintegra procesul de construire a unui chatbot Python.
Pentru a construi un chatbot în Python, trebuie să importați toate pachetele necesare și să inițializați variabilele pe care doriți să le utilizați în proiectul dvs. de chatbot. De asemenea, rețineți că atunci când lucrați cu date text, trebuie să efectuați preprocesarea datelor pe setul de date înainte de a proiecta un model ML.

Aici tokenizarea ajută cu datele text – ajută la fragmentarea setului mare de date text în bucăți mai mici, care pot fi citite (cum ar fi cuvintele). Odată ce ați făcut acest lucru, puteți alege și lematizarea care transformă un cuvânt în forma sa de lemă. Apoi creează un fișier pickle pentru a stoca obiectele Python care sunt utilizate pentru prezicerea răspunsurilor botului.
O altă parte vitală a procesului de dezvoltare a chatbot este crearea setului de date de instruire și testare.
Acum că am acoperit elementele de bază ale dezvoltării chatbot în Python, haideți să ne aprofundăm în procesul real!
1. Pregătiți dependențele
Primul pas în crearea unui chatbot în Python cu biblioteca ChatterBot este să instalați biblioteca în sistemul dumneavoastră. Cel mai bine este să creați și să utilizați un nou mediu virtual Python pentru instalare. Pentru a face acest lucru, trebuie să scrieți și să executați această comandă în terminalul dvs. Python:
De asemenea, puteți instala cea mai recentă versiune de dezvoltare a ChatterBot direct din GitHub. Pentru aceasta, va trebui să scrieți și să executați următoarea comandă:
pip install git+git://github.com/gunthercox/ChatterBot.git@master
Dacă doriți să actualizați comanda, puteți face și acest lucru:
Acum că configurarea dvs. este gata, putem trece la următorul pas pentru a crea chatbot folosind python.
2. Clasele de import
Importarea claselor este al doilea pas în procesul de creare a chatbot-ului Python. Tot ce trebuie să faceți este să importați două clase – ChatBot din chatterbot și ListTrainer din chatterbot.trainers. Pentru a face acest lucru, puteți executa următoarea comandă:
3. Creați și antrenați Chatbot
Acesta este al treilea pas în crearea unui chatbot în python. Chatbot-ul pe care îl creați va fi o instanță a clasei „ChatBot”. După crearea unei noi instanțe ChatterBot, puteți antrena botul pentru a-și îmbunătăți performanța. Instruirea asigură că botul are suficiente cunoștințe pentru a începe cu răspunsuri specifice la anumite intrări. Trebuie să executați următoarea comandă acum:
Aici, argumentul (care corespunde numelui parametrului) reprezintă numele chatbot-ului tău Python. Dacă doriți să dezactivați capacitatea botului de a învăța după antrenament, puteți include comanda „read_only=True”. Comanda „logic_adapters” indică lista de adaptoare utilizate pentru antrenarea chatbot-ului.
În timp ce „chatterbot.logic.MathematicalEvaluation” ajută botul să rezolve probleme de matematică, „chatterbot.logic.BestMatch” îl ajută să aleagă cea mai bună potrivire din lista de răspunsuri deja furnizată.
Deoarece trebuie să furnizați o listă de răspunsuri, puteți face acest lucru specificând listele de șiruri care pot fi utilizate ulterior pentru a vă antrena chatbot-ul Python și pentru a găsi cea mai bună potrivire pentru fiecare interogare. Iată un exemplu de răspunsuri pe care le puteți antrena chatbot folosind python pentru a le învăța:
De asemenea, puteți crea și antrena botul scriind o instanță de „ListTrainer” și furnizându-i o listă de șiruri de caractere, astfel:
Acum, chatbot-ul tău Python este gata să comunice.
4. Comunicați cu Python Chatbot
Pentru a interacționa cu chatbot-ul dvs. Python, puteți utiliza funcția .get_response(). Iată cum ar trebui să arate în timpul comunicării:
Cu toate acestea, este esențial să înțelegeți că chatbot-ul care utilizează python ar putea să nu știe cum să vă răspundă la toate întrebările. Deoarece cunoștințele și pregătirea sa sunt încă foarte limitate, trebuie să îi acordați timp și să furnizați mai multe date de instruire pentru a-l instrui în continuare.
5. Antrenează-ți Python Chatbot cu un Corpus de Date
În acest ultim pas al modului de a crea un chatbot în Python, pentru a vă instrui și mai mult chatbot-ul Python, puteți utiliza un corpus de date existent. Iată un exemplu despre cum să-ți antrenezi chatbot-ul Python cu un corp de date furnizat de bot însuși:

Sursa fragmentului de cod
Lucrul bun este că ChatterBot oferă această funcționalitate în multe limbi diferite. Deci, puteți specifica și un subset al unui corpus într-o limbă pe care o preferați. Acesta este modul în care creăm chatbot în Python.
Concluzie
Ceea ce am ilustrat aici este doar una dintre multele modalități de a crea un chatbot în Python. De asemenea, puteți utiliza NLTK, o altă bibliotecă Python plină de resurse pentru a crea un chatbot Python. Și, deși ceea ce ați învățat aici este un chatbot de bază în Python , care nu are aproape deloc abilități cognitive, ar trebui să fie suficient pentru a vă ajuta să înțelegeți anatomia chatbot-urilor.
Odată ce înțelegeți pe deplin designul unui chatbot care utilizează python , îl puteți experimenta folosind diferite instrumente și comenzi pentru a-l face și mai inteligent.
De asemenea, dacă sunteți interesat să aflați mai multe despre învățarea automată, consultați programul Executive PG în învățare automată de la IIIT-B și upGrad, care este conceput pentru profesioniști care lucrează și oferă peste 450 de ore de pregătire riguroasă, peste 30 de studii de caz și sarcini, IIIT -B Statut de absolvenți, peste 5 proiecte practice practice și asistență pentru locuri de muncă cu firme de top.
Ce este un Chatbot?
Un chatbot este o bucată de software bazată pe inteligență artificială care poate conversa cu oamenii în propria lor limbă. Acești roboti de chat se conectează adesea cu oamenii prin mijloace audio sau scrise și pot imita cu ușurință limbile umane pentru a vorbi cu ei într-un mod asemănător omului. Abordarea bazată pe reguli învață un chatbot să răspundă la întrebări pe baza unui set de reguli predeterminate pe care a fost predat atunci când a fost creat pentru prima dată. Aceste reguli predeterminate pot fi simple sau complexe. Boții cu auto-învățare, după cum sugerează și numele, sunt roboți care se pot antrena singuri. Acestea profită de tehnologia de ultimă oră, cum ar fi inteligența artificială și învățarea automată, pentru a învăța din exemple și comportamente.
De ce abilități am nevoie pentru a construi un chatbot?
Dezvoltatorii de chatbot trebuie să posede o gamă diversă de abilități. Ei trebuie să aibă o înțelegere aprofundată a platformelor și a limbajelor de programare pentru a lucra eficient la dezvoltarea Chatbot. Dezvoltatorii de chatbot ar trebui să cunoască bine algoritmii de învățare, inteligența artificială și procesarea limbajului natural. Context multilingv cu experiență în programare în limbaje precum Java, PHP, Python, Ruby și altele. Programatorii trebuie să fie familiarizați cu platformele pentru a îmbunătăți calitatea chatbot-ului.
Ce este un chatbot bazat pe reguli?
În loc să folosească AI, un bot bazat pe reguli utilizează un flux asemănător unui copac pentru a-i ajuta pe oaspeți cu întrebările lor. Acest lucru indică faptul că bot-ul va conduce oaspetele printr-o serie de întrebări ulterioare pentru a ajunge la soluția potrivită. Aveți control complet asupra dialogului, deoarece structurile și răspunsurile sunt toate predefinite. Deci, de ce ar trebui să folosești un chatbot cu reguli? Numerele mai mici și întrebările simple, cum ar fi rezervarea unei mese la un restaurant sau întrebarea despre orele de funcționare, sunt ideale pentru chatboții bazați pe reguli.