フロー生成
生成 AI で複数ステップのフローを作成します。サポートされているフロートリガーとアクション入力に対して適切なデータピル値を生成します。
Activation (アクティブ化)
フロー生成は、クリエーターの Now Assist (sn_now_creator) アプリケーションとともにインストールされるスキルです。ServiceNow Store の Web サイトからこのアプリケーションをインストールできます。
メリット
- ワークフロースタジオ のフローの説明から複数ステップのフローを構築します。サポートされているトリガーとアクションは、適切なデータピル値で構成されています。
- フロー内の各アイテムの生成に使用されるテキストの指示を確認します。
- 標準のフロー設計パターンを使用します。
サポート対象のユーザーインターフェイス
ワークフロースタジオのユーザーインターフェイスからフロー生成スキルにアクセスします。
サポートされているトリガータイプ
- スケジュールされたトリガー
- レコードトリガー
- 作成日時
- 作成時または更新時
- 更新日時
- サービスレベルアグリーメントのトリガー
- 受信メールトリガー
- サービスカタログトリガー
注釈に使用される方向の表示
Xanaduパッチ 1 リリース以降、フロー生成スキルでは、フローに追加された各アイテムの下にフロー注釈が表示されます。フロー注釈には、フロー生成スキルがアイテムの生成に使用したテキストの指示が含まれています。これらのフロー注釈を使用して、より適切なテキストの指示をビルドし、指示が特定のアクション、フローロジック、およびサブフローにどのようにマッピングされるかについてのフィードバックを受け取ることもできます。
この例では、フロー生成スキルが特定のテキストの方向をフローアイテムにマッピングする方法を示します。
| 方向 | 生成されたフローアイテム |
|---|---|
| 毎日午前 0 時に実行します | 日次トリガー |
| 過去 1 日に新しく作成されたすべての問題レコードを検索します | 「複数レコードのルックアップ」アクション |
| それらに対して反復します | For Each フローロジック |
| アサインされていない場合 | If フローロジック |
| 問題を更新して、問題をレベル 1 トリアージグループにアサインします | 「レコードの更新」アクション |
| ステータスを [トリアージ済み] に移行し、 | 「レコードの更新」アクション |
| グループに通知を送信します | [通知を送信] アクション |
サポートされているアイテムのデータピル構成
Xanaduパッチ 3 リリース以降、フロー生成スキルは、サポートされているトリガー、アクション、およびフローロジックに適切なデータピル値を生成します。フロー生成スキルは、データピル値が生成されたときに、フロープレビューをデータピル値で更新します。フロープレビューの生成中に、生成されたデータピル値を含む各アイテムの横にチェックマークアイコンが表示されます。フローコンポーネントの名前と、元のテキストの指示を含むフロー注釈の間に生成されたデータピル値を確認できます。フロープレビューでは、データピル値が生成されるのを待機しているアイテムの横にアニメーション化された作業用アイコンが表示されます。フロープレビューがデータピル値を生成している間、フロープレビューの生成を停止するオプションが表示されます。フロープレビューの生成を停止する場合は、フローを手動で保存して編集するか、指示を編集して別のフロープレビューを生成する必要があります。
- 1. [完了] アイコン
- データピル値を生成したフローコンポーネントのカードに緑色のチェックマークアイコンが表示されます。これらのステータスアイコンは、システムがフロープレビューを生成している間のみ表示されます。
- 2. 生成されたデータピル値
- フローコンポーネント名と、フローコンポーネントの生成に使用されるテキストの指示の間にデータピル値のプレビューが表示されます。長いデータピル値のプレビューが表示されます。フローコンポーネントを選択すると、プロパティペインに完全なデータピル構成を表示できます。
- 3. 作業アイコン
- データピル値を生成している現在のカードに、アニメーションの作業用アイコンが表示されます。データピル値をまだ生成していないフローコンポーネントに対して、静的に機能するアイコンが表示されます。これらのステータスアイコンは、システムがフロープレビューを生成している間のみ表示されます。
- 4. [生成の停止] ボタン
- データピル値の生成中は、[生成の停止] ボタンが表示されます。フローの生成を停止して、フローを手動で保存して編集するか、フロープレビューの生成に使用する Now Assist 指示を更新することができます。
テーブル名参照のハッシュタグサポート
Xanaduパッチ 3 リリース以降では、ハッシュタグ文字を入力してからテーブルラベルまたはテーブル名を入力することで、Now Assist方向の特定のテーブルを参照できます。入力すると、オートコンプリートによって入力内容と一致するテーブルが表示されます。フロー生成でトリガーまたはレコードベースのアクションの正しいテーブルが選択されるようにする場合は、指示にハッシュタグ参照を追加します。ハッシュタグ参照は、ユーザー [imp_user] テーブルやユーザー [sys_user] テーブルなど、類似または同一のラベルを持つテーブルを LLM が区別するために特に役立ちます。
- 1. ハッシュタグのテキスト
- システムでは、ハッシュタグをテーブルラベルまたはテーブル名への参照として認識します。「戦略的優先事項」などのテーブルラベル、または「sn_gf_strategy」などのテーブル名を入力できます。
- 2. オートコンプリートテーブル名の提案
- ハッシュ タグ テキストに一致するテーブル名の提案が表示されます。オートコンプリート提案を選択して、その特定のテーブルのデータを Now Assist 方向で使用できます。
- 3. テーブルへのハッシュタグリンク
- 選択したテーブルへの下線付きリンクテキストが表示されます。
Retrieval Augmented Generation (RAG) のサポート
フロー生成では、Retrieval Augmented Generation (RAG) を使用して、インスタンスで利用できる一般的な最近公開されたアクションとサブフローの名前を含めます。ワークフロースタジオ は、一般的な最近公開されたアクションとサブフローのリストを 1 時間ごとに更新し、フロー生成に利用できるようにします。フロー生成の指示で、公開されたアクションとサブフローを名前でリストできます。
プロンプトの例
フローとサブフローの作成に使用できる例を次に示します。
- フロープロンプト例 1:スケジュールされたトリガー
- このプロンプトを使用して、スケジュールされたトリガーでフローを作成できます。
毎日深夜に実行するフローを作成し、過去 1 日に新しく作成されたすべての問題レコードを検索します。それらに対して反復します。それらがアサインされていない場合は、それを更新して、問題をレベル 1 トリアージグループにアサインし、ステータスを [トリアージ済み] に移行して、グループに通知を送信します。
- フロープロンプト例 2:サービスレベルアグリーメント (SLA) タスクトリガー
- このプロンプトを使用して、サービスレベルアグリーメント (SLA) タスクトリガーでフローを作成できます。
SLA トリガーを使用してフローを作成します。SLA の 50% が完了するのを待機してから通知を送信します。次に、SLA の 75% が完了するのを待機してから別の通知を送信します。SLA が 100% 完了したら、if ステートメントを実行して、SLA の不履行がなかったか、完了したかを判断します。
- フロープロンプト例 3:レコードトリガー
- このプロンプトを使用して、レコードトリガーでフローを作成できます。
モデルが未承認のデモである場合、変更要求が作成または更新されるたびに、次の操作を並行して実行します。最初に、変更承認ポリシーを適用します。承認が認められたかまたはスキップされた場合は、変更要求レコードを承認済みとして更新します。そうでない場合は、変更要求レコードを却下済みとして更新されます。モデルをもう一度評価します。却下された場合は、メールを送信します。2 番目に、active が false になるまで待機し、変更要求の承認を無視して、変更モデルを評価します。
- サブフロープロンプト例 4:レコード入力
- このプロンプトを使用して、レコード入力でフローを作成できます。
問題入力の名前をログに記録するサブフローを作成し、最終更新担当者がアサイン先と同じかどうかを確認します。サブフロー出力から結果を出力します。
- サブフロープロンプト例 5:承認入力
- このプロンプトを使用して、承認のためのサブフローを作成できます。
指定されたジョブ構成 sys id と作業負荷ジェネレーターパラメーターを使用してフローランチャージョブを作成するためのサブフローを作成します。ジョブ sys id が空でない場合は、それをジョブ実行 id サブフロー出力としてアサインします。続いて、作成されたジョブ sys id のフローランチャーを開始し、サブフロー出力をアサインします。
- サブフロープロンプト例 6:カタログタスク
- このプロンプトを使用して、カタログタスクを作成するサブフローを作成できます。
ラップトップがアサインされているすべてのユーザーに対して、オペレーティングシステムをすぐに更新する必要があることを示すメールを送信し、それを実行するための手順を含む SMS を送信するサブフローを作成します。
これらの例は、ハッシュタグを使用して特定のテーブルを参照する方法を示しています。
- フロー 7 の例:戦略的優先事項 [sn_gf_strategy] と目標 [sn_gf_goal]
- 新しい #Strategic 優先度の作成時に、タイプが主要イニシアチブで、開始日が終了日より前である場合は、戦略的優先事項レコードの下に #Goal があるかどうかを確認します。目標が存在しない場合は、所有者にメールを送信します。
- 例 8:転送注文 [alm_transfer_order]
- #Transfer 注文がステージ出荷準備に更新されたら、[配送先の倉庫] フィールドに値があることを確認します。空でない場合は、新しい転送注文ラインを作成し、トリガーとなる転送注文レコードにリンクします。
- 例 9:アセスメントメトリクスタイプ [asmt_metric_type]
- 毎日午後 7 時に、ライブフィードの新しい #Assessment メトリクスタイプレコードがあるかどうかを確認します。ページネーション設定が [カテゴリ] の場合は、それぞれについて査定人ロールをアセスメントマネージャーユーザーに追加します。
- 例 10:テストスイート [sys_atf_test_suite] とテスト [sys_atf_test]
- 新しい #Test スイートレコードが作成または更新されたら、その中に子 #Test レコードがあるかどうかを確認します。ない場合は、[アクティブ] フィールドを false に設定します。
プレースホルダーステップ
一般的なガイドライン
- 常に最初にトリガーを説明する
- 最初にフロートリガーとそのデータ条件について説明します。トリガーの後に、アクションとフローロジックをフローに含める順序と同じ順序で記述します。
- スペルミスを避ける
- アクション、フローロジック、またはテーブルの名前のスペルを間違えないようにします。テーブル名を間違えないように、ハッシュタグの使用を検討してください。
- 要求は正確かつ詳細に記述してください
- 要求が正確でわかりやすいことを確認してください。フロートリガー、レコードデータ、アクション、およびフローロジックをできるだけ詳しく説明してください。
- 要求は簡潔かつ直接的に伝えてください
- まず、フローを生成するかサブフローを生成するかを指定します。たとえば、「次のようなフローを作成する」というフレーズを使用してフローを生成します。フローの各ステップを順番に記述します。
- アクション、フローロジック、テーブルを名前で参照
- 指示の一部としてアクション、フローロジック、およびテーブル名を使用します。ルートが実際の名前に近いほど、LLM がそれらを認識しやすくなります。たとえば、 それぞれの テキストを使用するか、 以下を並列で実行 して、それらの特定のフローロジックオプションを参照します。テーブル名には、ハッシュタグを使用することを検討してください。
- 生成されたフローアウトラインと入力値を確認する
- 生成されたフローアウトライン内の各アクション、フローロジック、サブフローを確認する。生成された入力値を確認し、関連するデータ参照が含まれていることを確認します。
- ハッシュタグを使用して特定のテーブルのデータを参照する
- 特定のテーブル名を選択するには、ハッシュタグを使用します。ハッシュタグは、ユーザー [sys_user] テーブルやユーザー [imp_user] テーブルなど、同一または類似の表示名を持つテーブルを区別するのに特に役立ちます。
- Do the following in parallel フローロジックの分岐を区別するために数字を使用します
- 各並列分岐に番号を追加します。たとえば、「P1 インシデントが作成されたら、次の処理を並行して実行します。1. その簡単な説明をログに記録します。2.Look up the user assigned to it and send an email」は、2つの分岐があることを明確にしています。
- 正確な値を設定するには、引用符を使用します
- LLM が操作名とデータ値を区別できるように、正確なデータ値を引用符で囲みます。たとえば、「値をログに記録します。「インシデントが再オープンされました」」という指示により、「インシデントが再オープンされました」というテキストがデータ値であることが明確になります。