An integrated suite of AI-powered tools designed to enhance productivity by leveraging advanced Large Language Models. The platform provides a unified interface for content generation, data analysis, SQL query creation, document and website summarization, code explanation, and more.
Live Demo: https://llm-tools-suite.streamlit.app/
The LLM Tools Suite includes the following specialized modules within a single Streamlit application:
-
AI Assistant A professional conversational AI assistant offering quick, accurate responses. (Default landing page)
-
Blog AI Assistant Generate high-quality, engaging blog posts using AI based on titles, keywords, and desired lengths.
-
AI CSV Analyzer Upload CSV files and explore your data intelligently with LLM-powered natural language queries.
-
SQL Query Generator Convert natural language descriptions into syntactically correct SQL queries, supporting multiple dialects.
-
Document Summarizer Upload PDF or Word documents and receive concise, accurate summaries with download options.
-
Website Summarizer Provide a URL to summarize webpage content quickly and download the summary.
-
Code Explainer (New) Paste code snippets in popular languages and receive a detailed explanation including:
- The full original code snippet
- A comprehensive overview of the entire snippet
- A line-by-line breakdown explaining syntax, logic, and key components
(Add your screenshot here)
llm-tools-suite/
β
βββ tools/
β βββ blog_assistant.py
β βββ code_explainer.py # New tool for code explanations
β βββ data_analyzer.py
β βββ sql_query_generator.py
β βββ document_summarizer.py
β βββ document_summarizer_utils.py
β βββ website_summarizer.py
β
βββ app.py # Main Streamlit app interface with multi-tab chat & UI improvements
βββ README.md # Project documentation
βββ requirements.txt # Python dependencies
βββ images/ # Screenshot assets
-
Clone the repository
git clone https://github.com/MoustafaMohamed01/llm-tools-suite.git cd llm-tools-suite
-
Install dependencies
pip install -r requirements.txt
-
Set up your API key (Local development)
Create
.streamlit/secrets.toml
in the root folder and add:GEMINI_API_KEY = "your-gemini-api-key"
Alternatively, export the key in your shell environment:
export GEMINI_API_KEY="your-gemini-api-key"
Note: Never commit your API keys to source control.
.streamlit/secrets.toml
and.env
files are included in.gitignore
.
-
Ensure your
requirements.txt
is accurate andGEMINI_API_KEY
is accessed securely via environment variables (os.getenv("GEMINI_API_KEY")
). -
Go to share.streamlit.io, log in, and create a new app linked to this repository.
-
Set the main file path as
app.py
. -
In Advanced settings / Secrets, add:
GEMINI_API_KEY="YOUR_ACTUAL_GEMINI_API_KEY_HERE"
-
Deploy and Streamlit will handle the hosting.
streamlit run app.py
This launches the app, starting on the AI Assistant page. Use the sidebar to navigate between tools.
- Streamlit β UI and web app framework
- LangChain β Managing LLM chains and document processing
- Google Gemini API β Large Language Model backend
- FAISS β Vector similarity search for document/website summarization
- pypdf / python-docx β PDF and Word document parsing
- Requests & Beautiful Soup 4 β Web scraping for website summarization
- Add support for DOC file format (if not covered by
python-docx
) - Enable chat-based interaction for CSV Analyzer for richer conversations
- Add user authentication for secure access
- Enhance summary download options (e.g., export as PDF)
- Add screenshot for Code Explainer tool
Thanks to the open-source communities and teams behind Streamlit, LangChain, and Google AI.
Moustafa Mohamed Aspiring AI Developer specializing in Machine Learning, Deep Learning, and LLM Engineering.
- GitHub: MoustafaMohamed01
- LinkedIn: Moustafa Mohamed
- Kaggle: moustafamohamed01
- Portfolio: moustafamohamed.netlify.app