Spaces:
Sleeping
Sleeping
File size: 1,443 Bytes
9f712c4 842d7ef 9f712c4 c226acf 9f712c4 b893cd4 c226acf 9f712c4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
import nltk
import streamlit as st
from nltk.chat.util import Chat, reflections
from difflib import get_close_matches
# Eğitim veri seti
training_data = [
("Benim adım (.*)", ["Merhaba %1, nasıl yardımcı olabilirim?"]),
("merhaba|selam|hey", ["Merhaba, size nasıl yardımcı olabilirim?"]),
("nasılsın|naber", ["İyi, teşekkür ederim. Siz nasılsınız?"]),
("(iyiyim|teşekkürler), seninle konuşmaktan keyif alıyorum", ["Ben de sizinle konuşmaktan keyif alıyorum. Size nasıl yardımcı olabilirim?"]),
("çıkış|kapat|sonlandır", ["Görüşürüz, umarım tekrar görüşürüz!"]),
]
# NLTK chat için eğitim
def train_bot(training_data):
chatbot = Chat(training_data, reflections)
return chatbot
# Sohbet botunu eğitme
chatbot = train_bot(training_data)
# Sohbet botunu çalıştırma
def run_chatbot():
print("Merhaba! Benim adım ChatBot. Size nasıl yardımcı olabilirim? (Çıkış için 'çıkış' yazabilirsiniz)")
user_input = st.text_area("Siz: ")
if user_input:
# En yakın eşleşmeyi bul
closest_match = get_close_matches(user_input.lower(), chatbot._pairs.keys(), n=1, cutoff=0.6)
if closest_match:
response = chatbot.respond(closest_match[0])
st.write("ChatBot: " + response)
else:
st.write("ChatBot: Üzgünüm, anlayamadım. Lütfen tekrar deneyin.")
# Sohbet botunu başlat
run_chatbot() |