Now AssistにFlow Designerでフローを作らせてみた!

技術

Now Assist

社内業務に関するシステムを一元化して運用・管理できるクラウドサービス「ServiceNow」。
株式会社KYOSOでは、これまでの豊富な運用経験をもとに、ServiceNowの企画立案から運用・保守、内製化までトータルでサポートしています。

はじめに

ServiceNowのAI機能である「Now Assist」には業務効率を高め、生産性を飛躍させるための様々な機能が備わっています。
前回はこちらの記事でNow Assist for Creatorについての検証を行いました。
Code Assist機能でビジネスルールの自動生成を行うことができ非常に便利な機能でした。
本記事では、Flow Designerで使用することができる「Flow Assist」に焦点を当て、検証手順および結果をまとめました。

Flow Assistとは

Flow AssistはFlow Designer を用いたフロー作成をAIの力でサポートします。
具体的には、テキストで指示するだけでワークフローを自動生成したり、既存フローの次のステップをAIが推奨してくれたりするといったことが可能になります。
これにより、手作業での開発時間を大幅に短縮し、開発効率を向上させることができます。

検証内容

Flow Assistの使用感を確認します。
また、以下のフローをFlow Assistを用い作成します。
インシデントの作成時に「緊急度」の内容によって処理を実行します。

  • 「高」の場合
    「アサイン先グループ」:名前が「承認グループ」であるグループをアサイン。
    「期日」に作成時間の1週間後の日時を記入。
    「説明」に「急ぎの案件です。」と記入。
  • 「高」以外の場合
    「アサイン先」:ユーザー名が「ヘルプデスク 担当A」であるユーザーをアサイン
    「期日」に作成時間の2週間後の日時を記入。

検証環境

以前行ったNow Assist for Creatorについての検証と同じなので割愛

検証実行

1. フローの作成

検証内容に記入した内容をFlow Designerで作成するため「Now Assistの指示」に以下のように記入しました。

インシデントテーブルに新しいレコードが作成された時をトリガーとする。
更新時はトリガーしない。
「緊急度」が「高」であれば以下の処理を実行。
・「アサイン先グループ」に「承認グループ」をアサインする。
・「期日」を一週間後に指定する。
・「説明」に「急ぎの案件です。」と記入。
「緊急度」が「高」以外であれば、以下の処理を実行
・「アサイン先」に「ヘルプデスク 担当A」をアサインする。
・「期日」を二週間後に指定する。

2. フローのプレビュー生成

「フロープレビューの生成」をクリックすると、フローの生成が開始されました。
しばらくすると、フローのプレビューが表示されました。

一見するとフローの構造自体は、問題なく作成されているように見えました。
しかし、レコードの更新が実行する処理の回数分行われているので修正が必要だと思われました。

また、この画面であれば指示した文章を修正し「プレビューを再生成」することで、フローのプレビューを修正することが可能であることが確認できました。
しかし、各ステップの処理内容などフローの詳細はこの画面からでは確認できず、「フローを保存して編集」する必要があるようでした。

3. フローの生成

「フローを保存して編集」をクリックすると、従来のフローの編集画面へと移りました。


初期作成時には、画面上部に以下のような文章がポップアップ表示され、Now Assistを使用して作成されたことが明示されていました。


また、ポップアップを削除すると紫色で「AI」マークが表示されており、あとからフローを見直す際にも一目でNow Assistを使用して作成されたことが確認できます。

また、この画面に移ると、1.のような言語でのフローの生成はできなくなることが確認できました。
自動生成を行いたい場合は「フローを保存して編集」前に実行しておく必要があるようでした。

4. フローの各ステップの確認

  • トリガー


問題なく生成されていました。
また、ラベルも自動で入力されていました。

  • IF文


問題なく生成されていました。
こちらに関してはラベルは入力されていませんでした。

  • IF文がTrueであった場合のレコードの更新

アサイン先グループ


更新するフィールド(アサイン先グループ)までは生成されていましたが、実際にアサインするグループまでは生成されていませんでした。
ラベルは自動で入力されていました。

期日


更新するフィールドも更新内容も生成されていませんでした。
ラベルは自動で入力されていました。
他のステップとどのような違いがあるのでしょうか。

説明


更新するフィールドと内容のどちらも生成されていましたが、なぜか内容は英語でした。
表示する内容は問題ないように思えます。
ラベルには日本語で入力されていますがどうしてでしょうか。

  • IF文がFalseであった場合のレコードの更新

アサイン先


アサイン先グループの時と同様に、更新するフィールドまでは生成されていましたが、更新内容までは生成されていませんでした。
参照フィールドの生成は難しいのではないかと感じました。

期日


こちらも以前のステップと同様に更新するフィールドも更新内容も生成されていませんでした。
期日を「インシデント作成日の〇週間後」とするにはスクリプトが必要であると考えていましたが、そこまでは生成が難しいのかもしれません。

5.フローの修正

正しく実行されるように、各ステップを修正しました。
その際、複数あった更新のステップを一つにまとめました。

IF文がTrueであった場合

IF文がFalseであった場合

6.作成したフローの確認

インシデントを新規作成します。
まずは「緊急度」を「高」で作成します。
この時、以下のように必須項目のフィールドに値を記入します。

※必須項目
問い合わせユーザー:社員 A(適当に入力)
簡単な説明:Flow Assist test

保存した結果以下のようになりました。(実行日は12/25の19:50あたり)
こちらも正しく実行されていました。

次に、「緊急度」を「高」以外で作成します。

保存した結果以下のようになりました。
こちらも正しく実行されていました。

検証結果

検証の結果、Flow Assistを使用しFlow作成を容易にすることができました。
プレビュー時のフローから少し手を加える必要がありましたが、フローの大枠としては完成度が高い状態で生成されていました。

さいごに

いかがでしたか。
手動での修正は必要ですが、テキストの指示のみで大部分を自動生成できるため、大幅にFlowの作成工数を削減できると感じました。今回は小規模な処理の検証でしたが、より複雑なケースにおいてはさらにFlow Assistの恩恵を受けやすいのではないかと思います。
今後また、レコードのルックアップやサブフローを呼び出すような処理を含んだものでも試してみようと思います。


最後まで閲覧いただき、ありがとうございました。
あなたにとって有益な情報を提供できたのであれば、大変嬉しく思います。

投稿者プロフィール

M. O
M. O
2023年に中途入社。
ServiceNowのインシデント管理導入、スクリプト開発などを担当しています。

保有資格
- ServiceNow Certified System Administrator
- ServiceNow Certified Application Developer
- ServiceNow Certified Implementation Specialist - IT Service Management
- ServiceNow Certified Implementation Specialist - Human Resources

※ServiceNow®は、米国および/またはその他の国における ServiceNow, Inc.の商標または登録商標です

TOP