mgbam commited on
Commit
9794246
·
verified ·
1 Parent(s): c9f5d70

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -47
app.py CHANGED
@@ -2,55 +2,31 @@ import streamlit as st
2
  import transformers
3
  import altair as alt
4
  import pandas as pd
5
- import streamlit_authenticator as stauth
6
- import bcrypt
7
  from difflib import SequenceMatcher
8
 
9
  # ------------------------------
10
- # User Authentication Setup
11
  # ------------------------------
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
 
13
- # Manually hash the password using bcrypt
14
- plain_password = "password123"
15
- hashed_password = bcrypt.hashpw(plain_password.encode('utf-8'), bcrypt.gensalt()).decode('utf-8')
16
-
17
- # Configuration for authentication
18
- config = {
19
- 'credentials': {
20
- 'usernames': {
21
- 'demo_user': {
22
- 'name': 'Demo User',
23
- 'password': hashed_password # use the manually hashed password
24
- }
25
- }
26
- },
27
- 'cookie': {
28
- 'expiry_days': 30,
29
- 'key': 'some_signature_key',
30
- 'name': 'some_cookie_name'
31
- },
32
- 'preauthorized': {
33
- 'emails': []
34
- }
35
- }
36
-
37
- authenticator = stauth.Authenticate(
38
- config['credentials'],
39
- config['cookie']['name'],
40
- config['cookie']['key'],
41
- config['cookie']['expiry_days']
42
- )
43
-
44
- # Use 'sidebar' as the location parameter for authentication
45
- name, authentication_status, username = authenticator.login('Login', 'sidebar')
46
-
47
- if not authentication_status:
48
- st.error('Authentication failed. Please refresh and try again.')
49
- st.stop()
50
-
51
- st.sidebar.write(f"Welcome *{name}*")
52
- authenticator.logout('Logout', 'sidebar')
53
-
54
  # ------------------------------
55
  # Load Models
56
  # ------------------------------
@@ -132,7 +108,6 @@ with tabs[1]:
132
  answer = answer_question(summary_context, question)
133
  st.subheader("Answer")
134
  st.write(answer)
135
- # For session saving, one could store Q&A pairs in st.session_state or a database.
136
  else:
137
  st.warning("Please provide both a summary context and a question.")
138
 
@@ -158,7 +133,6 @@ with tabs[2]:
158
  st.subheader("Data Extraction Placeholder")
159
  st.markdown("Implement NLP techniques or model prompts to extract structured data here.")
160
 
161
- # File uploader example for future data extraction features
162
  uploaded_file = st.file_uploader("Upload a document file for extraction", type=["pdf", "docx", "txt"])
163
  if uploaded_file is not None:
164
  st.info("File uploaded successfully. Data extraction logic would process this file.")
@@ -175,5 +149,5 @@ st.sidebar.info(
175
  )
176
 
177
  # ------------------------------
178
- # End of Applications
179
  # ------------------------------
 
2
  import transformers
3
  import altair as alt
4
  import pandas as pd
 
 
5
  from difflib import SequenceMatcher
6
 
7
  # ------------------------------
8
+ # Simple Authentication Setup
9
  # ------------------------------
10
+ # Define a simple password for demonstration purposes.
11
+ PASSWORD = "password123"
12
+
13
+ # Initialize authentication state
14
+ if 'authenticated' not in st.session_state:
15
+ st.session_state['authenticated'] = False
16
+
17
+ # Simple password input in the sidebar for authentication
18
+ if not st.session_state['authenticated']:
19
+ st.sidebar.title("Login")
20
+ password_input = st.sidebar.text_input("Enter password:", type="password")
21
+ if st.sidebar.button("Login"):
22
+ if password_input == PASSWORD:
23
+ st.session_state['authenticated'] = True
24
+ st.sidebar.success("Authenticated!")
25
+ else:
26
+ st.sidebar.error("Incorrect password. Please try again.")
27
+ st.stop() # Stop app execution until authenticated
28
 
29
+ st.sidebar.write("Welcome!")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  # ------------------------------
31
  # Load Models
32
  # ------------------------------
 
108
  answer = answer_question(summary_context, question)
109
  st.subheader("Answer")
110
  st.write(answer)
 
111
  else:
112
  st.warning("Please provide both a summary context and a question.")
113
 
 
133
  st.subheader("Data Extraction Placeholder")
134
  st.markdown("Implement NLP techniques or model prompts to extract structured data here.")
135
 
 
136
  uploaded_file = st.file_uploader("Upload a document file for extraction", type=["pdf", "docx", "txt"])
137
  if uploaded_file is not None:
138
  st.info("File uploaded successfully. Data extraction logic would process this file.")
 
149
  )
150
 
151
  # ------------------------------
152
+ # End of Application
153
  # ------------------------------