Spaces:
Sleeping
Sleeping
import streamlit as st | |
import requests | |
from dotenv import load_dotenv | |
import os | |
# .env dosyasını yükle | |
load_dotenv() | |
# API bilgileri | |
API_URL = os.getenv("API_URL") | |
API_KEY = os.getenv("API_KEY") | |
# Streamlit arayüzü | |
st.title("Hafızalı Chatbot") | |
st.write("Bu chatbot, hafızalıdır ve belirtilen yapay zekanın API'sini kullanır. kullanır.") | |
# Model seçenekleri | |
model_options = ["claude-3-haiku", "gpt-4o-mini", "llama", "mixtral"] | |
selected_model = st.selectbox("Bir model seçin:", model_options) | |
# Sohbet hafızasını başlat | |
if 'messages' not in st.session_state: | |
st.session_state['messages'] = [ | |
{"role": "system", "content": f"Senin ismin {selected_model}. Sen kullanıcı dostu bir asistansın."} | |
] | |
# Hafızayı sıfırlama fonksiyonu | |
def reset_memory(): | |
st.session_state['messages'] = [ | |
{"role": "system", "content": f"Senin ismin {selected_model}. Sen kullanıcı dostu bir asistansın."} | |
] | |
st.write("Hafıza sıfırlandı.") | |
# Kullanıcıdan mesaj alma | |
user_input = st.text_input("Mesajınızı yazın:") | |
if st.button("Gönder"): | |
if user_input: | |
# Kullanıcı mesajını hafızaya ekle | |
st.session_state['messages'].append({"role": "user", "content": user_input}) | |
# API'ye istek gönderme | |
response = requests.post( | |
API_URL, | |
headers={"Authorization": f"Bearer {API_KEY}"}, | |
json={ | |
"model": selected_model, # Seçilen model burada kullanılıyor | |
"messages": st.session_state['messages'] | |
} | |
) | |
# Yanıtı işleme | |
if response.status_code == 200: | |
data = response.json() | |
bot_response = data['choices'][0]['message']['content'] | |
# Bot mesajını hafızaya ekle | |
st.session_state['messages'].append({"role": "assistant", "content": bot_response}) | |
st.text_area(f"{selected_model}:", value=bot_response, height=200) | |
else: | |
st.write(f"Bir hata oluştu: {response.status_code}") | |
else: | |
st.write("Lütfen bir mesaj girin.") | |
# Hafızayı sıfırlama düğmesi | |
if st.button("Hafızayı Sıfırla"): | |
reset_memory() | |