Atọka akoonu[Fipamọ][Ifihan]
Awọn ipe ohun ni a yọkuro ni ojurere ti ọrọ ati awọn iwo ni eka ibaraẹnisọrọ. Gẹgẹbi idibo Facebook kan, diẹ sii ju idaji awọn ti onra fẹ lati ra lati ile-iṣẹ kan ti wọn le ba sọrọ. Ibaraẹnisọrọ ti di ipo itẹwọgba lawujọ tuntun ti ibaraẹnisọrọ.
O jẹ ki awọn iṣowo le ṣe ibaraẹnisọrọ pẹlu awọn alabara wọn nigbakugba ati lati ipo eyikeyi. Awọn chatbots n gba olokiki pọ si laarin awọn ile-iṣẹ ati awọn alabara nitori irọrun ti lilo wọn ati awọn akoko idaduro idinku.
Chatbots, tabi awọn eto ibaraẹnisọrọ adaṣe, pese awọn alabara pẹlu ọna adani diẹ sii lati wọle si awọn iṣẹ nipasẹ wiwo orisun ọrọ. Awọn chatbots agbara AI tuntun le ṣe idanimọ ibeere kan (ibeere, aṣẹ, aṣẹ, ati bẹbẹ lọ) ti eniyan ṣe (tabi bot miiran, ibẹrẹ) ni agbegbe kan pato ati dahun ni deede (idahun, iṣe, ati bẹbẹ lọ).
Ninu ifiweranṣẹ yii, a yoo lọ lori kini awọn botini iwiregbe jẹ, awọn anfani wọn, awọn ọran lilo, ati bii o ṣe le ṣe tirẹ ẹkọ jinlẹ chatbot ni Python, ninu ohun miiran.
Jẹ ká to bẹrẹ.
Nitorina, kini awọn chatbots?
A n tọka si chatbot nigbagbogbo lati jẹ ọkan ninu ilọsiwaju julọ ati awọn ọna ti o ni ileri ti ibaraenisepo eniyan-ẹrọ. Awọn oluranlọwọ oni-nọmba wọnyi mu iriri alabara pọ si nipasẹ sisọ awọn ibaraenisepo laarin eniyan ati awọn iṣẹ.
Nigbakanna, wọn pese awọn iṣowo pẹlu awọn aṣayan titun lati mu ilana olubasọrọ alabara pọ si fun ṣiṣe, eyiti o le ge awọn inawo atilẹyin aṣa.
Ni kukuru, o jẹ sọfitiwia ti o da lori AI ti o tumọ si ibasọrọ pẹlu eniyan ni awọn ede abinibi wọn. Awọn iwifun iwiregbe wọnyi nigbagbogbo n ṣe ajọṣepọ nipasẹ ohun tabi awọn ilana kikọ, ati pe wọn le ni irọrun farawe awọn ede eniyan lati le sopọ pẹlu eniyan ni ọna ti eniyan.
Chatbots kọ ẹkọ lati awọn ibaraenisepo wọn pẹlu awọn olumulo, di ojulowo diẹ sii ati lilo daradara ni akoko pupọ. Wọn le mu awọn iṣẹ iṣowo lọpọlọpọ, gẹgẹbi fifunni inawo, ṣiṣe pẹlu awọn alabara lori ayelujara, ati awọn itọsọna ti ipilẹṣẹ.
Ṣiṣẹda iwiregbe jinlẹ ti ara rẹ pẹlu Python
Nibẹ ni o wa ọpọlọpọ awọn pato iru ti chatbots ni awọn aaye ti imudani ẹrọ ati AI. Diẹ ninu awọn chatbots jẹ oluranlọwọ foju, lakoko ti awọn miiran wa nibẹ lati ba sọrọ, lakoko ti awọn miiran jẹ awọn aṣoju iṣẹ alabara.
O ṣee ṣe pe o ti rii diẹ ninu awọn ti awọn iṣowo gbaṣẹ lati dahun awọn ibeere. A yoo ṣe chatbot kekere kan ninu ikẹkọ yii lati dahun awọn ibeere ti a beere nigbagbogbo.
1. Awọn idii fifi sori ẹrọ
Igbesẹ akọkọ wa ni lati fi sori ẹrọ awọn idii wọnyi.
2. Ikẹkọ Data
Bayi o to akoko lati ṣawari iru iru alaye ti a yoo nilo lati fun chatbot wa. A ko nilo lati ṣe igbasilẹ eyikeyi awọn ipilẹ data nla nitori eyi jẹ iwiregbe ti o rọrun.
A yoo lo alaye ti a ti ṣẹda funrararẹ. Lati tẹle daradara pẹlu ẹkọ naa, iwọ yoo nilo lati ṣe agbekalẹ faili .JSON kan pẹlu ọna kika kanna gẹgẹbi eyi ti a rii ni isalẹ. Orukọ faili mi ni “intents.json.”
Fáìlì JSON náà ni a lò láti ṣẹ̀dá ìtòlẹ́sẹẹsẹ àwọn ìfiránṣẹ́ tí aṣàmúlò lè fi wọ́n síi kí ó sì máa ya àwòrán sí àwọn ìdáhùn tí ó yẹ. Itumọ-itumọ kọọkan ninu faili ni tag ti o ṣe idanimọ ẹgbẹ wo ni ifiranṣẹ kọọkan jẹ ti.
A yoo lo alaye yii lati ṣe ikẹkọ a Nẹtiwọki ti nhu lati ṣeto awọn gbolohun ọrọ bi ọkan ninu awọn afi ninu faili wa.
A le kan gba esi lati awọn ẹgbẹ wọnyẹn ki a pese si olumulo naa. Bọtini iwiregbe yoo dara julọ ati idiju diẹ sii ti o ba fun ni pẹlu awọn ami afikun, awọn idahun, ati awọn ilana.
3. JSON data ikojọpọ
A yoo bẹrẹ nipa ikojọpọ ninu data .json wa ati gbigbe awọn modulu kan wọle. Ṣe akojọpọ faili rẹ.json ni itọsọna kanna bi tirẹ Akosile Python. Data .json wa yoo wa ni ipamọ ni bayi ni oniyipada data.
4. Data isediwon
Bayi o to akoko lati jade alaye ti a nilo lati faili JSON wa. Gbogbo awọn ilana, bakannaa kilasi/aami si eyiti wọn jẹ, ni a nilo.
A yoo tun nilo atokọ ti gbogbo awọn ofin alailẹgbẹ ninu awọn ilana wa (fun awọn idi ti a yoo ṣe alaye nigbamii), nitorinaa jẹ ki a ṣẹda awọn atokọ òfo diẹ lati tọju awọn iye wọnyi.
Bayi a yoo lupu nipasẹ data JSON wa ati gba alaye ti a nilo. Dipo ki o ni wọn gẹgẹbi awọn okun, a yoo lo nltk.word tokenizer lati yi apẹrẹ kọọkan pada si akojọ awọn ọrọ.
Lẹhinna, ninu atokọ docs_x wa, a yoo ṣafikun ilana kọọkan, pẹlu aami ti o somọ, si atokọ docs_y.
5. Ọrọ Stemming
Wiwa root ti ọrọ kan ni a mọ si stemming. Bí àpẹẹrẹ, ìso ọ̀rọ̀ náà “ìyẹn” lè jẹ́ “iyẹn,” nígbà tó jẹ́ pé ìso ọ̀rọ̀ náà “ṣẹlẹ̀” lè “ṣẹlẹ̀.”
A yoo lo ilana imuduro yii lati ge awọn fokabulari awoṣe wa silẹ ki a si gbiyanju lati ro ero kini awọn gbolohun ọrọ tumọ si ni gbogbogbo. Koodu yii yoo ṣe agbekalẹ atokọ alailẹgbẹ kan ti awọn ọrọ ṣoki ti yoo ṣee lo ni ipele atẹle ti igbaradi data wa.
6. Bag of Words
O to akoko lati sọrọ nipa apo ti awọn ọrọ ni bayi ti a ti gbe data wa wọle ati ṣe ipilẹṣẹ awọn ọrọ ti o ni eso. Awọn nẹtiwọki nọnu ati awọn algoridimu ikẹkọ ẹrọ, bi gbogbo wa ṣe mọ, nilo titẹ sii nọmba. Nitorinaa atokọ okun wa kii yoo ge. A nilo ilana kan lati ṣe aṣoju awọn nọmba ninu awọn gbolohun ọrọ wa, eyiti o jẹ ibi ti apo ti awọn ọrọ wa.
Gbólóhùn kọọkan yoo jẹ aṣoju nipasẹ atokọ ti ipari ti nọmba awọn ofin ninu awọn fokabulari awoṣe wa. Ọrọ kọọkan ninu awọn fokabulari wa yoo jẹ aṣoju nipasẹ aaye kan ninu atokọ naa. Ti ipo ti o wa ninu atokọ jẹ 1, ọrọ naa han ninu alaye wa; ti o ba jẹ 0, ọrọ naa ko han ninu gbolohun ọrọ wa.
A máa ń pè é ní àpò ọ̀rọ̀ nítorí pé a kò mọ ọ̀nà tí àwọn ọ̀rọ̀ náà gbà hàn nínú gbólóhùn náà; gbogbo ohun ti a mọ ni pe wọn wa ninu awọn fokabulari awoṣe wa.
Ni afikun si siseto igbewọle wa, a tun gbọdọ ṣe ọna kika iṣelọpọ wa ki nẹtiwọọki nkankikan loye rẹ. A yoo kọ awọn atokọ iṣẹjade ti o jẹ gigun ti nọmba awọn aami/awọn aami ninu akopọ data wa, ti o jọra si apo awọn ọrọ. Ibi kọọkan ninu atokọ jẹ aṣoju aami/aami alailẹgbẹ, ati 1 ni eyikeyi awọn ipo yẹn tọkasi iru aami/aami ti o jẹ aṣoju.
Nikẹhin, a yoo lo awọn ọna NumPy lati ṣafipamọ data ikẹkọ wa ati iṣelọpọ.
7. Awoṣe Development
A ti ṣetan lati bẹrẹ kikọ ati ikẹkọ awoṣe ni bayi pe a ti ṣaju gbogbo data wa tẹlẹ. A yoo lo ipilẹ kikọ sii-siwaju netiwọki nkankikan pẹlu awọn fẹlẹfẹlẹ meji ti o farapamọ fun awọn ibi-afẹde wa.
Idi ti nẹtiwọọki wa yoo jẹ lati wo akojọpọ awọn ọrọ ati fi wọn si kilasi kan (ọkan ninu awọn afi aami wa lati faili JSON). A yoo bẹrẹ nipa didasilẹ faaji awoṣe wa. Pa ni lokan pe o le mu awọn pẹlu diẹ ninu awọn ti awọn nọmba lati wá soke pẹlu kan ti o dara awoṣe! Ẹrọ ẹrọ ti wa ni okeene da lori idanwo ati aṣiṣe.
8. Awoṣe Ikẹkọ & Nfipamọ
O to akoko lati ṣe ikẹkọ awoṣe wa lori data wa ni bayi pe a ti ṣeto rẹ! A yoo ṣaṣeyọri eyi nipa sisọ data wa si awoṣe. Nọmba awọn akoko ti a pese ni nọmba awọn akoko ti awoṣe yoo han si data kanna lakoko ikẹkọ.
A le fi awoṣe pamọ si awoṣe faili ni kete ti a ti pari ikẹkọ rẹ. tflearn jẹ iwe afọwọkọ ti o le ṣee lo ni awọn iwe afọwọkọ miiran.
9. Lilo a chatbot
Bayi o le bẹrẹ iwiregbe pẹlu bot rẹ.
Awọn anfani ti Chatbot
- Bii a ṣe nireti awọn bot lati ṣiṣẹ awọn ọjọ 365 ni ọdun kan, awọn wakati 24 lojumọ, laisi isanwo, alekun wiwa ati iyara ifura.
- Awọn botilẹti wọnyi jẹ awọn irinṣẹ pipe fun koju awọn bọtini Vs mẹta ti data nla: iwọn didun, iyara, ati oniruuru.
- Chatbots jẹ sọfitiwia ti o le ṣee lo lati kọ ẹkọ nipa ati loye awọn alabara ile-iṣẹ kan.
- O ni agbara ti o ga julọ ti o ni idiyele itọju olowo poku lẹhin nini awọn anfani oke.
- Awọn ohun elo Chatbot ṣẹda data ti o le tọju ati lo fun awọn atupale ati awọn asọtẹlẹ.
Ohun elo
- Ipinnu onibara ibeere
- Idahun awọn ibeere nigbagbogbo
- Ṣiṣe awọn onibara lati ṣe atilẹyin ẹgbẹ
- Gbigba esi onibara
- Niyanju titun ipese
- Itaja pẹlu iṣowo ibaraẹnisọrọ
- IT Helpdesk
- Fowo si ibugbe
- Gbigbe owo
ipari
Chatbots, bii awọn imọ-ẹrọ AI miiran, yoo ṣee lo lati mu awọn ọgbọn eniyan pọ si ati ominira eniyan lati jẹ ẹda diẹ sii ati oju inu nipa gbigba wọn laaye lati lo akoko diẹ sii lori ilana dipo awọn iṣẹ ṣiṣe ọgbọn.
Awọn iṣowo, awọn oṣiṣẹ, ati awọn alabara le ni anfani lati awọn ẹya chatbot ti o ni ilọsiwaju gẹgẹbi awọn iṣeduro yiyara ati awọn asọtẹlẹ, ati iwọle si irọrun si apejọ fidio asọye giga lati inu ibaraẹnisọrọ kan, ni ọjọ iwaju nitosi, nigbati AI ni idapo pẹlu idagbasoke ti 5G ọna ẹrọ.
Iwọnyi ati awọn aye miiran ni a tun ṣe iwadii, ṣugbọn bi isopọ Ayelujara, AI, NLP, ati ilọsiwaju ikẹkọ ẹrọ, wọn yoo di ibigbogbo.
Chwoo
Pẹlẹ o,
E seun fun eto yi.
Mo ni ibere kan.
"apo_ọrọ" ko ṣe asọye. Emi ko le loye aṣiṣe yii.
Ṣe o le sọ fun mi bawo ni MO ṣe le yanju aṣiṣe yii??
E seun fun eto yii!! Gbadun ọjọ rẹ
Jay
Jọwọ ṣafikun iṣẹ kan ṣaaju lilo apakan chatbot:
///////////////////////////////// //////////////////////////
defi apo_of_words(s, ọrọ):
apo = [0 fun _ ni ibiti o wa (lẹn (awọn ọrọ))]
s_words = nltk.word_tokenize(s)
s_words = [stemmer.stem (ọrọ.lower ()) fun ọrọ ni s_words]
fun se ni s_words:
fun i, w ni iye (awọn ọrọ):
ti w== se:
apo[i] = 1
pada numpy.array(apo)
// Yoo dajudaju yanju ọran rẹ. //
/////////////////////////////////////////////////// // ////////////////////////////////
Mo n pin koodu pipe pẹlu rẹ, nitorinaa iwọ yoo gba aworan ti o han gbangba.
///////////////////////////////// ////////
gbe wọle nltk
lati nltk.stem.lancaster gbe wọle LancasterStemmer
stemmer = LancasterStemmer()
gbe wọle numpy
gbe wọle tflearn
agbewọle tensorflow
gbe wọle laileto
gbe wọle json
gbe wọle Pickle
pẹlu ṣiṣi ("intents.json") bi faili:
data = json.load(faili)
gbiyanju:
pẹlu ṣiṣi ("data.pickle", "rb") bi f:
ọrọ, akole, ikẹkọ, o wu = pickle.load(f)
ayafi:
awọn ọrọ = []
akole = []
docs_x = []
docs_y = []
fun idi ninu data[“awọn ero”]:
fun apẹrẹ ni idi [“awọn apẹrẹ”]:
wrds = nltk.word_tokenize(apẹẹrẹ)
ọrọ.fa(wrds)
docs_x.append(wrds)
docs_y.append(ète["tag")
ti o ba jẹ pe [“afifiranṣẹ”] ko si ninu awọn akole:
labels.append(ète["tag")
ọrọ = [stemmer.stem (w.lower ()) fun w ninu awọn ọrọ ti o ba w! = "?"]
ọrọ = lẹsẹsẹ (akojọ (ṣeto (ọrọ)))
akole = lẹsẹsẹ(aami)
ikẹkọ = []
iṣẹjade = []
out_empty = [0 fun _ ni ibiti o wa (len(aami))]
fun x, doc ni iṣiro (docs_x):
apo = []
wrds = [stemmer.stem (w.lower ()) fun w ni doc]
fun w ninu awọn ọrọ:
ti w ninu wrds:
apo.afikun (1)
omiiran:
apo.afikun (0)
output_row = out_empty[:]
output_row[labels.index(docs_y[x])] = 1
ikẹkọ.append (apo)
àbájade.append(output_row)
ikẹkọ = numpy.array (ikẹkọ)
iṣẹjade = numpy.array (ijade)
pẹlu ṣiṣi ("data.pickle", "wb") bi f:
pickle.dump ((awọn ọrọ, awọn aami, ikẹkọ, iṣẹjade), f)
tensorflow.reset_default_graph()
net = tflearn.input_data (apẹrẹ = [Ko si, lẹnsi (ikẹkọ[0])])
net = tflearn.fully_connected(net, 8)
net = tflearn.fully_connected(net, 8)
net = tflearn.fully_connected (net, len (jade [0]), ibere ise =”softmax”)
net = tflearn.regression(net)
awoṣe = tflearn.DNN(net)
gbiyanju:
awoṣe.load ("model.tflearn")
ayafi:
model.fit (ikẹkọ, iṣẹjade, n_epoch=1500, batch_size=8, show_metric=Otitọ)
model.fipamọ ("model.tflearn")
defi apo_of_words(s, ọrọ):
apo = [0 fun _ ni ibiti o wa (lẹn (awọn ọrọ))]
s_words = nltk.word_tokenize(s)
s_words = [stemmer.stem (ọrọ.lower ()) fun ọrọ ni s_words]
fun se ni s_words:
fun i, w ni iye (awọn ọrọ):
ti w== se:
apo[i] = 1
pada numpy.array(apo)
def iwiregbe():
tẹjade (“Bẹrẹ sọrọ pẹlu bot (iru jáwọ lati da duro)!”)
lakoko Otitọ:
inp = titẹ sii ("Iwọ:")
ti inp.lower() == “jawọ”:
Bireki
awọn esi = awoṣe.sọtẹlẹ ([apo_of_words (inp, awọn ọrọ)])
results_index = numpy.argmax(awọn esi)
tag = akole[results_index]
fun tg ninu data[“awọn ero”]:
ti tg['tag'] == tag:
awọn idahun = tg['awọn idahun']
sita (random.iyan (awọn idahun))
iwiregbe()
///////////////////////////////// /////////////
E dupe,
Dun ifaminsi!
Lu
Pẹlẹ o,
Ṣe o le fun mi ni imọran ilana lati ṣe ninu ọran ti ifẹ lati ṣẹda chatbot ni Python, ṣugbọn alaye naa ni a gba lati inu iwadi ni tayo. E dupe!