@@ -480,8 +480,10 @@ def _create_widgets(self):
480
480
"huggingface" ,
481
481
],
482
482
description = "Cluster Type:" ,
483
- tooltip = ("Choose where to run your jobs: local machine, remote servers "
484
- "(SSH/SLURM/PBS/SGE), Kubernetes clusters, or cloud providers" ),
483
+ tooltip = (
484
+ "Choose where to run your jobs: local machine, remote servers "
485
+ "(SSH/SLURM/PBS/SGE), Kubernetes clusters, or cloud providers"
486
+ ),
485
487
style = style ,
486
488
layout = full_layout ,
487
489
)
@@ -492,8 +494,10 @@ def _create_widgets(self):
492
494
self .config_name = widgets .Text (
493
495
description = "Config Name:" ,
494
496
placeholder = "Enter configuration name" ,
495
- tooltip = ("Give this configuration a descriptive name "
496
- "(e.g., 'AWS Production', 'Local Testing', 'HPC Cluster')" ),
497
+ tooltip = (
498
+ "Give this configuration a descriptive name "
499
+ "(e.g., 'AWS Production', 'Local Testing', 'HPC Cluster')"
500
+ ),
497
501
style = style ,
498
502
layout = full_layout ,
499
503
)
@@ -586,8 +590,10 @@ def _create_dynamic_fields(self):
586
590
self .host_field = widgets .Text (
587
591
description = "Host/Address:" ,
588
592
placeholder = "hostname or IP address" ,
589
- tooltip = ("Enter the hostname or IP address of your remote cluster "
590
- "(e.g., cluster.example.com or 192.168.1.100)" ),
593
+ tooltip = (
594
+ "Enter the hostname or IP address of your remote cluster "
595
+ "(e.g., cluster.example.com or 192.168.1.100)"
596
+ ),
591
597
style = style ,
592
598
layout = full_layout ,
593
599
)
@@ -604,8 +610,10 @@ def _create_dynamic_fields(self):
604
610
self .ssh_key_field = widgets .Text (
605
611
description = "SSH Key:" ,
606
612
placeholder = "~/.ssh/id_rsa" ,
607
- tooltip = ("Path to your SSH private key file for passwordless authentication "
608
- "(generate with 'ssh-keygen -t rsa')" ),
613
+ tooltip = (
614
+ "Path to your SSH private key file for passwordless authentication "
615
+ "(generate with 'ssh-keygen -t rsa')"
616
+ ),
609
617
style = style ,
610
618
layout = half_layout ,
611
619
)
@@ -629,8 +637,10 @@ def _create_dynamic_fields(self):
629
637
value = "8GB" ,
630
638
description = "Memory:" ,
631
639
placeholder = "e.g., 8GB, 16GB" ,
632
- tooltip = ("Amount of RAM to request for each job (e.g., '8GB', '16GB'). "
633
- "Higher memory allows processing larger datasets" ),
640
+ tooltip = (
641
+ "Amount of RAM to request for each job (e.g., '8GB', '16GB'). "
642
+ "Higher memory allows processing larger datasets"
643
+ ),
634
644
style = style ,
635
645
layout = widgets .Layout (width = "200px" ),
636
646
)
@@ -646,8 +656,10 @@ def _create_dynamic_fields(self):
646
656
self .k8s_namespace = widgets .Text (
647
657
value = "default" ,
648
658
description = "Namespace:" ,
649
- tooltip = ("Kubernetes namespace for job pods (default: 'default'). "
650
- "Contact your cluster admin for appropriate namespace" ),
659
+ tooltip = (
660
+ "Kubernetes namespace for job pods (default: 'default'). "
661
+ "Contact your cluster admin for appropriate namespace"
662
+ ),
651
663
style = style ,
652
664
layout = half_layout ,
653
665
)
@@ -756,16 +768,20 @@ def _create_dynamic_fields(self):
756
768
self .azure_client_id = widgets .Text (
757
769
description = "Client ID:" ,
758
770
placeholder = "Azure service principal client ID" ,
759
- tooltip = ("Azure service principal application ID (UUID format). "
760
- "Create in Azure AD > App registrations" ),
771
+ tooltip = (
772
+ "Azure service principal application ID (UUID format). "
773
+ "Create in Azure AD > App registrations"
774
+ ),
761
775
style = style ,
762
776
layout = half_layout ,
763
777
)
764
778
self .azure_client_secret = widgets .Password (
765
779
description = "Client Secret:" ,
766
780
placeholder = "Azure service principal secret" ,
767
- tooltip = ("Azure service principal secret (keep secure!). Generated in Azure AD > "
768
- "App registrations > Certificates & secrets" ),
781
+ tooltip = (
782
+ "Azure service principal secret (keep secure!). Generated in Azure AD > "
783
+ "App registrations > Certificates & secrets"
784
+ ),
769
785
style = style ,
770
786
layout = half_layout ,
771
787
)
@@ -782,8 +798,10 @@ def _create_dynamic_fields(self):
782
798
options = ["us-central1" ], # Will be populated dynamically
783
799
value = "us-central1" ,
784
800
description = "GCP Region:" ,
785
- tooltip = ("Google Cloud region for resources (affects latency and pricing). "
786
- "Choose region closest to your location" ),
801
+ tooltip = (
802
+ "Google Cloud region for resources (affects latency and pricing). "
803
+ "Choose region closest to your location"
804
+ ),
787
805
style = style ,
788
806
layout = half_layout ,
789
807
)
@@ -800,8 +818,10 @@ def _create_dynamic_fields(self):
800
818
self .gcp_service_account_key = widgets .Textarea (
801
819
description = "Service Account Key:" ,
802
820
placeholder = "Paste your GCP service account JSON key here" ,
803
- tooltip = ("Google Cloud service account key in JSON format (keep secure!). "
804
- "Create in GCP Console > IAM & Admin > Service Accounts" ),
821
+ tooltip = (
822
+ "Google Cloud service account key in JSON format (keep secure!). "
823
+ "Create in GCP Console > IAM & Admin > Service Accounts"
824
+ ),
805
825
style = style ,
806
826
layout = full_layout ,
807
827
)
@@ -818,8 +838,10 @@ def _create_dynamic_fields(self):
818
838
options = ["gpu_1x_a10" ], # Will be populated dynamically
819
839
value = "gpu_1x_a10" ,
820
840
description = "Instance Type:" ,
821
- tooltip = ("Lambda Cloud GPU instance type (affects GPU model, RAM, and cost). "
822
- "gpu_1x_a10 = 1x NVIDIA A10 + 30GB RAM" ),
841
+ tooltip = (
842
+ "Lambda Cloud GPU instance type (affects GPU model, RAM, and cost). "
843
+ "gpu_1x_a10 = 1x NVIDIA A10 + 30GB RAM"
844
+ ),
823
845
style = style ,
824
846
layout = half_layout ,
825
847
)
@@ -828,8 +850,10 @@ def _create_dynamic_fields(self):
828
850
self .hf_token = widgets .Password (
829
851
description = "HF Token:" ,
830
852
placeholder = "Your HuggingFace API token" ,
831
- tooltip = ("HuggingFace API token for Spaces access (keep secure!). "
832
- "Get from HuggingFace Settings > Access Tokens" ),
853
+ tooltip = (
854
+ "HuggingFace API token for Spaces access (keep secure!). "
855
+ "Get from HuggingFace Settings > Access Tokens"
856
+ ),
833
857
style = style ,
834
858
layout = half_layout ,
835
859
)
0 commit comments