π Quick Test Guide - Visual Walkthrough
Watch the Process (10 frames, 20 seconds)
What You Just Saw
Frame-by-Frame Breakdown:
Frame 1: Open Google Cloud Shell
- Free tier, no installation needed
- https://shell.cloud.google.com/
Frame 2: Download test script
curl -O https://huggingface.co/marcosremar2/ensemble-tts-annotation/raw/main/scripts/test/launch_gcp_spot.shFrame 3: Make executable
chmod +x launch_gcp_spot.shFrame 4: Run script - finds cheapest instance
- Scans: e2-micro, e2-small, e2-medium, e2-standard-2
- Selects: e2-medium (~$0.01/hr)
Frame 5: Create spot instance
- Instance: ensemble-test-XXXXXX
- Zone: us-central1-a
- External IP assigned
Frame 6: Install dependencies
- Updates packages
- Installs Python, git
- Clones repository
- Installs torch (CPU), transformers, librosa
Frame 7: Run tests
- Test imports
- Test annotator creation
- Test model structure
Frame 8: Results β
- All tests PASS
- Time: ~8 seconds
- Cost: $0.002
Frame 9: Cleanup
- Delete instance command
- Stop all charges
Frame 10: Summary
- Total cost: $0.002 (less than 1 cent!)
- Total time: ~5 minutes
- System validated β
π Quick Copy-Paste Commands
One-liner (All Steps):
curl -O https://huggingface.co/marcosremar2/ensemble-tts-annotation/raw/main/scripts/test/launch_gcp_spot.sh && chmod +x launch_gcp_spot.sh && ./launch_gcp_spot.sh
Individual Steps:
# Step 1: Download
curl -O https://huggingface.co/marcosremar2/ensemble-tts-annotation/raw/main/scripts/test/launch_gcp_spot.sh
# Step 2: Make executable
chmod +x launch_gcp_spot.sh
# Step 3: Run
./launch_gcp_spot.sh
π° Cost Breakdown
| Item | Cost | Notes |
|---|---|---|
| Cloud Shell | $0 | Free tier |
| e2-medium spot | $0.01/hr | Only while running |
| Network egress | $0 | Minimal data transfer |
| Total | ~$0.002 | For ~12 min test |
Less than 1 penny! πΈ
β±οΈ Time Breakdown
| Step | Time | Description |
|---|---|---|
| Setup | 30s | Download + make executable |
| Instance creation | 1 min | GCP provisions machine |
| Dependency install | 2 min | apt-get + pip install |
| Clone repo | 30s | Git clone from HuggingFace |
| Run test | 10s | Actual test execution |
| Cleanup | 30s | Delete instance |
| Total | ~5 min | Start to finish |
β What Gets Tested
Test 1: Imports
from ensemble_tts import EnsembleAnnotator # β
Test 2: Annotator Creation
annotator = EnsembleAnnotator(
mode='quick',
device='cpu',
enable_events=False
) # β
Test 3: Model Structure
# Validates:
# - 2 models loaded (quick mode)
# - Correct weights: 0.6, 0.4
# - Names: emotion2vec, sensevoice
All tests must PASS β
π Troubleshooting
"Permission denied"
chmod +x launch_gcp_spot.sh
"Project not set"
gcloud config set project YOUR_PROJECT_ID
"Quota exceeded"
Contact GCP support or use different region
Script fails
Check logs:
gcloud compute instances get-serial-port-output INSTANCE_NAME --zone=us-central1-a
π Expected Output
============================================================
TEST SUMMARY
============================================================
imports: β PASS
create_annotator: β PASS
model_structure: β PASS
============================================================
β ALL LOCAL TESTS PASSED!
============================================================
Time: 8.2 seconds
Cost: $0.002
π― Next Steps After Test Passes
Fine-tune models (optional):
python scripts/training/finetune_emotion2vec.pyRun full test (with model loading):
python scripts/test/test_quick.pyAnnotate dataset:
python scripts/ensemble/annotate_ensemble.py \ --input marcosremar2/orpheus-tts-portuguese-dataset \ --mode balanced \ --device cuda
π¬ Want to Create Your Own Demo?
python scripts/demo/create_demo_gif.py
Generates:
demos/gcp_testing_demo.gif- Animated GIFdemos/frames/- Individual frames (PNG)
Customize:
- Edit
create_demo_gif.py - Change colors, text, timing
- Add more frames
π More Resources
- Full Guide: GCP_TESTING_OPTIONS.md
- Testing Docs: TESTING.md
- Main README: README.md
Ready to test? Open Cloud Shell now! π
