Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| import json | |
| from hogragger import Hogragger | |
| # Initialize the Hogragger class with your corpus path | |
| hogragger = Hogragger(corpus_path='corpus.json') # Ensure corpus.json is in the correct path | |
| # Streamlit app title | |
| st.title("Hogragger Query Processor") | |
| # Input text box for the query | |
| query_input = st.text_area("Enter your query:", height=100) | |
| # Button to process the query | |
| if st.button("Process Query"): | |
| if query_input: | |
| st.write(f"Processing query: {query_input}") | |
| # Step 3: Run the query through the pipeline | |
| result = hogragger.process_query(query_input) | |
| # Step 4: Format the result as JSON | |
| result_dict = { | |
| "query": query_input, | |
| "answer": result['answer'], | |
| "question_type": result['question_type'], | |
| "evidence_list": [ | |
| { | |
| "title": ev['title'], | |
| "fact": ev['fact'], | |
| "source": ev['source'], | |
| "url": ev['url'], | |
| "published_at": ev['published_at'], | |
| "category": ev['category'] | |
| } | |
| for ev in result['evidence_list'] # Optional: Limit if needed | |
| ] | |
| } | |
| # Convert the result to pretty JSON format | |
| result_json = json.dumps(result_dict, indent=4) | |
| # Display the JSON result on the web app | |
| st.subheader("Result (JSON format):") | |
| st.code(result_json, language='json') | |
| else: | |
| st.error("Please enter a query.") | |