Spaces:
Running
Running
import streamlit as st | |
if "login_state" not in st.session_state: | |
st.session_state.login_state = False | |
if "api" not in st.session_state: | |
st.session_state.api = "" | |
def main(): | |
if not st.session_state.login_state: | |
from note import regester, notes | |
st.subheader("Interact with AI models through SiliconFlow API key", anchor=False) | |
st.markdown(regester, unsafe_allow_html=True) | |
api_key = st.text_input("API KEY", st.session_state.api, key="api_key", type="password", placeholder="sk-...") | |
st.session_state.api = api_key | |
submit_btn = st.button("Submit", key="submit_btn", type="primary", disabled=not api_key) | |
st.markdown("---") | |
with st.container(border=True, key="note_container"): | |
st.markdown(notes, unsafe_allow_html=True) | |
if submit_btn and st.session_state.api: | |
st.session_state.login_state = True | |
st.rerun() | |
elif submit_btn and not st.session_state.api: | |
st.error("Please enter your SiliconFlow API key!") | |
else: | |
siliconflow() | |
def siliconflow(): | |
function_list = ["General Chat", "Visual Chat", "Reasoning Chat", "Image Generation", "Audio to Text"] | |
function_item = st.sidebar.selectbox("Function", function_list, index=0, key="func_") | |
st.subheader(function_item, anchor=False) | |
if function_item == "General Chat": | |
from general_chat import generalChat | |
generalChat(api_key=st.session_state.api) | |
elif function_item == "Visual Chat": | |
from visual_chat import visualChat | |
visualChat(api_key=st.session_state.api) | |
elif function_item == "Reasoning Chat": | |
from reasoning_chat import reasoningChat | |
reasoningChat(api_key=st.session_state.api) | |
elif function_item == "Image Generation": | |
from image_generation import imageGeneration | |
imageGeneration(api_key=st.session_state.api) | |
elif function_item == "Audio to Text": | |
from audio_text import audioText | |
audioText(api_key=st.session_state.api) | |
st.sidebar.markdown("---") | |
if st.sidebar.button("Log Out", key="logout_btn"): | |
st.session_state.login_state = False | |
st.session_state.api = "" | |
st.rerun() | |
if __name__ == "__main__": | |
main() | |