A powerful Streamlit-based web application that uses open-source AI models to analyze multiple tender documents simultaneously. Built with LangChain, Streamlit, and Hugging Face models for comprehensive procurement document analysis.
- Multiple Document Upload: Upload up to 10 PDF tender documents simultaneously
- Cross-Document Analysis: Analyze and compare requirements across multiple tender documents
- Executive Summary Generation: AI-generated comprehensive summaries covering all uploaded documents
- Compliance Requirements Extraction: Automated extraction of key eligibility and compliance criteria
- Interactive Q&A with Sources: Chat interface with source document references for answers
- Document Statistics: Overview of processed files and text chunks
- Frontend: Streamlit
- AI/ML:
- LLM: OpenAI GPT-OSS-20B (via Hugging Face API)
- Embeddings: sentence-transformers/all-MiniLM-L6-v2
- Vector Store: FAISS (in-memory)
- Document Processing: PyPDF, LangChain
- Backend: Python 3.8+
- Python 3.8 or higher
- Hugging Face API token (free)
-
Clone the repository
git clone https://github.com/RiddheshMore/Tender-Analysis-AI.git cd Tender-Analysis-AI -
Create virtual environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Set up environment variables
# Create .env file in the root directory echo 'HUGGINGFACEHUB_API_TOKEN="your_huggingface_token_here"' > .env
-
Run the application
streamlit run app.py
-
Open your browser to
http://localhost:8501
- Upload Documents: Select up to 10 PDF tender documents using the file uploader
- View Document Overview: Review statistics showing files processed and text chunks created
- Analysis Results: Get comprehensive executive summary and compliance requirements covering all documents
- Interactive Q&A: Ask specific questions about any of the documents (answers include source references)
- "What is the submission deadline?"
- "What are the minimum experience requirements?"
- "What certifications are needed?"
- "What is the project scope?"
- "What are the payment terms?"
Tender-Analysis-AI/
├── app.py # Main Streamlit application
├── requirements.txt # Python dependencies
├── README.md # Project documentation
├── .env # Environment variables (create this)
├── .gitignore # Git ignore rules
└── sample-data/ # Sample tender documents (optional)
Create a .env file in the root directory:
HUGGINGFACEHUB_API_TOKEN="your_huggingface_token_here"- Go to Hugging Face
- Sign up for a free account
- Go to Settings → Access Tokens
- Create a new token with "Read" permissions
- Copy and paste it into your
.envfile
- Government Tenders: Public procurement documents from any country
- Corporate RFPs: Request for Proposals from private companies
- International Tenders: Cross-border procurement documents
- Construction Bids: Infrastructure and construction project tenders
- IT/Software Tenders: Technology procurement documents
- Service Contracts: Professional services tender documents
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the existing Issues
- Create a new issue with detailed information
- Join our discussions in the Discussions tab
- Streamlit for the amazing web framework
- LangChain for the powerful AI orchestration
- Hugging Face for open-source AI models
- FAISS for efficient vector search