Spaces:
Sleeping
Sleeping
import streamlit as st | |
import os | |
from main import response_generator,query_csv_db | |
from PIL import Image | |
import pandas as pd | |
im = Image.open("logo.png") | |
st.set_page_config( | |
page_title="Oracle Wiki", | |
page_icon=im, | |
layout='centered' | |
) | |
st.title("Oracle Wiki") | |
options =st.selectbox('Choose One',options=['Query an SQL DB','OIC Chatbot','SOA Chatbot','OSB Chatbot','Query a CSV DB'],index = 1) | |
if options in ['OIC Chatbot','SOA Chatbot','OSB Chatbot']: | |
if "messages" not in st.session_state: | |
st.session_state.messages = [] | |
for message in st.session_state.messages: | |
with st.chat_message(message["role"],avatar=im): | |
st.markdown(message["content"]) | |
if prompt := st.chat_input("What is up?"): | |
st.session_state.messages.append({"role": "user", "content": prompt}) | |
with st.chat_message("user",avatar=im): | |
st.markdown(prompt) | |
with st.chat_message("assistant",avatar=im): | |
response,output_docs = response_generator(prompt,'') | |
st.markdown(response) | |
st.session_state.messages.append({"role": "assistant", "content": response}) | |
elif options=='Query a CSV DB': | |
csv_files = st.file_uploader('Enter csv files to Query',accept_multiple_files=True) | |
if csv_files: | |
query = st.text_input('**:red[Enter the Query]**') | |
if st.button(':red[Submit]'): | |
result = query_csv_db(csv_files,query)['output'] | |
st.write(result) | |
else: | |
st.selectbox('Choose the database you want to Query',options=['HCM OFS','SCM OFS']) |