Project Setup and Verification Guide
This document provides a detailed explanation of how to set up, run, and validate the complete AI
Microservices Platform. It includes prerequisites, installation steps, service verification, testing
procedures, and troubleshooting guidance.
Prerequisites:
- Docker (20.10+)
- Docker Compose (1.29+)
- Git installed
- Machine resources: Minimum 4 CPU cores and 16GB RAM
1. Clone the Project Repository:
Use Git to download the project to your local machine:
git clone
cd ai-microservices-platform
2. Configure Environment Variables:
Copy the example environment configuration file:
cp .[Link] .env
Update the .env file with your Firebase credentials, database configuration, and API authentication
settings.
3. Build and Start All Services:
Build all containers:
docker-compose build
Start the services:
docker-compose up
This launches the CV Service, LLM Service, Post-Processing Service, PostgreSQL, RabbitMQ,
Prometheus, and Grafana.
4. Verify Service Health:
Check Computer Vision Service:
curl [Link]
Check LLM Service:
curl [Link]
Each service should return a "healthy" status.
5. Test the Computer Vision API:
Submit an image for processing:
curl -X POST [Link] -H "Authorization: Bearer " -F "file=@[Link]"
6. Test the LLM API:
Generate text with a prompt:
curl -X POST [Link] -H "Authorization: Bearer " -H "Content-Type:
application/json" -d '{"prompt": "Explain quantum computing"}'
7. View Database History:
Retrieve past requests:
curl [Link] -H "Authorization: Bearer "
8. System Monitoring:
Prometheus dashboard: [Link]
Grafana dashboard: [Link] (default login: admin/admin)
9. Run Automated Tests:
Execute the full test suite:
./run_tests.sh
Or run pytest:
pytest tests/ -v
Expected Outcomes:
- All services return healthy status
- Object detection and text generation work correctly
- Data stored in PostgreSQL and Firebase
- RabbitMQ processes messages
- Monitoring dashboards display system metrics
- All tests pass successfully
Troubleshooting:
- Use docker-compose logs to diagnose issues
- Verify environment variables in .env for authentication issues
- Ensure sufficient system resources