Generative AI / Tool-using assistant
Multi-Utility AI Chatbot
A multi-tool GenAI assistant combining PDF RAG, web search, stock lookup, calculator tools, and LangGraph workflows.
- Python
- Streamlit
- LangChain
- LangGraph
- Gemini 2.5 Flash
- FAISS
- HuggingFace Sentence Transformers
- SQLite
- PyPDF
- DuckDuckGo Search
- Alpha Vantage API
Problem
A useful assistant may need to answer questions over documents, search the web, retrieve stock prices, and calculate values within the same conversation.
Approach
The Streamlit UI routes requests through LangGraph and Gemini 2.5 Flash, which can call dedicated RAG, search, stock, and calculator tools while preserving thread-based conversation state.
Architecture
Capabilities
- PDF RAG
- Semantic search
- Document ingestion and chunking
- FAISS similarity search
- Web search
- Stock price lookup
- Calculator
- Multi-turn conversations
- Thread-based chat history
- Persistent conversation checkpoints
- Thread-wise PDF indexing
- Streaming responses
- Tool execution status UI
Overview
A multi-utility assistant that combines document retrieval and external tools in a single LangGraph workflow.
Tools
The assistant exposes four tools: PDF RAG, web search, stock price lookup, and calculator.
Architecture
The Streamlit UI sends requests through LangGraph to Gemini 2.5 Flash, which uses tool calling to select the RAG, search, stock, or calculator path.
Conversation state
SQLite-backed checkpoints provide persistent, thread-based chat history and thread-wise PDF indexing.
Capabilities
The application supports document ingestion, semantic search, streaming responses, and visible tool execution status.