Spaces:
Runtime error
Runtime error
| from document_qa_engine import DocumentQAEngine | |
| import streamlit as st | |
| import logging | |
| from yaml import load, SafeLoader, YAMLError | |
| def load_authenticator_config(file_path='authenticator_config.yaml'): | |
| try: | |
| with open(file_path, 'r') as file: | |
| authenticator_config = load(file, Loader=SafeLoader) | |
| return authenticator_config | |
| except FileNotFoundError: | |
| logging.error(f"File {file_path} not found.") | |
| except YAMLError as error: | |
| logging.error(f"Error parsing YAML file: {error}") | |
| def new_file(): | |
| st.session_state['loaded_embeddings'] = None | |
| st.session_state['doc_id'] = None | |
| st.session_state['uploaded'] = True | |
| clear_memory() | |
| def clear_memory(): | |
| if st.session_state['memory']: | |
| st.session_state['memory'].clear() | |
| def init_qa(model, api_key=None): | |
| print(f"Initializing QA with model: {model} and API key: {api_key}") | |
| return DocumentQAEngine(model, api_key=api_key) | |
| def append_header(): | |
| st.header('π Document Insights :rainbow[AI] Assistant π', divider='rainbow') | |
| st.text("π₯ Upload documents in PDF format. Get insights.. ask questions..") | |
| def append_documentation_to_sidebar(): | |
| with st.expander("Disclaimer"): | |
| st.markdown( | |
| """ | |
| :warning: Do not upload sensitive data. We **temporarily** store text from the uploaded PDF documents solely | |
| for the purpose of processing your request, and we **do not assume responsibility** for any subsequent use | |
| or handling of the data submitted to third parties LLMs. | |
| """) | |
| with st.expander("Documentation"): | |
| st.markdown( | |
| """ | |
| Upload a document as a PDF document. Once the spinner stops, you can proceed to ask your questions. The answers will | |
| be displayed in the right column. The system will answer your questions using the content of the document | |
| and mark refrences over the PDF viewer. | |
| """) | |