SkyPilot - 任意のクラウド上でAIワークロードを実行 チートシート
SkyPilot任意のクラウドまたはKubernetesクラスターから1つのYAML定義でAIおよびバッチ ワークロード実行。LLM作業のコア価値は経済的:GPU利用可能性および価格プロバイダーおよび地域でワイルド変動、SkyPilotは自動的に検索最安い利用可能容量要件を満たす、プロビジョン、コード同期、ジョブを実行し、すべてを引き下ろします。また処理スポット インスタンス プリエンプション自動リカバリーで、長いトレーニング実行のための安い中断可能GPU実際的にします。
インストール
| Method | Command |
|---|
| pip | pip install "skypilot[all]" |
| Specific clouds | pip install "skypilot[aws,gcp,kubernetes]" |
| Check credentials | sky check |
| Verify | sky --version |
sky checkはどれだけのクラウド作業クレデンシャル報告—SkyPilotのは、それらのみを考慮します。
タスク定義
# train.yaml
resources:
accelerators: A100:8
use_spot: true
any_of:
- cloud: aws
- cloud: gcp
- cloud: kubernetes
num_nodes: 1
workdir: .
setup: |
pip install -r requirements.txt
run: |
torchrun --nproc_per_node=8 train.py --config configs/7b.yaml
| Field | Purpose |
|---|
resources.accelerators | GPU タイプおよびカウント(A100:8、H100:4) |
use_spot | 中断可能インスタンス使用 |
any_of / ordered | 候補クラウド/地域 |
workdir | クラスター同期ローカル dir |
setup | クラスターごと1度実行 |
run | 実際のジョブ |
num_nodes | マルチノード トレーニング |
コア コマンド
| Command | Description |
|---|
sky launch -c mycluster train.yaml | プロビジョンおよび実行 |
sky exec mycluster train.yaml | 既存クラスターで再度実行 |
sky status | クラスター リストおよびコスト |
sky logs mycluster | ストリーム ジョブ ログ |
sky queue mycluster | ジョブ キュー表示 |
sky down mycluster | 終了(支払い停止) |
sky stop mycluster | 停止ただしディスク保つ |
管理ジョブ(リカバリーでスポット)
# スポット インスタンスで長いトレーニング 実行、プリエンプション時自動復元
sky jobs launch -n llama-sft train.yaml
| Command | Purpose |
|---|
sky jobs launch | 管理ジョブ送信 |
sky jobs queue | 管理ジョブのリスト |
sky jobs logs -n NAME | ログのテール |
sky jobs cancel -n NAME | キャンセル |
管理ジョブはトレーニング用スポットGPUを使用可能機能:プリエンプション時SkyPilot他の場所を再プロビジョンおよびチェックポイントから再開するため、マルチ日実行中断生き残ります。
コスト 最適化
| Mechanism | Effect |
|---|
| Cross-cloud search | 最安い マッチング オプションを選ぶ |
use_spot: true | しばしば 60–90%より安い |
sky show-gpus | 現在の価格/利用可能 クラウド |
| Autostop | sky autostop -i 10 myclusterアイドル クラスター終了 |
sky down | 最も重要な習慣—アイドルGPUはメイン無駄 |
# A100容量はどれだけ存在しおよび何価格?
sky show-gpus A100
モデルの提供
# serve.yaml
service:
readiness_probe: /v1/models
replicas: 2
resources:
accelerators: A100:1
ports: 8000
run: |
vllm serve meta-llama/Llama-3.1-8B-Instruct --port 8000
sky serve up -n llm-api serve.yaml
sky serve status
SkyServeはレプリカ、ヘルス チェック、クラウド自動スケーリング追加—vLLM最安いGPUで提供有用。
Kubernetesバックエンド
| Capability | Note |
|---|
| Existing clusters | cloud: kubernetesクラスター ターゲット |
| Mixed | オンプレmK8s+クラウド バースト結合 |
| GPU scheduling | 標準K8s GPU リソース使用 |
| No cloud credentials needed | 純粋 オンプレ使用 |
SkyPilot対代替
| Aspect | SkyPilot | Ray | Cloud-native (SageMaker/Vertex) |
|---|
| Multi-cloud | コア機能 | 可能、手動 | 単一ベンダー |
| Spot recovery | ビルトイン | 手動 | 変動 |
| Lock-in | なし(プレーンYAML) | フレームワーク | 高い |
| Best for | 最安いGPU どこでも | 分散Pythonアプリ | ディープ 単一クラウド 統合 |
Axolotl、TorchTitan、vLLM経由提供トレーニング スタックペア。
リソース