import streamlit as st from streamlit_pdf_viewer import pdf_viewer st.set_page_config(layout="wide") def main(): with st.sidebar: st.title('Document Summarization and QA System') # st.markdown(''' # ## About this application # Upload a pdf to ask questions about it. This retrieval-augmented generation (RAG) workflow uses: # - [Streamlit](https://streamlit.io/) # - [LlamaIndex](https://docs.llamaindex.ai/en/stable/) # - [OpenAI](https://platform.openai.com/docs/models) # ''') # st.write('Made by ***Nate Mahynski***') # st.write('nathan.mahynski@nist.gov') # Select Provider provider = st.selectbox( label="Select LLM Provider", options=['openai', 'huggingface'], index=0 ) # Select LLM if provider == 'openai': llm_list = ['gpt-3.5-turbo', 'gpt-4', 'gpt-4-turbo', 'gpt-4o'] else: llm_list = [] llm = st.selectbox( label="Select LLM Model", options=llm_list, index=0 ) # Enter Token token = st.text_input( "Enter your token", value=None ) uploaded_file = st.file_uploader( "Choose a PDF file to upload", type=['pdf'], accept_multiple_files=False ) if uploaded_file is not None: # Parse the file pass col1, col2 = st.columns(2) with col2: if uploaded_file is not None: # Display the pdf pdf_viewer(input=uploaded_file, width=700)