How codecortex/smartpdf works
This is a Streamlit AI PDF reader. Users upload PDFs, process their text into a searchable vector index, ask questions answered through conversational retrieval, and can separately generate summaries and view document statistics. The app also supports model settings and chat-history download. The README contains screenshots but no written capability details; the architecture is based on the sampled app source, so unsampled integrations are omitted.
Main entry points: app.py Streamlit app · htmlTemplates.py Chat templates
Components 13
Streamlit interface
- Streamlit app
app.py - Chat templates
htmlTemplates.py
Document processing
- PDF extraction
app.py - Text chunking
app.py - Embeddings model
- FAISS index
app.py - Document insights
app.py
AI assistance
- Retrieval chain
app.py - Chat memory
app.py - PDF summarizer
app.py - History download
app.py
Other components
- User
- Google Gemini
Connections 16
- User → Streamlit app: uses
- Streamlit app → Chat templates: renders
- Streamlit app → PDF extraction: extracts
- PDF extraction → Text chunking: passes text
- Streamlit app → Text chunking: splits text
- Streamlit app → FAISS index: builds index
- FAISS index → Embeddings model: embeds chunks
- Streamlit app → Document insights: computes stats
- Streamlit app → Retrieval chain: creates and queries
- Retrieval chain → FAISS index: retrieves context
- Retrieval chain → Chat memory: stores turns
- Retrieval chain → Google Gemini: generates answers
- Streamlit app → PDF summarizer: requests summaries
- PDF summarizer → Google Gemini: summarizes text
- Streamlit app → History download: offers download
- History download → User: downloads transcript