4.3. タスクの推奨事項の作成


Red Hat Ansible Lightspeed は、Ansible VS Code 拡張機能を介して Visual Studio (VS) Code に統合されます。Ansible VS Code 拡張機能を使用して、タスクの目的に応じたコードの推奨事項をリクエストできます。

Ansible VS Code 拡張機能から以下のタスクを実行できます。

  • 自然言語プロンプトを使用してシングルタスクまたはマルチタスクのリクエストを作成する

    • 単一のタスクプロンプトを作成する

      Ansible ファイルの新しいタスク行の - name: キーにタスクの説明を記述します。たとえば、PostgreSQL サーバーをインストールするタスクを自動化するには、- name: Install postgresql-server のプロンプトを入力します。

    • マルチタスクのプロンプトを作成します。

      Ansible YAML ファイルの新しい行の正しいインデントにカーソルを置き、ポンドキー (#) でプロンプトを開始します。

      アンパサンド記号 (&) を使用して各プロンプトを区切って、タスクの説明を記述します。たとえば、PostgreSQL サーバーのインストールと PostgreSQL の初期設定コマンドの実行というマルチタスクを自動化するには、# Install postgresql-server & run postgresql-setup command のプロンプトを入力できます。

      Ansible Lightspeed サービスはテキストを読み取り、IBM watsonx Code Assistant モデルと対話し、自然言語プロンプトに基づいて Ansible タスクの推奨事項を生成します。

      注記

      現在、Red Hat Ansible Lightspeed は英語のユーザープロンプトのみをサポートしています。ただし、IBM watsonx Code Assistant モデルのトレーニングに使用されたトレーニングデータに英語以外の言語が含まれている場合があります。このようなシナリオでは、モデルは同じ英語以外の言語で行われたプロンプトに対してコードの推奨事項を生成できますが、生成されたコードの推奨事項は正確である場合もそうでない場合もあります。

  • コンテンツソースの一致結果を表示する

    Red Hat Ansible Lightspeed は、生成された推奨コードごとに、候補となるソース、コンテンツ作成者、関連するライセンスなどの詳細を含む、一致するコンテンツソースをリストします。このデータを使用すると、コードの推奨事項の生成に使用されるトレーニングデータソースの洞察を得ることができます。

  • Ansible Lightspeed サービスに関するフィードバックの提供

    Ansible Lightspeed サービスは、組織のパターンを学習し、時間の経過とともにコード推奨のエクスペリエンスを向上させます。生成されたコードの推奨事項がタスクの目的に適しているかどうか、フィードバックを提供できます。このフィードバックにより、Red Hat Ansible Lightspeed with IBM watsonx Code Assistant の提案の品質が向上します。

4.3.2. 単一タスクの推奨事項の作成

Ansible VS Code 拡張機能に自然言語プロンプトを入力することで、シングルタスクに関するコードの推奨事項をリクエストできます。たとえば、PostgreSQL サーバーをインストールするタスクを自動化するには、- name: Install postgresql-server のプロンプトを入力します。Ansible Lightspeed サービスはテキストを読み取り、IBM watsonx Code Assistant モデルと対話して、コードの推奨事項を生成します。

前提条件

  • 次の いずれか の要件を満たしている。

    • Red Hat Ansible Automation Platform と IBM watsonx Code Assistant の両方の試用版または有料サブスクリプションを組織で所有している。
    • Red Hat Ansible Automation Platform の試用版または有料サブスクリプションと、Red Hat Ansible Lightspeed のトライアルアカウントを組織で所有している。
  • Ansible VS Code 拡張機能をインストールして設定した

手順

  1. Red Hat アカウントで VS Code にログインします。
  2. 新しい YAML ファイルを作成するか、既存の YAML ファイルを使用します。

    • YAML ファイルを作成します。

      1. File New Text File を選択します。
      2. 画面の右下で プレーンテキスト をクリックし、言語モードで Ansible を選択します。
      3. ファイルを YAML ファイル形式拡張子 (.yml または .yaml) として保存します。
    • 既存の YAML ファイルを使用します。

      1. 画面右下で、既存の言語モードをクリックし、言語モード設定で Ansible を選択します。

        注記

        VS Code エディターに言語モードセクションが表示されない場合は、コマンドパレットから Configure Language Mode Ansible を選択します。

  3. VS Code の右下のステータスバーに Lightspeed のエントリーが表示されていることを確認します。

    Ansible が目的の言語としてすでに選択されているにもかかわらず、Lightspeed エントリーが表示されない場合は、言語モードとして Ansible を再選択します。以下の図は、VS Code のステータスバーの LightspeedAnsible エントリーを示しています。

    図4.2 選択した言語モードとしての Ansible と Lightspeed の設定

    選択された言語モードとして Ansible と Lightspeed が指定されている設定
  4. オプション: Ansible lint がないというエラーメッセージが表示された場合は、欠けているモジュールをインストールするか、無効にできます。以下のいずれかのタスクを実行します。

    • Ansible lint のインストール: インストールの詳細は、Ansible Lint ドキュメントの インストール セクションを参照してください。
    • Ansible lint を無効にします。

      1. Activity バーから Extensions アイコン Extensions をクリックします。
      2. Installed 拡張機能リストから Ansible を選択します。
      3. Ansible 拡張機能ページで、Settings アイコンをクリックし、Extension Settings を選択します。
      4. Ansible › Validation › Lint: Enabled チェックボックスをオフにします。
  5. Playbook を作成するか、既存の Playbook を使用します。

    詳細は、Playbook のスタートガイド ガイドを参照してください。

  6. Playbook で次の情報を指定して、シングルタスクのコード推奨をリクエストします。

    1. 新しい Ansible タスクを追加するには、正しいインデントで - name: を使用して新しい行を開始します。
    2. タスクの説明の同じ行にある - name: の後に、詳細な自然言語プロンプトを追加します。たとえば、- name: Install postgresql-server のような単一のタスクプロンプトを指定できます。
    3. タスクの説明の直後に Enter を押します。ファイル内の同じ場所にカーソルを置き、コードの推奨の事項に関する結果が表示されるまで待ちます。

      Ansible Lightspeed サービスが稼働し、シングルタスクのコードに関する推奨事項の生成を開始します。

      重要

      Ansible Lightspeed サービスでは、コードの推奨事項の生成にはタスクごとに約 5 秒かかります。マルチタスクプロンプトを使用している場合、Ansible Lightspeed サービスが結果を入力するのに少し時間がかかります (タスク数 × 5 秒)。コードの推奨事項の生成中は、カーソルを移動したりキーを押したりしないでください。カーソルの位置を変更するか、任意のキーを押すと、Ansible VS Code 拡張機能はリクエストをキャンセルし、Ansible Lightspeed サービスはリクエストを処理しません。

      Ansible Lightspeed サービスを使用している場合、Lightspeed 処理ステータスのインジケーターが画面の右下に表示され、コードの推奨事項が生成されていることを示します。

      Lightspeed icon

  7. コードの推奨事項を表示し、推奨事項がタスクの目的と一致していることを確認します。

    次の図は、Ansible Lightspeed サービスがシングルタスク Install postgresql-server に関して生成したコードの推奨事項を示しています。

    Lightspeed single task in progress

  8. コードの推奨事項を受け入れるか、拒否します。

    • コードの推奨事項を使用する場合は、Tab を押します。
    • コードの推奨事項を拒否するには、Esc を押します。

      注記

      推奨事項を拒否した場合は、プロンプトを変更し、タスクの目的に合わせて生成されたコードの推奨事項をもう一度確認できます。

  9. ANSIBLE: LIGHTSPEED TRAINING MATCHES タブで、コンテンツソースの一致結果を表示します。

    次の図は、タスクプロンプト Install postgresql-server の既存の Ansible Galaxy コンテンツで見つかったトレーニングの一致結果を示します。

    既存のコンテンツで一致するトレーニングの結果
  10. Save をクリックして、コードの推奨事項に関する変更を Ansible YAML ファイルに保存します。

4.3.3. マルチタスクの推奨事項の作成

Ansible VS Code 拡張機能で一連の自然言語タスクプロンプトを入力することで、マルチタスクに対するコードの推奨事項をリクエストできます。YAML ファイルでは、プロンプトをポンド記号 (#) で開始し、アンパサンド記号 (&) を使用して各プロンプトを区切ります。

マルチタスクプロンプトの例

# Install postgresql-server & run postgresql-setup command

読みやすさを向上させるために、マルチタスクのインラインプロンプトを複数の行に分割できます。これを実現するには、現在の行をアンパサンド記号 (&) で終了し、次の行をハッシュ記号 (#) で開始します。

複数行に分割されたマルチタスクプロンプトの例

# Create a keypair called lightspeed-keypair & create a vpc & create vpc_id var &
# create a security group that allows SSH & create subnet with 10.0.1.0/24 cidr &
# create an internet gateway & create a route table

Ansible Lightspeed サービスはテキストを読み取り、IBM watsonx Code Assistant モデルと対話して、コードの推奨事項を生成します。

注記

マルチタスクプロンプトを入力するときに、プロンプトに長い行がある場合、ansible-lint 設定に基づき、Ansible VS Code 拡張機能によって警告が表示されることがあります。この警告は読みやすさに関する軽微なエラーであり、推奨コードの出力の品質には影響しません。エラーを解決するには、エラーを無視するか、マルチタスクインラインプロンプトを複数の行に分割して修正します。

前提条件

  • 次の いずれか の要件を満たしている。

    • Red Hat Ansible Automation Platform と IBM watsonx Code Assistant の両方の試用版または有料サブスクリプションを組織で所有している。
    • Red Hat Ansible Automation Platform の試用版または有料サブスクリプションと、Red Hat Ansible Lightspeed のトライアルアカウントを組織で所有している。
  • Ansible VS Code 拡張機能をインストールして設定した

手順

  1. Red Hat アカウントで VS Code にログインします。
  2. 新しい YAML ファイルを作成するか、既存の YAML ファイルを使用します。

    • YAML ファイルを作成します。

      1. File New Text File を選択します。
      2. 画面の右下で プレーンテキスト をクリックし、言語モードで Ansible を選択します。
      3. ファイルを YAML ファイル形式拡張子 (.yml または .yaml) として保存します。
    • 既存の YAML ファイルを使用します。

      1. 画面右下で、既存の言語モードをクリックし、言語モード設定で Ansible を選択します。

        注記

        VS Code エディターに言語モードセクションが表示されない場合は、コマンドパレットから Configure Language Mode Ansible を選択します。

  3. VS Code の右下のステータスバーに Lightspeed のエントリーが表示されていることを確認します。

    Ansible が目的の言語としてすでに選択されているにもかかわらず、Lightspeed エントリーが表示されない場合は、言語モードとして Ansible を再選択します。以下の図は、VS Code のステータスバーの Lightspeed エントリーを示しています。

    図4.3 選択した言語モードとしての Ansible と Lightspeed の設定

    選択された言語モードとして Lightspeed が指定されている設定
  4. オプション: Ansible lint がないというエラーメッセージが表示された場合は、欠けているモジュールをインストールするか、無効にできます。以下のいずれかのタスクを実行します。

    • Ansible lint のインストール: インストールの詳細は、Ansible Lint ドキュメントの インストール セクションを参照してください。
    • Ansible lint を無効にします。

      1. Activity バーから Extensions アイコン Extensions をクリックします。
      2. Installed 拡張機能リストから Ansible を選択します。
      3. Ansible 拡張機能ページで、Settings アイコンをクリックし、Extension Settings を選択します。
      4. Ansible › Validation › Lint: Enabled チェックボックスをオフにします。
  5. Playbook を作成するか、既存の Playbook を使用します。

    詳細は、Playbook のスタートガイド ガイドを参照してください。

  6. Playbook で次の情報を入力して、マルチタスクに関するコードの推奨事項を要求します。

    1. 正しいインデント位置にポンド記号 (#) を入力して、新しい YAML ファイルのコメントを開始します。
    2. アンパサンド記号 (&) を使用して各タスクを区切り、詳細な自然言語プロンプトを順番に追加します。

      マルチタスクプロンプトの例

      # Install postgresql-server & run postgresql-setup command

      読みやすさを向上させるには、マルチタスクのインラインプロンプトを複数の行に分割します。これを実現するには、現在の行をアンパサンド記号 (&) で終了し、次の行をハッシュ記号 (#) で開始します。

      複数行に分割されたマルチタスクプロンプトの例

      # Create a keypair called lightspeed-keypair & create a vpc & create vpc_id var &
      # create a security group that allows SSH & create subnet with 10.0.1.0/24 cidr &
      # create an internet gateway & create a route table

    3. タスクの説明の直後に Enter を押します。ファイル内の同じ場所にカーソルを置き、コードの推奨の事項に関する結果が表示されるまで待ちます。

      Ansible Lightspeed サービスが稼働し、複数のタスクに対するコードの推奨事項の生成を開始します。

      重要

      Ansible Lightspeed サービスでは、コードの推奨事項の生成にはタスクごとに約 5 秒かかります。マルチタスクプロンプトを使用している場合、Ansible Lightspeed サービスが結果を入力するのに少し時間がかかります (タスク数 × 5 秒)。コードの推奨事項の生成中は、カーソルを移動したりキーを押したりしないでください。カーソルの位置を変更するか、任意のキーを押すと、Ansible VS Code 拡張機能はリクエストをキャンセルし、Ansible Lightspeed サービスはリクエストを処理しません。

      Ansible Lightspeed サービスを使用している場合、Lightspeed 処理ステータスのインジケーターが画面の右下に表示され、コードの推奨事項が生成されていることを示します。

      Lightspeed icon

  7. オプション: マルチタスクコードの推奨事項が生成されない場合は、VS Code からログアウトし、Red Hat アカウントを使用して再度ログインします。
  8. コードの推奨事項を表示し、推奨事項がタスクの目的と一致していることを確認します。

    次の図は、マルチタスクプロンプト (Install postgresql-server & run postgresql-setup command:) に対して Ansible Lightspeed サービスによって生成されたコードの推奨事項を示しています。

    Lightspeed single task in progress

  9. コードの推奨事項を受け入れるか、拒否します。

    • コードの推奨事項を使用する場合は、Tab を押します。
    • コードの推奨事項を拒否するには、Esc を押します。

      注記

      推奨事項を拒否した場合は、プロンプトを変更し、タスクの目的に合わせて生成されたコードの推奨事項をもう一度確認できます。

  10. ANSIBLE: LIGHTSPEED TRAINING MATCHES タブで、コンテンツソースの一致結果を表示します。

    次の図は、マルチタスクプロンプト (Install postgresql-server & run postgresql-setup command) の既存の Ansible Galaxy コンテンツで一致したトレーニングの結果を示します。

    既存のコンテンツで一致するトレーニングの結果
  11. Save をクリックして、コードの推奨事項に関する変更を Ansible YAML ファイルに保存します。

4.3.4. Ansible Lightspeed トレーニングマッチの表示

Red Hat Ansible Lightspeed with IBM watsonx Code Assistant 機械学習モデルは、次のコンテンツでトレーニングされます。

  • 既存のパブリックまたはプライベート Git リポジトリー
  • Ansible Galaxy のコンテンツ

IBM watsonx Code Assistant の生成 AI テクノロジーと、モデルのトレーニングに使用された Ansible コンテンツの種類が原因で、生成したコードの推奨事項に寄与したトレーニングデータを特定できません。ただし、Ansible Lightspeed は、生成されたコードの推奨事項の取得元として考えられる内容を理解できるようにします。

Red Hat Ansible Lightspeed は、生成されたコードの推奨事項ごとに、候補となるソース、コンテンツ作成者、関連するライセンスなどの詳細を含む、一致するコンテンツソースをリストします。このデータを使用すると、コードの推奨事項の生成に使用されるトレーニングデータソースの洞察を得ることができます。

VS Code で自然言語プロンプトを入力し、生成されたコードの推奨事項を確認した後、ANSIBLE: LIGHTSPEED TRAINING MATCHES タブでコンテンツソースの一致を表示できます。

たとえば、次の図は、マルチタスクの推奨事項 (Install postgresql-server & run postgresql-setup command) のトレーニング検索結果を示しています。

図4.4 マルチタスクの推奨事項に関するトレーニングデータの一致結果

マルチタスクの推奨事項に関するトレーニングデータの一致結果

この機能を使用すると、関連するトレーニングデータに紐付けられているオープンソースのライセンス条項を確認できます。ただし、コードの微調整に使用されるトレーニングデータや出力の推奨自体が著作権で保護されている可能性、また、出力が著作権ライセンス条項で管理されているトレーニングデータを再現している可能性はほぼありません。

注記

Red Hat は、Red Hat Ansible Lightspeed with IBM watsonx Code Assistant で生成された提案について、著作権またはその他の知的財産権を主張しません。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る