# Local Testing Guide Before deploying to Hugging Face Spaces, you may want to test the application locally. This guide provides instructions for local testing. ## Prerequisites - CUDA-capable GPU with at least 8GB VRAM - Python 3.8+ - pip or conda package manager ## Steps for Local Testing 1. **Install Dependencies** ```bash pip install -r image_descriptor_requirements.txt ``` 2. **Run in UI Mode** ```bash python app.py ``` This will start the Gradio UI on http://localhost:7860. You can upload images and test the model. 3. **Run in API-only Mode** ```bash FLASK_APP=image_descriptor.py flask run --host=0.0.0.0 --port=5000 ``` This will start just the Flask API on http://localhost:5000. 4. **Test the Docker Container** ```bash # Build the container docker build -t image-descriptor . # Run the container docker run -p 7860:7860 --gpus all image-descriptor ``` The application will be available at http://localhost:7860. ## Testing the API You can test the API using curl: ```bash # Health check curl http://localhost:5000/health # Process an image curl -X POST -F "image=@data_temp/page_2.png" http://localhost:5000/describe ``` ## Troubleshooting - **GPU Memory Issues**: If you encounter GPU memory errors, try reducing batch sizes or using a smaller model. - **Model Download Issues**: If the model download fails, try downloading it manually from Hugging Face and place it in the `.cache/huggingface/transformers` directory. - **Dependencies**: Make sure you have the correct CUDA version installed for your GPU. ## Next Steps Once you've confirmed the application works locally, you can deploy it to Hugging Face Spaces following the instructions in the main README.md.