Spaces:
Build error
Build error
| 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() | |