most-popular

Trợ Lý Ảo Tiếng Việt Với Python

 



Code Python - Trợ lý ảo Conan

MERRY

- ĐỒ HOẠ 


1: Là nó phải nghe được

2: Nó phải hiểu được

3: Nó phải đọc được

  • Đầu tiên ta cần install thư viện có tên là speech_recognition

pip install speechrecognition pip install pyaudio


nghe.py

import speech_recognition #Tên thư viện

robot_ear = speech_recognition.Recognizer() #Khỏi tạo nên 1 cái mà robot có thể nghe được
with speech_recognition.Microphone() as mic: #Ở đây mình sử dụng with để bật cái mic sau khi dùng xong mic sẽ tự tắt
    print("Robot: I'm Listening")
    audio = robot_ear.listen(mic)
 
try:
    you = robot_ear.recognizer_google(audio) #Đây nó sẽ nhận dạng âm thanh
except:
    you = "" # nếu không nói gì hoặc âm thanh không đúng 
    
# ở phần try và except kia để xử lý việc khi bật mic lên mà không nói gì hoặc những âm thanh không đúng nó sẽ sinh ra lỗi và khi có lỗi sẽ hiển thị "" thay vì báo lỗi trên màn hình của bạn.
print("You: " you)

pip install pyttsx3

các bạn có thể xem qua cách cài đặt pip ở đây.

https://pypi.org/project/pip/

( nếu bạn nào dùng window mà install pyttsx3 có lỗi thì hãy tham khảo cách fix ngay đây.)

https://stackoverflow.com/questions/52283840/i-cant-install-pyaudio-on-windows-how-to-solve-error-microsoft-visual-c-14


noi.py

import pyttsx3
robot_brain = "I can't hear you, try again"

robot_mouth = pyttsx3.init()
robot_mouth.say(robot_brain)
robot_mouth.runAndWait()

hieu.py

you = "Hello" # ở đây khi mà chúng ta bắt đầu bằng câu Hello thì robot sẽ kiểm tra các điều kiện bên dưới
#ở đây mình đang fix cứng chút nữa gộp 3 file lại thì sẽ custom lại  

if you == "":
    robot_brain = "I can't hear you, try again"
elif you == "Hello":
    robot_brain: "Hello Python"
elif you == "Today"
    robot_brain: "Thu 6"
else:
    robot_brain = "I'm fine thank you and you"

print(robot_brain)

Bây giờ chúng ta sẽ gộp 3 file kia lại với nhau thành 1 nhé :

robot.rb

import speech_recognition
import pyttsx3
import datatime import data, datatime

robot_ear = speech_recognition.Recognizer()
robot_mouth = pyttsx3.init()
robot_brain = ""

while True: # cái này để mình và robot giao tiếp liên tục thay vì nói 1 câu chương trình đã kết thúc.
    with speech_recognition.Microphone() as mic:
        print("Robot: I'm Listening")
        audio = robot_ear.listen(mic)
    
    print("Robot:...")
 
    try:
        you = robot_ear.recognizer_google(audio)
    except:
        you = ""

    if you == "":
        robot_brain = "I can't hear you, try again"
    elif "Hello" in you: # in you này thay vì chúng ta nói Hello sẽ trả ra 
    #"Hello python thì nó sẽ kiểm tra là trong câu mà bạn nói có từ Hello hay không ?
        robot_brain: "Hello Python"
    elif "Today" in you:
        today = date.today()
        robot_brain = today.strftime("%B %d, %Y")
    elif "Time" in you:
        now = datetime.today()
        robot_brain = now.strftime("%H hours %M minutes %S seconds")
    elif "goodbye" in you: ## đoạn này khi nói goodbye thì chương trình sẽ tắt thay vì mở liên tục khi ở phía trên
        robot_brain = "Good Bye"
        break
    else:
        robot_brain = "I'm fine thank you and you"

print("Robot:" + robot_brain)
robot_mouth.say(robot_brain)
robot_mouth.runAndWait()

Đăng nhận xét

0 Nhận xét