コード生成の詳細

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む5読むのに数分
  • AI が生成するコードが、Now Platform でスクリプトを作成する開発者にとってどれだけ役立つかを説明します。

    コード生成の概要

    コード生成では、 および のスクリプトステップフローデザイナーのフォームNow Platform上の JavaScript エディターで、テキストコード変換およびコード補完の提案が提供されます。での Now Platform スクリプティング経験のレベルが異なる開発者は、コード生成を使用してカスタムスクリプトの作成を開始したり、スクリプトをより効率的に反復処理したりできます。

    注:
    コード生成を使用するには、開発者に now.assist.creator ロールが割り当てられている必要があります。コード生成の使用の詳細については、次のリンクを参照してください AI を利用したコード生成を使用してプロンプトからスクリプトを生成する
    コード提案を生成するために、次のタイプのプロンプトを表示できます。
    テキストからコードへ
    コードの目的を説明する、コードコメント内のテキスト。例:
    // Validate emails using regex
    コード補完
    自動的に完了する関数の開始。例を次に示します。
    var email = current.getValue('email');
    var regex =  
    
    単一 (テキストとコードの組み合わせ)
    コードの目的と、コードをどのように開始するかの例を記述した、コードコメント内のテキスト。例を次に示します。
    // Validate emails using regex
    var email = current.getValue('email');
    var regex =  
    

    コード生成ワークフロー

    1. 開発者は、コード コメント、コード、またはテキストとコードを組み合わせて、テキスト形式でプロンプトを提供します。
    2. 開発者は、コード提案の生成をトリガーします。インスタンスで自動コード提案が有効になっている場合、開発者は入力やカーソルの移動を 2.5 秒間停止したときにコード提案を受け取ります。
      次の例では、プロンプトは 3 行目の // Validate email using regex (正規表現を使用したメールの検証) です。コード提案はプロンプトの後の行に表示されますが、承認するまでスクリプトには追加されません。
      図 : 1. AI が生成したコード提案
      スクリプトエディターでのプロンプトとコードの提案。
    3. 開発者は、AI が生成したコード提案をレビューし、承認または却下します。
      • 承認すると、コードがスクリプトに追加され、レビューに基づいて必要な編集を行うことができます。
      • 却下すると、コードはスクリプトに追加されず、プロンプトを変更して新しいコード提案を生成できます。
      次の例では、行番号の横にある行は、AI によって作成され、編集されていないコードを示します。AI が生成したコードを編集した場合、それらのコード行に行インジケーターは表示されません。
      図 : 2. AI が生成したコード行
      AI によって生成されたコード行を示す行。

    コード生成の利点

    メリット 機能 ユーザー
    スクリプトの品質を向上させる テキストからコードへ、およびコード補完 開発者
    繰り返しのコーディングタスクを自動化する
    コードの検索や呼び出しにかかる時間を短縮する
    AI が生成したコード提案を自動的に取得する 自動コード提案 開発者、管理者
    AI が生成したコードを特定する AI が生成したコードの追跡 開発者、管理者

    プロンプトの作成とコードのレビュー

    コード生成を使用して有用で正確なスクリプトを作成するには、強力なプロンプトの記述、プロンプトの改訂の実験、プロンプト ガイダンスの文書化、AI で生成されたコードのレビューが必要です。より適切なコード提案を生成するには、次のガイダンスに従い、プロンプトの例については次の表を参照してください。

    プロンプトの作成:

    • 明確で具体的、かつ簡潔なプロンプトを記述してください。
    • 期待される結果とコンテキストを指定し、タスク要件、特定の API (既知の場合)、制約などの必要な詳細を含めます。

    プロンプトを試す:

    • タスクの指示を調整し、例を組み込んでから、さまざまなプロンプトのスタイルと詳細レベルでコード提案がどのように異なるかを観察してください。
    • 単一のプロンプトでスクリプトを開始する方法の例として、短いコードスニペットを含めてみてください。
    • 変更や仕様を満たすプロンプトを生成するための指示を含めて、プロンプトを追跡します。この追跡によって、比較分析のために過去の結果を簡単に再生成できます。

    改良して実験すると、 はこの Now LLM フィードバックを使用して学習し、改善します。

    コードのレビュー:

    • AI で生成されたコードの厳格で詳細なレビューを実装して、その精度、効率、およびコーディング標準への準拠度を判断します。
    • 管理された環境でテストケースに対してコードを実行し、要件に従って機能することを確認します。
    表 : 1. コード生成のプロンプトの例
    強力なプロンプト 弱いプロンプト メモ
    // get incidents with related tasks (// 関連タスクを含むインシデントを取得する) // get incidents with tasks(// タスクを含むインシデントを取得する)

    十分な詳細が含まれています。

    // use glide aggregate to count number of P1 incidents closed between 3rd March to 13 April assigned to admin (// Glide 集計を使用し、3 月 3 日から 4 月 13 日の間に管理者にアサインされたクローズ済みの P1 インシデントの数をカウントする) // count P1 incidents between 3-3 and 4-13 (// 3-3 から 4-13 の間の P1 インシデントをカウントする)

    API 名とより具体的な言語が含まれています。

    // if open change request is P1, do not allow reducing the severity unless it's the creator (// オープンな変更要求が P1 である場合、作成者でない限り重大度を引き下げることはできない) // don’t allow changing P1 change requests (// P1 変更要求の変更は許可しない)

    変更すべきではない点について、より具体的な指示が含まれています。

    // gliderecord of the most recent change (// 直近の変更の GlideRecord) // latest change (// 最新の変更)

    API 名とより具体的な言語が含まれています。