Streamlit ile Sohbet Arayüzü Oluşturma: 7. Bölüm
Bu bölümde, Streamlit kullanarak etkileşimli bir sohbet arayüzü nasıl oluşturulacağını adım adım ele alacağız. Streamlit’in basitliği ve esnekliği ile kullanıcılarınızla gerçek zamanlı iletişim kurabileceğiniz dinamik bir uygulama oluşturabilirsiniz.
Gerekli Kütüphaneler
Öncelikle, projemize ihtiyacımız olan kütüphaneleri içe aktarmalıyız:
“`python
import streamlit as st
“`
Sohbet Arayüzü Tasarımı
Sohbet arayüzümüz iki temel bileşenden oluşacak:
- Mesajların görüntüleneceği bir alan (sohbet kutusu)
- Kullanıcının mesaj gönderebileceği bir metin kutusu
Streamlit’in `st.text_area` ve `st.text_input` bileşenlerini kullanarak bu arayüzü oluşturabiliriz.
“`python
st.title(“Sohbet Uygulaması”)
mesajlar = []
sohbet_kutusu = st.text_area(“Sohbet Kutusu”, height=200)
yeni_mesaj = st.text_input(“Mesajınızı Girin”)
st.button(“Gönder”, on_click=lambda: mesajlar.append(yeni_mesaj))
for mesaj in mesajlar:
st.write(mesaj)
“`
Bu kod bloğu, basit bir sohbet arayüzü oluşturur. `st.text_area` bileşeni sohbet kutusunu, `st.text_input` ise mesaj giriş alanını oluşturur. `st.button` ise mesaj gönderme butonunu oluşturur. `on_click` özelliği ile butona tıklandığında mesajların listeye eklenmesi sağlanır. Son olarak, döngü ile mesajlar sohbet kutusuna eklenir.
Gerçek Zamanlı Özellikler
Bu basit arayüz, kullanıcılar arasında gerçek zamanlı iletişim için yeterli değil. Gerçek zamanlı özellikler eklemek için, bir websocket protokolü kullanmanız gerekebilir. Ancak Streamlit, gerçek zamanlı iletişim özelliği sunmaz. Bunu elde etmek için başka kütüphaneler kullanmanız gerekebilir.
Örnek Uygulama
Aşağıdaki örnekte, Streamlit kullanarak basit bir sohbet uygulaması nasıl oluşturulacağını görebilirsiniz:
“`python
import streamlit as st
st.title(“Basit Sohbet Uygulaması”)
mesajlar = []
sohbet_kutusu = st.text_area(“Sohbet Kutusu”, height=200)
yeni_mesaj = st.text_input(“Mesajınızı Girin”)
st.button(“Gönder”, on_click=lambda: mesajlar.append(yeni_mesaj))
for mesaj in mesajlar:
st.write(mesaj)
“`
Bu uygulamada, kullanıcılar mesajlarını girip “Gönder” butonuna tıklayarak sohbet kutusuna ekleyebilirler. Ancak bu uygulama gerçek zamanlı değil, yani sadece aynı cihazda çalışan kullanıcılar birbirleriyle iletişim kurabilirler.
Ek Özellikler
Sohbet uygulamanıza ek özellik eklemek için Streamlit’in diğer bileşenlerini kullanabilirsiniz. Örneğin, kullanıcılardan giriş yapmalarını isteyerek sohbet uygulamanızı kişiselleştirebilirsiniz. Ayrıca, mesajları zaman damgası ile görüntülemek, dosya paylaşımı eklemek veya sohbet geçmişini kaydetmek gibi gelişmiş özellikler ekleyebilirsiniz.
Sonuç
Streamlit ile basit bir sohbet arayüzü oluşturmak oldukça kolaydır. Streamlit’in esnekliği ve diğer kütüphanelerle entegrasyon kolaylığı sayesinde, daha gelişmiş ve etkileşimli sohbet uygulamaları oluşturabilirsiniz. Streamlit’in kullanımıyla web uygulamalarınızda gerçek zamanlı iletişim özelliği eklemek, kullanıcı deneyimini büyük ölçüde geliştirebilir.
Daha fazla bilgi için web sitemizi ziyaret edin: fatihsoysal.com
#Etiketler
Streamlit, Sohbet Arayüzü, Web Uygulaması, Python, Kütüphaneler, Gerçek Zamanlı, İletişim, Websocket, Uygulama Geliştirme
