Repository: skypilot-org/skypilot
Pull request: Unify the advanced config name from `.sky/config` to `.sky/config.yaml` in docs
Fixes #4711 

Problem statement:
[Docs] Minor: consolidate the naming of advanced user config to `~/.sky/config.yaml`
```
andyl@andylizf-dev-server ~/skypilot (master)> grep -r "~/.sky/config[^.]" .
./sky/clouds/oci.py:   in the sky config file, because the ~/.sky/config is not sync-ed to the
grep: ./sky/clouds/__pycache__/oci.cpython-311.pyc: binary file matches
./sky/provision/kubernetes/utils.py:    """Adds or updates fields in the YAML with fields from the ~/.sky/config's
./sky/provision/kubernetes/utils.py:    fields from the ~/.sky/config's kubernetes.custom_metadata dict.
grep: ./sky/provision/kubernetes/__pycache__/utils.cpython-311.pyc: binary file matches
./docs/source/reference/kubernetes/kubernetes-ports.rst:3. Update the :ref:`SkyPilot config <config-yaml>` at :code:`~/.sky/config` to use the ingress mode.
^C⏎                                                                           
```

Hints from issue discussion:

Commit message: docs: change `.sky/config` to `.sky/config.yaml`

Patch to review:
diff --git a/docs/source/reference/kubernetes/kubernetes-ports.rst b/docs/source/reference/kubernetes/kubernetes-ports.rst
index 4f8476c1bbc..96a6c8868bc 100644
--- a/docs/source/reference/kubernetes/kubernetes-ports.rst
+++ b/docs/source/reference/kubernetes/kubernetes-ports.rst
@@ -114,7 +114,7 @@ To use this mode:
     and the endpoint may not be accessible from outside the cluster.
 
 
-3. Update the :ref:`SkyPilot config <config-yaml>` at :code:`~/.sky/config` to use the ingress mode.
+3. Update the :ref:`SkyPilot config <config-yaml>` at :code:`~/.sky/config.yaml` to use the ingress mode.
 
 .. code-block:: yaml
 
diff --git a/examples/tpu/tpu_app_code/run_tpu.py b/examples/tpu/tpu_app_code/run_tpu.py
index 2278dd730d2..291ef244748 100644
--- a/examples/tpu/tpu_app_code/run_tpu.py
+++ b/examples/tpu/tpu_app_code/run_tpu.py
@@ -1,6 +1,7 @@
 import tensorflow as tf
 import tensorflow_datasets as tfds
 import tensorflow_text as tf_text
+
 from transformers import TFBertForSequenceClassification
 from transformers import TFDistilBertForSequenceClassification
 
diff --git a/examples/unsloth/unsloth_example.py b/examples/unsloth/unsloth_example.py
index 4e488ad82f0..8390a3fc284 100644
--- a/examples/unsloth/unsloth_example.py
+++ b/examples/unsloth/unsloth_example.py
@@ -4,10 +4,11 @@
 
 from datasets import load_dataset
 import torch
-from transformers import TrainingArguments
 from trl import SFTTrainer
 from unsloth import FastLanguageModel
 
+from transformers import TrainingArguments
+
 max_seq_length = 2048
 
 # [1] Get LAION dataset
diff --git a/llm/falcon/train.py b/llm/falcon/train.py
index 247c19eeab0..1e8e67bcd29 100644
--- a/llm/falcon/train.py
+++ b/llm/falcon/train.py
@@ -21,12 +21,13 @@
 from peft import LoraConfig
 from peft.tuners.lora import LoraLayer
 import torch
+from trl import SFTTrainer
+
 from transformers import AutoModelForCausalLM
 from transformers import AutoTokenizer
 from transformers import BitsAndBytesConfig
 from transformers import HfArgumentParser
 from transformers import TrainingArguments
-from trl import SFTTrainer
 
 ########################################################################
 # This is a fully working simple example to use trl's RewardTrainer.
diff --git a/llm/vicuna-llama-2/scripts/flash_attn_patch.py b/llm/vicuna-llama-2/scripts/flash_attn_patch.py
index 6839646307f..9d50fd1d140 100644
--- a/llm/vicuna-llama-2/scripts/flash_attn_patch.py
+++ b/llm/vicuna-llama-2/scripts/flash_attn_patch.py
@@ -8,9 +8,10 @@
 from flash_attn.flash_attn_interface import flash_attn_varlen_qkvpacked_func
 import torch
 from torch import nn
-import transformers
 from transformers.models.llama.modeling_llama import apply_rotary_pos_emb
 
+import transformers
+
 
 def forward(
     self,
diff --git a/llm/vicuna-llama-2/scripts/train.py b/llm/vicuna-llama-2/scripts/train.py
index 9112a8dc527..2328a0cbb35 100644
--- a/llm/vicuna-llama-2/scripts/train.py
+++ b/llm/vicuna-llama-2/scripts/train.py
@@ -43,9 +43,10 @@
 from fastchat.model.model_adapter import get_conversation_template
 import torch
 from torch.utils.data import Dataset
+from transformers.trainer_pt_utils import LabelSmoother
+
 import transformers
 from transformers import Trainer
-from transformers.trainer_pt_utils import LabelSmoother
 
 IGNORE_TOKEN_ID = LabelSmoother.ignore_index
 
diff --git a/sky/clouds/oci.py b/sky/clouds/oci.py
index b0234e2802c..e46b733d756 100644
--- a/sky/clouds/oci.py
+++ b/sky/clouds/oci.py
@@ -9,7 +9,7 @@
    file path resolution (by os.path.expanduser) when construct the file
    mounts. This bug will cause the created workder nodes located in different
    compartment and VCN than the header node if user specifies compartment_id
-   in the sky config file, because the ~/.sky/config is not sync-ed to the
+   in the sky config file, because the ~/.sky/config.yaml is not sync-ed to the
    remote machine.
    The workaround is set the sky config file path using ENV before running
    the sky launch: export SKYPILOT_CONFIG=/home/ubuntu/.sky/config.yaml
diff --git a/sky/provision/kubernetes/utils.py b/sky/provision/kubernetes/utils.py
index 594e3752b41..d7ff4c9f3ba 100644
--- a/sky/provision/kubernetes/utils.py
+++ b/sky/provision/kubernetes/utils.py
@@ -1892,8 +1892,8 @@ def combine_pod_config_fields(
     cluster_yaml_path: str,
     cluster_config_overrides: Dict[str, Any],
 ) -> None:
-    """Adds or updates fields in the YAML with fields from the ~/.sky/config's
-    kubernetes.pod_spec dict.
+    """Adds or updates fields in the YAML with fields from the
+    ~/.sky/config.yaml's kubernetes.pod_spec dict.
     This can be used to add fields to the YAML that are not supported by
     SkyPilot yet, or require simple configuration (e.g., adding an
     imagePullSecrets field).
@@ -1953,7 +1953,7 @@ def combine_pod_config_fields(
 
 def combine_metadata_fields(cluster_yaml_path: str) -> None:
     """Updates the metadata for all Kubernetes objects created by SkyPilot with
-    fields from the ~/.sky/config's kubernetes.custom_metadata dict.
+    fields from the ~/.sky/config.yaml's kubernetes.custom_metadata dict.
 
     Obeys the same add or update semantics as combine_pod_config_fields().
     """


Code review comments:
path: examples/unsloth/unsloth_example.py
text: @user1:
unsorted?