Skip to main content

コマンドを使用したタスクの並列実行

スラッシュ コマンドを使用すると、 Copilot CLI は複雑な要求をより小さなタスクに分割し、並列で実行し、効率とスループットを最大化できます。

イントロダクション

Copilot CLI の スラッシュ コマンドは、実装計画を作成し、サブエージェントによって並列に実行できる、より小さな独立したタスクに分割するように設計されています。 これにより、複数の手順を含む複雑な要求を迅速に完了できます。

この記事では、 スラッシュ コマンドの概要について説明します。 使用方法の詳細については、 AUTOTITLE を参照してください。

の動作のしくみ

コマンドを使用すると、メイン Copilot エージェントがプロンプトを分析し、小さなサブタスクに分割できるかどうかを判断します。 サブタスクとその依存関係の性質に基づいて、サブエージェントで効率的に実行できるかどうかを評価します。 サブタスクの一部またはすべてをサブエージェントに割り当てる場合は、オーケストレーターとして機能し、サブタスク間のワークフローと依存関係を管理します。 可能であれば、オーケストレーター エージェントはサブエージェントを並列で実行し、タスク全体をより迅速に完了できるようにします。

使用することで得られる利点

  • タスクの完了速度: コマンドを使用する主な利点は、サブタスクを並列で実行することで、大規模なマルチパート タスクをより迅速に完了できることです。 大規模なタスクの一部を並行して処理できるかどうかは、サブタスク間の依存関係によって決まります。 新機能の一連のテストの作成などの一部のタスクは、並列化に適しており、通常、 スラッシュ コマンドを使用すると、より高速に完了します。

  • 特殊化: 特定の種類の作業に特化したカスタム エージェントを定義している場合は、サブエージェントで使用できます。 これにより、サブエージェントは、作業している特定のサブタスクに最適なカスタム エージェントを使用して特殊化できます。

    既定では、サブエージェントは低コストの AI モデルを使用します。 ただし、Copilot に、作業の一部に具体的なモデルを使用するように指示できます。 たとえば、より大きなプロンプト内で、 を指定できます。 サブエージェントが特定の AI モデルを指定するカスタム エージェント プロファイルを使用する場合、そのモデルはサブエージェントによって使用されます。 特定のモデルを使用すると、特定の種類のサブタスクの品質が向上する場合があります。

    カスタム エージェントが使用可能な場合、Copilot は、特定のサブタスクを完了するために使用するかどうかを決定します。 ただし、特定のカスタム エージェントが特定のサブタスクに適していることがわかっている場合は、 を使用してプロンプトでこれを指定できます。 たとえば、より大きなプロンプト内では、 。

    詳しくは、「AUTOTITLE」をご覧ください。

  • コンテキスト ウィンドウ: 各サブエージェントには、メイン エージェントやその他のサブエージェントとは別の独自のコンテキスト ウィンドウがあります。 これにより、各サブエージェントは、大規模なタスクの完全なコンテキストに圧倒されることなく、特定のタスクに集中できます。

を使用する必要がある場合

  • 大規模または複雑なタスク: 要求に複数の独立した手順 (複数のファイルのリファクタリング、依存関係の更新、モジュール間でのテストの実行など) が含まれている場合。
  • 並列化可能な作業: タスクを相互に依存しないサブタスクに分割できる場合。
  • 自動化されたワークフロー: 大規模なタスクを可能な限り迅速に完了する必要がある場合 (たとえば、自動パイロット モードを使用してCopilot が自律的に動作できるようにする場合)。

考慮すべき点

  • Premium 要求の使用状況: CLI でプロンプトを送信し、Copilot が選択した大規模言語モデル (LLM) と対話して応答を生成すると、Premium 要求が使用されます。 使用される Premium 要求の数は、現在選択されているモデルによって異なります。 LLM との対話が増えるほど、Premium 要求が消費されます。

    各サブエージェントは、メイン エージェントとは独立して LLM と対話できるため、サブエージェントによって実行される作業を小さなタスクに分割すると、作業がメイン エージェントによって処理された場合よりも多くの LLM 相互作用が発生する可能性があります。 そのため、プロンプトで を使用すると、より多くの Premium 要求が消費される可能性があります。

    課金対象の Premium 要求の使用量は、乗数を使用して決定されます。 乗数は、使用するモデルによって異なります。 /modelスラッシュ コマンドを使用して、現在選択されているモデルとその乗数を確認し、必要に応じてモデルを変更します。 詳細については、「GitHub Copilot における要求」および「GitHub Copilot の各プランの課金について」を参照してください。

  • タスクの構成: 複数のサブエージェントを独立したサブタスクに分解できる場合は、複数のサブエージェントによる実行に最適です。 要求が本質的に順次である場合は、 スラッシュ コマンド モードを使用してもメリットが得られない可能性があります。

モードとオートパイロット モードの関係

スラッシュ コマンドはオートパイロット モードでよく使用されますが、これらは個別に使用できる個別の機能です。

  • Autopilot モード を使用すると、Copilot は、タスクが完了するまで自律的に作業を続け、それ以外の場合はユーザーの介入を必要とする要求に自動的に応答できます。
  • はサブエージェントを使用してタスクを並列で実行し、メイン エージェントはワークフロー全体を管理します。 スラッシュ コマンドは、オートパイロット モードとは別に対話型セッションで使用できます。

オートパイロット モードで を使用する一般的なワークフローは、次のようになります。

  1. ShiftTab キーを押してプラン モードに切り替え、Copilot CLI を使用して実装計画を作成します。
  2. 完成したプランに複数の要素が含まれており、 の候補として適していることを認識します。
  3. プラン完了時に表示される [プランを承認して autopilot + /fleet で構築する] オプションを選択します。

オートパイロット モードの詳細については、「 AUTOTITLE」を参照してください。

詳細については、次を参照してください。

  • AUTOTITLE
  • AUTOTITLE
  • AUTOTITLE