Media Pengembangan Web & App | by APPKEY

Pembuatan AplikasiMobile ProgrammingPedoman Membuat Python Virtual Assistant Sederhana

Pedoman Membuat Python Virtual Assistant Sederhana

-

Last Updated on March 5, 2022 by

Ingin punya virtual assistant khusus milik sendiri untuk memudahkan beragam kerja secara online? Siapa bilang keinginan tersebut tidak mungkin. Yuk, coba buat virtual assistant sederhana sendiri menggunakan Python programming!

Contoh bahasa pemrograman Python terapan tercermin pada proses perakitan virtual assistant online. Di tahun 2020, Python resmi dinobatkan sebagai bahasa pemrograman terpopuler nomor dua.

Prestasi ini tidaklah mengherankan, sebab Python adalah bahasa programming yang sangat multifungsi. Tak hanya pada virtual assistant, contoh bahasa pemrograman Python juga tampak pada proses pengaplikasian kecerdasan buatan (AI).

Kepopuleran Python lantas menjadi sinyal bagus untuk Anda yang tertarik belajar bahasa pemrograman Python. Siapa tahu setelah belajar bahasa pemrograman Python, Anda bisa langsung mempraktekkan contoh bahasa pemrograman Python berikut ini untuk membuat virtual assistant sendiri.

Yuk kita lihat bagaimana cara membuat virtual assistant using Python pada artikel belajar bahasa pemrograman Python edisi kali ini – selamat membaca!

Mengenal Python Virtual Assistant yang Sedang Trend

virtual-asistant-1

Kehadiran dan keterlibatan teknologi internet dalam kehidupan nyata kita saat ini sudah semakin dekat dan erat. Jika dulu internet hanya bisa digunakan sebatas untuk mencari aneka informasi secara online, sekarang, banyak hal dari dunia IT yang bisa membantu kita mengerjakan beragam jenis pekerjaan berat. Python virtual assistant adalah salah satunya.

Sesuai namanya, Python virtual assistant adalah tipe virtual assistant using Python – alias, teknologi virtual assistant yang dibuat dengan memakai Python programming. Pernahkah Anda mendengar virtual assistant sebelumnya?

Virtual assistant adalah sebuah perintah suara berbasis kecerdasan buatan yang dapat memahami segala jenis permintaan dari user. Python virtual assistant adalah program pintar yang dapat menjalankan apa saja, mulai dari membuka aplikasi, mengatur setting smartphone otomatis, hingga bekerja mencari aneka informasi di internet. Dengan Python virtual assistant, Anda bisa bekerja dengan smartphone semudah berbicara saja.

Sejauh ini, sudah ada beberapa brand yang menghadirkan virtual assistant dalam smart gadget. Contohnya seperti Siri pada Apple, Google Voice pada Google Android, dan Cortana dari Microsoft. Pernahkah Anda menggunakan Python virtual assistant dari ketiga brand tersebut? Atau, ketiga Python virtual assistant tersebut masih terbatas dan belum bisa memenuhi kebutuhan kerja Anda?

Tidak perlu cemas. Yuk lanjutkan membaca artikel ini untuk mengetahui cara membuat virtual assistant using Python!

Artikel Terkait  Pentingnya Tindakan Pembaruan Terhadap Aplikasi

Tutorial Membuat Python Virtual Assistant

virtual-asistant-1

Membuat virtual assistant ternyata tidak begitu rumit. Dengan menggunakan Python programming, Anda sudah bisa membuat virtual assistant pintar sederhana yang bisa mengerjakan aneka tugas seperti:

  • Mengambil data tanggal dan waktu untuk Anda.
  • Membalas sapaan user (setelah Anda mengucapkan kata sapaan tertentu yang telah diprogram – seperti pada Google Assistant yang bekerja pasca user mengucap, “Oke Google”).
  • Mengambil informasi lainnya sesuai perintah user.

Langsung saja mari kita mulai tutorialnya:

Mempersiapkan Kebutuhan

Ada beberapa kebutuhan yang harus Anda persiapkan terlebih dahulu saat hendak membuat sebuah virtual assistant. Pertama, siapkan rekaman suara Anda sendiri dalam format mp3. Rekaman suara tersebut nantinya akan berisi jawaban dari pertanyaan-pertanyaan atau permintaan yang dapat dijawab oleh sistem. File audio ini jugalah yang akan Anda turut program nanti.

Kemudian, Anda harus menginstall sejumlah package wikipedia dan pyadio SpeechRecognition gTTS. Kode-kode untuk instalasinya adalah:

pip install pyaudio

pip install SpeechRecognition

pip install gTTS

pip install Wikipedia

Melakukan Import Packages dan Libraries

Tahap kedua adalah lakukan import libraries dan packages. Beberapa libraries yang perlu diimport adalah:

  • Libraries speech_recognition dan warnings untuk menangkap dan mengidentifikasi suara dari user.
  • Libraries Wikipedia untuk memperoleh informasi dari sistem Wikipedia.
  • Libraries gtts untuk mengubah teks menjadi bentuk suara (audio).
  • Libraries calendar untuk mendapatkan data hari.
  • Libraries datetime untuk mendapatkan data waktu dan tanggal.
  • Libraries os untuk memungkinkan user berinteraksi dengan sistem operasi smartphone.
  • Libraries random untuk memasukkan data-data acak.

Untuk melakukan import libraries, gunakan coding:

# Import the libraries
import speech_recognition as sr
import os
from gtts import gTTS
import datetime
import warnings
import calendar
import random
import wikipedia

Jika terdapat pesan warning, Anda bisa men-ignore pesan tersebut dengan kode:

# Ignore any warning messages
warnings.filterwarnings(‘ignore’)

Membuat Aneka Helpful Function Asisten

Proses ketiga adalah membuat helpful function untuk menjadikan tampilan code lebih rapi dalam mengeksekusi perintah. Caranya adalah:

  1. Buat fungsi recordAudio() yang berguna untuk menerima perintah suara, mengenali suara dan memproses suara ke dalam bentuk string (teks). Kodenya:

# Record audio and return it as a string
def recordAudio():
# Record the audio
r = sr.Recognizer()
with sr.Microphone() as source:
print(‘Say Hello!’)
audio = r.listen(source)

# Speech recognition using Google’s Speech Recognition
data = ”
try:
data = r.recognize_google(audio)
print(‘Ucapan Anda: ‘ + data)
except sr.UnknownValueError:
print(‘Google Speech Recognition could not understand’)
except sr.RequestError as e:
print(‘Request error from Google Speech Recognition’) return data

  • Buat fungsi asistenResponse() untuk merespon user dengan suara. Terbalik dengan fungsi sebelumnya, fungsi ini mengambil teks (string) dan mengubahnya menjadi audio. Fungsi ini juga akan mencetak teks ke layar untuk keperluan pengujian proses.

# Function to get the virtual assistant response
def assistantResponse(text):
print(text)    # Convert the text to speech
myobj = gTTS(text=text, lang=’en’, slow=False)

# Save the converted audio to a file
myobj.save(‘assistant_response.mp3’)    # Play the converted file
os.system(‘start assistant_response.mp3’)

  • Buat fungsi untuk mengambil sejumlah teks dan mengecek ketersediaan kata-kata bangun dalam teks. Kata bangun adalah kata yang secara khusus mengaktivasi sistem asisten. Contoh kata bangun seperti “oke Google”. Anda bisa membuat kata bangun sendiri semisal “halo komputer”. Jika sistem mendeteksi kehadiran kata bangun, maka fungsi akan mengembalikan True – begitu juga sebaliknya.

Code untuk memasang sistem kata bangun:

# A function to check for wake word(s)
def wakeWord(text):
WAKE_WORDS = [‘halo computer’]
text = text.lower()  # Convert the text to all lower case words  # Check to see if the users command/text contains a wake word
for phrase in WAKE_WORDS:
if phrase in text:
return True  # If the wake word was not found return false
return False

  • Buat fungsi untuk mengembalikan tanggal sebagai string dengan fungsi def getDate().

def getDate():
now = datetime.datetime.now()
my_date = datetime.datetime.today()
weekday = calendar.day_name[my_date.weekday()]# e.g. Tuesday
monthNum = now.month
dayNum = now.day
month_names = [‘January’, ‘February’, ‘March’, ‘April’, ‘May’,
‘June’, ‘July’, ‘August’, ‘September’, ‘October’, ‘November’,
‘December’]
ordinalNumbers = [‘1st’, ‘2nd’, ‘3rd’, ‘4th’, ‘5th’, ‘6th’,
‘7th’, ‘8th’, ‘9th’, ’10th’, ’11th’, ’12th’,
’13th’, ’14th’, ’15th’, ’16th’, ’17th’,
’18th’, ’19th’, ’20th’, ’21st’, ’22nd’,
’23rd’, ’24th’, ’25th’, ’26th’, ’27th’,
’28th’, ’29th’, ’30th’, ’31st’]

return ‘Today is ‘ + weekday + ‘ ‘ + month_names[monthNum – 1] + ‘ the ‘ + ordinalNumbers[dayNum – 1] + ‘.’

  • Buat fungsi greeting() yang bisa menerima teks dan mengembalikan respon salam acak kepada user. Semisal Anda menyapa asisten ‘halo’, maka fungsi akan membalas acak ‘apa kabar’. Code:

# Function to return a random greeting response
def greeting(text):
# Greeting Inputs
GREETING_INPUTS = [‘hi’, ‘hey’, ‘halo’, ‘greetings’, ‘salam’, ‘hello’]     # Greeting Response back to the user
GREETING_RESPONSES = [‘hai’, ‘apa kabar’, ‘hello’, ‘ada yang bisa saya bantu’]     # If the users input is a greeting, then return random response
for word in text.split():
if word.lower() in GREETING_INPUTS:
return random.choice(GREETING_RESPONSES) + ‘.’    # If no greeting was detected then return an empty string
return ”

  1. Terakhir, buat fungsi getPerson() untuk memperoleh nama depan dan belakang (nama lengkap) dari seseorang di Wikipedia jika sistem mendeteksi keyword ‘siapa’. Semisal Anda menyebut ‘Siapa John Lennon?’ maka sistem bisa diprogram untuk mengembalikan informasi agar yang tampil adalah ‘John Lennon adalah’. Contoh coding:

# Function to get a person first and last name
def getPerson(text):
wordList = text.split()# Split the text into a list of words      for i in range(0, len(wordList)):
if i + 3 <= len(wordList) – 1 and wordList[i].lower() == ‘who’ and wordList[i + 1].lower() == ‘is’:
return wordList[i + 2]+ ‘ ‘ + wordList[i + 3]

Artikel Terkait  14 Aturan Wajib tentang Cara Membuat Aplikasi Web yang Intuitif

Melakukan Coding Program Utama

Setelah membuat aneka helpful function, kini tibalah waktunya untuk membuat coding program utama. Jika ditelaah, semua sistem asisten virtual akan terus mendengarkan percakapan Anda untuk mengeksekusi perintah setelah satu kali mendengar kata bangun.

Untuk bisa membuat program yang sama, Anda akan memerlukan putaran terus-menerus untuk merekam audio.

Jadi, setelah kata bangun diucapkan oleh user, Anda harus memastikan sistem dapat mengecek jika user menyebut keyword lain seperti ‘siapa’, ‘waktu’ atau ‘tanggal’ – dan pastikan sistem asisten komputer bisa merespon sesuai keyword audio yang diberikan. Coding yang bisa Anda gunakan:

while True:
# Record the audio
text = recordAudio()
response = ” #Empty response string
# Checking for the wake word/phrase
if (wakeWord(text) == True):
# Check for greetings by the user
response = response + greeting(text)         # Check to see if the user said tanggal
if (‘tanggal’ in text):
get_date = getDate()
response = response + ‘ ‘ + get_date         # Check to see if the user said waktu
        if(‘waktu’ in text):
now = datetime.datetime.now()
meridiem = ”
if now.hour >= 12:
meridiem = ‘p.m’ #Post Meridiem (PM)
hour = now.hour – 12
else:
meridiem = ‘a.m’#Ante Meridiem (AM)
hour = now.hour           # Convert minute into a proper string
if now.minute < 10:
minute = ‘0’+str(now.minute)
else:
minute = str(now.minute)             response = response + ‘ ‘+ ‘It is ‘+ str(hour)+ ‘:’+minute+’ ‘+meridiem+’ .’

# Check to see if the user said ‘siapa’
if (‘siapa’ in text):
person = getPerson(text)
wiki = wikipedia.summary(person, sentences=2)
response = response + ‘ ‘ + wiki

# Assistant Audio Response
assistantResponse(response)

Demikianlah pembahasan artikel tutorial membuat virtual assistant memakai Python. Semoga artikel edisi kali ini mampu menambah wawasan Anda seputar cara membuat virtual assistant sendiri, ya!


Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.

Jasa Pembuatan Aplikasi

Jasa Pembuatan Website

Jasa Pembuatan Paket Aplikasi

Jasa Pembuatan Internet Marketing

Mau posting artikel iklan?

Yuk klik dan ikuti ketentuan layanan dari kami, dapatkan penawaran paket dengan harga terbaik!

Subscribe Sekarang

Dapatkan beragam informasi menarik tentang Website, Aplikasi, Desain, Video dan API langsung melalui email Anda. Subscribe sekarang dan terus belajar bersama kami!

Kategori

Blog Post Ranking 10

Contoh PHP Curl : 10 Hal Luar Biasa yang dapat Anda Kembangkan dengan Curl

Meningkatnya jumlah aplikasi yang pindah ke web telah membuat "HTTP Scripting" lebih sering diminta dan diinginkan. Untuk dapat secara...

Encoding Adalah : Proses Komunikasi Encoding dan Decoding

Jika kita dapat melihat percakapan antar komputer, mungkin akan terlihat seperti ini: "010110111011101011010010110". Bahasa ini disebut dengan biner, encoding...

Looping Adalah Algoritma Perulangan: Berikut Contohnya

Jika anda sudah mendalami atau sedang mendalami dunia pemrograman terdapat sebuah konsep yang dapat memudahkan anda dalam menyusun struktur...

Rekomendasi 7 Aplikasi Pembuat Animasi 3D Terbaik. Ayo Cek!

Apakah Anda bercita-cita untuk menjadi seorang animator profesional? Belajar membuat animasi kini sudah menjadi hal mudah yang bisa dilakukan...

Metadata Adalah? Fungsi dan Jenis-Jenis Metadata

Pernah mendengar istilah metadata? Mungkin, kita sering mendengar istilah metadata. Tetapi, banyak dari kita yang belum tahu arti dari metadata...

Cara Membuat Aplikasi di Playstore dengan Mudah

Membuat aplikasi di Playstore bisa Anda lakukan dengan mudah. Terdapat beberapa situs yang bisa membantu Anda untuk membuat aplikasi...

Ini Cara Mudah Membuat Redirect PHP | Seri Belajar PHP

Fungsi redirect PHP sangat banyak digunakan dalam kehidupan berwebsite alias mengelola website. Script redirect PHP banyak dipergunakan oleh user...

4 Cara Mengatasi Autentikasi Google Play Store dengan Cepat dan Mudah

Apakah Anda sedang mengalami masalah autentikasi Google Play Store? Permasalahan autentikasi Google Play Store adalah permasalahan umum sering dialami...

Cara Mudah Menambahkan Lokasi Alamat Bisnis Anda di Google Maps

Saat ingin hunting tempat makan atau tempat nongkrong terbaru, tak jarang beberapa dari Anda biasanya mendapatkan informasi terkini melalui...

Rekomendasi 10 Aplikasi Coding Android Terbaik

Ketersediaan aplikasi coding Android memang banyak dicari oleh orang-orang yang sedang atau akan memulai untuk membuat aplikasi android. Jika...

Bisnis

Online Service

Peluang Bisnis

Model Bisnis

Entrepreneurship

Uang

Ketrampilan

Outsourcing

Monetize

Pemasaran

SEO

Internet Marketing

Dasar Pemasaran

Strategi Pemasaran

Situs Web Analitik

Iklan

Teknologi

Teknologi Terbaru

AI

Komputer

Jaringan

Paling Sering dibaca
Mungkin Anda Menyukainya