text: Title: [k8s][gcp] Accept non-k8s TPU names
  Body: Running `sky launch` with TPUs on GCP support the following TPU names:
  ```
  GOOGLE_TPU       AVAILABLE_QUANTITIES  
  tpu-v2-8         1                     
  tpu-v3-8         1                     
  tpu-v4-8         1                     
  tpu-v4-16        1                     
  tpu-v4-32        1                     
  tpu-v5litepod-1  1                     
  tpu-v5litepod-4  1                     
  tpu-v5litepod-8  1                     
  tpu-v5p-8        1                     
  tpu-v5p-16       1                     
  tpu-v5p-32       1                     
  tpu-v6e-1        1                     
  tpu-v6e-4        1                     
  tpu-v6e-8        1 
  ```
  However, when running `sky launch` on a GKE k8s cluster, the accepted TPU names are a bit different, as described in ttps://cloud.google.com/kubernetes-engine/docs/how-to/tpus#run. SkyPilot hardcodes these mapping in `GKE_TPU_ACCELERATOR_TO_GENERATION`.
  ```
  # Mapping used to get generation for TPU accelerator name.
  # https://cloud.google.com/kubernetes-engine/docs/how-to/tpus#run
  GKE_TPU_ACCELERATOR_TO_GENERATION = {
      'tpu-v4-podslice': 'v4',
      # Only Single-host v5e TPU configurations are allowed.
      'tpu-v5-lite-device': 'v5e',
      # Multi-host compatible v5e TPU configurations allowed.
      'tpu-v5-lite-podslice': 'v5e',
      'tpu-v5p-slice': 'v5p',
      'tpu-v6e-slice': 'v6e',
  }
  ```
  What ends up happening is that if you want to launch a cluster in GKE with 8 v6e TPUs, you would need to specify `--gpus tpu-v6e-slice:8`, not `--gpus tpu-v6e-8`. In fact, specifying `--gpus tpu-v6e-8` would fail to match a GKE node with 8 `tpu-v6e-slice`s.
  
  For user convenience, we should let a user launch cluster/job on k8s nodes with the non-k8s TPU names - i.e. launching a cluster on GKE with `--gpus tpu-v6e-slice:8` or `--gpus tpu-v6e-8` should have the same effect.