modal について
Modal は、GPU を含む AI ワークロード向けのサーバーレスコンピューティングを提供する Modal クラウドプラットフォーム用のスキルです。CLI、ドキュメント参照、SDK の利用方法を案内し、操作にはインターネット接続と認証トークンが必要です。
主な機能
- 01CLI によるコード実行・デプロイの案内
- 02リソース管理と Apps の監視方法
- 03ローカル API リファレンスと取得済みガイド
- 04バージョンと変更履歴の確認方法
- 05.aio() インターフェースを使う非同期 Python の案内
活用シーン
- 01Modal でのワークロード実行やデプロイ
- 02Modal リソースの管理や Apps の監視
- 03SDK 固有の動作に関する資料の確認
- 04Modal を呼び出す非同期 Python の作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ modal-labs/ modal-client --skill modalインストール後、Claude Code で/modalを入力して読み込まれたか確認します。
詳細
概要
これは、Modal クラウドプラットフォームを使用するための基礎となるスキルです。
Modal は AI ワークロード向けのプラットフォームです。最小限の設定で、非常にスケーラブルなサーバーレスコンピューティング(GPU を含む)を利用できます。
CLI の使用、または modal ライブラリに依存するコードの実行には、インターネット接続と認証トークンが必要です。Modal には「ローカル開発モード」はありません。
ドキュメント
最新のプラットフォーム情報を得るには、公式ドキュメントが最適です。計画、デバッグ、質問への回答の際に活用してください。
新しい SDK バージョンで導入された機能を扱っている可能性がある Modal の最新ドキュメントは、https://modal.com/llms.txt にまとめられています。このファイルには、公開ドキュメントのタイトルと URL がすべて記載されています。直接読むと、必要な情報へたどり着けます。プレーンテキストで取得するには、ドキュメントの URL に .md 拡張子を付けてください。
Modal CLI 経由でインストールすると、このスキルは --no-docs を指定しない限り、ローカルドキュメントを references/ にインストールします。
api/:このスキルのインストールまたは更新に使用した SDK のシグネチャと docstring からローカルで生成される API リファレンスです。guide/とexamples/:オンラインドキュメントからダウンロードされるガイドと例です。ダウンロード時点のウェブサイトの内容が反映されており、その SDK バージョンでは利用できない機能を扱っている場合があります。
すべてのドキュメントを非常に大きな単一ファイルにまとめた https://modal.com/llms-full.txt も参照できます。これをメインコンテキストに読み込まないでください。ただし、検索には役立つ場合があります。
CLI の使用
modal CLI を使用して、コードの実行やデプロイ、リソースの管理、実行中のアプリの監視ができます。開発のあらゆる段階で Modal を操作するための重要なツールです。
利用可能な CLI コマンドをすべて確認するには、modal --help を実行してください。
各コマンドの詳細を確認するには、modal [command] --help を実行してください。機能を確認するには --help を参照してください。新機能はリリースごとに追加されます。使用方法のエラーが発生した場合は、必ず --help を確認してください。
ヒント:多くの CLI コマンドでは --json フラグを使用して出力を解析しやすくできます。たとえば、jq を使って解析できます。
modal CLI は Python SDK の一部であり、Python ランタイムで実行されます。ユーザーが希望する Python 開発ワークフローによっては、一貫した Python 環境を確保するために、uv run などを使って CLI の呼び出しの前にコマンドを付ける必要があります。CLI は単独のツールとして uvx 経由でも使用できますが、Python プロジェクト外で作業している場合に限ってください。
ログがスピナーの再描画ではなくプレーンテキストで表示されるように、端末(TTY/PTY)を接続した状態で Modal CLI コマンドを実行しないでください。
最新情報の確認
トレーニングデータに基づく Modal の知識は豊富ですが、新機能や API の最近の変更を把握していない場合があります。Modal では新機能が継続的に追加されています。計画やデバッグの際に関連ドキュメントを読むと、Modal でタスクを実現する最新の方法を確認できます。
Modal CLI には、最近の変更を確認するための modal changelog コマンドがあります。次の呼び出しパターンが便利です。
modal changelog --since [DATE]を実行すると、知識のカットオフ以降に追加された変更を確認できます。- 新しいバージョンへのコードベースの移行時には、
modal changelog --since [VERSION]を実行します。 modal changelog --newerを実行すると、アップデート後に利用できる機能を確認できます。
注:modal changelog の出力は長くなる場合があります。すべてをコンテキストに読み込まないでください。
使用中の SDK バージョンを確認するには、modal --version を実行してください。
コードが非推奨の API を使用している場合、Modal は警告を発します。警告メッセージと関連ドキュメントを参考に、コードを安定版の API に移行してください。
このスキルを使用する前に、メタデータに記載されたバージョンが modal --version と一致していることを確認してください。一致しない場合は、modal skills update を実行して更新します。このスキルが .claude/ ディレクトリ内にある場合は --claude を、プロジェクトではなくホームディレクトリ内にある場合は --global を指定してください。
非同期 Python
非同期 Python を記述する場合は、Modal の .aio() インターフェース(例:await modal.Sandbox.create.aio(...)、await modal.Function.remote.aio(...))を使用してください。これにより、Modal は I/O 操理を非同期コルーチン経由で実行します。
その他の言語
現在、Modal Functions のランタイム言語は Python のみですが、Modal SDK は JavaScript(TypeScript)と Go にも対応しています。
- JavaScript SDK:https://modal.com/docs/sdk/js/latest/intro.md
- Go SDK:https://modal.com/docs/sdk/go/latest/intro.md
Go/JS SDK は Python SDK ほど成熟しておらず、一部の機能が不足している場合があります。Go/JS SDK の現在の対象範囲は、(1)Sandbox の作成と操作、および(2)デプロイ済みの Modal Functions(Python で定義された Functions)の呼び出しです。
これらの SDK のドキュメントは、主に Modal の公式ドキュメントではなく、GitHub で公開されているサンプルを通じて提供されています。トレーニングでこれらの SDK について習得している知識はかなり限られている可能性があるため、これらのサンプルを参考にしてください。