Daftar Isi:

Asisten Diaktifkan Suara - MAX: 10 Langkah
Asisten Diaktifkan Suara - MAX: 10 Langkah

Video: Asisten Diaktifkan Suara - MAX: 10 Langkah

Video: Asisten Diaktifkan Suara - MAX: 10 Langkah
Video: Perintah Google Assistant yang kamu belom tau 2024, Juli
Anonim
Asisten Diaktifkan Suara - MAX
Asisten Diaktifkan Suara - MAX

Hai di Instructable ini saya akan berbicara tentang cara membuat chat-bot MAX (bernama sendiri !!!)

Dengan beberapa implementasi Anda dapat membuat chatbot ini dikontrol suara atau dengan penggunaan berbagai perangkat lunak Anda dapat menjadikannya sebagai asisten suara. Saya di sini tidak akan membicarakannya karena setiap orang benar-benar dapat membuat implementasi ini dengan mudah.

Jadi semuanya tolong dukung saya …….

Instruksi pertama saya !!!!!!!

Merasa Gugup atas apa yang akan Terjadi ……………….

Langkah 1: Mengetahui Tentang Kontes

Mengetahui Tentang Kontes
Mengetahui Tentang Kontes
Mengetahui Tentang Kontes
Mengetahui Tentang Kontes

Hai Insinyur dan Desainer……..

Saya sendiri seorang mahasiswa Ilmu Komputer suka bermain game dan selalu terinspirasi pada komputer. Berbicara secara singkat saya senang mengetahui bagaimana semua hal ini bekerja. Jadi sebagai alasan saya terus mencari, googling (bahkan saya dulu menggunakan Yahoo juga !!! !!!) untuk mencari dan mempelajari berbagai hal.

Jadi suatu hari saya datang ke layar Instructables. Itu benar-benar menghibur saya melalui berbagai proyek dengan berbagai ide di berbagai aspek. Kemudian sejak hari itu saya terus mengikutinya. Halaman kontes benar-benar menghibur saya baik yang berkaitan dengan hadiah maupun proyek yang telah diajukan oleh berbagai orang di sekitar dunia.

TANTANGAN YANG DIAKTIFKAN SUARA adalah platform pertama saya dalam hal menulis Instruksi.

Hadiah sangat menghibur saya (Ya !!! Terlalu Banyak ……..).

Saya juga ingin berbagi pengetahuan saya di bidang Komputer dan teknologinya kepada orang lain tentang bagaimana berbagai hal sebenarnya bekerja.

Dalam Instructable ini saya menunjukkan kepada Anda cara Membangun asisten yang diaktifkan suara Anda sendiri.

Karena ini adalah Instructable pertama saya, mungkin ada begitu banyak kesalahan (walaupun saya pikir semua ini telah diperbaiki), jadi maafkan itu.

JADI…

Mari kita mulai perjalanan ………………

Langkah 2: Dari Mana Saya Tahu Tentang Segalanya?

Dari Mana Saya Tahu Tentang Hal Itu?
Dari Mana Saya Tahu Tentang Hal Itu?
Dari Mana Saya Tahu Tentang Hal Itu?
Dari Mana Saya Tahu Tentang Hal Itu?
Dari Mana Saya Tahu Tentang Hal Itu?
Dari Mana Saya Tahu Tentang Hal Itu?

Ini akan menjadi pertanyaan besar yang saya pikir sebagian besar pikiran Anda mungkin melewati ………

Saya memiliki banyak hasrat untuk Kecerdasan Buatan [AI] dari sekolah saya, dari itu saya telah banyak mencari mencari sumber daya untuk belajar dan mengembangkan model sendiri.

Awalnya sangat sulit (kondisi sebenarnya) karena saya mengerti itu adalah subjek yang sangat luas yang sama sekali tidak mudah untuk ditangani.

Buku-buku yang dicari antara lain:

  1. Kecerdasan Buatan Pendekatan Modern
  2. Artificial. Intelligence.in.the.21st. Century.2nd. Edition
  3. Pembelajaran Mendalam

Ini adalah buku yang sangat bagus (ya tentu saja) tetapi sama sekali tidak mudah untuk memahami hal-hal yang telah ditulis di sana. Kemudian saya menyimpannya di samping dan terus mencari sumber daya yang memberikan ide singkat tentang apa itu benar-benar mewakili dan cara untuk mendapatkannya.

Kemudian saya menemukan ketertarikan akan hal itu. Melalui liburan sepulang sekolah saya mulai mempelajarinya lebih dalam.

Saat itu saya juga belajar berbagai bahasa pemrograman (C++, C, Python, Java ….), yang juga sangat menarik.

Saat membaca lebih lanjut tentang topik tersebut, saya memahami satu Hal Penting………………..

Bahasa pemrograman ADALAH DASAR UNTUK SETIAP PROSES PEMBELAJARAN MESIN

Machine Learning adalah proses penerapan AI

Dengan pemahaman yang besar tentang bahasa pemrograman dan berbagai hal yang dapat dilakukan tergantung oleh programmer untuk membuat komputer melakukan apa saja untuk kita.

Jadi saya memutuskan untuk membuat dasar yang baik pada bahasa yang membuat saya memahami konsep yang diberikan pada buku yang telah saya sebutkan

Anda juga bisa melakukannya……

Ada begitu banyak situs web yang hadir di web untuk mengajarkan bahasa pemrograman secara bebas

Jadi Anda bisa menjelajahi internet untuk lebih memahaminya jika Anda mau………

Langkah 3: Mari Kita Mulai

Saya sebelum mulai menulis Instructable saya berpikir untuk menulis sesuatu yang dapat dipahami oleh:

  1. Orang yang memiliki pengalaman dengan coding
  2. Orang-orang tanpa latar belakang pengkodean

Jadi saya pikir saya telah melakukan hal itu tanpa kesalahan (semoga).

Jadi saya telah memutuskan untuk membangun bot obrolan yang dapat berbicara dengan pengguna dan dapat merespons sesuai dengan pembicaraan kita.

Program (set instruksi) tidak dapat berpikir sendiri. Ini memiliki database (tempat di mana data telah disimpan) fakta dan aturan, yang dicari pada saat berbicara untuk memberikan respons terbaik yang dibuat sehubungan dengan pengguna.

Ia bekerja dengan proses pencocokan tergantung pada hal-hal yang dimasukkan, hanya dalam kasus yang jarang seluruh kalimat dicocokkan dengan kalimat lengkap.

Langkah 4: Bagaimana Cara Kerjanya?

Langkah 1:

MAX mencari tahu apakah pengguna telah memberikan input nol apa pun. Jika pengguna ketika memberikan input sedemikian rupa, dibutuhkan fakta dari database statis untuk merespons.

Oh maaf ……

Saya lupa mengatakan,

Basis Data Statis: Tempat penyimpanan tanggapan bawaan. Tanggapan seperti:

1. Ketika MAX tidak mengerti tentang apa yang pengguna bicarakan.

2. Ketika pengguna mengulangi dirinya sendiri.

3. Untuk pernyataan sapaan.

4. Saat pengguna tidak mengetik apa pun dan terus menekan Enter.

Kata Kunci: kata-kata yang memiliki arti khusus.

Langkah 2:

Ada beberapa respons bawaan yang dapat dikenali MAX dengan mudah dan mudah. Ia menemukan keberadaan kalimat seperti itu setelah mengidentifikasi input pengguna dan mengingat kata kunci yang terkait.

Langkah 3:

Jika tidak ada kalimat built-in yang ditemukan bahkan setelah fragmentasi kalimat yang diberikan, maka MAX mencari kata kunci spesifik untuk menentukan konteksnya. Jika tidak ada konteks yang ditemukan, maka tujuan selanjutnya adalah membuat pengguna membicarakan topik dengan lebih sengaja dengan cara tertentu.

Langkah 4:

Dari Basis Data Statis yang telah kita bicarakan, itu akan mengambil respons yang tergantung pada apa yang dibicarakan pengguna.

Langkah 5:

Saya ada kebutuhan untuk mengubah kata-kata yang akan melakukannya sendiri (seperti Konversi SAYA ke ANDA dll ….)

Langkah 5: Biarkan Kami Membuat Kode ………

Saya menggunakan Turbo C IDE 3.0 karena ini adalah IDE [Lingkungan Pengembangan Terpadu]

Sebelum coding, mari kita lihat struktur dari contoh File Data.

MAX mengenali kata kunci tertentu.

Jika kata kunci ini ditemukan dalam input yang diberikan oleh pengguna, maka respons yang sesuai dipilih dari file data dan dipilih dan ditampilkan di layar.

Kata kunci dipisahkan dalam file data dari tanggapan oleh token @KWD@.

Token adalah bagian terkecil dari setiap aspek pemrograman.

Token ini menunjukkan baris berikutnya adalah kata kunci dan bukan respons.

@KWD@ HALO

HAI APA KABAR

HALO SAYANG !

SAYA BAIK-BAIK SAJA

BAGAIMANA PEKERJAAN ANDA?

BERAPAKAH UMUR ANDA?

SAYA AKAN

ANDA AKAN MELAKUKANNYA. AKU JUGA PERCAYA…

APAKAH ANDA DAPAT MELAKUKANNYA?

APAKAH ANDA PERCAYA SAYA?

YA

APA KAMU YAKIN ?

BAGAIMANA ANDA BISA SANGAT YAKIN?

TIDAK

KAU TAMPAK SANGAT PESIMIS.

JANGAN PERNAH MENGATAKAN TIDAK…

JANGAN PERNAH BILANG TIDAK AKAN PERNAH

JANGAN PERNAH KASAR

JANGAN PERNAH Sombong!!!!

JANGAN PERNAH MENGATAKAN AKU TIDAK BISA MELAKUKAN INI

JANGAN PERNAH Optimis

KOMPUTER

SAYA TAHU BAGAIMANA BEKERJA DI KOMPUTER.

ANDA SAAT INI MENGGUNAKAN KOMPUTER. BAIK ?

Misalnya, 'Halo', dari kamus di atas, MAX akan memberikan salah satu respons berikut:

HI, BAGAIMANA KAMU HELLO DEAR !

SAYA BAIK-BAIK SAJA

BAGAIMANA PEKERJAAN ANDA?

BERAPAKAH UMUR ANDA?

Langkah 6: Kelas

Setelah hal ini jelas, sekarang mari kita tentukan Struktur Data yang akan kita gunakan.

Kami membuat dua kelas:

progstr - Ini digunakan untuk menyimpan informasi terkait input pengguna.

resp - Ini digunakan untuk menyimpan informasi tentang berbagai tanggapan

program kelas{

publik:

char userip[MAX_USER_INPUT];

kata kunci char[30];

int ditemukan kunci;

int kunci;

int nulip;

// konstruktor

progstr() { keyno=-1; nulip=0; ditemukan kunci=0;

}

}aku p;

perwakilan kelas

{

int tot_resp;

int last_resp;

balasan karakter[MAX_RESP_NO][MAX_RESP_LEN];

kata karakter[MAX_KWD_LEN];

publik:

// konstruktor

resp()

{

tot_resp=0;

last_resp=-1;

}

int gethitung()

{

kembali last_resp;

}

batalkan addword(char str[MAX_KWD_LEN])

{

strcpy(kata, str);

}

char * getword()

{

kembali kata;

}

batalkan alamat(char str[MAX_RESP_LEN])

{

strcpy(balasan[++last_resp], str);

}

// ditentukan kemudian

void display_resp(int angka);

void quit_display_resp(int num);

};

Melihat ke kelas satu, Array karakter userip digunakan untuk menyimpan kalimat yang diberikan oleh pengguna.

Kata kunci array lain digunakan untuk menyimpan kata kunci, jika ada, yang ditemukan di input itu. Jika kata kunci ditemukan, kami membuat int keyfound ke 1 yang lain, tetap 0, karena diinisialisasi ke 0 di Konstruktor.

keyno menyimpan nomor kunci yang sesuai dari kata kunci yang sesuai.

nullip menunjukkan apakah pengguna telah memberikan input Null, yaitu, dia hanya menekan enter tanpa melakukan hal lain.

Sekarang mari kita masuk ke kelas kedua, resp.

Anggota data pertama, tot_resp menunjukkan jumlah total tanggapan untuk kata kunci tertentu.

Balasan sebenarnya disimpan dalam balasan[MAX_RESP_NO][MAX_RESP_LEN] dan kata kunci yang sesuai disimpan dalam kata array.

Konstruktor: Ini digunakan untuk menginisialisasi jumlah total respons ke 0. Mengapa last_resp diinisialisasi ke -1 akan menjadi jelas ketika Anda melihat fungsi add_resp.

int gethitung():

Fungsi ini digunakan untuk mendapatkan hitungan berapa banyak tanggapan yang ada untuk kata kunci yang diberikan.

void addword(char str[MAX_KWD_LEN]):

Ini digunakan untuk menambahkan kata kunci.

char * getword():

Digunakan untuk mengembalikan kata kunci untuk objek tertentu dari kelas resp.

alamat kosong (…):

Ini digunakan untuk menambahkan respons yang sesuai dengan kata kunci yang diberikan.

batalkan tampilan_resp(int):

Ini digunakan untuk menampilkan respons kepada pengguna yang sesuai dengan nomor indeks yang diberikan untuk respons tersebut. (sebenarnya itu lebih dari itu!).

batal quit_display_resp(int):

Perbedaan antara fungsi ini dan fungsi di atas adalah bahwa fungsi ini digunakan pada akhirnya ketika pengguna berhenti. Jadi, itu tidak mengembalikan prompt ke pengguna.

Langkah 7: Fungsi

batalkan inisialisasi_global()

{

strcpy(wordin[0], "ADALAH");

strcpy(wordout[0], "AM");

strcpy(katain[1], "AM");

strcpy(wordout[1], "ADALAH");

strcpy(wordin[2], "WERE");

strcpy(wordout[2], "WS");

strcpy(wordin[3], "WS");

strcpy(wordout[3], "WERE");

strcpy(katain[4], "ANDA");

strcpy(wordout[4], "SAYA");

strcpy(katain[5], " saya ");

strcpy(wordout[5], "ANDA");

strcpy(katain[6], "ANDA");

strcpy(wordout[6], "MY");

strcpy(katain[7], "SAYA");

strcpy(wordout[7], "ANDA");

strcpy(wordin[8], "SAYA");

strcpy(wordout[8], "ANDA");

strcpy(wordin[9], "ANDA");

strcpy(wordout[9], "SAYA");

strcpy(wordin[10], "Saya");

strcpy(wordout[10], "ANDA");

strcpy(wordin[11], "ANDA");

strcpy(wordout[11], "Saya");

strcpy(katain[12], "SAYA");

strcpy(wordout[12], "ANDA");

strcpy(katain[13], "ANDA");

strcpy(wordout[13], "SAYA");

}

Sekarang mari kita menulis fungsi untuk menampilkan tanggapan kepada pengguna. Pernyataan if pertama dalam perulangan for digunakan untuk membuat kesalahan pengetikan yang disengaja agar tampak lebih manusiawi seperti;-). Satu karakter dipilih secara acak untuk kesalahan pengetikan. Kasus khusus seperti New Line dan Backspace dipertimbangkan secara terpisah. (Pikirkan mengapa?). Sekarang saya memperkenalkan sesuatu yang baru. Karakter khusus - *. Char * mewakili semua teks yang ditemukan SETELAH kata kunci yang diidentifikasi, dan sebelum salah satu tanda baca berikut.

Misalnya, pertimbangkan input pengguna

AMIT > BISAKAH SAYA KE INDORE BESOK ?

MAX > BAGAIMANA JIKA TIDAK KE INDORE BESOK ?

Bagian yang digarisbawahi tidak disimpan dalam kamus, melainkan diambil dari input pengguna. Dalam file MAX. Dat, kami menyimpan informasi ini sebagai

BISAKAH SAYA

BAGAIMANA JIKA TIDAK *

Bintang (*) meminta program untuk menyalin apa pun yang diketik setelah kata kunci (di sini BISA I) di input pengguna, apa adanya. Saya harap sekarang fungsi * sebagai kata kunci khusus sudah jelas. Jadi, mari kita pertimbangkan kasus yang lebih rumit.

AMIT > APAKAH SAYA BISA BELANJA?

MAX > BAGAIMANA JIKA ANDA TIDAK PERGI BELANJA?

Kita harus melakukan beberapa transformasi juga. Ketika kita memikirkan transformasi, kalimat tersebut akan dibagi menjadi 3 bagian berikut:

  • Teks Sebelum Kata Transposisi. (di sini, PERGI BELANJA DENGAN)
  • Kata kunci Transposed. (di sini, ANDA, di tempat SAYA)
  • Teks Setelah Kata Kunci Transposisi. (aku disini ?)

Langkah 8: Kasus Dapat Ditangani Oleh………

Langkah 9: Mencari Kata Kunci di Masukan Pengguna

MAX_KEY menunjukkan jumlah kata kunci dalam file DAT.

Kami di sini hanya mencari apakah kata kunci ada di Input Pengguna.

Langkah 10: Kesimpulan

Itu saja ………

Anda telah melakukannya !!!!!!!

Saya pikir semua orang mengerti hal-hal dengan jelas ……

Direkomendasikan: