Spaces:
Sleeping
Sleeping
Update Gradio app via Colab
Browse files- .config/.last_opt_in_prompt.yaml +1 -0
- .config/.last_survey_prompt.yaml +1 -0
- .config/.last_update_check.json +1 -0
- .config/active_config +1 -0
- .config/config_sentinel +0 -0
- .config/configurations/config_default +6 -0
- .config/default_configs.db +0 -0
- .config/gce +1 -0
- .config/hidden_gcloud_config_universe_descriptor_data_cache_configs.db +0 -0
- .config/logs/2025.12.11/14.33.40.102128.log +765 -0
- .config/logs/2025.12.11/14.34.12.303029.log +5 -0
- .config/logs/2025.12.11/14.34.22.298248.log +153 -0
- .config/logs/2025.12.11/14.34.28.289959.log +5 -0
- .config/logs/2025.12.11/14.34.38.212031.log +8 -0
- .config/logs/2025.12.11/14.34.39.029902.log +8 -0
- .gitattributes +2 -0
- .gradio/certificate.pem +31 -0
- README.md +3 -9
- app.py +564 -0
- requirements.txt +7 -0
- sample_data/README.md +19 -0
- sample_data/anscombe.json +49 -0
- sample_data/california_housing_test.csv +0 -0
- sample_data/california_housing_train.csv +0 -0
- sample_data/mnist_test.csv +3 -0
- sample_data/mnist_train_small.csv +3 -0
.config/.last_opt_in_prompt.yaml
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{}
|
.config/.last_survey_prompt.yaml
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
last_prompt_time: 1765463661.5765684
|
.config/.last_update_check.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"last_update_check_time": 1765463667.7616901, "last_update_check_revision": 20251205141901, "notifications": [], "last_nag_times": {}}
|
.config/active_config
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
default
|
.config/config_sentinel
ADDED
|
File without changes
|
.config/configurations/config_default
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[component_manager]
|
| 2 |
+
disable_update_check = true
|
| 3 |
+
|
| 4 |
+
[compute]
|
| 5 |
+
gce_metadata_read_timeout_sec = 0
|
| 6 |
+
|
.config/default_configs.db
ADDED
|
Binary file (12.3 kB). View file
|
|
|
.config/gce
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
False
|
.config/hidden_gcloud_config_universe_descriptor_data_cache_configs.db
ADDED
|
Binary file (12.3 kB). View file
|
|
|
.config/logs/2025.12.11/14.33.40.102128.log
ADDED
|
@@ -0,0 +1,765 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:33:52,130 DEBUG root Loaded Command Group: ['gcloud', 'components']
|
| 2 |
+
2025-12-11 14:33:52,134 DEBUG root Loaded Command Group: ['gcloud', 'components', 'update']
|
| 3 |
+
2025-12-11 14:33:52,136 DEBUG root Running [gcloud.components.update] with arguments: [--compile-python: "True", --quiet: "True", COMPONENT-IDS:6: "['core', 'gcloud-deps', 'bq', 'gcloud', 'gcloud-crc32c', 'gsutil']"]
|
| 4 |
+
2025-12-11 14:33:52,137 INFO ___FILE_ONLY___ Beginning update. This process may take several minutes.
|
| 5 |
+
|
| 6 |
+
2025-12-11 14:33:52,177 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 7 |
+
2025-12-11 14:33:53,128 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components-2.json HTTP/1.1" 200 24778
|
| 8 |
+
2025-12-11 14:33:53,138 INFO ___FILE_ONLY___
|
| 9 |
+
|
| 10 |
+
2025-12-11 14:33:53,139 INFO ___FILE_ONLY___
|
| 11 |
+
Your current Google Cloud CLI version is: 549.0.0
|
| 12 |
+
|
| 13 |
+
2025-12-11 14:33:53,139 INFO ___FILE_ONLY___ Installing components from version: 549.0.0
|
| 14 |
+
|
| 15 |
+
2025-12-11 14:33:53,139 INFO ___FILE_ONLY___
|
| 16 |
+
|
| 17 |
+
2025-12-11 14:33:53,139 DEBUG root Chosen display Format:table[box,title="These components will be removed."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 18 |
+
2025-12-11 14:33:53,140 DEBUG root Chosen display Format:table[box,title="These components will be updated."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 19 |
+
2025-12-11 14:33:53,140 DEBUG root Chosen display Format:table[box,title="These components will be installed."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 20 |
+
2025-12-11 14:33:53,186 INFO ___FILE_ONLY___ ┌──────────────────────────────────────────────────────────────────────────────┐
|
| 21 |
+
2025-12-11 14:33:53,186 INFO ___FILE_ONLY___
|
| 22 |
+
|
| 23 |
+
2025-12-11 14:33:53,186 INFO ___FILE_ONLY___ │ These components will be installed. │
|
| 24 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___
|
| 25 |
+
|
| 26 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ ├─────────────────────────────────────────────────────┬────────────┬───────────┤
|
| 27 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___
|
| 28 |
+
|
| 29 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ │ Name │ Version │ Size │
|
| 30 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___
|
| 31 |
+
|
| 32 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ ├─────────────────────────────────────────────────────┼────────────┼───────────┤
|
| 33 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___
|
| 34 |
+
|
| 35 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ │
|
| 36 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ BigQuery Command Line Tool
|
| 37 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___
|
| 38 |
+
2025-12-11 14:33:53,187 INFO ___FILE_ONLY___ │
|
| 39 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ 2.1.25
|
| 40 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___
|
| 41 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ │
|
| 42 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ 1.8 MiB
|
| 43 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___
|
| 44 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ │
|
| 45 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___
|
| 46 |
+
|
| 47 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ │
|
| 48 |
+
2025-12-11 14:33:53,188 INFO ___FILE_ONLY___ BigQuery Command Line Tool (Platform Specific)
|
| 49 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___
|
| 50 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___ │
|
| 51 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___ 2.1.25
|
| 52 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___
|
| 53 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___ │
|
| 54 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___ < 1 MiB
|
| 55 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___
|
| 56 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___ │
|
| 57 |
+
2025-12-11 14:33:53,189 INFO ___FILE_ONLY___
|
| 58 |
+
|
| 59 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ │
|
| 60 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ Bundled Python 3.13 (Platform Specific)
|
| 61 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___
|
| 62 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ │
|
| 63 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ 3.13.7
|
| 64 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___
|
| 65 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ │
|
| 66 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ 138.5 MiB
|
| 67 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___
|
| 68 |
+
2025-12-11 14:33:53,190 INFO ___FILE_ONLY___ │
|
| 69 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___
|
| 70 |
+
|
| 71 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ │
|
| 72 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ Cloud Storage Command Line Tool
|
| 73 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___
|
| 74 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ │
|
| 75 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ 5.35
|
| 76 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___
|
| 77 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ │
|
| 78 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___ 12.4 MiB
|
| 79 |
+
2025-12-11 14:33:53,191 INFO ___FILE_ONLY___
|
| 80 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ │
|
| 81 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___
|
| 82 |
+
|
| 83 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ │
|
| 84 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ Cloud Storage Command Line Tool (Platform Specific)
|
| 85 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___
|
| 86 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ │
|
| 87 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ 5.35
|
| 88 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___
|
| 89 |
+
2025-12-11 14:33:53,192 INFO ___FILE_ONLY___ │
|
| 90 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ < 1 MiB
|
| 91 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___
|
| 92 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ │
|
| 93 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___
|
| 94 |
+
|
| 95 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ │
|
| 96 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ Google Cloud CLI Core Libraries (Platform Specific)
|
| 97 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___
|
| 98 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ │
|
| 99 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ 2025.10.31
|
| 100 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___
|
| 101 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ │
|
| 102 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___ < 1 MiB
|
| 103 |
+
2025-12-11 14:33:53,193 INFO ___FILE_ONLY___
|
| 104 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 105 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___
|
| 106 |
+
|
| 107 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 108 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ Google Cloud CRC32C Hash Tool (Platform Specific)
|
| 109 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___
|
| 110 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 111 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ 1.0.0
|
| 112 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___
|
| 113 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 114 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ 1.5 MiB
|
| 115 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___
|
| 116 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 117 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___
|
| 118 |
+
|
| 119 |
+
2025-12-11 14:33:53,194 INFO ___FILE_ONLY___ │
|
| 120 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ gcloud cli dependencies (Platform Specific)
|
| 121 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___
|
| 122 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ │
|
| 123 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ 2021.04.16
|
| 124 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___
|
| 125 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ │
|
| 126 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ < 1 MiB
|
| 127 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___
|
| 128 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ │
|
| 129 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___
|
| 130 |
+
|
| 131 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___ └─────────────────────────────────────────────────────┴────────────┴───────────┘
|
| 132 |
+
2025-12-11 14:33:53,195 INFO ___FILE_ONLY___
|
| 133 |
+
|
| 134 |
+
2025-12-11 14:33:53,196 INFO ___FILE_ONLY___
|
| 135 |
+
|
| 136 |
+
2025-12-11 14:33:53,199 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 137 |
+
2025-12-11 14:33:54,156 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/RELEASE_NOTES HTTP/1.1" 200 342027
|
| 138 |
+
2025-12-11 14:33:54,692 INFO ___FILE_ONLY___ For the latest full release notes, please visit:
|
| 139 |
+
https://cloud.google.com/sdk/release_notes
|
| 140 |
+
|
| 141 |
+
|
| 142 |
+
2025-12-11 14:33:54,693 INFO ___FILE_ONLY___ Performing in place update...
|
| 143 |
+
|
| 144 |
+
|
| 145 |
+
2025-12-11 14:33:54,695 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 146 |
+
|
| 147 |
+
2025-12-11 14:33:54,695 INFO ___FILE_ONLY___ ╠═ Downloading: BigQuery Command Line Tool ═╣
|
| 148 |
+
|
| 149 |
+
2025-12-11 14:33:54,695 INFO ___FILE_ONLY___ ╚
|
| 150 |
+
2025-12-11 14:33:54,698 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 151 |
+
2025-12-11 14:33:55,694 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-bq-20251024121634.tar.gz HTTP/1.1" 200 1911793
|
| 152 |
+
2025-12-11 14:33:55,706 INFO ___FILE_ONLY___ ═
|
| 153 |
+
2025-12-11 14:33:55,706 INFO ___FILE_ONLY___ ═
|
| 154 |
+
2025-12-11 14:33:55,707 INFO ___FILE_ONLY___ ═
|
| 155 |
+
2025-12-11 14:33:55,707 INFO ___FILE_ONLY___ ═
|
| 156 |
+
2025-12-11 14:33:55,707 INFO ___FILE_ONLY___ ═
|
| 157 |
+
2025-12-11 14:33:55,707 INFO ___FILE_ONLY___ ═
|
| 158 |
+
2025-12-11 14:33:55,707 INFO ___FILE_ONLY___ ═
|
| 159 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 160 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 161 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 162 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 163 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 164 |
+
2025-12-11 14:33:55,708 INFO ___FILE_ONLY___ ═
|
| 165 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 166 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 167 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 168 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 169 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 170 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 171 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 172 |
+
2025-12-11 14:33:55,709 INFO ___FILE_ONLY___ ═
|
| 173 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 174 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 175 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 176 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 177 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 178 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 179 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 180 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 181 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 182 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 183 |
+
2025-12-11 14:33:55,710 INFO ___FILE_ONLY___ ═
|
| 184 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 185 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 186 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 187 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 188 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 189 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 190 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 191 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 192 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 193 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 194 |
+
2025-12-11 14:33:55,711 INFO ___FILE_ONLY___ ═
|
| 195 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 196 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 197 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 198 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 199 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 200 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 201 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 202 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 203 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 204 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 205 |
+
2025-12-11 14:33:55,712 INFO ___FILE_ONLY___ ═
|
| 206 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 207 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 208 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 209 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 210 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 211 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ═
|
| 212 |
+
2025-12-11 14:33:55,713 INFO ___FILE_ONLY___ ╝
|
| 213 |
+
|
| 214 |
+
2025-12-11 14:33:55,715 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 215 |
+
|
| 216 |
+
2025-12-11 14:33:55,716 INFO ___FILE_ONLY___ ╠═ Downloading: BigQuery Command Line Tool (Platform Spe... ═╣
|
| 217 |
+
|
| 218 |
+
2025-12-11 14:33:55,716 INFO ___FILE_ONLY___ ╚
|
| 219 |
+
2025-12-11 14:33:55,719 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 220 |
+
2025-12-11 14:33:56,672 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-bq-nix-20251031202127.tar.gz HTTP/1.1" 200 1932
|
| 221 |
+
2025-12-11 14:33:56,672 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 222 |
+
2025-12-11 14:33:56,672 INFO ___FILE_ONLY___ ╝
|
| 223 |
+
|
| 224 |
+
2025-12-11 14:33:56,674 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 225 |
+
|
| 226 |
+
2025-12-11 14:33:56,674 INFO ___FILE_ONLY___ ╠═ Downloading: Bundled Python 3.13 ═╣
|
| 227 |
+
|
| 228 |
+
2025-12-11 14:33:56,675 INFO ___FILE_ONLY___ ╚
|
| 229 |
+
2025-12-11 14:33:56,675 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 230 |
+
2025-12-11 14:33:56,675 INFO ___FILE_ONLY___ ╝
|
| 231 |
+
|
| 232 |
+
2025-12-11 14:33:56,676 INFO ___FILE_ONLY___ ╔════════════════════════════════════���═══════════════════════╗
|
| 233 |
+
|
| 234 |
+
2025-12-11 14:33:56,676 INFO ___FILE_ONLY___ ╠═ Downloading: Bundled Python 3.13 (Platform Specific) ═╣
|
| 235 |
+
|
| 236 |
+
2025-12-11 14:33:56,677 INFO ___FILE_ONLY___ ╚
|
| 237 |
+
2025-12-11 14:33:56,679 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 238 |
+
2025-12-11 14:33:57,634 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-bundled-python3-unix-linux-x86_64-20251205141901.tar.gz HTTP/1.1" 200 145280047
|
| 239 |
+
2025-12-11 14:33:58,130 INFO ___FILE_ONLY___ ═
|
| 240 |
+
2025-12-11 14:33:58,133 INFO ___FILE_ONLY___ ═
|
| 241 |
+
2025-12-11 14:33:58,135 INFO ___FILE_ONLY___ ═
|
| 242 |
+
2025-12-11 14:33:58,138 INFO ___FILE_ONLY___ ═
|
| 243 |
+
2025-12-11 14:33:58,141 INFO ___FILE_ONLY___ ═
|
| 244 |
+
2025-12-11 14:33:58,143 INFO ___FILE_ONLY___ ═
|
| 245 |
+
2025-12-11 14:33:58,146 INFO ___FILE_ONLY___ ═
|
| 246 |
+
2025-12-11 14:33:58,149 INFO ___FILE_ONLY___ ═
|
| 247 |
+
2025-12-11 14:33:58,151 INFO ___FILE_ONLY___ ═
|
| 248 |
+
2025-12-11 14:33:58,154 INFO ___FILE_ONLY___ ═
|
| 249 |
+
2025-12-11 14:33:58,156 INFO ___FILE_ONLY___ ═
|
| 250 |
+
2025-12-11 14:33:58,159 INFO ___FILE_ONLY___ ═
|
| 251 |
+
2025-12-11 14:33:58,161 INFO ___FILE_ONLY___ ═
|
| 252 |
+
2025-12-11 14:33:58,164 INFO ___FILE_ONLY___ ═
|
| 253 |
+
2025-12-11 14:33:58,167 INFO ___FILE_ONLY___ ═
|
| 254 |
+
2025-12-11 14:33:58,169 INFO ___FILE_ONLY___ ═
|
| 255 |
+
2025-12-11 14:33:58,172 INFO ___FILE_ONLY___ ═
|
| 256 |
+
2025-12-11 14:33:58,174 INFO ___FILE_ONLY___ ═
|
| 257 |
+
2025-12-11 14:33:58,177 INFO ___FILE_ONLY___ ═
|
| 258 |
+
2025-12-11 14:33:58,179 INFO ___FILE_ONLY___ ═
|
| 259 |
+
2025-12-11 14:33:58,182 INFO ___FILE_ONLY___ ═
|
| 260 |
+
2025-12-11 14:33:58,185 INFO ___FILE_ONLY___ ═
|
| 261 |
+
2025-12-11 14:33:58,187 INFO ___FILE_ONLY___ ═
|
| 262 |
+
2025-12-11 14:33:58,190 INFO ___FILE_ONLY___ ═
|
| 263 |
+
2025-12-11 14:33:58,192 INFO ___FILE_ONLY___ ═
|
| 264 |
+
2025-12-11 14:33:58,195 INFO ___FILE_ONLY___ ═
|
| 265 |
+
2025-12-11 14:33:58,197 INFO ___FILE_ONLY___ ═
|
| 266 |
+
2025-12-11 14:33:58,200 INFO ___FILE_ONLY___ ═
|
| 267 |
+
2025-12-11 14:33:58,203 INFO ___FILE_ONLY___ ═
|
| 268 |
+
2025-12-11 14:33:58,205 INFO ___FILE_ONLY___ ═
|
| 269 |
+
2025-12-11 14:33:58,208 INFO ___FILE_ONLY___ ═
|
| 270 |
+
2025-12-11 14:33:58,210 INFO ___FILE_ONLY___ ═
|
| 271 |
+
2025-12-11 14:33:58,213 INFO ___FILE_ONLY___ ═
|
| 272 |
+
2025-12-11 14:33:58,216 INFO ___FILE_ONLY___ ═
|
| 273 |
+
2025-12-11 14:33:58,218 INFO ___FILE_ONLY___ ═
|
| 274 |
+
2025-12-11 14:33:58,221 INFO ___FILE_ONLY___ ═
|
| 275 |
+
2025-12-11 14:33:58,223 INFO ___FILE_ONLY___ ═
|
| 276 |
+
2025-12-11 14:33:58,226 INFO ___FILE_ONLY___ ═
|
| 277 |
+
2025-12-11 14:33:58,228 INFO ___FILE_ONLY___ ═
|
| 278 |
+
2025-12-11 14:33:58,231 INFO ___FILE_ONLY___ ═
|
| 279 |
+
2025-12-11 14:33:58,233 INFO ___FILE_ONLY___ ═
|
| 280 |
+
2025-12-11 14:33:58,235 INFO ___FILE_ONLY___ ═
|
| 281 |
+
2025-12-11 14:33:58,238 INFO ___FILE_ONLY___ ═
|
| 282 |
+
2025-12-11 14:33:58,240 INFO ___FILE_ONLY___ ═
|
| 283 |
+
2025-12-11 14:33:58,243 INFO ___FILE_ONLY___ ═
|
| 284 |
+
2025-12-11 14:33:58,245 INFO ___FILE_ONLY___ ═
|
| 285 |
+
2025-12-11 14:33:58,248 INFO ___FILE_ONLY___ ═
|
| 286 |
+
2025-12-11 14:33:58,250 INFO ___FILE_ONLY___ ═
|
| 287 |
+
2025-12-11 14:33:58,253 INFO ___FILE_ONLY___ ═
|
| 288 |
+
2025-12-11 14:33:58,255 INFO ___FILE_ONLY___ ═
|
| 289 |
+
2025-12-11 14:33:58,258 INFO ___FILE_ONLY___ ═
|
| 290 |
+
2025-12-11 14:33:58,260 INFO ___FILE_ONLY___ ═
|
| 291 |
+
2025-12-11 14:33:58,262 INFO ___FILE_ONLY___ ═
|
| 292 |
+
2025-12-11 14:33:58,265 INFO ___FILE_ONLY___ ═
|
| 293 |
+
2025-12-11 14:33:58,267 INFO ___FILE_ONLY___ ═
|
| 294 |
+
2025-12-11 14:33:58,270 INFO ___FILE_ONLY___ ═
|
| 295 |
+
2025-12-11 14:33:58,272 INFO ___FILE_ONLY___ ═
|
| 296 |
+
2025-12-11 14:33:58,275 INFO ___FILE_ONLY___ ═
|
| 297 |
+
2025-12-11 14:33:58,277 INFO ___FILE_ONLY___ ═
|
| 298 |
+
2025-12-11 14:33:58,280 INFO ___FILE_ONLY___ ═
|
| 299 |
+
2025-12-11 14:33:58,280 INFO ___FILE_ONLY___ ╝
|
| 300 |
+
|
| 301 |
+
2025-12-11 14:33:58,282 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 302 |
+
|
| 303 |
+
2025-12-11 14:33:58,282 INFO ___FILE_ONLY___ ╠═ Downloading: Cloud Storage Command Line Tool ═╣
|
| 304 |
+
|
| 305 |
+
2025-12-11 14:33:58,283 INFO ___FILE_ONLY___ ╚
|
| 306 |
+
2025-12-11 14:33:58,285 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 307 |
+
2025-12-11 14:33:59,220 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-gsutil-20250627154417.tar.gz HTTP/1.1" 200 12962791
|
| 308 |
+
2025-12-11 14:33:59,279 INFO ___FILE_ONLY___ ═
|
| 309 |
+
2025-12-11 14:33:59,280 INFO ___FILE_ONLY___ ═
|
| 310 |
+
2025-12-11 14:33:59,280 INFO ___FILE_ONLY___ ═
|
| 311 |
+
2025-12-11 14:33:59,280 INFO ___FILE_ONLY___ ═
|
| 312 |
+
2025-12-11 14:33:59,281 INFO ___FILE_ONLY___ ═
|
| 313 |
+
2025-12-11 14:33:59,281 INFO ___FILE_ONLY___ ═
|
| 314 |
+
2025-12-11 14:33:59,282 INFO ___FILE_ONLY___ ═
|
| 315 |
+
2025-12-11 14:33:59,282 INFO ___FILE_ONLY___ ═
|
| 316 |
+
2025-12-11 14:33:59,282 INFO ___FILE_ONLY___ ═
|
| 317 |
+
2025-12-11 14:33:59,283 INFO ___FILE_ONLY___ ═
|
| 318 |
+
2025-12-11 14:33:59,283 INFO ___FILE_ONLY___ ═
|
| 319 |
+
2025-12-11 14:33:59,283 INFO ___FILE_ONLY___ ═
|
| 320 |
+
2025-12-11 14:33:59,284 INFO ___FILE_ONLY___ ═
|
| 321 |
+
2025-12-11 14:33:59,284 INFO ___FILE_ONLY___ ═
|
| 322 |
+
2025-12-11 14:33:59,284 INFO ___FILE_ONLY___ ═
|
| 323 |
+
2025-12-11 14:33:59,285 INFO ___FILE_ONLY___ ═
|
| 324 |
+
2025-12-11 14:33:59,285 INFO ___FILE_ONLY___ ═
|
| 325 |
+
2025-12-11 14:33:59,285 INFO ___FILE_ONLY___ ═
|
| 326 |
+
2025-12-11 14:33:59,286 INFO ___FILE_ONLY___ ═
|
| 327 |
+
2025-12-11 14:33:59,286 INFO ___FILE_ONLY___ ═
|
| 328 |
+
2025-12-11 14:33:59,286 INFO ___FILE_ONLY___ ═
|
| 329 |
+
2025-12-11 14:33:59,287 INFO ___FILE_ONLY___ ═
|
| 330 |
+
2025-12-11 14:33:59,287 INFO ___FILE_ONLY___ ═
|
| 331 |
+
2025-12-11 14:33:59,287 INFO ___FILE_ONLY___ ═
|
| 332 |
+
2025-12-11 14:33:59,288 INFO ___FILE_ONLY___ ═
|
| 333 |
+
2025-12-11 14:33:59,288 INFO ___FILE_ONLY___ ═
|
| 334 |
+
2025-12-11 14:33:59,288 INFO ___FILE_ONLY___ ═
|
| 335 |
+
2025-12-11 14:33:59,289 INFO ___FILE_ONLY___ ═
|
| 336 |
+
2025-12-11 14:33:59,289 INFO ___FILE_ONLY___ ═
|
| 337 |
+
2025-12-11 14:33:59,289 INFO ___FILE_ONLY___ ═
|
| 338 |
+
2025-12-11 14:33:59,290 INFO ___FILE_ONLY___ ═
|
| 339 |
+
2025-12-11 14:33:59,290 INFO ___FILE_ONLY___ ═
|
| 340 |
+
2025-12-11 14:33:59,290 INFO ___FILE_ONLY___ ═
|
| 341 |
+
2025-12-11 14:33:59,291 INFO ___FILE_ONLY___ ═
|
| 342 |
+
2025-12-11 14:33:59,291 INFO ___FILE_ONLY___ ═
|
| 343 |
+
2025-12-11 14:33:59,291 INFO ___FILE_ONLY___ ═
|
| 344 |
+
2025-12-11 14:33:59,292 INFO ___FILE_ONLY___ ═
|
| 345 |
+
2025-12-11 14:33:59,292 INFO ___FILE_ONLY___ ═
|
| 346 |
+
2025-12-11 14:33:59,292 INFO ___FILE_ONLY___ ═
|
| 347 |
+
2025-12-11 14:33:59,293 INFO ___FILE_ONLY___ ═
|
| 348 |
+
2025-12-11 14:33:59,293 INFO ___FILE_ONLY___ ═
|
| 349 |
+
2025-12-11 14:33:59,293 INFO ___FILE_ONLY___ ═
|
| 350 |
+
2025-12-11 14:33:59,293 INFO ___FILE_ONLY___ ═
|
| 351 |
+
2025-12-11 14:33:59,294 INFO ___FILE_ONLY___ ═
|
| 352 |
+
2025-12-11 14:33:59,294 INFO ___FILE_ONLY___ ═
|
| 353 |
+
2025-12-11 14:33:59,294 INFO ___FILE_ONLY___ ═
|
| 354 |
+
2025-12-11 14:33:59,295 INFO ___FILE_ONLY___ ═
|
| 355 |
+
2025-12-11 14:33:59,295 INFO ___FILE_ONLY___ ═
|
| 356 |
+
2025-12-11 14:33:59,295 INFO ___FILE_ONLY___ ═
|
| 357 |
+
2025-12-11 14:33:59,296 INFO ___FILE_ONLY___ ═
|
| 358 |
+
2025-12-11 14:33:59,296 INFO ___FILE_ONLY___ ═
|
| 359 |
+
2025-12-11 14:33:59,296 INFO ___FILE_ONLY___ ═
|
| 360 |
+
2025-12-11 14:33:59,297 INFO ___FILE_ONLY___ ═
|
| 361 |
+
2025-12-11 14:33:59,297 INFO ___FILE_ONLY___ ═
|
| 362 |
+
2025-12-11 14:33:59,297 INFO ___FILE_ONLY___ ═
|
| 363 |
+
2025-12-11 14:33:59,297 INFO ___FILE_ONLY___ ═
|
| 364 |
+
2025-12-11 14:33:59,298 INFO ___FILE_ONLY___ ═
|
| 365 |
+
2025-12-11 14:33:59,298 INFO ___FILE_ONLY___ ═
|
| 366 |
+
2025-12-11 14:33:59,298 INFO ___FILE_ONLY___ ═
|
| 367 |
+
2025-12-11 14:33:59,299 INFO ___FILE_ONLY___ ═
|
| 368 |
+
2025-12-11 14:33:59,299 INFO ___FILE_ONLY___ ╝
|
| 369 |
+
|
| 370 |
+
2025-12-11 14:33:59,301 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 371 |
+
|
| 372 |
+
2025-12-11 14:33:59,301 INFO ___FILE_ONLY___ ╠═ Downloading: Cloud Storage Command Line Tool (Platfor... ═╣
|
| 373 |
+
|
| 374 |
+
2025-12-11 14:33:59,301 INFO ___FILE_ONLY___ ╚
|
| 375 |
+
2025-12-11 14:33:59,304 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 376 |
+
2025-12-11 14:34:00,265 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-gsutil-nix-20251031202127.tar.gz HTTP/1.1" 200 1949
|
| 377 |
+
2025-12-11 14:34:00,265 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 378 |
+
2025-12-11 14:34:00,266 INFO ___FILE_ONLY___ ╝
|
| 379 |
+
|
| 380 |
+
2025-12-11 14:34:00,267 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 381 |
+
|
| 382 |
+
2025-12-11 14:34:00,268 INFO ___FILE_ONLY___ ╠═ Downloading: Default set of gcloud commands ═╣
|
| 383 |
+
|
| 384 |
+
2025-12-11 14:34:00,268 INFO ___FILE_ONLY___ ╚
|
| 385 |
+
2025-12-11 14:34:00,268 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 386 |
+
2025-12-11 14:34:00,268 INFO ___FILE_ONLY___ ╝
|
| 387 |
+
|
| 388 |
+
2025-12-11 14:34:00,270 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 389 |
+
|
| 390 |
+
2025-12-11 14:34:00,270 INFO ___FILE_ONLY___ ╠═ Downloading: Google Cloud CLI Core Libraries (Platfor... ═╣
|
| 391 |
+
|
| 392 |
+
2025-12-11 14:34:00,270 INFO ___FILE_ONLY___ ╚
|
| 393 |
+
2025-12-11 14:34:00,272 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 394 |
+
2025-12-11 14:34:01,212 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-core-nix-20251031202127.tar.gz HTTP/1.1" 200 2326
|
| 395 |
+
2025-12-11 14:34:01,213 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 396 |
+
2025-12-11 14:34:01,213 INFO ___FILE_ONLY___ ╝
|
| 397 |
+
|
| 398 |
+
2025-12-11 14:34:01,215 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 399 |
+
|
| 400 |
+
2025-12-11 14:34:01,215 INFO ___FILE_ONLY___ ╠═ Downloading: Google Cloud CRC32C Hash Tool ═╣
|
| 401 |
+
|
| 402 |
+
2025-12-11 14:34:01,215 INFO ___FILE_ONLY___ ╚
|
| 403 |
+
2025-12-11 14:34:01,215 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 404 |
+
2025-12-11 14:34:01,215 INFO ___FILE_ONLY___ ╝
|
| 405 |
+
|
| 406 |
+
2025-12-11 14:34:01,217 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 407 |
+
|
| 408 |
+
2025-12-11 14:34:01,217 INFO ___FILE_ONLY___ ╠═ Downloading: Google Cloud CRC32C Hash Tool (Platform ... ═╣
|
| 409 |
+
|
| 410 |
+
2025-12-11 14:34:01,217 INFO ___FILE_ONLY___ ╚
|
| 411 |
+
2025-12-11 14:34:01,220 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 412 |
+
2025-12-11 14:34:02,185 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-gcloud-crc32c-linux-x86_64-20251031202127.tar.gz HTTP/1.1" 200 1531280
|
| 413 |
+
2025-12-11 14:34:02,196 INFO ___FILE_ONLY___ ═
|
| 414 |
+
2025-12-11 14:34:02,196 INFO ___FILE_ONLY___ ═
|
| 415 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 416 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 417 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 418 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 419 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 420 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 421 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 422 |
+
2025-12-11 14:34:02,197 INFO ___FILE_ONLY___ ═
|
| 423 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 424 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 425 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 426 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 427 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 428 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 429 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 430 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 431 |
+
2025-12-11 14:34:02,198 INFO ___FILE_ONLY___ ═
|
| 432 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 433 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 434 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 435 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 436 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 437 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 438 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 439 |
+
2025-12-11 14:34:02,199 INFO ___FILE_ONLY___ ═
|
| 440 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 441 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 442 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 443 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 444 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 445 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 446 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 447 |
+
2025-12-11 14:34:02,200 INFO ___FILE_ONLY___ ═
|
| 448 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 449 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 450 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 451 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 452 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 453 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 454 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 455 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 456 |
+
2025-12-11 14:34:02,201 INFO ___FILE_ONLY___ ═
|
| 457 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 458 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 459 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 460 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 461 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 462 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 463 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 464 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 465 |
+
2025-12-11 14:34:02,202 INFO ___FILE_ONLY___ ═
|
| 466 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 467 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 468 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 469 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 470 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 471 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 472 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ═
|
| 473 |
+
2025-12-11 14:34:02,203 INFO ___FILE_ONLY___ ╝
|
| 474 |
+
|
| 475 |
+
2025-12-11 14:34:02,205 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 476 |
+
|
| 477 |
+
2025-12-11 14:34:02,205 INFO ___FILE_ONLY___ ╠═ Downloading: gcloud cli dependencies (Platform Specific) ═╣
|
| 478 |
+
|
| 479 |
+
2025-12-11 14:34:02,205 INFO ___FILE_ONLY___ ╚
|
| 480 |
+
2025-12-11 14:34:02,208 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 481 |
+
2025-12-11 14:34:03,144 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-gcloud-deps-linux-x86_64-20210416153011.tar.gz HTTP/1.1" 200 104
|
| 482 |
+
2025-12-11 14:34:03,145 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 483 |
+
2025-12-11 14:34:03,145 INFO ___FILE_ONLY___ ╝
|
| 484 |
+
|
| 485 |
+
2025-12-11 14:34:03,147 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 486 |
+
|
| 487 |
+
2025-12-11 14:34:03,147 INFO ___FILE_ONLY___ ╠═ Installing: BigQuery Command Line Tool ═╣
|
| 488 |
+
|
| 489 |
+
2025-12-11 14:34:03,147 INFO ___FILE_ONLY___ ╚
|
| 490 |
+
2025-12-11 14:34:03,248 INFO ___FILE_ONLY___ ═
|
| 491 |
+
2025-12-11 14:34:03,250 INFO ___FILE_ONLY___ ═
|
| 492 |
+
2025-12-11 14:34:03,253 INFO ___FILE_ONLY___ ═
|
| 493 |
+
2025-12-11 14:34:03,255 INFO ___FILE_ONLY___ ═
|
| 494 |
+
2025-12-11 14:34:03,258 INFO ___FILE_ONLY___ ═
|
| 495 |
+
2025-12-11 14:34:03,261 INFO ___FILE_ONLY___ ═
|
| 496 |
+
2025-12-11 14:34:03,262 INFO ___FILE_ONLY___ ═
|
| 497 |
+
2025-12-11 14:34:03,265 INFO ___FILE_ONLY___ ═
|
| 498 |
+
2025-12-11 14:34:03,267 INFO ___FILE_ONLY___ ═
|
| 499 |
+
2025-12-11 14:34:03,269 INFO ___FILE_ONLY___ ═
|
| 500 |
+
2025-12-11 14:34:03,271 INFO ___FILE_ONLY___ ═
|
| 501 |
+
2025-12-11 14:34:03,273 INFO ___FILE_ONLY___ ═
|
| 502 |
+
2025-12-11 14:34:03,276 INFO ___FILE_ONLY___ ═
|
| 503 |
+
2025-12-11 14:34:03,278 INFO ___FILE_ONLY___ ═
|
| 504 |
+
2025-12-11 14:34:03,280 INFO ___FILE_ONLY___ ═
|
| 505 |
+
2025-12-11 14:34:03,282 INFO ___FILE_ONLY___ ═
|
| 506 |
+
2025-12-11 14:34:03,285 INFO ___FILE_ONLY___ ═
|
| 507 |
+
2025-12-11 14:34:03,288 INFO ___FILE_ONLY___ ═
|
| 508 |
+
2025-12-11 14:34:03,290 INFO ___FILE_ONLY___ ═
|
| 509 |
+
2025-12-11 14:34:03,292 INFO ___FILE_ONLY___ ═
|
| 510 |
+
2025-12-11 14:34:03,294 INFO ___FILE_ONLY___ ═
|
| 511 |
+
2025-12-11 14:34:03,296 INFO ___FILE_ONLY___ ═
|
| 512 |
+
2025-12-11 14:34:03,298 INFO ___FILE_ONLY___ ═
|
| 513 |
+
2025-12-11 14:34:03,301 INFO ___FILE_ONLY___ ═
|
| 514 |
+
2025-12-11 14:34:03,303 INFO ___FILE_ONLY___ ═
|
| 515 |
+
2025-12-11 14:34:03,305 INFO ___FILE_ONLY___ ═
|
| 516 |
+
2025-12-11 14:34:03,307 INFO ___FILE_ONLY___ ═
|
| 517 |
+
2025-12-11 14:34:03,309 INFO ___FILE_ONLY___ ═
|
| 518 |
+
2025-12-11 14:34:03,310 INFO ___FILE_ONLY___ ═
|
| 519 |
+
2025-12-11 14:34:03,312 INFO ___FILE_ONLY___ ═
|
| 520 |
+
2025-12-11 14:34:03,314 INFO ___FILE_ONLY___ ═
|
| 521 |
+
2025-12-11 14:34:03,315 INFO ___FILE_ONLY___ ═
|
| 522 |
+
2025-12-11 14:34:03,317 INFO ___FILE_ONLY___ ═
|
| 523 |
+
2025-12-11 14:34:03,320 INFO ___FILE_ONLY___ ═
|
| 524 |
+
2025-12-11 14:34:03,322 INFO ___FILE_ONLY___ ═
|
| 525 |
+
2025-12-11 14:34:03,325 INFO ___FILE_ONLY___ ═
|
| 526 |
+
2025-12-11 14:34:03,327 INFO ___FILE_ONLY___ ═
|
| 527 |
+
2025-12-11 14:34:03,330 INFO ___FILE_ONLY___ ═
|
| 528 |
+
2025-12-11 14:34:03,341 INFO ___FILE_ONLY___ ═
|
| 529 |
+
2025-12-11 14:34:03,345 INFO ___FILE_ONLY___ ═
|
| 530 |
+
2025-12-11 14:34:03,347 INFO ___FILE_ONLY___ ═
|
| 531 |
+
2025-12-11 14:34:03,349 INFO ___FILE_ONLY___ ═
|
| 532 |
+
2025-12-11 14:34:03,352 INFO ___FILE_ONLY___ ═
|
| 533 |
+
2025-12-11 14:34:03,354 INFO ___FILE_ONLY___ ═
|
| 534 |
+
2025-12-11 14:34:03,357 INFO ___FILE_ONLY___ ═
|
| 535 |
+
2025-12-11 14:34:03,361 INFO ___FILE_ONLY___ ═
|
| 536 |
+
2025-12-11 14:34:03,364 INFO ___FILE_ONLY___ ═
|
| 537 |
+
2025-12-11 14:34:03,366 INFO ___FILE_ONLY___ ═
|
| 538 |
+
2025-12-11 14:34:03,368 INFO ___FILE_ONLY___ ═
|
| 539 |
+
2025-12-11 14:34:03,370 INFO ___FILE_ONLY___ ═
|
| 540 |
+
2025-12-11 14:34:03,372 INFO ___FILE_ONLY___ ═
|
| 541 |
+
2025-12-11 14:34:03,375 INFO ___FILE_ONLY___ ═
|
| 542 |
+
2025-12-11 14:34:03,378 INFO ___FILE_ONLY___ ═
|
| 543 |
+
2025-12-11 14:34:03,380 INFO ___FILE_ONLY___ ═
|
| 544 |
+
2025-12-11 14:34:03,382 INFO ___FILE_ONLY___ ═
|
| 545 |
+
2025-12-11 14:34:03,385 INFO ___FILE_ONLY___ ═
|
| 546 |
+
2025-12-11 14:34:03,387 INFO ___FILE_ONLY___ ═
|
| 547 |
+
2025-12-11 14:34:03,389 INFO ___FILE_ONLY___ ═
|
| 548 |
+
2025-12-11 14:34:03,391 INFO ___FILE_ONLY___ ═
|
| 549 |
+
2025-12-11 14:34:03,393 INFO ___FILE_ONLY___ ═
|
| 550 |
+
2025-12-11 14:34:03,393 INFO ___FILE_ONLY___ ╝
|
| 551 |
+
|
| 552 |
+
2025-12-11 14:34:03,401 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 553 |
+
|
| 554 |
+
2025-12-11 14:34:03,401 INFO ___FILE_ONLY___ ╠═ Installing: BigQuery Command Line Tool (Platform Spec... ═╣
|
| 555 |
+
|
| 556 |
+
2025-12-11 14:34:03,401 INFO ___FILE_ONLY___ ╚
|
| 557 |
+
2025-12-11 14:34:03,402 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 558 |
+
2025-12-11 14:34:03,402 INFO ___FILE_ONLY___ ╝
|
| 559 |
+
|
| 560 |
+
2025-12-11 14:34:03,407 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 561 |
+
|
| 562 |
+
2025-12-11 14:34:03,407 INFO ___FILE_ONLY___ ╠═ Installing: Bundled Python 3.13 ═╣
|
| 563 |
+
|
| 564 |
+
2025-12-11 14:34:03,407 INFO ___FILE_ONLY___ ╚
|
| 565 |
+
2025-12-11 14:34:03,410 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 566 |
+
2025-12-11 14:34:03,411 INFO ___FILE_ONLY___ ╝
|
| 567 |
+
|
| 568 |
+
2025-12-11 14:34:03,412 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 569 |
+
|
| 570 |
+
2025-12-11 14:34:03,412 INFO ___FILE_ONLY___ ╠═ Installing: Bundled Python 3.13 (Platform Specific) ═╣
|
| 571 |
+
|
| 572 |
+
2025-12-11 14:34:03,412 INFO ___FILE_ONLY___ ╚
|
| 573 |
+
2025-12-11 14:34:06,495 INFO ___FILE_ONLY___ ═
|
| 574 |
+
2025-12-11 14:34:06,510 INFO ___FILE_ONLY___ ═
|
| 575 |
+
2025-12-11 14:34:06,524 INFO ___FILE_ONLY___ ═
|
| 576 |
+
2025-12-11 14:34:08,831 INFO ___FILE_ONLY___ ═
|
| 577 |
+
2025-12-11 14:34:08,855 INFO ___FILE_ONLY___ ═
|
| 578 |
+
2025-12-11 14:34:08,882 INFO ___FILE_ONLY___ ═
|
| 579 |
+
2025-12-11 14:34:08,900 INFO ___FILE_ONLY___ ═
|
| 580 |
+
2025-12-11 14:34:08,930 INFO ___FILE_ONLY___ ═
|
| 581 |
+
2025-12-11 14:34:08,945 INFO ___FILE_ONLY___ ═
|
| 582 |
+
2025-12-11 14:34:09,040 INFO ___FILE_ONLY___ ═
|
| 583 |
+
2025-12-11 14:34:09,057 INFO ___FILE_ONLY___ ═
|
| 584 |
+
2025-12-11 14:34:09,073 INFO ___FILE_ONLY___ ═
|
| 585 |
+
2025-12-11 14:34:09,102 INFO ___FILE_ONLY___ ═
|
| 586 |
+
2025-12-11 14:34:09,117 INFO ___FILE_ONLY___ ═
|
| 587 |
+
2025-12-11 14:34:09,133 INFO ___FILE_ONLY___ ═
|
| 588 |
+
2025-12-11 14:34:09,147 INFO ___FILE_ONLY___ ═
|
| 589 |
+
2025-12-11 14:34:09,163 INFO ___FILE_ONLY___ ═
|
| 590 |
+
2025-12-11 14:34:09,179 INFO ___FILE_ONLY___ ═
|
| 591 |
+
2025-12-11 14:34:09,195 INFO ___FILE_ONLY___ ═
|
| 592 |
+
2025-12-11 14:34:09,212 INFO ___FILE_ONLY___ ═
|
| 593 |
+
2025-12-11 14:34:09,228 INFO ___FILE_ONLY___ ═
|
| 594 |
+
2025-12-11 14:34:09,245 INFO ___FILE_ONLY___ ═
|
| 595 |
+
2025-12-11 14:34:09,261 INFO ___FILE_ONLY___ ═
|
| 596 |
+
2025-12-11 14:34:09,279 INFO ___FILE_ONLY___ ═
|
| 597 |
+
2025-12-11 14:34:09,888 INFO ___FILE_ONLY___ ═
|
| 598 |
+
2025-12-11 14:34:09,908 INFO ___FILE_ONLY___ ═
|
| 599 |
+
2025-12-11 14:34:09,934 INFO ___FILE_ONLY___ ═
|
| 600 |
+
2025-12-11 14:34:09,948 INFO ___FILE_ONLY___ ═
|
| 601 |
+
2025-12-11 14:34:09,959 INFO ___FILE_ONLY___ ═
|
| 602 |
+
2025-12-11 14:34:09,971 INFO ___FILE_ONLY___ ═
|
| 603 |
+
2025-12-11 14:34:09,983 INFO ___FILE_ONLY___ ═
|
| 604 |
+
2025-12-11 14:34:09,995 INFO ___FILE_ONLY___ ═
|
| 605 |
+
2025-12-11 14:34:10,007 INFO ___FILE_ONLY___ ═
|
| 606 |
+
2025-12-11 14:34:10,018 INFO ___FILE_ONLY___ ═
|
| 607 |
+
2025-12-11 14:34:10,029 INFO ___FILE_ONLY___ ═
|
| 608 |
+
2025-12-11 14:34:10,041 INFO ___FILE_ONLY___ ═
|
| 609 |
+
2025-12-11 14:34:10,052 INFO ___FILE_ONLY___ ═
|
| 610 |
+
2025-12-11 14:34:10,064 INFO ___FILE_ONLY___ ═
|
| 611 |
+
2025-12-11 14:34:10,075 INFO ___FILE_ONLY___ ═
|
| 612 |
+
2025-12-11 14:34:10,087 INFO ___FILE_ONLY___ ═
|
| 613 |
+
2025-12-11 14:34:10,098 INFO ___FILE_ONLY___ ═
|
| 614 |
+
2025-12-11 14:34:10,110 INFO ___FILE_ONLY___ ═
|
| 615 |
+
2025-12-11 14:34:10,122 INFO ___FILE_ONLY___ ═
|
| 616 |
+
2025-12-11 14:34:10,133 INFO ___FILE_ONLY___ ═
|
| 617 |
+
2025-12-11 14:34:10,145 INFO ___FILE_ONLY___ ═
|
| 618 |
+
2025-12-11 14:34:10,156 INFO ___FILE_ONLY___ ═
|
| 619 |
+
2025-12-11 14:34:10,168 INFO ___FILE_ONLY___ ═
|
| 620 |
+
2025-12-11 14:34:10,180 INFO ___FILE_ONLY___ ═
|
| 621 |
+
2025-12-11 14:34:10,191 INFO ___FILE_ONLY___ ═
|
| 622 |
+
2025-12-11 14:34:10,202 INFO ___FILE_ONLY___ ═
|
| 623 |
+
2025-12-11 14:34:10,214 INFO ___FILE_ONLY___ ═
|
| 624 |
+
2025-12-11 14:34:10,225 INFO ___FILE_ONLY___ ═
|
| 625 |
+
2025-12-11 14:34:10,238 INFO ___FILE_ONLY___ ═
|
| 626 |
+
2025-12-11 14:34:10,250 INFO ___FILE_ONLY___ ═
|
| 627 |
+
2025-12-11 14:34:10,261 INFO ___FILE_ONLY___ ═
|
| 628 |
+
2025-12-11 14:34:10,273 INFO ___FILE_ONLY___ ═
|
| 629 |
+
2025-12-11 14:34:10,285 INFO ___FILE_ONLY___ ═
|
| 630 |
+
2025-12-11 14:34:10,297 INFO ___FILE_ONLY___ ═
|
| 631 |
+
2025-12-11 14:34:10,308 INFO ___FILE_ONLY___ ═
|
| 632 |
+
2025-12-11 14:34:10,320 INFO ___FILE_ONLY___ ═
|
| 633 |
+
2025-12-11 14:34:10,320 INFO ___FILE_ONLY___ ╝
|
| 634 |
+
|
| 635 |
+
2025-12-11 14:34:10,380 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 636 |
+
|
| 637 |
+
2025-12-11 14:34:10,380 INFO ___FILE_ONLY___ ╠═ Installing: Cloud Storage Command Line Tool ═╣
|
| 638 |
+
|
| 639 |
+
2025-12-11 14:34:10,380 INFO ___FILE_ONLY___ ╚
|
| 640 |
+
2025-12-11 14:34:10,924 INFO ___FILE_ONLY___ ═
|
| 641 |
+
2025-12-11 14:34:10,935 INFO ___FILE_ONLY___ ═
|
| 642 |
+
2025-12-11 14:34:10,945 INFO ___FILE_ONLY___ ═
|
| 643 |
+
2025-12-11 14:34:10,954 INFO ___FILE_ONLY___ ═
|
| 644 |
+
2025-12-11 14:34:10,963 INFO ___FILE_ONLY___ ═
|
| 645 |
+
2025-12-11 14:34:10,996 INFO ___FILE_ONLY___ ═
|
| 646 |
+
2025-12-11 14:34:11,009 INFO ___FILE_ONLY___ ═
|
| 647 |
+
2025-12-11 14:34:11,024 INFO ___FILE_ONLY___ ═
|
| 648 |
+
2025-12-11 14:34:11,038 INFO ___FILE_ONLY___ ═
|
| 649 |
+
2025-12-11 14:34:11,052 INFO ___FILE_ONLY___ ═
|
| 650 |
+
2025-12-11 14:34:11,068 INFO ___FILE_ONLY___ ═
|
| 651 |
+
2025-12-11 14:34:11,079 INFO ___FILE_ONLY___ ═
|
| 652 |
+
2025-12-11 14:34:11,089 INFO ___FILE_ONLY___ ═
|
| 653 |
+
2025-12-11 14:34:11,097 INFO ___FILE_ONLY___ ═
|
| 654 |
+
2025-12-11 14:34:11,106 INFO ___FILE_ONLY___ ═
|
| 655 |
+
2025-12-11 14:34:11,122 INFO ___FILE_ONLY___ ═
|
| 656 |
+
2025-12-11 14:34:11,135 INFO ___FILE_ONLY___ ═
|
| 657 |
+
2025-12-11 14:34:11,144 INFO ___FILE_ONLY___ ═
|
| 658 |
+
2025-12-11 14:34:11,154 INFO ___FILE_ONLY___ ═
|
| 659 |
+
2025-12-11 14:34:11,165 INFO ___FILE_ONLY___ ═
|
| 660 |
+
2025-12-11 14:34:11,174 INFO ___FILE_ONLY___ ═
|
| 661 |
+
2025-12-11 14:34:11,185 INFO ___FILE_ONLY___ ═
|
| 662 |
+
2025-12-11 14:34:11,195 INFO ___FILE_ONLY___ ═
|
| 663 |
+
2025-12-11 14:34:11,205 INFO ___FILE_ONLY___ ═
|
| 664 |
+
2025-12-11 14:34:11,214 INFO ___FILE_ONLY___ ═
|
| 665 |
+
2025-12-11 14:34:11,223 INFO ___FILE_ONLY___ ═
|
| 666 |
+
2025-12-11 14:34:11,234 INFO ___FILE_ONLY___ ═
|
| 667 |
+
2025-12-11 14:34:11,246 INFO ___FILE_ONLY___ ═
|
| 668 |
+
2025-12-11 14:34:11,262 INFO ___FILE_ONLY___ ═
|
| 669 |
+
2025-12-11 14:34:11,273 INFO ___FILE_ONLY___ ═
|
| 670 |
+
2025-12-11 14:34:11,284 INFO ___FILE_ONLY___ ═
|
| 671 |
+
2025-12-11 14:34:11,304 INFO ___FILE_ONLY___ ═
|
| 672 |
+
2025-12-11 14:34:11,319 INFO ___FILE_ONLY___ ═
|
| 673 |
+
2025-12-11 14:34:11,336 INFO ___FILE_ONLY___ ═
|
| 674 |
+
2025-12-11 14:34:11,350 INFO ___FILE_ONLY___ ═
|
| 675 |
+
2025-12-11 14:34:11,365 INFO ___FILE_ONLY___ ═
|
| 676 |
+
2025-12-11 14:34:11,374 INFO ___FILE_ONLY___ ═
|
| 677 |
+
2025-12-11 14:34:11,384 INFO ___FILE_ONLY___ ═
|
| 678 |
+
2025-12-11 14:34:11,419 INFO ___FILE_ONLY___ ═
|
| 679 |
+
2025-12-11 14:34:11,432 INFO ___FILE_ONLY___ ═
|
| 680 |
+
2025-12-11 14:34:11,442 INFO ___FILE_ONLY___ ═
|
| 681 |
+
2025-12-11 14:34:11,452 INFO ___FILE_ONLY___ ═
|
| 682 |
+
2025-12-11 14:34:11,461 INFO ___FILE_ONLY___ ═
|
| 683 |
+
2025-12-11 14:34:11,472 INFO ___FILE_ONLY___ ═
|
| 684 |
+
2025-12-11 14:34:11,481 INFO ___FILE_ONLY___ ═
|
| 685 |
+
2025-12-11 14:34:11,490 INFO ___FILE_ONLY___ ═
|
| 686 |
+
2025-12-11 14:34:11,500 INFO ___FILE_ONLY___ ═
|
| 687 |
+
2025-12-11 14:34:11,508 INFO ___FILE_ONLY___ ═
|
| 688 |
+
2025-12-11 14:34:11,517 INFO ___FILE_ONLY___ ═
|
| 689 |
+
2025-12-11 14:34:11,529 INFO ___FILE_ONLY___ ═
|
| 690 |
+
2025-12-11 14:34:11,542 INFO ___FILE_ONLY___ ═
|
| 691 |
+
2025-12-11 14:34:11,554 INFO ___FILE_ONLY___ ═
|
| 692 |
+
2025-12-11 14:34:11,567 INFO ___FILE_ONLY___ ═
|
| 693 |
+
2025-12-11 14:34:11,581 INFO ___FILE_ONLY___ ═
|
| 694 |
+
2025-12-11 14:34:11,595 INFO ___FILE_ONLY___ ═
|
| 695 |
+
2025-12-11 14:34:11,611 INFO ___FILE_ONLY___ ═
|
| 696 |
+
2025-12-11 14:34:11,628 INFO ___FILE_ONLY___ ═
|
| 697 |
+
2025-12-11 14:34:11,649 INFO ___FILE_ONLY___ ═
|
| 698 |
+
2025-12-11 14:34:11,666 INFO ___FILE_ONLY___ ═
|
| 699 |
+
2025-12-11 14:34:11,683 INFO ___FILE_ONLY___ ═
|
| 700 |
+
2025-12-11 14:34:11,683 INFO ___FILE_ONLY___ ╝
|
| 701 |
+
|
| 702 |
+
2025-12-11 14:34:11,713 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 703 |
+
|
| 704 |
+
2025-12-11 14:34:11,713 INFO ___FILE_ONLY___ ╠═ Installing: Cloud Storage Command Line Tool (Platform... ═╣
|
| 705 |
+
|
| 706 |
+
2025-12-11 14:34:11,713 INFO ___FILE_ONLY___ ╚
|
| 707 |
+
2025-12-11 14:34:11,714 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 708 |
+
2025-12-11 14:34:11,714 INFO ___FILE_ONLY___ ╝
|
| 709 |
+
|
| 710 |
+
2025-12-11 14:34:11,719 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 711 |
+
|
| 712 |
+
2025-12-11 14:34:11,719 INFO ___FILE_ONLY___ ╠═ Installing: Default set of gcloud commands ═╣
|
| 713 |
+
|
| 714 |
+
2025-12-11 14:34:11,719 INFO ___FILE_ONLY___ ╚
|
| 715 |
+
2025-12-11 14:34:11,722 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 716 |
+
2025-12-11 14:34:11,722 INFO ___FILE_ONLY___ ╝
|
| 717 |
+
|
| 718 |
+
2025-12-11 14:34:11,724 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 719 |
+
|
| 720 |
+
2025-12-11 14:34:11,724 INFO ___FILE_ONLY___ ╠═ Installing: Google Cloud CLI Core Libraries (Platform... ═╣
|
| 721 |
+
|
| 722 |
+
2025-12-11 14:34:11,724 INFO ___FILE_ONLY___ ╚
|
| 723 |
+
2025-12-11 14:34:11,725 INFO ___FILE_ONLY___ ══════════════════════════════
|
| 724 |
+
2025-12-11 14:34:11,725 INFO ___FILE_ONLY___ ══════════════════════════════
|
| 725 |
+
2025-12-11 14:34:11,725 INFO ___FILE_ONLY___ ╝
|
| 726 |
+
|
| 727 |
+
2025-12-11 14:34:11,730 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 728 |
+
|
| 729 |
+
2025-12-11 14:34:11,730 INFO ___FILE_ONLY___ ╠═ Installing: Google Cloud CRC32C Hash Tool ═╣
|
| 730 |
+
|
| 731 |
+
2025-12-11 14:34:11,730 INFO ___FILE_ONLY___ ╚
|
| 732 |
+
2025-12-11 14:34:11,733 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 733 |
+
2025-12-11 14:34:11,733 INFO ___FILE_ONLY___ ╝
|
| 734 |
+
|
| 735 |
+
2025-12-11 14:34:11,734 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 736 |
+
|
| 737 |
+
2025-12-11 14:34:11,734 INFO ___FILE_ONLY___ ╠═ Installing: Google Cloud CRC32C Hash Tool (Platform S... ═╣
|
| 738 |
+
|
| 739 |
+
2025-12-11 14:34:11,735 INFO ___FILE_ONLY___ ╚
|
| 740 |
+
2025-12-11 14:34:11,770 INFO ___FILE_ONLY___ ══════════════════════════════
|
| 741 |
+
2025-12-11 14:34:11,771 INFO ___FILE_ONLY___ ══════════════════════════════
|
| 742 |
+
2025-12-11 14:34:11,771 INFO ___FILE_ONLY___ ╝
|
| 743 |
+
|
| 744 |
+
2025-12-11 14:34:11,776 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 745 |
+
|
| 746 |
+
2025-12-11 14:34:11,776 INFO ___FILE_ONLY___ ╠═ Installing: gcloud cli dependencies (Platform Specific) ═╣
|
| 747 |
+
|
| 748 |
+
2025-12-11 14:34:11,776 INFO ___FILE_ONLY___ ╚
|
| 749 |
+
2025-12-11 14:34:11,776 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 750 |
+
2025-12-11 14:34:11,776 INFO ___FILE_ONLY___ ╝
|
| 751 |
+
|
| 752 |
+
2025-12-11 14:34:11,781 DEBUG root Updating notification cache...
|
| 753 |
+
2025-12-11 14:34:11,782 INFO ___FILE_ONLY___
|
| 754 |
+
|
| 755 |
+
2025-12-11 14:34:11,784 INFO ___FILE_ONLY___ Performing post processing steps...
|
| 756 |
+
2025-12-11 14:34:11,784 DEBUG root Executing command: ['/tools/google-cloud-sdk/bin/gcloud', 'components', 'post-process']
|
| 757 |
+
2025-12-11 14:34:21,345 DEBUG ___FILE_ONLY___
|
| 758 |
+
2025-12-11 14:34:21,346 DEBUG ___FILE_ONLY___
|
| 759 |
+
2025-12-11 14:34:21,572 INFO root descriptor_list: [{'universeDomain': 'googleapis.com', 'universeShortName': '', 'authenticationDomain': 'auth.cloud.google.com', 'projectPrefix': '', 'cloudWebDomain': 'cloud.google.com', 'documentationDomain': 'cloud.google.com', 'version': '1.0.0', 'state': 'primary', 'artifactRegistryDomain': 'pkg.dev'}]
|
| 760 |
+
2025-12-11 14:34:21,573 INFO ___FILE_ONLY___
|
| 761 |
+
Update done!
|
| 762 |
+
|
| 763 |
+
|
| 764 |
+
2025-12-11 14:34:21,575 DEBUG root Chosen display Format:none
|
| 765 |
+
2025-12-11 14:34:21,576 INFO root Display format: "none"
|
.config/logs/2025.12.11/14.34.12.303029.log
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:34:12,303 DEBUG root Loaded Command Group: ['gcloud', 'components']
|
| 2 |
+
2025-12-11 14:34:12,305 DEBUG root Loaded Command Group: ['gcloud', 'components', 'post_process']
|
| 3 |
+
2025-12-11 14:34:12,307 DEBUG root Running [gcloud.components.post-process] with arguments: []
|
| 4 |
+
2025-12-11 14:34:21,219 DEBUG root Chosen display Format:none
|
| 5 |
+
2025-12-11 14:34:21,220 INFO root Display format: "none"
|
.config/logs/2025.12.11/14.34.22.298248.log
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:34:22,299 DEBUG root Loaded Command Group: ['gcloud', 'components']
|
| 2 |
+
2025-12-11 14:34:22,333 DEBUG root Loaded Command Group: ['gcloud', 'components', 'update']
|
| 3 |
+
2025-12-11 14:34:22,336 DEBUG root Running [gcloud.components.update] with arguments: [--quiet: "True", COMPONENT-IDS:8: "['gcloud', 'core', 'bq', 'gsutil', 'compute', 'preview', 'alpha', 'beta']"]
|
| 4 |
+
2025-12-11 14:34:22,337 INFO ___FILE_ONLY___ Beginning update. This process may take several minutes.
|
| 5 |
+
|
| 6 |
+
2025-12-11 14:34:22,346 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 7 |
+
2025-12-11 14:34:23,310 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components-2.json HTTP/1.1" 200 24778
|
| 8 |
+
2025-12-11 14:34:23,323 WARNING root Component [compute] no longer exists.
|
| 9 |
+
2025-12-11 14:34:23,324 INFO ___FILE_ONLY___
|
| 10 |
+
|
| 11 |
+
2025-12-11 14:34:23,324 INFO ___FILE_ONLY___
|
| 12 |
+
Your current Google Cloud CLI version is: 549.0.0
|
| 13 |
+
|
| 14 |
+
2025-12-11 14:34:23,324 INFO ___FILE_ONLY___ Installing components from version: 549.0.0
|
| 15 |
+
|
| 16 |
+
2025-12-11 14:34:23,325 INFO ___FILE_ONLY___
|
| 17 |
+
|
| 18 |
+
2025-12-11 14:34:23,325 DEBUG root Chosen display Format:table[box,title="These components will be removed."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 19 |
+
2025-12-11 14:34:23,325 DEBUG root Chosen display Format:table[box,title="These components will be updated."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 20 |
+
2025-12-11 14:34:23,326 DEBUG root Chosen display Format:table[box,title="These components will be installed."](details.display_name:label=Name:align=left,version.version_string:label=Version:align=right,data.size.size(zero="",min=1048576):label=Size:align=right)
|
| 21 |
+
2025-12-11 14:34:23,343 INFO ___FILE_ONLY___ ┌────────────────────────────────────────────────┐
|
| 22 |
+
2025-12-11 14:34:23,343 INFO ___FILE_ONLY___
|
| 23 |
+
|
| 24 |
+
2025-12-11 14:34:23,343 INFO ___FILE_ONLY___ │ These components will be installed. │
|
| 25 |
+
2025-12-11 14:34:23,343 INFO ___FILE_ONLY___
|
| 26 |
+
|
| 27 |
+
2025-12-11 14:34:23,343 INFO ___FILE_ONLY___ ├─────────────────────────┬────────────┬─────────┤
|
| 28 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___
|
| 29 |
+
|
| 30 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___ │ Name │ Version │ Size │
|
| 31 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___
|
| 32 |
+
|
| 33 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___ ├─────────────────────────┼────────────┼─────────┤
|
| 34 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___
|
| 35 |
+
|
| 36 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___ │
|
| 37 |
+
2025-12-11 14:34:23,344 INFO ___FILE_ONLY___ gcloud Alpha Commands
|
| 38 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___
|
| 39 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ │
|
| 40 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ 2025.12.05
|
| 41 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___
|
| 42 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ │
|
| 43 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ < 1 MiB
|
| 44 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___
|
| 45 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ │
|
| 46 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___
|
| 47 |
+
|
| 48 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ │
|
| 49 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ gcloud Beta Commands
|
| 50 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___
|
| 51 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ │
|
| 52 |
+
2025-12-11 14:34:23,345 INFO ___FILE_ONLY___ 2025.12.05
|
| 53 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 54 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 55 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ < 1 MiB
|
| 56 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 57 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 58 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 59 |
+
|
| 60 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 61 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ gcloud Preview Commands
|
| 62 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 63 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 64 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 65 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 66 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 67 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ < 1 MiB
|
| 68 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 69 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ │
|
| 70 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___
|
| 71 |
+
|
| 72 |
+
2025-12-11 14:34:23,346 INFO ___FILE_ONLY___ └─────────────────────────┴────────────┴─────────┘
|
| 73 |
+
2025-12-11 14:34:23,347 INFO ___FILE_ONLY___
|
| 74 |
+
|
| 75 |
+
2025-12-11 14:34:23,347 INFO ___FILE_ONLY___
|
| 76 |
+
|
| 77 |
+
2025-12-11 14:34:23,350 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 78 |
+
2025-12-11 14:34:24,295 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/RELEASE_NOTES HTTP/1.1" 200 342027
|
| 79 |
+
2025-12-11 14:34:24,828 INFO ___FILE_ONLY___ For the latest full release notes, please visit:
|
| 80 |
+
https://cloud.google.com/sdk/release_notes
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
2025-12-11 14:34:24,828 INFO ___FILE_ONLY___ Performing in place update...
|
| 84 |
+
|
| 85 |
+
|
| 86 |
+
2025-12-11 14:34:24,830 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 87 |
+
|
| 88 |
+
2025-12-11 14:34:24,830 INFO ___FILE_ONLY___ ╠═ Downloading: gcloud Alpha Commands ═╣
|
| 89 |
+
|
| 90 |
+
2025-12-11 14:34:24,830 INFO ___FILE_ONLY___ ╚
|
| 91 |
+
2025-12-11 14:34:24,833 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 92 |
+
2025-12-11 14:34:25,781 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-alpha-20251205141901.tar.gz HTTP/1.1" 200 800
|
| 93 |
+
2025-12-11 14:34:25,782 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 94 |
+
2025-12-11 14:34:25,782 INFO ___FILE_ONLY___ ╝
|
| 95 |
+
|
| 96 |
+
2025-12-11 14:34:25,784 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 97 |
+
|
| 98 |
+
2025-12-11 14:34:25,784 INFO ___FILE_ONLY___ ╠═ Downloading: gcloud Beta Commands ═╣
|
| 99 |
+
|
| 100 |
+
2025-12-11 14:34:25,784 INFO ___FILE_ONLY___ ╚
|
| 101 |
+
2025-12-11 14:34:25,787 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 102 |
+
2025-12-11 14:34:26,726 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-beta-20251205141901.tar.gz HTTP/1.1" 200 797
|
| 103 |
+
2025-12-11 14:34:26,727 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 104 |
+
2025-12-11 14:34:26,727 INFO ___FILE_ONLY___ ╝
|
| 105 |
+
|
| 106 |
+
2025-12-11 14:34:26,729 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 107 |
+
|
| 108 |
+
2025-12-11 14:34:26,729 INFO ___FILE_ONLY___ ╠═ Downloading: gcloud Preview Commands ═╣
|
| 109 |
+
|
| 110 |
+
2025-12-11 14:34:26,729 INFO ___FILE_ONLY___ ╚
|
| 111 |
+
2025-12-11 14:34:26,732 DEBUG urllib3.connectionpool Starting new HTTPS connection (1): dl.google.com:443
|
| 112 |
+
2025-12-11 14:34:27,739 DEBUG urllib3.connectionpool https://dl.google.com:443 "GET /dl/cloudsdk/channels/rapid/components/google-cloud-sdk-preview-20241115154308.tar.gz HTTP/1.1" 200 823
|
| 113 |
+
2025-12-11 14:34:27,740 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 114 |
+
2025-12-11 14:34:27,740 INFO ___FILE_ONLY___ ╝
|
| 115 |
+
|
| 116 |
+
2025-12-11 14:34:27,742 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 117 |
+
|
| 118 |
+
2025-12-11 14:34:27,742 INFO ___FILE_ONLY___ ╠═ Installing: gcloud Alpha Commands ═╣
|
| 119 |
+
|
| 120 |
+
2025-12-11 14:34:27,742 INFO ___FILE_ONLY___ ╚
|
| 121 |
+
2025-12-11 14:34:27,743 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 122 |
+
2025-12-11 14:34:27,743 INFO ___FILE_ONLY___ ╝
|
| 123 |
+
|
| 124 |
+
2025-12-11 14:34:27,750 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 125 |
+
|
| 126 |
+
2025-12-11 14:34:27,750 INFO ___FILE_ONLY___ ╠═ Installing: gcloud Beta Commands ═╣
|
| 127 |
+
|
| 128 |
+
2025-12-11 14:34:27,750 INFO ___FILE_ONLY___ ╚
|
| 129 |
+
2025-12-11 14:34:27,751 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 130 |
+
2025-12-11 14:34:27,751 INFO ___FILE_ONLY___ ╝
|
| 131 |
+
|
| 132 |
+
2025-12-11 14:34:27,755 INFO ___FILE_ONLY___ ╔════════════════════════════════════════════════════════════╗
|
| 133 |
+
|
| 134 |
+
2025-12-11 14:34:27,755 INFO ___FILE_ONLY___ ╠═ Installing: gcloud Preview Commands ═╣
|
| 135 |
+
|
| 136 |
+
2025-12-11 14:34:27,755 INFO ___FILE_ONLY___ ╚
|
| 137 |
+
2025-12-11 14:34:27,756 INFO ___FILE_ONLY___ ════════════════════════════════════════════════════════════
|
| 138 |
+
2025-12-11 14:34:27,756 INFO ___FILE_ONLY___ ╝
|
| 139 |
+
|
| 140 |
+
2025-12-11 14:34:27,761 DEBUG root Updating notification cache...
|
| 141 |
+
2025-12-11 14:34:27,762 INFO ___FILE_ONLY___
|
| 142 |
+
|
| 143 |
+
2025-12-11 14:34:27,763 INFO ___FILE_ONLY___ Performing post processing steps...
|
| 144 |
+
2025-12-11 14:34:27,764 DEBUG root Executing command: ['/tools/google-cloud-sdk/bin/gcloud', 'components', 'post-process']
|
| 145 |
+
2025-12-11 14:34:37,413 DEBUG ___FILE_ONLY___
|
| 146 |
+
2025-12-11 14:34:37,413 DEBUG ___FILE_ONLY___
|
| 147 |
+
2025-12-11 14:34:37,529 INFO root descriptor_list: [{'universeDomain': 'googleapis.com', 'universeShortName': '', 'authenticationDomain': 'auth.cloud.google.com', 'projectPrefix': '', 'cloudWebDomain': 'cloud.google.com', 'documentationDomain': 'cloud.google.com', 'version': '1.0.0', 'state': 'primary', 'artifactRegistryDomain': 'pkg.dev'}]
|
| 148 |
+
2025-12-11 14:34:37,530 INFO ___FILE_ONLY___
|
| 149 |
+
Update done!
|
| 150 |
+
|
| 151 |
+
|
| 152 |
+
2025-12-11 14:34:37,532 DEBUG root Chosen display Format:none
|
| 153 |
+
2025-12-11 14:34:37,532 INFO root Display format: "none"
|
.config/logs/2025.12.11/14.34.28.289959.log
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:34:28,290 DEBUG root Loaded Command Group: ['gcloud', 'components']
|
| 2 |
+
2025-12-11 14:34:28,292 DEBUG root Loaded Command Group: ['gcloud', 'components', 'post_process']
|
| 3 |
+
2025-12-11 14:34:28,293 DEBUG root Running [gcloud.components.post-process] with arguments: []
|
| 4 |
+
2025-12-11 14:34:37,289 DEBUG root Chosen display Format:none
|
| 5 |
+
2025-12-11 14:34:37,290 INFO root Display format: "none"
|
.config/logs/2025.12.11/14.34.38.212031.log
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:34:38,213 DEBUG root Loaded Command Group: ['gcloud', 'config']
|
| 2 |
+
2025-12-11 14:34:38,311 DEBUG root Loaded Command Group: ['gcloud', 'config', 'set']
|
| 3 |
+
2025-12-11 14:34:38,313 DEBUG root Running [gcloud.config.set] with arguments: [SECTION/PROPERTY: "component_manager/disable_update_check", VALUE: "true"]
|
| 4 |
+
2025-12-11 14:34:38,314 INFO ___FILE_ONLY___ Updated property [component_manager/disable_update_check].
|
| 5 |
+
|
| 6 |
+
2025-12-11 14:34:38,314 DEBUG root Chosen display Format:default
|
| 7 |
+
2025-12-11 14:34:38,315 INFO root Display format: "default"
|
| 8 |
+
2025-12-11 14:34:38,320 DEBUG root SDK update checks are disabled.
|
.config/logs/2025.12.11/14.34.39.029902.log
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2025-12-11 14:34:39,031 DEBUG root Loaded Command Group: ['gcloud', 'config']
|
| 2 |
+
2025-12-11 14:34:39,120 DEBUG root Loaded Command Group: ['gcloud', 'config', 'set']
|
| 3 |
+
2025-12-11 14:34:39,123 DEBUG root Running [gcloud.config.set] with arguments: [SECTION/PROPERTY: "compute/gce_metadata_read_timeout_sec", VALUE: "0"]
|
| 4 |
+
2025-12-11 14:34:39,123 INFO ___FILE_ONLY___ Updated property [compute/gce_metadata_read_timeout_sec].
|
| 5 |
+
|
| 6 |
+
2025-12-11 14:34:39,124 DEBUG root Chosen display Format:default
|
| 7 |
+
2025-12-11 14:34:39,125 INFO root Display format: "default"
|
| 8 |
+
2025-12-11 14:34:39,131 DEBUG root SDK update checks are disabled.
|
.gitattributes
CHANGED
|
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
sample_data/mnist_test.csv filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
sample_data/mnist_train_small.csv filter=lfs diff=lfs merge=lfs -text
|
.gradio/certificate.pem
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
-----BEGIN CERTIFICATE-----
|
| 2 |
+
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
|
| 3 |
+
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
|
| 4 |
+
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
|
| 5 |
+
WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
|
| 6 |
+
ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
|
| 7 |
+
MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
|
| 8 |
+
h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
|
| 9 |
+
0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
|
| 10 |
+
A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
|
| 11 |
+
T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
|
| 12 |
+
B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
|
| 13 |
+
B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
|
| 14 |
+
KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
|
| 15 |
+
OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
|
| 16 |
+
jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
|
| 17 |
+
qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
|
| 18 |
+
rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
|
| 19 |
+
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
|
| 20 |
+
hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
|
| 21 |
+
ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
|
| 22 |
+
3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
|
| 23 |
+
NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
|
| 24 |
+
ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
|
| 25 |
+
TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
|
| 26 |
+
jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
|
| 27 |
+
oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
|
| 28 |
+
4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
|
| 29 |
+
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
|
| 30 |
+
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
|
| 31 |
+
-----END CERTIFICATE-----
|
README.md
CHANGED
|
@@ -1,12 +1,6 @@
|
|
| 1 |
---
|
| 2 |
-
title:
|
| 3 |
-
emoji: 🌍
|
| 4 |
-
colorFrom: green
|
| 5 |
-
colorTo: blue
|
| 6 |
-
sdk: gradio
|
| 7 |
-
sdk_version: 6.2.0
|
| 8 |
app_file: app.py
|
| 9 |
-
|
|
|
|
| 10 |
---
|
| 11 |
-
|
| 12 |
-
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
|
|
|
| 1 |
---
|
| 2 |
+
title: ana
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
app_file: app.py
|
| 4 |
+
sdk: gradio
|
| 5 |
+
sdk_version: 5.50.0
|
| 6 |
---
|
|
|
|
|
|
app.py
ADDED
|
@@ -0,0 +1,564 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
import sys
|
| 3 |
+
if 'google.colab' in sys.modules:
|
| 4 |
+
!pip install deepface nudenet opencv-python
|
| 5 |
+
|
| 6 |
+
from PIL import Image, ImageDraw, ImageFont
|
| 7 |
+
import numpy as np
|
| 8 |
+
import gradio as gr
|
| 9 |
+
import os
|
| 10 |
+
import cv2
|
| 11 |
+
from deepface import DeepFace
|
| 12 |
+
from nudenet import NudeDetector
|
| 13 |
+
import io
|
| 14 |
+
import tempfile
|
| 15 |
+
|
| 16 |
+
# --- Constants for image generation ---
|
| 17 |
+
FONT_SIZE_TITLE = 28
|
| 18 |
+
FONT_SIZE_DESC = 20
|
| 19 |
+
PADDING = 30
|
| 20 |
+
ITEM_SPACING = 50
|
| 21 |
+
BORDER_COLOR = (255, 20, 147)
|
| 22 |
+
BORDER_WIDTH = 3
|
| 23 |
+
TEXT_COLOR = (255, 20, 147)
|
| 24 |
+
BACKGROUND_COLOR = (0, 0, 0)
|
| 25 |
+
ERROR_IMAGE_WIDTH = 800
|
| 26 |
+
ERROR_IMAGE_HEIGHT = 400
|
| 27 |
+
TARGET_MAX_DIMENSION = 400
|
| 28 |
+
PIXELS_PER_CM_ESTIMATE = 15
|
| 29 |
+
|
| 30 |
+
# Try to load a font, fall back to default if not available
|
| 31 |
+
try:
|
| 32 |
+
FONT_TITLE = ImageFont.truetype("arial.ttf", FONT_SIZE_TITLE)
|
| 33 |
+
try:
|
| 34 |
+
FONT_DESC = ImageFont.truetype("arialbd.ttf", FONT_SIZE_DESC)
|
| 35 |
+
except IOError:
|
| 36 |
+
print("Could not load arialbd.ttf, falling back to arial.ttf for FONT_DESC.")
|
| 37 |
+
FONT_DESC = ImageFont.truetype("arial.ttf", FONT_SIZE_DESC)
|
| 38 |
+
FONT_ERROR = ImageFont.truetype("arial.ttf", 24)
|
| 39 |
+
FONT_LABEL_SIMPLE = ImageFont.truetype("arial.ttf", 14)
|
| 40 |
+
except IOError:
|
| 41 |
+
print("Could not load arial.ttf, using default font.")
|
| 42 |
+
FONT_TITLE = ImageFont.load_default()
|
| 43 |
+
FONT_DESC = ImageFont.load_default()
|
| 44 |
+
FONT_ERROR = ImageFont.load_default()
|
| 45 |
+
FONT_LABEL_SIMPLE = ImageFont.load_default()
|
| 46 |
+
|
| 47 |
+
def create_error_image(message):
|
| 48 |
+
error_img = Image.new('RGB', (ERROR_IMAGE_WIDTH, ERROR_IMAGE_HEIGHT), color=BACKGROUND_COLOR)
|
| 49 |
+
draw = ImageDraw.Draw(error_img)
|
| 50 |
+
|
| 51 |
+
bbox = FONT_ERROR.getbbox(message)
|
| 52 |
+
text_width = bbox[2] - bbox[0]
|
| 53 |
+
text_height = bbox[3] - bbox[1]
|
| 54 |
+
|
| 55 |
+
x = (ERROR_IMAGE_WIDTH - text_width) / 2
|
| 56 |
+
y = (ERROR_IMAGE_HEIGHT - text_height) / 2
|
| 57 |
+
|
| 58 |
+
draw.text((x, y), message, font=FONT_ERROR, fill=TEXT_COLOR)
|
| 59 |
+
return error_img
|
| 60 |
+
|
| 61 |
+
def resize_crop(crop_img, target_max_dim):
|
| 62 |
+
if crop_img.width == 0 or crop_img.height == 0:
|
| 63 |
+
return crop_img
|
| 64 |
+
|
| 65 |
+
if crop_img.width > crop_img.height:
|
| 66 |
+
new_width = target_max_dim
|
| 67 |
+
new_height = int(crop_img.height * (target_max_dim / crop_img.width))
|
| 68 |
+
else:
|
| 69 |
+
new_height = target_max_dim
|
| 70 |
+
new_width = int(crop_img.width * (target_max_dim / crop_img.height))
|
| 71 |
+
|
| 72 |
+
return crop_img.resize((new_width, new_height), Image.Resampling.LANCZOS)
|
| 73 |
+
|
| 74 |
+
def estimate_breast_size_cm(crop_img):
|
| 75 |
+
width_px, height_px = crop_img.size
|
| 76 |
+
width_cm = round(width_px / PIXELS_PER_CM_ESTIMATE, 1)
|
| 77 |
+
height_cm = round(height_px / PIXELS_PER_CM_ESTIMATE, 1)
|
| 78 |
+
return f"Breite: {width_cm} cm · Höhe: {height_cm} cm (geschätzt)"
|
| 79 |
+
|
| 80 |
+
def estimate_vagina_size_cm(crop_img):
|
| 81 |
+
width_px, height_px = crop_img.size
|
| 82 |
+
width_cm = round(width_px / PIXELS_PER_CM_ESTIMATE, 1)
|
| 83 |
+
height_cm = round(height_px / PIXELS_PER_CM_ESTIMATE, 1)
|
| 84 |
+
return f"Breite: {width_cm} cm · Höhe: {height_cm} cm (geschätzt)"
|
| 85 |
+
|
| 86 |
+
def estimate_body_measurements(person_bbox, associated_nudenet_dets):
|
| 87 |
+
pb_x1, pb_y1, pb_x2, pb_y2 = person_bbox
|
| 88 |
+
person_width_px = pb_x2 - pb_x1
|
| 89 |
+
person_height_px = pb_y2 - pb_y1
|
| 90 |
+
|
| 91 |
+
if person_width_px <= 0 or person_height_px <= 0:
|
| 92 |
+
return "KörpermaÑe nicht schätzbar (ungültiger Personen-BBox)"
|
| 93 |
+
|
| 94 |
+
person_width_cm = person_width_px / PIXELS_PER_CM_ESTIMATE
|
| 95 |
+
person_height_cm = person_height_px / PIXELS_PER_CM_ESTIMATE
|
| 96 |
+
|
| 97 |
+
bust_cm = "?"
|
| 98 |
+
waist_cm = "?"
|
| 99 |
+
hip_cm = "?"
|
| 100 |
+
|
| 101 |
+
breast_detections = [det for det in associated_nudenet_dets if 'BREAST_EXPOSED' in det['class']]
|
| 102 |
+
vagina_detections = [det for det in associated_nudenet_dets if 'FEMALE_GENITALIA_EXPOSED' in det['class']]
|
| 103 |
+
|
| 104 |
+
if breast_detections:
|
| 105 |
+
total_breast_width_px = sum([det['box'][2] for det in breast_detections])
|
| 106 |
+
if len(breast_detections) == 2:
|
| 107 |
+
bust_width_px = (breast_detections[0]['box'][2] + breast_detections[1]['box'][2]) / 2
|
| 108 |
+
bust_cm = round(bust_width_px * 1.7 / PIXELS_PER_CM_ESTIMATE, 1)
|
| 109 |
+
elif len(breast_detections) == 1:
|
| 110 |
+
bust_cm = round(breast_detections[0]['box'][2] * 1.5 / PIXELS_PER_CM_ESTIMATE, 1)
|
| 111 |
+
|
| 112 |
+
if vagina_detections:
|
| 113 |
+
vg_width_px = max([det['box'][2] for det in vagina_detections])
|
| 114 |
+
hip_cm = round(vg_width_px * 2.0 / PIXELS_PER_CM_ESTIMATE, 1)
|
| 115 |
+
elif person_height_px > 0:
|
| 116 |
+
hip_cm = round(person_width_cm * 0.9, 1)
|
| 117 |
+
|
| 118 |
+
if person_width_cm > 0:
|
| 119 |
+
waist_cm = round(person_width_cm * 0.8, 1)
|
| 120 |
+
|
| 121 |
+
return f"MaÑe (geschätzt, unsicher): Büste: {bust_cm} cm · Taille: {waist_cm} cm · Hüfte: {hip_cm} cm"
|
| 122 |
+
|
| 123 |
+
def describe_breast_precise(crop):
|
| 124 |
+
w, h = crop.size
|
| 125 |
+
crop_np = np.array(crop)
|
| 126 |
+
gray = cv2.cvtColor(crop_np, cv2.COLOR_RGB2GRAY)
|
| 127 |
+
|
| 128 |
+
area = w * h
|
| 129 |
+
if area < 35000: cup = "A"
|
| 130 |
+
elif area < 60000: cup = "B"
|
| 131 |
+
elif area < 95000: cup = "C"
|
| 132 |
+
elif area < 140000: cup = "D"
|
| 133 |
+
elif area < 200000: cup = "E/F"
|
| 134 |
+
else: cup = "H+ (massiv)"
|
| 135 |
+
|
| 136 |
+
hsv = cv2.cvtColor(crop_np, cv2.COLOR_RGB2HSV)
|
| 137 |
+
lower_nipple = np.array([0, 50, 20])
|
| 138 |
+
upper_nipple = np.array([20, 255, 140])
|
| 139 |
+
mask = cv2.inRange(hsv, lower_nipple, upper_nipple)
|
| 140 |
+
contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
|
| 141 |
+
areola_px = max([cv2.contourArea(c) for c in contours], default=0)
|
| 142 |
+
if areola_px < 800: nipple = "sehr klein (XS)"
|
| 143 |
+
elif areola_px < 2000: nipple = "klein"
|
| 144 |
+
elif areola_px < 4500: nipple = "mittel"
|
| 145 |
+
elif areola_px < 8000: nipple = "groÑ"
|
| 146 |
+
else: nipple = "sehr groÑ (XXL)"
|
| 147 |
+
|
| 148 |
+
edges = cv2.Canny(gray, 50, 100)
|
| 149 |
+
lower_third = edges[int(h*0.66):, :]
|
| 150 |
+
sag_ratio = np.sum(lower_third) / np.sum(edges) if np.sum(edges) > 0 else 0
|
| 151 |
+
if sag_ratio < 0.15: firmness = "extrem perky & straff"
|
| 152 |
+
elif sag_ratio < 0.28: firmness = "fest & jugendlich"
|
| 153 |
+
elif sag_ratio < 0.45: firmness = "natürlich weich"
|
| 154 |
+
else: firmness = "deutlich hängend"
|
| 155 |
+
|
| 156 |
+
size_cm_estimate = estimate_breast_size_cm(crop)
|
| 157 |
+
|
| 158 |
+
return f"Körbchen: {cup} · Areola/Nippel: {nipple} · Festigkeit: {firmness} · MaÑe: {size_cm_estimate}"
|
| 159 |
+
|
| 160 |
+
def describe_vagina_precise(crop):
|
| 161 |
+
w, h = crop.size
|
| 162 |
+
crop_np = np.array(crop)
|
| 163 |
+
gray = cv2.cvtColor(crop_np, cv2.COLOR_RGB2GRAY)
|
| 164 |
+
|
| 165 |
+
hair_mask = cv2.inRange(gray, 40, 140)
|
| 166 |
+
hair_ratio = np.sum(hair_mask > 0) / (w*h)
|
| 167 |
+
if hair_ratio < 0.03: shaved = "komplett glatt rasiert"
|
| 168 |
+
elif hair_ratio < 0.12: shaved = "minimal (Landing Strip / Dreieck)"
|
| 169 |
+
elif hair_ratio < 0.35: shaved = "teilrasiert / Brazilian"
|
| 170 |
+
else: shaved = "voll behaart (Bush)"
|
| 171 |
+
|
| 172 |
+
ratio_wh = w / h
|
| 173 |
+
labia_area = w * h
|
| 174 |
+
|
| 175 |
+
if ratio_wh > 1.4 and labia_area > 65000: form = "Puff Outie (dick & vorstehend)"
|
| 176 |
+
elif ratio_wh > 1.2: form = "Outie (Labien deutlich sichtbar)"
|
| 177 |
+
elif ratio_wh < 0.75: form = "lange Innie (fast geschlossen)"
|
| 178 |
+
elif labia_area < 25000: form = "sehr kleine Barbie (Mini-Innie)"
|
| 179 |
+
else: form = "klassische Innie / Barbie"
|
| 180 |
+
|
| 181 |
+
size = "winzig" if labia_area < 20000 else "klein" if labia_area < 40000 else "mittel" if labia_area < 70000 else "groÑ & voll"
|
| 182 |
+
|
| 183 |
+
size_cm_estimate = estimate_vagina_size_cm(crop)
|
| 184 |
+
|
| 185 |
+
return f"Form: {form} · GröÑe: {size} · Behaart: {shaved} · MaÑe: {size_cm_estimate}"
|
| 186 |
+
|
| 187 |
+
def estimate_age(crop_img):
|
| 188 |
+
try:
|
| 189 |
+
img_array = np.array(crop_img)
|
| 190 |
+
face = DeepFace.extract_faces(img_array, detector_backend='retinaface', enforce_detection=False)
|
| 191 |
+
if len(face) > 0:
|
| 192 |
+
age = DeepFace.analyze(img_array, actions=['age'], enforce_detection=False, silent=True)[0]['age']
|
| 193 |
+
return f"ca. {int(age)} Jahre (±3)"
|
| 194 |
+
else:
|
| 195 |
+
gray = cv2.cvtColor(img_array, cv2.COLOR_RGB2GRAY)
|
| 196 |
+
smoothness = cv2.Laplacian(gray, cv2.CV_64F).var()
|
| 197 |
+
if smoothness > 1800: return "jung (18–25)"
|
| 198 |
+
elif smoothness > 1000: return "jung-mittel (25–35)"
|
| 199 |
+
else: return "reif (35–45+)"
|
| 200 |
+
except Exception as e:
|
| 201 |
+
print(f"Error estimating age: {e}")
|
| 202 |
+
return "Alter nicht bestimmbar"
|
| 203 |
+
|
| 204 |
+
# Initialize NudeDetector
|
| 205 |
+
detector = NudeDetector()
|
| 206 |
+
|
| 207 |
+
def analyze_image_with_gradio(input_image_path):
|
| 208 |
+
print(f"[INFO] analyze_image_with_gradio called with path: {input_image_path}")
|
| 209 |
+
try:
|
| 210 |
+
if input_image_path is None:
|
| 211 |
+
print("[WARNING] No input image path provided.")
|
| 212 |
+
return create_error_image('Kein Bild ausgewählt.'), None
|
| 213 |
+
|
| 214 |
+
try:
|
| 215 |
+
original_img = Image.open(input_image_path).convert("RGB")
|
| 216 |
+
original_img_np = np.array(original_img)
|
| 217 |
+
print(f"[INFO] Image opened successfully: {input_image_path}")
|
| 218 |
+
except Exception as e:
|
| 219 |
+
print(f"[ERROR] Failed to open image {input_image_path}: {e}")
|
| 220 |
+
return create_error_image(f'Fehler beim Öffnen des Bildes: {e}'), None
|
| 221 |
+
|
| 222 |
+
current_filename = os.path.basename(input_image_path)
|
| 223 |
+
|
| 224 |
+
try:
|
| 225 |
+
nudenet_detections = detector.detect(input_image_path)
|
| 226 |
+
print(f"[INFO] NudeNet detected {len(nudenet_detections)} objects.")
|
| 227 |
+
except Exception as e:
|
| 228 |
+
print(f"[ERROR] Error during NudeNet detection for {input_image_path}: {e}")
|
| 229 |
+
return create_error_image(f'Fehler bei der NudeNet-Erkennung: {e}'), None
|
| 230 |
+
|
| 231 |
+
persons_data = []
|
| 232 |
+
face_detections = []
|
| 233 |
+
try:
|
| 234 |
+
face_results = DeepFace.extract_faces(original_img_np, detector_backend='retinaface', enforce_detection=False)
|
| 235 |
+
face_detections = [f for f in face_results if f['confidence'] > 0.9]
|
| 236 |
+
print(f"[INFO] DeepFace detected {len(face_detections)} faces.")
|
| 237 |
+
except Exception as e:
|
| 238 |
+
print(f"[WARNING] Error during DeepFace face detection: {e}. Proceeding without person association.")
|
| 239 |
+
|
| 240 |
+
if face_detections:
|
| 241 |
+
for face_det in face_detections:
|
| 242 |
+
x, y, w, h = face_det['facial_area']['x'], face_det['facial_area']['y'], face_det['facial_area']['w'], face_det['facial_area']['h']
|
| 243 |
+
expand_factor_y = 2.0
|
| 244 |
+
expand_factor_x = 1.2
|
| 245 |
+
|
| 246 |
+
person_center_x = x + w / 2
|
| 247 |
+
person_center_y = y + h / 2
|
| 248 |
+
|
| 249 |
+
new_h = int(h * expand_factor_y)
|
| 250 |
+
new_w = int(w * expand_factor_x)
|
| 251 |
+
|
| 252 |
+
person_x1 = max(0, int(person_center_x - new_w / 2))
|
| 253 |
+
person_y1 = max(0, int(person_center_y - new_h / 2))
|
| 254 |
+
person_x2 = min(original_img.width, int(person_center_x + new_w / 2))
|
| 255 |
+
person_y2 = min(original_img.height, int(person_center_y + new_h / 2))
|
| 256 |
+
|
| 257 |
+
person_bbox = (person_x1, person_y1, person_x2, person_y2)
|
| 258 |
+
|
| 259 |
+
associated_nudenet_dets = []
|
| 260 |
+
for nude_det in nudenet_detections:
|
| 261 |
+
nx1, ny1, nx2, ny2 = nude_det['box'][0], nude_det['box'][1], nude_det['box'][0] + nude_det['box'][2], nude_det['box'][1] + nude_det['box'][3]
|
| 262 |
+
nude_center_x = nx1 + (nx2 - nx1) / 2
|
| 263 |
+
nude_center_y = ny1 + (ny2 - ny1) / 2
|
| 264 |
+
|
| 265 |
+
if person_x1 <= nude_center_x <= person_x2 and person_y1 <= nude_center_y <= person_y2:
|
| 266 |
+
associated_nudenet_dets.append(nude_det)
|
| 267 |
+
|
| 268 |
+
if associated_nudenet_dets:
|
| 269 |
+
body_measurements_str = estimate_body_measurements(person_bbox, associated_nudenet_dets)
|
| 270 |
+
persons_data.append({
|
| 271 |
+
'person_bbox': person_bbox,
|
| 272 |
+
'nudenet_detections': associated_nudenet_dets,
|
| 273 |
+
'face_area': face_det['facial_area'],
|
| 274 |
+
'body_measurements': body_measurements_str
|
| 275 |
+
})
|
| 276 |
+
print(f"[INFO] {len(persons_data)} persons with associated NudeNet detections found.")
|
| 277 |
+
|
| 278 |
+
annotated_original_img = original_img.copy()
|
| 279 |
+
draw_annotated = ImageDraw.Draw(annotated_original_img)
|
| 280 |
+
|
| 281 |
+
current_image_crops_with_details = []
|
| 282 |
+
processed_nudenet_ids = set()
|
| 283 |
+
|
| 284 |
+
for i, person in enumerate(persons_data):
|
| 285 |
+
px1, py1, px2, py2 = person['person_bbox']
|
| 286 |
+
draw_annotated.rectangle([(px1, py1), (px2, py2)], outline=(0, 255, 0), width=BORDER_WIDTH)
|
| 287 |
+
label_person = f"Person {i+1}"
|
| 288 |
+
bbox_label_person = FONT_LABEL_SIMPLE.getbbox(label_person)
|
| 289 |
+
text_width_person = bbox_label_person[2] - bbox_label_person[0]
|
| 290 |
+
text_height_person = bbox_label_person[3] - bbox_label_person[1]
|
| 291 |
+
draw_annotated.rectangle([(px1, py1 - text_height_person - 2), (px1 + text_width_person, py1)], fill=(0, 255, 0))
|
| 292 |
+
draw_annotated.text((px1, py1 - text_height_person - 2), label_person, font=FONT_LABEL_SIMPLE, fill=BACKGROUND_COLOR)
|
| 293 |
+
|
| 294 |
+
if person['body_measurements'] and person['body_measurements'] != "KörpermaÑe nicht schätzbar (ungültiger Personen-BBox)":
|
| 295 |
+
current_image_crops_with_details.append((f"Person {i+1} KörpermaÑe", Image.new('RGB', (1,1), (0,0,0)), person['body_measurements']))
|
| 296 |
+
|
| 297 |
+
person_breasts_for_merging = []
|
| 298 |
+
for det in person['nudenet_detections']:
|
| 299 |
+
det_class = det['class']
|
| 300 |
+
x1, y1, x2, y2 = det['box'][0], det['box'][1], det['box'][0] + det['box'][2], det['box'][1] + det['box'][3]
|
| 301 |
+
x1, y1, x2, y2 = max(0, x1), max(0, y1), min(original_img.width, x2), min(original_img.height, y2)
|
| 302 |
+
|
| 303 |
+
draw_annotated.rectangle([(x1, y1), (x2, y2)], outline=BORDER_COLOR, width=BORDER_WIDTH)
|
| 304 |
+
|
| 305 |
+
crop = original_img.crop((x1, y1, x2, y2))
|
| 306 |
+
age_str = 'Alter unbekannt'
|
| 307 |
+
try:
|
| 308 |
+
face_x, face_y, face_w, face_h = person['face_area']['x'], person['face_area']['y'], person['face_area']['w'], person['face_area']['h']
|
| 309 |
+
face_crop_for_age = original_img.crop((face_x, face_y, face_x + face_w, face_y + face_h))
|
| 310 |
+
age_str = estimate_age(face_crop_for_age)
|
| 311 |
+
except Exception as e:
|
| 312 |
+
print(f"[ERROR] Error estimating age for person {i+1} crop: {e}")
|
| 313 |
+
|
| 314 |
+
if 'FEMALE_GENITALIA_EXPOSED' in det_class:
|
| 315 |
+
label_detailed = f"Person {i+1} Vagina"
|
| 316 |
+
desc = describe_vagina_precise(crop) + f" · Alter: {age_str}"
|
| 317 |
+
current_image_crops_with_details.append((label_detailed, resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 318 |
+
processed_nudenet_ids.add(id(det))
|
| 319 |
+
elif 'BREAST_EXPOSED' in det_class:
|
| 320 |
+
person_breasts_for_merging.append({'bbox': (x1,y1,x2,y2), 'det': det, 'age_str': age_str})
|
| 321 |
+
|
| 322 |
+
if len(person_breasts_for_merging) >= 1:
|
| 323 |
+
if len(person_breasts_for_merging) >= 2:
|
| 324 |
+
x1_combined = min(b['bbox'][0] for b in person_breasts_for_merging)
|
| 325 |
+
y1_combined = min(b['bbox'][1] for b in person_breasts_for_merging)
|
| 326 |
+
x2_combined = max(b['bbox'][2] for b in person_breasts_for_merging)
|
| 327 |
+
y2_combined = max(b['bbox'][3] for b in person_breasts_for_merging)
|
| 328 |
+
|
| 329 |
+
pad_x = int((x2_combined - x1_combined) * 0.2)
|
| 330 |
+
pad_y = int((y2_combined - y1_combined) * 0.25)
|
| 331 |
+
x1_final = max(0, x1_combined - pad_x)
|
| 332 |
+
y1_final = max(0, y1_combined - pad_y)
|
| 333 |
+
x2_final = min(original_img.width, x2_combined + pad_x)
|
| 334 |
+
y2_final = min(original_img.height, y2_combined + pad_y)
|
| 335 |
+
|
| 336 |
+
if x2_final <= x1_final or y2_final <= y1_final:
|
| 337 |
+
print(f"[WARNING] Skipping invalid crop box for Merged Breast detection (person {i+1}) in {current_filename}: ({x1_final}, {y1_final}, {x2_final}, {y2_final})")
|
| 338 |
+
for b_data in person_breasts_for_merging:
|
| 339 |
+
crop = original_img.crop(b_data['bbox'])
|
| 340 |
+
desc = describe_breast_precise(crop) + f" · Alter: {b_data['age_str']}"
|
| 341 |
+
current_image_crops_with_details.append((f"Person {i+1} Brust (einzeln)", resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 342 |
+
processed_nudenet_ids.add(id(b_data['det']))
|
| 343 |
+
else:
|
| 344 |
+
merged_breast_crop = original_img.crop((x1_final, y1_final, x2_final, y2_final))
|
| 345 |
+
desc = describe_breast_precise(merged_breast_crop) + f" · Alter: {person_breasts_for_merging[0]['age_str']}"
|
| 346 |
+
current_image_crops_with_details.append((f"Person {i+1} Brüste (beide)", resize_crop(merged_breast_crop, TARGET_MAX_DIMENSION), desc))
|
| 347 |
+
for b_data in person_breasts_for_merging:
|
| 348 |
+
processed_nudenet_ids.add(id(b_data['det']))
|
| 349 |
+
else:
|
| 350 |
+
b_data = person_breasts_for_merging[0]
|
| 351 |
+
crop = original_img.crop(b_data['bbox'])
|
| 352 |
+
desc = describe_breast_precise(crop) + f" · Alter: {b_data['age_str']}"
|
| 353 |
+
current_image_crops_with_details.append((f"Person {i+1} Brust (einzeln)", resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 354 |
+
processed_nudenet_ids.add(id(b_data['det']))
|
| 355 |
+
|
| 356 |
+
unassociated_nudenet_detections = [det for det in nudenet_detections if id(det) not in processed_nudenet_ids]
|
| 357 |
+
|
| 358 |
+
global_breasts_for_merging = []
|
| 359 |
+
for det in unassociated_nudenet_detections:
|
| 360 |
+
det_class = det['class']
|
| 361 |
+
x1, y1, x2, y2 = det['box'][0], det['box'][1], det['box'][0] + det['box'][2], det['box'][1] + det['box'][3]
|
| 362 |
+
x1, y1, x2, y2 = max(0, x1), max(0, y1), min(original_img.width, x2), min(original_img.height, y2)
|
| 363 |
+
|
| 364 |
+
draw_annotated.rectangle([(x1, y1), (x2, y2)], outline=(255, 255, 0), width=BORDER_WIDTH)
|
| 365 |
+
label_global_simple = f"Global {det_class.replace('_EXPOSED', '').replace('_', ' ').title()}"
|
| 366 |
+
bbox_label_global = FONT_LABEL_SIMPLE.getbbox(label_global_simple)
|
| 367 |
+
text_width_global = bbox_label_global[2] - bbox_label_global[0]
|
| 368 |
+
text_height_global = bbox_label_global[3] - bbox_label_global[1]
|
| 369 |
+
draw_annotated.rectangle([(x1, y1 - text_height_global - 2), (x1 + text_width_global, y1)], fill=(255, 255, 0))
|
| 370 |
+
draw_annotated.text((x1, y1 - text_height_global - 2), label_global_simple, font=FONT_LABEL_SIMPLE, fill=BACKGROUND_COLOR)
|
| 371 |
+
|
| 372 |
+
crop = original_img.crop((x1, y1, x2, y2))
|
| 373 |
+
age_str = 'Alter unbekannt'
|
| 374 |
+
try:
|
| 375 |
+
age_str = estimate_age(crop)
|
| 376 |
+
except Exception as e:
|
| 377 |
+
print(f"[ERROR] Error estimating age for global crop: {e}")
|
| 378 |
+
|
| 379 |
+
if 'FEMALE_GENITALIA_EXPOSED' in det_class:
|
| 380 |
+
label_detailed = "Global Vagina"
|
| 381 |
+
desc = describe_vagina_precise(crop) + f" · Alter: {age_str}"
|
| 382 |
+
current_image_crops_with_details.append((label_detailed, resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 383 |
+
elif 'BREAST_EXPOSED' in det_class:
|
| 384 |
+
global_breasts_for_merging.append({'bbox': (x1,y1,x2,y2), 'det': det, 'age_str': age_str})
|
| 385 |
+
|
| 386 |
+
if len(global_breasts_for_merging) >= 1:
|
| 387 |
+
if len(global_breasts_for_merging) >= 2:
|
| 388 |
+
x1_combined = min(b['bbox'][0] for b in global_breasts_for_merging)
|
| 389 |
+
y1_combined = min(b['bbox'][1] for b in global_breasts_for_merging)
|
| 390 |
+
y2_combined = max(b['bbox'][3] for b in global_breasts_for_merging)
|
| 391 |
+
x2_combined = max(b['bbox'][2] for b in global_breasts_for_merging)
|
| 392 |
+
|
| 393 |
+
pad_x = int((x2_combined - x1_combined) * 0.2)
|
| 394 |
+
pad_y = int((y2_combined - y1_combined) * 0.25)
|
| 395 |
+
x1_final = max(0, x1_combined - pad_x)
|
| 396 |
+
y1_final = max(0, y1_combined - pad_y)
|
| 397 |
+
x2_final = min(original_img.width, x2_combined + pad_x)
|
| 398 |
+
y2_final = min(original_img.height, y2_combined + pad_y)
|
| 399 |
+
|
| 400 |
+
if x2_final <= x1_final or y2_final <= y1_final:
|
| 401 |
+
print(f"[WARNING] Skipping invalid crop box for Merged Global Breast detection in {current_filename}: ({x1_final}, {y1_final}, {x2_final}, {y2_final})")
|
| 402 |
+
for b_data in global_breasts_for_merging:
|
| 403 |
+
crop = original_img.crop(b_data['bbox'])
|
| 404 |
+
desc = describe_breast_precise(crop) + f" · Alter: {b_data['age_str']}"
|
| 405 |
+
current_image_crops_with_details.append((f"Global Brust (einzeln)", resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 406 |
+
else:
|
| 407 |
+
merged_breast_crop = original_img.crop((x1_final, y1_final, x2_final, y2_final))
|
| 408 |
+
desc = describe_breast_precise(merged_breast_crop) + f" · Alter: {global_breasts_for_merging[0]['age_str']}"
|
| 409 |
+
current_image_crops_with_details.append((f"Global Brüste (beide)", resize_crop(merged_breast_crop, TARGET_MAX_DIMENSION), desc))
|
| 410 |
+
else:
|
| 411 |
+
b_data = global_breasts_for_merging[0]
|
| 412 |
+
crop = original_img.crop(b_data['bbox'])
|
| 413 |
+
desc = describe_breast_precise(crop) + f" · Alter: {b_data['age_str']}"
|
| 414 |
+
current_image_crops_with_details.append((f"Global Brust (einzeln)", resize_crop(crop, TARGET_MAX_DIMENSION), desc))
|
| 415 |
+
|
| 416 |
+
if not persons_data and not (len(global_breasts_for_merging) > 0 or any('FEMALE_GENITALIA_EXPOSED' in d['class'] for d in unassociated_nudenet_detections)):
|
| 417 |
+
text = "Keine Personen oder relevante Körperteile erkannt."
|
| 418 |
+
original_img_width, original_img_height = original_img.size
|
| 419 |
+
bbox_text = FONT_TITLE.getbbox(text)
|
| 420 |
+
text_width = bbox_text[2] - bbox_text[0]
|
| 421 |
+
text_height = bbox_text[3] - bbox_text[1]
|
| 422 |
+
draw_annotated.text(((original_img_width - text_width) / 2, original_img_height - text_height - PADDING), text, font=FONT_TITLE, fill=TEXT_COLOR)
|
| 423 |
+
print("[INFO] No persons or relevant NudeNet detections, adding message to original image.")
|
| 424 |
+
|
| 425 |
+
if not current_image_crops_with_details:
|
| 426 |
+
composite_crops_img = create_error_image("Keine detailreichen Bereiche für Crops gefunden.")
|
| 427 |
+
else:
|
| 428 |
+
max_crop_width = 0
|
| 429 |
+
total_height_crops = PADDING
|
| 430 |
+
|
| 431 |
+
for title, crop_img, desc in current_image_crops_with_details:
|
| 432 |
+
if crop_img.width == 1 and crop_img.height == 1:
|
| 433 |
+
bbox_title = FONT_TITLE.getbbox(title)
|
| 434 |
+
bbox_desc = FONT_DESC.getbbox(desc)
|
| 435 |
+
text_title_height = bbox_title[3] - bbox_title[1]
|
| 436 |
+
text_desc_height = bbox_desc[3] - bbox_desc[1]
|
| 437 |
+
total_height_crops += text_title_height + text_desc_height + PADDING * 2 + ITEM_SPACING
|
| 438 |
+
max_crop_width = max(max_crop_width, (bbox_title[2] - bbox_title[0]), (bbox_desc[2] - bbox_desc[0]))
|
| 439 |
+
else:
|
| 440 |
+
max_crop_width = max(max_crop_width, crop_img.width)
|
| 441 |
+
bbox_title = FONT_TITLE.getbbox(title)
|
| 442 |
+
bbox_desc = FONT_DESC.getbbox(desc)
|
| 443 |
+
text_title_height = bbox_title[3] - bbox_title[1]
|
| 444 |
+
text_desc_height = bbox_desc[3] - bbox_desc[1]
|
| 445 |
+
total_height_crops += crop_img.height + text_title_height + text_desc_height + PADDING * 2 + ITEM_SPACING
|
| 446 |
+
total_height_crops += PADDING
|
| 447 |
+
|
| 448 |
+
canvas_width_crops = max_crop_width + PADDING * 2
|
| 449 |
+
for title, crop_img, desc in current_image_crops_with_details:
|
| 450 |
+
bbox_title = FONT_TITLE.getbbox(title)
|
| 451 |
+
bbox_desc = FONT_DESC.getbbox(desc)
|
| 452 |
+
text_title_width = bbox_title[2] - bbox_title[0]
|
| 453 |
+
text_desc_width = bbox_desc[2] - bbox_desc[0]
|
| 454 |
+
canvas_width_crops = max(canvas_width_crops, text_title_width + PADDING * 2, text_desc_width + PADDING * 2)
|
| 455 |
+
|
| 456 |
+
composite_crops_img = Image.new('RGB', (canvas_width_crops, total_height_crops), color = BACKGROUND_COLOR)
|
| 457 |
+
draw_crops = ImageDraw.Draw(composite_crops_img)
|
| 458 |
+
|
| 459 |
+
current_y_offset_crops = PADDING
|
| 460 |
+
|
| 461 |
+
for title, crop_img, desc in current_image_crops_with_details:
|
| 462 |
+
if crop_img.width == 1 and crop_img.height == 1:
|
| 463 |
+
bbox_title = FONT_TITLE.getbbox(title)
|
| 464 |
+
text_title_width = bbox_title[2] - bbox_title[0]
|
| 465 |
+
text_title_height = bbox_title[3] - bbox_title[1]
|
| 466 |
+
draw_crops.text(((canvas_width_crops - text_title_width) / 2, current_y_offset_crops), title, font=FONT_TITLE, fill=TEXT_COLOR)
|
| 467 |
+
current_y_offset_crops += text_title_height + PADDING // 2
|
| 468 |
+
|
| 469 |
+
bbox_desc = FONT_DESC.getbbox(desc)
|
| 470 |
+
text_desc_width = bbox_desc[2] - bbox_desc[0]
|
| 471 |
+
text_desc_height = bbox_desc[3] - bbox_desc[1]
|
| 472 |
+
draw_crops.text(((canvas_width_crops - text_desc_width) / 2, current_y_offset_crops), desc, font=FONT_DESC, fill=TEXT_COLOR)
|
| 473 |
+
current_y_offset_crops += text_desc_height + ITEM_SPACING
|
| 474 |
+
|
| 475 |
+
else:
|
| 476 |
+
x_offset_crop = (canvas_width_crops - crop_img.width) // 2
|
| 477 |
+
|
| 478 |
+
draw_crops.rectangle(
|
| 479 |
+
(x_offset_crop - BORDER_WIDTH,
|
| 480 |
+
current_y_offset_crops - BORDER_WIDTH,
|
| 481 |
+
x_offset_crop + crop_img.width + BORDER_WIDTH,
|
| 482 |
+
current_y_offset_crops + crop_img.height + BORDER_WIDTH),
|
| 483 |
+
fill=BORDER_COLOR
|
| 484 |
+
)
|
| 485 |
+
|
| 486 |
+
composite_crops_img.paste(crop_img, (x_offset_crop, current_y_offset_crops))
|
| 487 |
+
|
| 488 |
+
current_y_offset_crops += crop_img.height + PADDING
|
| 489 |
+
|
| 490 |
+
bbox_title = FONT_TITLE.getbbox(title)
|
| 491 |
+
text_title_width = bbox_title[2] - bbox_title[0]
|
| 492 |
+
text_title_height = bbox_title[3] - bbox_title[1]
|
| 493 |
+
draw_crops.text(((canvas_width_crops - text_title_width) / 2, current_y_offset_crops), title, font=FONT_TITLE, fill=TEXT_COLOR)
|
| 494 |
+
current_y_offset_crops += text_title_height + PADDING // 2
|
| 495 |
+
|
| 496 |
+
bbox_desc = FONT_DESC.getbbox(desc)
|
| 497 |
+
text_desc_width = bbox_desc[2] - bbox_desc[0]
|
| 498 |
+
text_desc_height = bbox_desc[3] - bbox_desc[1]
|
| 499 |
+
draw_crops.text(((canvas_width_crops - text_desc_width) / 2, current_y_offset_crops), desc, font=FONT_DESC, fill=TEXT_COLOR)
|
| 500 |
+
current_y_offset_crops += text_desc_height + ITEM_SPACING
|
| 501 |
+
|
| 502 |
+
separator_text_original = "Originalbild mit Markierungen"
|
| 503 |
+
separator_text_crops = "Detaillierte Bereichsanalysen"
|
| 504 |
+
|
| 505 |
+
bbox_separator_original = FONT_TITLE.getbbox(separator_text_original)
|
| 506 |
+
bbox_separator_crops = FONT_TITLE.getbbox(separator_text_crops)
|
| 507 |
+
|
| 508 |
+
separator_height_total = (bbox_separator_original[3] - bbox_separator_original[1]) + (bbox_separator_crops[3] - bbox_separator_crops[1]) + PADDING * 4
|
| 509 |
+
|
| 510 |
+
combined_width = max(annotated_original_img.width, composite_crops_img.width,
|
| 511 |
+
(bbox_separator_original[2] - bbox_separator_original[0]) + PADDING * 2,
|
| 512 |
+
(bbox_separator_crops[2] - bbox_separator_crops[0]) + PADDING * 2)
|
| 513 |
+
|
| 514 |
+
combined_width = max(combined_width, ERROR_IMAGE_WIDTH)
|
| 515 |
+
|
| 516 |
+
combined_height = annotated_original_img.height + separator_height_total + composite_crops_img.height + PADDING * 2
|
| 517 |
+
combined_img = Image.new('RGB', (combined_width, combined_height), color=BACKGROUND_COLOR)
|
| 518 |
+
combined_draw = ImageDraw.Draw(combined_img)
|
| 519 |
+
|
| 520 |
+
current_y_combined = PADDING
|
| 521 |
+
|
| 522 |
+
text_width_orig_sep = bbox_separator_original[2] - bbox_separator_original[0]
|
| 523 |
+
text_height_orig_sep = bbox_separator_original[3] - bbox_separator_original[1]
|
| 524 |
+
combined_draw.text(((combined_width - text_width_orig_sep) / 2, current_y_combined), separator_text_original, font=FONT_TITLE, fill=TEXT_COLOR)
|
| 525 |
+
current_y_combined += text_height_orig_sep + PADDING
|
| 526 |
+
|
| 527 |
+
x_offset_original = (combined_width - annotated_original_img.width) // 2
|
| 528 |
+
combined_img.paste(annotated_original_img, (x_offset_original, current_y_combined))
|
| 529 |
+
current_y_combined += annotated_original_img.height + PADDING
|
| 530 |
+
|
| 531 |
+
text_width_crops_sep = bbox_separator_crops[2] - bbox_separator_crops[0]
|
| 532 |
+
text_height_crops_sep = bbox_separator_crops[3] - bbox_separator_crops[1]
|
| 533 |
+
combined_draw.text(((combined_width - text_width_crops_sep) / 2, current_y_combined), separator_text_crops, font=FONT_TITLE, fill=TEXT_COLOR)
|
| 534 |
+
current_y_combined += text_height_crops_sep + PADDING
|
| 535 |
+
|
| 536 |
+
x_offset_crops = (combined_width - composite_crops_img.width) // 2
|
| 537 |
+
combined_img.paste(composite_crops_img, (x_offset_crops, current_y_combined))
|
| 538 |
+
|
| 539 |
+
print("[INFO] Combined image generated successfully.")
|
| 540 |
+
|
| 541 |
+
# Save the combined image as a PDF to a temporary file
|
| 542 |
+
with tempfile.NamedTemporaryFile(suffix=".pdf", delete=False) as tmp_pdf:
|
| 543 |
+
combined_img.save(tmp_pdf.name, "PDF")
|
| 544 |
+
pdf_path = tmp_pdf.name
|
| 545 |
+
|
| 546 |
+
return combined_img, pdf_path
|
| 547 |
+
|
| 548 |
+
except Exception as e:
|
| 549 |
+
print(f"[CRITICAL ERROR] An unexpected error occurred during image analysis: {e}")
|
| 550 |
+
return create_error_image(f'Unerwarteter Fehler bei der Bildanalyse: {e}'), None
|
| 551 |
+
|
| 552 |
+
interface = gr.Interface(
|
| 553 |
+
fn=analyze_image_with_gradio,
|
| 554 |
+
inputs=gr.Image(type="filepath", label="Bild hochladen"),
|
| 555 |
+
outputs=[
|
| 556 |
+
gr.Image(type="pil", label="Analysiertes Kompositbild"),
|
| 557 |
+
gr.File(label="PDF herunterladen")
|
| 558 |
+
],
|
| 559 |
+
title="🔞 Final Analyzer",
|
| 560 |
+
description="Laden Sie ein Bild hoch, um eine detaillierte Analyse von Brüsten und Vagina (falls erkannt) inklusive Alters-Schätzung zu erhalten. Das Ergebnis ist ein Kompositbild mit Originalbild und detaillierten Crops, pro Person gruppiert. Sie können auch eine PDF-Version herunterladen."
|
| 561 |
+
)
|
| 562 |
+
|
| 563 |
+
if __name__ == "__main__":
|
| 564 |
+
interface.launch(debug=False, share=True)
|
requirements.txt
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
gradio
|
| 2 |
+
deepface
|
| 3 |
+
nudenet
|
| 4 |
+
opencv-python
|
| 5 |
+
Pillow
|
| 6 |
+
numpy
|
| 7 |
+
scikit-image
|
sample_data/README.md
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
This directory includes a few sample datasets to get you started.
|
| 2 |
+
|
| 3 |
+
* `california_housing_data*.csv` is California housing data from the 1990 US
|
| 4 |
+
Census; more information is available at:
|
| 5 |
+
https://docs.google.com/document/d/e/2PACX-1vRhYtsvc5eOR2FWNCwaBiKL6suIOrxJig8LcSBbmCbyYsayia_DvPOOBlXZ4CAlQ5nlDD8kTaIDRwrN/pub
|
| 6 |
+
|
| 7 |
+
* `mnist_*.csv` is a small sample of the
|
| 8 |
+
[MNIST database](https://en.wikipedia.org/wiki/MNIST_database), which is
|
| 9 |
+
described at: http://yann.lecun.com/exdb/mnist/
|
| 10 |
+
|
| 11 |
+
* `anscombe.json` contains a copy of
|
| 12 |
+
[Anscombe's quartet](https://en.wikipedia.org/wiki/Anscombe%27s_quartet); it
|
| 13 |
+
was originally described in
|
| 14 |
+
|
| 15 |
+
Anscombe, F. J. (1973). 'Graphs in Statistical Analysis'. American
|
| 16 |
+
Statistician. 27 (1): 17-21. JSTOR 2682899.
|
| 17 |
+
|
| 18 |
+
and our copy was prepared by the
|
| 19 |
+
[vega_datasets library](https://github.com/altair-viz/vega_datasets/blob/4f67bdaad10f45e3549984e17e1b3088c731503d/vega_datasets/_data/anscombe.json).
|
sample_data/anscombe.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[
|
| 2 |
+
{"Series":"I", "X":10.0, "Y":8.04},
|
| 3 |
+
{"Series":"I", "X":8.0, "Y":6.95},
|
| 4 |
+
{"Series":"I", "X":13.0, "Y":7.58},
|
| 5 |
+
{"Series":"I", "X":9.0, "Y":8.81},
|
| 6 |
+
{"Series":"I", "X":11.0, "Y":8.33},
|
| 7 |
+
{"Series":"I", "X":14.0, "Y":9.96},
|
| 8 |
+
{"Series":"I", "X":6.0, "Y":7.24},
|
| 9 |
+
{"Series":"I", "X":4.0, "Y":4.26},
|
| 10 |
+
{"Series":"I", "X":12.0, "Y":10.84},
|
| 11 |
+
{"Series":"I", "X":7.0, "Y":4.81},
|
| 12 |
+
{"Series":"I", "X":5.0, "Y":5.68},
|
| 13 |
+
|
| 14 |
+
{"Series":"II", "X":10.0, "Y":9.14},
|
| 15 |
+
{"Series":"II", "X":8.0, "Y":8.14},
|
| 16 |
+
{"Series":"II", "X":13.0, "Y":8.74},
|
| 17 |
+
{"Series":"II", "X":9.0, "Y":8.77},
|
| 18 |
+
{"Series":"II", "X":11.0, "Y":9.26},
|
| 19 |
+
{"Series":"II", "X":14.0, "Y":8.10},
|
| 20 |
+
{"Series":"II", "X":6.0, "Y":6.13},
|
| 21 |
+
{"Series":"II", "X":4.0, "Y":3.10},
|
| 22 |
+
{"Series":"II", "X":12.0, "Y":9.13},
|
| 23 |
+
{"Series":"II", "X":7.0, "Y":7.26},
|
| 24 |
+
{"Series":"II", "X":5.0, "Y":4.74},
|
| 25 |
+
|
| 26 |
+
{"Series":"III", "X":10.0, "Y":7.46},
|
| 27 |
+
{"Series":"III", "X":8.0, "Y":6.77},
|
| 28 |
+
{"Series":"III", "X":13.0, "Y":12.74},
|
| 29 |
+
{"Series":"III", "X":9.0, "Y":7.11},
|
| 30 |
+
{"Series":"III", "X":11.0, "Y":7.81},
|
| 31 |
+
{"Series":"III", "X":14.0, "Y":8.84},
|
| 32 |
+
{"Series":"III", "X":6.0, "Y":6.08},
|
| 33 |
+
{"Series":"III", "X":4.0, "Y":5.39},
|
| 34 |
+
{"Series":"III", "X":12.0, "Y":8.15},
|
| 35 |
+
{"Series":"III", "X":7.0, "Y":6.42},
|
| 36 |
+
{"Series":"III", "X":5.0, "Y":5.73},
|
| 37 |
+
|
| 38 |
+
{"Series":"IV", "X":8.0, "Y":6.58},
|
| 39 |
+
{"Series":"IV", "X":8.0, "Y":5.76},
|
| 40 |
+
{"Series":"IV", "X":8.0, "Y":7.71},
|
| 41 |
+
{"Series":"IV", "X":8.0, "Y":8.84},
|
| 42 |
+
{"Series":"IV", "X":8.0, "Y":8.47},
|
| 43 |
+
{"Series":"IV", "X":8.0, "Y":7.04},
|
| 44 |
+
{"Series":"IV", "X":8.0, "Y":5.25},
|
| 45 |
+
{"Series":"IV", "X":19.0, "Y":12.50},
|
| 46 |
+
{"Series":"IV", "X":8.0, "Y":5.56},
|
| 47 |
+
{"Series":"IV", "X":8.0, "Y":7.91},
|
| 48 |
+
{"Series":"IV", "X":8.0, "Y":6.89}
|
| 49 |
+
]
|
sample_data/california_housing_test.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
sample_data/california_housing_train.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
sample_data/mnist_test.csv
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:51c292478d94ec3a01461bdfa82eb0885d262eb09e615679b2d69dedb6ad09e7
|
| 3 |
+
size 18289443
|
sample_data/mnist_train_small.csv
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:1ef64781aa03180f4f5ce504314f058f5d0227277df86060473d973cf43b033e
|
| 3 |
+
size 36523880
|