翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ジョブテンプレートの式
ジョブテンプレートは、{{ }}形式文字列を使用して、ジョブ名、コマンド、引数、埋め込みファイルに値を挿入します。Open Job Description のEXPR拡張では、 内のテキスト{{ }}は式です。式は、 などのプレーンリファレンスにすることも{{Param.、算術、比較、Name}}if/else 条件、文字列とパスのオペレーション、およびリストの理解度で値を計算することもできます。構文は Python のサブセットです。
式は、ユーザーが送信するパラメータとアプリケーションが受け入れるコマンドラインの間のグルーです。GiB のメモリ要件は、ホスト要件が想定する MiB になります。フレーム範囲パラメータは、開始フレーム引数と終了フレーム引数になります。ファイルシーケンスパターンは、タスクのフレームのファイルになります。フラグは、ブールパラメータが設定されている場合にのみ引数リストに表示されます。式は、 で説明されているブール型、リスト型、フレーム範囲型など、すべてのジョブパラメータタイプで機能しますジョブパラメータタイプ。詳細な仕様については、GitHub ウェブサイトの Open Job Description 式の言語
次の例は、一般的な式を示しています。それぞれがジョブテンプレート内の 1 つの形式の文字列です。
| 式 | その内容 |
|---|---|
{{ Param.WorkerMemoryGiB * 1024 }} |
ユーザーが GiB で入力するメモリ要件を、amount.worker.memoryホスト要件が想定する MiB に変換します。 |
{{ Param.InputSequence.with_number(Task.Param.Frame) }} |
などのファイルシーケンスパターン/data/timestep_####.h5、または などのシーケンスの最初のファイルを/data/timestep_0001.h5、フレーム 72 のタスクのフレーム/data/timestep_0072.h5の ファイルに変換します。 |
{{ 64 if Param.Precision == 'fp16' else 16 }} |
許可された値を持つ文字列パラメータに基づいてバッチサイズを選択します。 |
{{ '--gpu' if Param.UseGpu else null }} |
ブールパラメータが true の場合に --gpu引数を追加します。式がargsリストnull内の に評価されると、Deadline Cloud は引数を完全に省略します。 |
{{ repr_sh(Param.InputFile) }} |
ファイル名のスペースと特殊文字が安全になるように、bash スクリプトのパスを引用符で囲みます。 |
{{ Param.Cameras.join(',') }} |
シーンでレンダリングするカメラなどのLIST[STRING]パラメータをカンマ区切りの文字列に結合します。 |
Deadline Cloud は、ジョブの送信時に式をチェックします。すべての式を解析し、参照される各パラメータが存在することを確認し、宣言されたパラメータタイプに対してオペレーションを型チェックします。スペルミスのあるパラメータ名または整数で と呼ばれる文字列メソッドは、ワーカーがタスクを取得する前に、エラーを指すメッセージで送信に失敗します。
式は決定論的で自己完結型です。ユーザー定義の関数はありません。式はファイルを読み取ったり、ネットワークに到達したり、環境変数を検査したりできないため、テンプレートの動作はパラメータ値にのみ依存します。
評価には、メモリとオペレーション数の制限も固定されています。これらの制限はテンプレートロジックに十分大きく、ジョブの作成中にテンプレートが無制限のリソースを消費するのを停止します。
テンプレートは、 EXPRにリストすることで式にオプトインしますextensions。拡張機能のないテンプレートでは、 は などのパラメータリファレンスのみ{{ }}を受け入れます{{Param.Frames}}。
式とスクリプトのどちらを使用するかを決定するには、ロジックが属する場所を検討してください。式は、パラメータ値とコマンドライン間のグルーに適した選択肢です。式を使用して、数値の計算、パスの取得、2 つの値からの選択、引数の包含または除外を行います。ファイルシステムを検査したり、アプリケーションを呼び出したり、カスタムロジックで結果を反復したりする必要がある場合は、そのロジックをステップのスクリプトに配置します。スクリプトは、式の結果を引数として受け取ることができます。
式の詳細については、以下のトピックを参照してください。
-
ジョブテンプレートに式を追加する – テンプレートで拡張機能を有効にし、最初の式を記述します。
-
ジョブパラメータタイプ –
EXPR拡張機能が追加するブール型、リスト型、フレーム範囲型など、すべてのジョブパラメータタイプを検索します。 -
式クイックリファレンス – 式で使用できる変数、演算子、関数を検索します。