nasa-hackathon1/bio_search_engine_hf
0
๐ Overview
This project was built for the NASA Space Apps Hackathon. It enables researchers and the public to search, select, and explore NASA bioscience papers interactively through a chatbot. Instead of reading dozens of PDFs manually, users can ask natural questions and get answers grounded only in the papers they select.
๐ ๏ธ Workflow
- Search: Use keywords to find relevant papers from the NASA Technical Reports Server (NTRS). The top 15 results with downloadable PDFs are shown.
- Select & Train: Choose the papers you're interested in from the search results and click "Train Chatbot".
- The backend downloads the selected PDFs to the server.
- The text is extracted, processed into chunks, and converted into vector embeddings. This process happens in the background, and you'll see status updates in the chat.
- A private AI model is now ready to answer questions based only on the content of your selected papers.
- Read & Ask: While the bot is training, the UI updates to show you the list of papers you selected. You can click to open and read them. Once training is complete, you can ask the chatbot specific questions (e.g., "What was the effect of microgravity on E. coli?") and get synthesized answers with citations.
โ๏ธ Technology Stack
- Frontend: HTML, CSS, JavaScript
- Backend: Flask (Python)
- AI & Machine Learning:
- Embeddings:
sentence-transformersto convert text into numerical vectors. - Vector Search:
faissfor efficient similarity search. - LLM (API):
llama3-8b-8192via Groq for fast, high-quality generation. - LLM (Fallback):
GPT4Allwith theorca-minimodel for local, offline generation. - Deployment: Docker, Hugging Face Spaces
