Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -103,7 +103,7 @@ atexit.register(cleanup_resources)
|
|
103 |
# App title and description
|
104 |
st.title("🔍 AskVeracity")
|
105 |
st.markdown("""
|
106 |
-
This is a simple AI-powered tool - a fact-checking system that analyzes claims to determine
|
107 |
their truthfulness by gathering and analyzing evidence from various sources, such as Wikipedia,
|
108 |
news outlets, and academic repositories.
|
109 |
""")
|
@@ -113,7 +113,8 @@ with st.sidebar:
|
|
113 |
st.header("About")
|
114 |
st.info(
|
115 |
"This system uses a combination of NLP techniques and LLMs to "
|
116 |
-
"extract claims, gather evidence, and classify the truthfulness of statements
|
|
|
117 |
)
|
118 |
|
119 |
# Application information
|
@@ -197,6 +198,9 @@ if 'total_time' not in st.session_state:
|
|
197 |
st.session_state.total_time = 0
|
198 |
if 'fresh_state' not in st.session_state:
|
199 |
st.session_state.fresh_state = True
|
|
|
|
|
|
|
200 |
|
201 |
# Main interface
|
202 |
st.markdown("### Enter a claim to verify")
|
@@ -225,20 +229,15 @@ st.caption("""
|
|
225 |
|
226 |
st.warning("⏱️ **Note:** Processing times may vary from 10 seconds to 2 minutes depending on query complexity, available evidence, and current API response times.")
|
227 |
|
228 |
-
#
|
229 |
-
# Note: Button styling will differ between local environment and Hugging Face Spaces
|
230 |
-
# due to Hugging Face's theme overrides. This is expected behavior.
|
231 |
-
verify_button = st.button(
|
232 |
-
"Verify Claim",
|
233 |
-
type="primary",
|
234 |
-
disabled=st.session_state.processing,
|
235 |
-
key="verify_btn"
|
236 |
-
)
|
237 |
-
|
238 |
-
# Create a clean interface
|
239 |
if st.session_state.fresh_state:
|
240 |
-
#
|
241 |
-
|
|
|
|
|
|
|
|
|
|
|
242 |
|
243 |
# When button is clicked and not already processing
|
244 |
if verify_button and not st.session_state.processing:
|
@@ -506,7 +505,6 @@ else:
|
|
506 |
|
507 |
# Button to start a new verification
|
508 |
if st.button("Verify Another Claim", type="primary", key="new_verify_btn"):
|
509 |
-
# Reset to fresh state for a new verification
|
510 |
st.session_state.fresh_state = True
|
511 |
st.session_state.has_result = False
|
512 |
st.session_state.result = None
|
|
|
103 |
# App title and description
|
104 |
st.title("🔍 AskVeracity")
|
105 |
st.markdown("""
|
106 |
+
This is a simple AI-powered agentic tool - a fact-checking system that analyzes claims to determine
|
107 |
their truthfulness by gathering and analyzing evidence from various sources, such as Wikipedia,
|
108 |
news outlets, and academic repositories.
|
109 |
""")
|
|
|
113 |
st.header("About")
|
114 |
st.info(
|
115 |
"This system uses a combination of NLP techniques and LLMs to "
|
116 |
+
"extract claims, gather evidence, and classify the truthfulness of statements.\n\n"
|
117 |
+
"**Technical:** Built with Python, Streamlit, LangGraph, and OpenAI, leveraging spaCy for NLP and various APIs for retrieving evidence from diverse sources."
|
118 |
)
|
119 |
|
120 |
# Application information
|
|
|
198 |
st.session_state.total_time = 0
|
199 |
if 'fresh_state' not in st.session_state:
|
200 |
st.session_state.fresh_state = True
|
201 |
+
# Initialize verify button disabled state
|
202 |
+
if 'verify_btn_disabled' not in st.session_state:
|
203 |
+
st.session_state.verify_btn_disabled = False
|
204 |
|
205 |
# Main interface
|
206 |
st.markdown("### Enter a claim to verify")
|
|
|
229 |
|
230 |
st.warning("⏱️ **Note:** Processing times may vary from 10 seconds to 2 minutes depending on query complexity, available evidence, and current API response times.")
|
231 |
|
232 |
+
# Create a clean interface based on state
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 |
if st.session_state.fresh_state:
|
234 |
+
# Only show the verify button in fresh state
|
235 |
+
verify_button = st.button(
|
236 |
+
"Verify Claim",
|
237 |
+
type="primary",
|
238 |
+
disabled=st.session_state.processing,
|
239 |
+
key="verify_btn"
|
240 |
+
)
|
241 |
|
242 |
# When button is clicked and not already processing
|
243 |
if verify_button and not st.session_state.processing:
|
|
|
505 |
|
506 |
# Button to start a new verification
|
507 |
if st.button("Verify Another Claim", type="primary", key="new_verify_btn"):
|
|
|
508 |
st.session_state.fresh_state = True
|
509 |
st.session_state.has_result = False
|
510 |
st.session_state.result = None
|