Orodha ya maudhui:
- Hatua ya 1: Kujua Kuhusu Shindano
- Hatua ya 2: Nilijua Wapi Juu ya Vitu?
- Hatua ya 3: Wacha Tuanze
- Hatua ya 4: Je! Kwa kweli Inafanya Kazi?
- Hatua ya 5: Wacha tuwe na Msimbo …………
- Hatua ya 6: Madarasa
- Hatua ya 7: Kazi
- Hatua ya 8: Kesi Zinaweza Kushughulikiwa Na ………
- Hatua ya 9: Kutafuta neno kuu katika Ingizo la Mtumiaji
- Hatua ya 10: Hitimisho
Video: Msaidizi aliyeamilishwa na Sauti - MAX: Hatua 10
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Hei katika hii inayoweza kufundishwa nitazungumza juu ya jinsi ya kutengeneza chat-bot MAX (iitwaye mwenyewe !!!)
Ukiwa na utekelezaji kadhaa unaweza kufanya sauti hii ya gumzo kudhibitiwa au kwa matumizi ya programu anuwai unaweza kuifanya kama msaidizi wa sauti. Mimi hapa sitazungumza juu yake kwani kila mtu anaweza kufanya utekelezaji huu kwa urahisi.
Kwa hivyo kila mtu tafadhali nisaidie …….
Agizo langu la kwanza !!!!!!!
Kuhisi Hofu juu ya kile kitakachotokea …………….
Hatua ya 1: Kujua Kuhusu Shindano
Wahandisi na Wahandisi ……..
Mimi mwenyewe mwanafunzi wa Sayansi ya Kompyuta napenda kucheza mchezo na kila wakati nimehamasishwa kwenye kompyuta. Kuzungumza kwa kifupi nipenda kujua jinsi vitu hivi vyote vinavyofanya kazi sasa. Kwa hivyo kama sababu niliendelea kutafuta, kupiga simu (infact nilikuwa nikitumia Yahoo pia !!! !!!) kwa kutafuta na kujifunza vitu.
Kwa hivyo siku moja nilikuja mbele ya skrini ya Maagizo. Ilinifurahisha sana kupitia miradi anuwai na maoni anuwai juu ya mambo anuwai. Halafu kutoka siku hiyo naendelea kufuatilia. Ukurasa wa shindano ulinichekesha mimi na wasiwasi na tuzo na miradi ambayo imewasilishwa na watu anuwai ulimwengu.
CHANGAMOTO ILIYOAMATISHWA NA SAUTI ni jukwaa langu la kwanza kwa habari ya kuandika inayoweza kufundishwa.
Zawadi zilinichekesha sana (Ndio !!! Mengi sana ……..).
Pia nataka kushiriki maarifa yangu katika uwanja wa Kompyuta na ni teknolojia kwa wengine juu ya jinsi vitu anuwai hufanya kazi.
Katika Agizo hili ninaonyesha jinsi ya Kuunda msaidizi wako wa sauti aliyeamilishwa.
Kwa kuwa ni Agizo langu la kwanza kunaweza kuwa na makosa mengi (hata ingawa nadhani yote haya yamerekebishwa), hivyo msamehe kwa hilo.
HIVYO…
Wacha tuanze safari ………………
Hatua ya 2: Nilijua Wapi Juu ya Vitu?
Hili litakuwa swali kuu nadhani akili zako nyingi zinaweza kupitia ………
Nina shauku kubwa kwa Ujasusi wa bandia [AI] kutoka kwa masomo yangu, kwa kuwa nimetafuta sana kutafuta rasilimali ili kusoma na kukuza mtindo peke yangu.
Hapo awali ilikuwa ngumu sana (hali ya kweli) kwani nilielewa lilikuwa somo kubwa sana ambalo sio rahisi kushughulikia.
Vitabu vilivyoonekana ni pamoja na:
- Akili bandia Njia ya Kisasa
- Akili ya bandia.katika karne ya 21. Tarehe
- Kujifunza kwa kina
Hizi ni vitabu vizuri sana (ndio hakika) lakini sio rahisi kabisa kuelewa vitu ambavyo vimeandikwa juu ya hiyo. Kisha nikaiweka pembeni na kuendelea kutafuta rasilimali ambazo zinatoa wazo fupi juu ya nini inawakilisha kweli na njia za kuifikia.
Kisha nilipata kupendezwa nayo. Kupitia likizo baada ya masomo nilianza kujifunza juu yake kwa undani zaidi.
Wakati huo pia nilijifunza lugha anuwai za programu (C ++, C, Python, Java….), Ambazo pia zinavutia sana.
Wakati wa kusoma zaidi juu ya mada nilielewa Jambo Moja Muhimu ………………..
Lugha za programu ni MSINGI KWA KILA MCHAKATO WA KUJIFUNZA KWA MASHINE
Kujifunza kwa Mashine ni mchakato wa matumizi ya AI
Na uelewa mzuri juu ya lugha za programu na vitu anuwai ambavyo vinaweza kufanywa kutegemea na programu kutengeneza kompyuta kutufanyia chochote.
Kwa hivyo niliamua kuunda msingi mzuri juu ya lugha ambazo zilinifanya nielewe dhana zilizotolewa kwenye kitabu hicho ambacho tayari nimetaja
Wewe pia unaweza kufanya hivyo …….
Kuna tovuti nyingi sana kwenye wavuti kufundisha lugha za programu kwa uhuru
Kwa hivyo unaweza kutumia mtandao ili uelewe zaidi ikiwa ungependa ………
Hatua ya 3: Wacha Tuanze
Mimi kabla ya kuanza kuhusu kuandika Inayoweza kufundishwa nilifikiria kuandika kitu cha aina hiyo kueleweka na:
- Watu ambao wana uzoefu wa kuweka alama
- Watu bila msingi wowote wa usimbuaji
Kwa hivyo nadhani nimefanya jambo hilo bila makosa yoyote (kwa matumaini).
Kwa hivyo nimeamua kujenga bot ya mazungumzo ambayo inaweza kuzungumza na mtumiaji na inaweza kujibu kulingana na mazungumzo yetu.
Programu (seti ya maagizo) haiwezi kufikiria yenyewe. Inayo hifadhidata (mahali ambapo data imehifadhiwa) ya ukweli na sheria, ambazo hutafutwa wakati wa kuongea ili kutoa jibu bora kabisa ambalo linahusiana na mtumiaji.
Inafanya kazi kwa kulinganisha mchakato kulingana na vitu vilivyoingizwa, tu katika hali nadra sentensi nzima inalinganishwa na sentensi kamili.
Hatua ya 4: Je! Kwa kweli Inafanya Kazi?
Hatua ya 1:
MAX hugundua ikiwa mtumiaji ametoa mchango wowote batili. Ikiwa mtumiaji anapopewa pembejeo kwa njia hiyo, inachukua ukweli kutoka kwa hifadhidata ya tuli kujibu.
Oh samahani …….
Nimesahau kusema,
Hifadhidata Tuli: Mahali ambapo majibu yaliyojengwa huhifadhiwa. Majibu kama:
1. Wakati MAX haelewi juu ya kile mtumiaji anazungumzia.
2. Mtumiaji anapojirudia.
3. Kwa taarifa za salamu.
4. Wakati mtumiaji haandiki chochote na anaendelea kubonyeza Ingiza.
Neno kuu: maneno yenye maana maalum.
Hatua ya 2:
Kuna baadhi ya majibu yaliyojengwa ambayo MAX inaweza kutambua kwa urahisi na kwa urahisi. Inapata uwepo wa sentensi yoyote kama hii baada ya kutambua uingizaji wa watumiaji na inakumbuka neno kuu linalohusiana.
Hatua ya 3:
Ikiwa hakuna sentensi iliyojengwa inapatikana hata baada ya kugawanyika kwa sentensi iliyopewa, basi MAX hutafuta neno kuu kuelezea muktadha. Ikiwa hakuna muktadha unapatikana basi ni lengo lingine kumfanya mtumiaji azungumze juu ya mada hiyo kwa makusudi zaidi kwa njia maalum.
Hatua ya 4:
Kutoka kwa Hifadhidata ya tuli ambayo tumezungumza tayari, itachukua majibu ambayo inategemea kile mtumiaji amezungumza.
Hatua ya 5:
Mimi kuna haja yoyote ya kubadilisha maneno itaifanya yenyewe (kama vile Uongofu wa YANGU kuwa YAKO nk..)
Hatua ya 5: Wacha tuwe na Msimbo …………
Ninatumia Turbo C IDE 3.0 kwani hii ndio IDE [Mazingira Jumuishi ya Maendeleo]
Kabla ya kuweka alama, wacha tuone muundo wa Sampuli ya Faili ya Takwimu.
MAX inatambua maneno kadhaa.
Ikiwa maneno haya yanapatikana kwenye pembejeo inayotolewa na mtumiaji, basi majibu yanayofanana huchaguliwa kutoka kwa faili ya data na huchaguliwa na kuonyeshwa kwenye skrini.
Neno kuu limetengwa katika faili ya data kutoka kwa majibu na ishara ya @ KWD @.
Ishara ni sehemu ndogo zaidi ya kila nyanja za programu.
Ishara hii inaashiria mstari unaofuata ni neno kuu na sio jibu.
@ KWD @ HELLO
HABARI YAKO, UNAENDELEAJE
HABARI MPENZI !
SIJAMBO
KAZI YAKO ILIKUWAJE?
UNA MIAKA MINGAPI?
@ KWD @
NITAKUWA
UTAFANYA HIVYO. NAAMINI PIA…
JE, UTAWEZA KUFANYA HIVYO?
UTANIAMINI?
@ KWD @
NDIYO
UNA UHAKIKA ?
UNAWEZAJE KUWA NA UHAKIKA SANA?
@ KWD @
HAPANA
UNAONEKANA KUWA NA TAMAA SANA.
KAMWE KUSEMA HAPANA…
KAMWE USISEME KAMWE
KAMWE KUKABIDHIWA
KAMWE USIWE NA UJASILI !!!!
KAMWE KUSEMA SIWEZI KUFANYA HIVI
KAMWE USIWE NA MATUMAINI
@ KWD @
Kompyuta
NAJUA KUFANYA KAZI KWA KOMPYUTA.
KWA SASA UNATUMIA KOMPYUTA. HAKI ?
Kwa mfano, 'Hello', kutoka kwa kamusi iliyo hapo juu, MAX itatoa moja wapo ya majibu yafuatayo:
HI, JAMANI UNAPENDWA!
SIJAMBO
KAZI YAKO ILIKUWAJE?
UNA MIAKA MINGAPI?
Hatua ya 6: Madarasa
Mara jambo hili likiwa wazi, wacha sasa tufafanue Miundo ya Takwimu ambayo tutatumia.
Tunaunda darasa mbili:
progstr - Hii hutumiwa kuhifadhi habari inayohusiana na pembejeo ya mtumiaji.
resp - Hii hutumiwa kuhifadhi habari kuhusu majibu anuwai
maendeleo ya darasa {
umma:
char userip [MAX_USER_INPUT];
neno kuu la char [30];
int keyfound;
int keyno;
nullip;
// mjenzi
maendeleo () {keyno = -1; nullip = 0; kupatikana kwa ufunguo = 0;
}
} ip;
darasa resp
{
int tot_resp;
int last_resp;
majibu ya char [MAX_RESP_NO] [MAX_RESP_LEN];
neno char [MAX_KWD_LEN];
umma:
// mjenzi
resp ()
{
tot_resp = 0;
mwisho_resp = -1;
}
hesabu kamili ()
{
kurudi mwisho_resp;
}
neno la ziada batili (char str [MAX_KWD_LEN])
{
strcpy (neno, str);
}
char * neno ()
{
rudisha neno;
}
nyongeza batili (char str [MAX_RESP_LEN])
{
strcpy (anajibu [++ last_resp], str);
}
// hufafanuliwa baadaye
batili display_resp (int num);
batili kuacha_display_resp (int num);
};
Kuangalia darasa la kwanza, Safu ya matumizi ya herufi hutumiwa kuhifadhi sentensi iliyotolewa na mtumiaji.
Nenosiri lingine la safu hutumiwa kuhifadhi neno kuu, ikiwa lipo, linapatikana kwenye ingizo hilo. Ikiwa neno kuu linapatikana, tunafanya kitufe cha int kwa 1 mwingine, kinabaki 0, kwani imeanzishwa kwa 0 katika Constructor.
keyno huhifadhi nambari inayofanana ya kitufe cha neno kuu linalolingana.
nullip inaonyesha ikiwa mtumiaji ametoa pembejeo yoyote ya Null yaani, anashinikiza tu kuingia bila kufanya kitu kingine chochote.
Sasa wacha tuje kwenye darasa la pili, resp.
Mwanachama wa kwanza wa data, tot_resp anaonyesha idadi ya majibu kamili kwa neno muhimu.
Majibu kweli yamehifadhiwa katika majibu [MAX_RESP_NO] [MAX_RESP_LEN] na neno kuu linalolingana huhifadhiwa katika neno la safu.
Muundaji: Hii inatumika kuanzisha jumla ya majibu hadi 0. Kwa nini mwisho_resp umeanzishwa hadi -1 itakuwa wazi unapoangalia kazi ya kuongeza_mp.
hesabu ():
Kazi hii hutumiwa kupata hesabu ya majibu ngapi kwa neno kuu.
neno la ziada batili (char str [MAX_KWD_LEN]):
Hii hutumiwa kuongeza neno kuu.
char * neno kuu ():
Imetumika kurudisha neno kuu kwa kitu fulani cha darasa resp.
nyongeza batili (…):
Hii hutumiwa kuongeza jibu linalolingana na neno muhimu.
batili display_resp (int):
Hii hutumiwa kuonyesha majibu kwa mtumiaji anayelingana na nambari ya faharisi iliyopewa majibu. (kwa kweli inafanya zaidi ya hapo!).
batili kuacha_kuonyesha_mp (int):
Tofauti kati ya kazi hii na kazi hapo juu ni kwamba hutumiwa mwishowe wakati mtumiaji anaacha. Kwa hivyo, hairudishi msukumo kwa mtumiaji.
Hatua ya 7: Kazi
tupu initialize_global ()
{
strcpy (wordin [0], "ARE");
strcpy (neno [0], "AM");
strcpy (neno [1], "AM");
strcpy (neno [1], "NI");
strcpy (wordin [2], "WERE");
strcpy (neno [2], "WAS");
strcpy (neno [3], "WAS");
strcpy (neno [3], "WERE");
strcpy (neno [4], "WEWE");
strcpy (neno [4], "MIMI");
strcpy (neno [5], "mimi");
strcpy (neno [5], "WEWE");
strcpy (neno [6], "YAKO");
strcpy (neno [6], "YANGU");
strcpy (neno katika [7], "YANGU");
strcpy (neno [7], "YAKO");
strcpy (neno katika [8], "IVE");
strcpy (neno [8], "UMESHA");
strcpy (neno katika [9], "UMESHA");
strcpy (neno lenye maneno [9], "IVE");
strcpy (neno katika [10], "MIMI");
strcpy (neno [10], "UNAWEZA");
strcpy (neno katika [11], "UNAWEZA");
strcpy (neno [11], "MIMI");
strcpy (nenoin [12], "MIMI");
strcpy (neno [12], "WEWE");
strcpy (neno [13], "WEWE");
strcpy (neno [13], "MIMI");
}
Wacha tuandike kazi ya kuonyesha majibu kwa mtumiaji. Kauli ya kwanza ikiwa katika kitanzi hutumiwa kutengeneza makosa ya kuandika kwa makusudi kuifanya ionekane kama binadamu kama;-). Tabia moja imechaguliwa kwa nasibu kwa kosa la kuandika. Kesi maalum kama New Line na Backspace huzingatiwa kando. (Fikiria kwanini?). Sasa ninaanzisha kitu kipya. Tabia maalum - *. Char * inawakilisha maandishi yote yaliyopatikana BAADA ya neno kuu lililotambuliwa, na kabla ya moja ya alama zifuatazo za uakifishaji.
Kwa mfano, fikiria uingizaji wa mtumiaji
AMIT> NAWEZA KWENDA KUHUSU KESHO KESHO?
MAX> JE!
Sehemu iliyopigiwa mstari haihifadhiwa katika kamusi, badala yake inachukuliwa kutoka kwa pembejeo ya mtumiaji. Katika faili MAX. Dat, tunahifadhi habari hii kama
NAWEZA
NINI IF USIPO *
Nyota (*) inauliza programu kunakili tu chochote kilichochapishwa baada ya neno kuu (hapa NAWEZA) katika uingizaji wa mtumiaji, kama ilivyo. Natumahi kuwa sasa kazi ya * kama neno muhimu ni wazi. Kwa hivyo, wacha tuchunguze kesi ngumu zaidi.
AMIT> NAWEZA KWENDA KUNUNUA?
MAX> JE!
Lazima tufanye mabadiliko pia. Tunapofikiria mabadiliko, sentensi hiyo inagawanywa katika sehemu 3 zifuatazo:
- Maandishi Kabla ya Neno la Uhamisho. (hapa, NENDA KWENYE UNunuzi)
- Neno kuu lililobadilishwa. (hapa, YAKO, badala ya YANGU)
- Nakala Baada ya neno kuu la Uhamisho. (hapa, mimi?)
Hatua ya 8: Kesi Zinaweza Kushughulikiwa Na ………
Hatua ya 9: Kutafuta neno kuu katika Ingizo la Mtumiaji
MAX_KEY inaonyesha idadi ya maneno katika faili ya DAT.
Sisi hapa hutafuta tu ikiwa neno kuu liko kwenye Ingizo la Mtumiaji.
Hatua ya 10: Hitimisho
Ni hayo tu ………
Umefanya hivyo !!!!!!!!
Nadhani kila mtu alielewa mambo waziwazi ……
Ikiwa mtu yeyote ana shaka juu ya chochote unaweza kujisikia huru kuuliza
Ilipendekeza:
Wiggly Wobbly - Tazama Mawimbi ya Sauti !! Sauti halisi ya Kionyeshi cha Sauti !!: 4 Hatua
Wiggly Wobbly - Tazama Mawimbi ya Sauti !! Kionyeshi cha Sauti Saa Halisi !!: Je! Umewahi kujiuliza nyimbo za Mende zinaonekanaje? Au je! Unataka tu kuona jinsi sauti inavyoonekana? Basi usijali, mimi niko hapa kukusaidia kuifanya iwe reeeeaaalll !!! Pata spika yako juu na ulenge iliyofifia
Sauti ya Sauti ya Sauti ya MP3: Hatua 5
Sauti ya Sauti ya MP3 ya Sauti: Kifaa hiki kitakuwezesha kucheza faili kadhaa za MP3 kwa kubonyeza kitufe. Makaa ya mfumo ni bodi ya MP3 ya Lilypad iliyo na mtawala wa Atmel ya ndani na chip ya MP3 ya kukodisha Kifaa hicho kina vifungo 5 na kisimbuzi cha kupiga simu. kuchagua kati ya severa
Ushauri juu ya Mbinu ya Sauti ya Sauti na Uwekaji wa Sauti: Hatua 5
Ushauri juu ya Mbinu ya Sauti ya Sauti na Uwekaji wa Sauti: Kwa wasio na uzoefu, kutumia kipaza sauti mwanzoni inaweza kuonekana kuwa kazi rahisi. Unazungumza tu au kuimba kwa sauti ya juu hapo juu na sauti nzuri iliyo wazi na yenye usawa itatolewa kutoka kwa spika ili kusifiwa sana kutoka kwa
Kurudisha Sauti ya Kompyuta ya Zamani Katika Sauti ya Kipaza sauti: Hatua 4
Kurudisha Sauti ya Kompyuta ya Zamani ndani ya Sauti: Siku Njema. Nimepata kipaza sauti hiki na kipaza sauti kimelala. Niliijaribu na kipaza sauti bado ni sawa wakati kichwa cha kichwa hakikuwa. Tayari nina jozi mpya ya kichwa na sitaki kutupa hii. Na kisha nikapata wazo
Sauti za Kupunguza Sauti za Sauti: Hatua 7
Sauti za Kupunguza Sauti za Sauti: Sauti duni za kupunguza sauti za watu. Faida nyingi zaidi ya ($ 200- $ 300) Bose: bei rahisi (senti kwenye dola) na ndogo, inaruhusu uhamaji, hakuna betri zinazohitajika. Kutumia kelele zilizopo (JVC) za kugundua masikio, tumia Flents (au wazalishaji wengine) spongy-