Alibaba Cloud CLI のヘルプ情報とエラーメッセージは、人間が読むことを想定して記述されています。AI エージェントがこのコンテンツを解析する場合、解析コストと再試行回数が増加します。AI モードを有効にすると、CLI は各リクエストのユーザーエージェントで呼び出し元を AI エージェントとして識別します。また、CLI のローカル出力も、プログラムで解析しやすい形式に変わります。
概要
AI モードには、以下の変更点があります。
-
Alibaba Cloud サービスは、この識別子を使用して、トラブルシューティングや呼び出し統計のために、エージェントによる呼び出しと手動操作を区別します。
-
エージェントは CLI の出力を直接解析できるため、再試行回数が削減されます。
-
AI モードは、API 呼び出しの権限やリクエストパラメーターを変更しません。
-
AI モードは上位互換性を保証しません。自動化ワークフローで AI モードを使用する場合、固定の出力構造に依存しないでください。
AI モード有効時の動作変更
AI モードの機能には、Alibaba Cloud CLI 3.5.0 以降が必要です。AI モードを有効にすると、CLI のローカル出力は以下のように変更されますが、これらに限定されません。
-
CLI は、よりコンパクトな形式でヘルプ情報を返します。
-
CLI は、失敗の原因と次のステップに関する情報を含む、構造化された形式でエラー情報を返します。
-
CLI は、パラメーター値をローカルで検証します。
-
出力にカラー制御文字が含まれなくなります。
コンテンツが要約された形式で表示される場合、完全なコンテンツを取得する方法が出力に示されます。
AI モードの管理
AI モードは aliyun configure ai-mode コマンドグループで管理します。
現在の設定の表示
次のコマンドを実行して、AI モードの現在の設定を表示します。
aliyun configure ai-mode show
出力例:
{
"enabled": true,
"user_agent": "",
"effective_user_agent": "AlibabaCloud-Agent-Skills",
"request_user_agent_suffix": "AlibabaCloud-AIMode/enabled AlibabaCloud-Agent-Skills",
"config_file": "/home/user/.aliyun/ai-mode.json"
}
フィールドの説明:
|
フィールド |
説明 |
|
|
AI モードが有効かどうかを示します。 |
|
|
カスタムのユーザーエージェントのスキル識別子セグメントです。空の値は、デフォルト値が使用されることを意味します。 |
|
|
実際に適用されるスキル識別子セグメントです。カスタム値、またはデフォルト値の |
|
|
リクエストのユーザーエージェントに追加される完全なサフィックスです。 |
|
|
設定ファイルへのパスです。 |
AI モードの有効化と無効化
コマンドによる設定
次のコマンドを実行して、AI モードを有効または無効にします。
# AI モードを有効化
aliyun configure ai-mode enable
# AI モードを無効化
aliyun configure ai-mode disable
環境変数による設定
AI モードのステータスは、以下の環境変数を通じて渡されます。これらの変数を設定することで、AI モードを制御できます。
|
環境変数 |
説明 |
|
|
値が |
|
|
ユーザーエージェントのスキル識別子セグメントを設定します。AI モードが有効な場合、この値がデフォルト値の |
エージェントのランタイム環境で export ALIBABA_CLOUD_CLI_AI_MODE=1 を実行すると、現在のセッションで AI モードが有効になります。この設定はセッション内のすべてのコマンドに適用されます。各コマンドに --cli-ai-mode フラグを追加する必要はありません。設定を永続化するには、configure ai-mode コマンドを使用します。
ユーザーエージェントのスキル識別子セグメントのカスタマイズ
デフォルトのスキル識別子セグメントは AlibabaCloud-Agent-Skills です。異なる AI エージェントを区別するために、この値をカスタマイズします。
# カスタムのスキル識別子セグメントを設定
aliyun configure ai-mode set-user-agent --user-agent "MyAgent/1.0"
# デフォルト値にリセット
aliyun configure ai-mode reset-user-agent
カスタマイズ後、リクエストのユーザーエージェントのサフィックスは次のようになります。
AlibabaCloud-AIMode/enabled MyAgent/1.0
コマンドごとのオーバーライド
OpenAPI 呼び出しを行う際、コマンドラインフラグを使用し、そのコマンドに限り AI モードのグローバル設定を上書きできます。
|
フラグ |
効果 |
|
|
AI モードがグローバル設定で無効の場合でも、このコマンドに限り AI モードを有効にします。 |
|
|
AI モードがグローバル設定で有効の場合でも、このコマンドに限り AI モードを無効にします。 |
両方のフラグが同じコマンドに含まれる場合、--no-cli-ai-mode が優先されます。
例:
# AI モードがグローバル設定で無効でも、このコマンドでは AI 識別子が追加されます
aliyun ecs DescribeInstances --cli-ai-mode
# AI モードがグローバル設定で有効でも、このコマンドでは識別子は追加されません
aliyun ecs DescribeInstances --no-cli-ai-mode
設定ファイル
AI モードの設定ファイルを手動で表示またはバックアップするには、お使いのオペレーティングシステムに応じた以下のパスにあるファイルを参照してください。
|
オペレーティングシステム |
パス |
|
Linux / macOS |
|
|
Windows |
|
ファイル形式の例:
{
"enabled": true,
"user_agent": "MyAgent/1.0"
}
フィールドの説明:
|
フィールド |
タイプ |
説明 |
|
|
boolean |
AI モードを有効にするかどうかを指定します。デフォルト: |
|
|
string |
カスタムのユーザーエージェントのスキル識別子セグメントです。空の場合、デフォルト値の |
設定ファイルが存在しない場合、AI モードはデフォルトで無効になります。ファイルを手動で編集する代わりに、aliyun configure ai-mode コマンドを使用して設定を管理してください。
優先順位
AI モードの設定は、以下の優先順位 (高いものから低いものへ) で適用されます。
-
コマンドラインフラグ (
--cli-ai-mode/--no-cli-ai-mode) -
環境変数 (
ALIBABA_CLOUD_CLI_AI_MODE) -
設定ファイル (
ai-mode.json)
優先順位の高い設定が有効になると、優先順位の低い設定は無視されます。--cli-ai-mode と --no-cli-ai-mode が同じコマンドで指定された場合、--no-cli-ai-mode が優先されます。
スコープ
AI モードは、以下のシナリオで有効になります。
-
OpenAPI 呼び出し:RPC および RESTful リクエストの両方で、AI 識別子セグメントが
User-Agentに追加されます。 -
プラグインコマンド:CLI は、
ALIBABA_CLOUD_CLI_AI_MODEおよびALIBABA_CLOUD_CLI_AI_USER_AGENT環境変数を介してプラグインの子プロセスに AI モードのステータスを渡し、プラグインが独自のリクエストに識別子を追加できるようにします。
付録:サブコマンドリファレンス
aliyun configure ai-mode で利用可能なサブコマンドは次のとおりです。
|
サブコマンド |
説明 |
|
|
現在の AI モード設定を表示します。 |
|
|
AI モードをグローバルに有効化します。 |
|
|
AI モードをグローバルに無効化します。 |
|
|
カスタムのユーザーエージェントのスキル識別子セグメントを設定します。 |
|
|
スキル識別子セグメントをデフォルト値の |
|
|
Configure ossutil plugin settings (JSON string). |
|
|
Clear ossutil plugin settings. |