Spaces:
Sleeping
Sleeping
import streamlit as st | |
import logging | |
from services.model_handler import ModelHandler | |
# Configure logging | |
logging.basicConfig( | |
level=logging.INFO, | |
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s' | |
) | |
class AutismResearchApp: | |
def __init__(self): | |
"""Initialize the application components""" | |
self.model_handler = ModelHandler() | |
def _setup_streamlit(self): | |
"""Setup Streamlit UI components""" | |
st.image("https://images.unsplash.com/photo-1642370324000-f204b23aafe0?q=80&w=4072&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D") | |
st.title("🧩 Além do Espectro 🧠✨") | |
st.subheader("Tudo o que você precisa saber além dos rotulos e explorando a riqueza das neurodivergências") | |
st.markdown(""" | |
Pergunte o que quiser e eu vou analisar os últimos artigos científicos e fornecer uma resposta baseada em evidências. | |
""") | |
def run(self): | |
"""Run the main application loop""" | |
self._setup_streamlit() | |
# Initialize session state for papers | |
if 'papers' not in st.session_state: | |
st.session_state.papers = [] | |
# Get user query | |
col1, col2 = st.columns(2, vertical_alignment="bottom", gap="small") | |
query = col1.text_input("O que você precisa saber?") | |
if col2.button("Enviar"): | |
# Show status while processing | |
with st.status("Processando sua Pergunta...") as status: | |
status.write("🔍 Buscando papers de pesquisa relevantes...") | |
status.write("📚 Analisando papers de pesquisa...") | |
status.write("✍️ Gerando resposta...") | |
answer = self.model_handler.generate_answer(query) | |
status.write("✨ Resposta gerada! Exibindo resultados...") | |
st.success("✅ Resposta gerada com base nos artigos de pesquisa encontrados.") | |
st.markdown("### Resposta") | |
st.markdown(answer) | |
def main(): | |
app = AutismResearchApp() | |
app.run() | |
if __name__ == "__main__": | |
main() |