Yapay Zeka Asistanı Nedir ve Neden Python ile Geliştirelim?
Ama neden Python? Python, açık kaynak olması ve geniş kütüphane yelpazesi ile yapay zeka geliştirme konusunda güçlü bir altyapı sunuyor. Ayrıca, sesli komutları işleyebilmek için gerekli olan ses tanıma ve doğal dil işleme (NLP) kütüphaneleri de oldukça yaygın.
Adım 1: Gerekli Kütüphaneleri Yükleyin
- SpeechRecognition: Sesli komutları alabilmek için kullanılır.
- pyttsx3: Asistanın size sesli yanıtlar vermesini sağlar.
- wikipedia: Wikipedia'dan bilgi almak için.
- datetime: Güncel tarih ve saat bilgisi almak için.
- pyjokes: Basit şakalar yapmak için (isteğe bağlı, ama eğlenceli!).
Kütüphaneleri yüklemek için terminal veya komut satırında şu komutları kullanabilirsiniz:
```bash
pip install SpeechRecognition pyttsx3 wikipedia pyjokes datetime
```
Adım 2: Sesli Komutları Almak
import speech_recognition as sr
# Sesli komutları almak için tanıyıcıyı başlatıyoruz
recognizer = sr.Recognizer()
def listen_command():
with sr.Microphone() as source:
print("Dinliyorum...")
audio = recognizer.listen(source)
command = ""
try:
command = recognizer.recognize_google(audio)
print(f"Komut: {command}")
except sr.UnknownValueError:
print("Anlaşılamadı, tekrar deneyin.")
except sr.RequestError:
print("Google'a bağlanırken hata oluştu.")
return command.lower()
Bu kod, mikrofonu dinler ve duyduğu komutu metne dönüştürür. Kullanıcı "selam" gibi bir şey söylediğinde, program bunu algılar ve komut olarak işler.
Adım 3: Asistanın Yanıtlarını Verme
import pyttsx3
engine = pyttsx3.init()
def speak(text):
engine.say(text)
engine.runAndWait()
Bu fonksiyon, asistanınıza bir metin verdiğinizde onu sesli olarak söylemesini sağlar. Örneğin, "Merhaba, nasıl yardımcı olabilirim?" gibi.
Adım 4: Basit İşlemler Yapma
İşte birkaç örnek:
import datetime
import pyjokes
import wikipedia
def execute_command(command):
if "tarih" in command:
today = datetime.date.today()
speak(f"Bugün {today}")
elif "saat" in command:
now = datetime.datetime.now().strftime("%H:%M")
speak(f"Saat {now}")
elif "şaka" in command:
joke = pyjokes.get_joke()
speak(joke)
elif "wikipedia" in command:
query = command.replace("wikipedia", "")
result = wikipedia.summary(query, sentences=2)
speak(result)
else:
speak("Üzgünüm, bu komutu anlayamadım.")
Bu kod, komutun içinde geçen "tarih", "saat", "şaka" veya "wikipedia" anahtar kelimelerine göre farklı yanıtlar verir. Örneğin, kullanıcı "şaka yap" derse, asistan bir şaka anlatır.
Adım 5: Sürekli Dinleme ve Yanıt Verme
while True:
command = listen_command()
execute_command(command)
Bu kod, asistanı sürekli dinleyecek ve her komutu işledikten sonra tekrar dinlemeye başlayacaktır.
Sonuç
Yapay zeka ile kendi asistanınızı yapmak, hem eğlenceli hem de öğretici bir projedir. Bu adımları takip ederek Python bilginizi pekiştirebilir ve yeni teknolojilere adım atabilirsiniz.
###