業務自動化(オートメーション)を図るツールであるRPAのプロセスを実行するには、概ね、①ユーザーが直にRPAプロセスを開始させるか、②スケジューリングやイベントハンドリング(例1:データの更新。例2:規定のアプリ接続のコネクター、例3:RPAと同一製品群のプラットフォーム上での機能連携など)の設定によるRPAプロセスの自動実行などがあります。これらは、大体RPA製品群のなかでの設定などにより実行することが考えられます。そして、③それ以外の外部アプリからRPA側のAPIを使い、RPAプロセスを実行させる方法などがあります。

ここでは、外部アプリ(例:チャットボットのチャット)を含め、RPAプロセスが他アプリとの連携でもっとインテリジェントなオートメーションが実現できる例を、それぞれ動画を通じて紹介します。

1. チャットボット(Line)からRPA(UiPath)プロセス実行のデモ

ユーザーがRPAプロセスを実行したいタイミングで、外部から実行指示を行うことが可能です。例えば、メールなどの定番のコミュニケーションツールを使い、メールを送信するだけで、メール受信側でのRPAプロセスが実行されるなどが考えられますが、これは既に今時の一部RPA製品の製品群内で実現できるサービスです。

でも、RPA製品の製品群内では自動認識できない外部アプリからも、RPA側のRPAプロセスを実行させることも可能です。次の動画は、ライン(Line)からのチャットで、社内RPA側のAPIを通じ、RPAプロセスを実行させるデモ動画です。デモ動画に必要な作業として、ライン(Line)側の設定、チャットボットサーバーでの設定、ウェブフック専用サーバーでの実装や設定、UiPathを使ったRPAプロセス実装やUnattendedRobot/Orchestratorの設定などを行いました。

このデモの自動化シナリオは、
Line(ライン)に記入した内容や事前登録済の共通入力内容に基づき、企業ウェブページの問い合わせフォーム画面に自動入力してくれます。
1.Lineからのチャット指示に従い、答える。
2.Line上の最後の質問への回答を出したタイミングで、記入した内容を入力引数とし、自動にロボット側にRPAプロセスの実行指示を行う。
3.Line側では、RPAロボットからの実行結果内容を戻り値として受け取り、ユーザーに表示する。



※ 動画を拡大してご視聴ください。

2. RPA(UiPath)とChatGPT(チャットジーピーティ)連携のデモ

RPAは、オートメーション世界ではアクションの自動化と言われ、人の体に例え、手と足の役割をするとも言われてきました。ですので、判断の自動化、即ち脳の役割をするとも言われるAIとの連携はずっと進歩しながらオートメーションの課題分野とも言われてきました。UiPathのような製品は、既にRPA製品とは言えなくなり、AI実装はもちろん、ハイパーオートメーション、セマンティックオートメーション、ビジネスオートメーションプラットフォームなどの役割を果たすプラットフォーム製品として、オートメーションの未来を開き、それを実現してきました。

ここでは、UiPathと生成AIのチャットGPT(Chat GPT、OpenAI)との連携で、手軽にRPA+AI機能を使い特定業務の自動化を図る例を紹介します。このデモ動画に必要な作業として、UiPathを使ったRPAプロセス実装やAttendedRobot/Orchestratorの設定、各OpenAI連携に必要なAPI関連実装などを行いました。

このデモの自動化シナリオは、
Orchestrator Asset上に事前登録済の企業名や検索キーワードに基づき、ニュースサイトからニュース一覧を抽出します。企業の評判や株価に影響が出る内容があるか、いち早く把握できることを目的とします。抽出したニュース一覧から各ニュースに対し、独自の業務ロジックによる判定やChatGPT(OpenAI)からの判定を纏め、Excelファイルに保存した後、ユーザーに届きます。
1.Googleニュースから、企業名や検索キーワードに該当するニュース全てを抽出する。
2.抽出した各ニュースに対し、独自の業務ロジックに基づき1回目の判定を行う。
3.次は、該当ニュースに対し、OpenAIのモデレーション機能に基づき2回目の判定を行う。
4.さらに、企業によっては、該当ニュースがポジティブかネガティブかの判定基準が主観的であることから、別途判定ができるOpenAIのファインチューニングモデルに基づき、3回目の判定を行う。(事前に、必要な学習データを作成の上、OpenAI側にファインチューニングモデルを登録しておく必要がある。)
5.上記判定結果をExcelファイルに保存する。

OpenAIとの連携に使われた機能は、
1.OpenAIのファインチューニングモデルを登録するまでの各作業をUiPath側で行う。
  ・ヒューショット学習データの登録
  ・モデル学習
  ・モデル登録までの進捗確認
  ・正解率、Train Lossなどの確認
2.ファインチューニングされたモデルの使用をUiPath側で行う。
  ・自動化シナリオにより、データ収集や業務ロジックなどはUiPathで行う。
  ・ロジック範囲以外の結果判断部分は、OpenAIから判定してもらう。


※ 動画を拡大してご視聴ください。

3. RPA(Power Automate)からChatGPT(チャットジーピーティ)画面制御のデモ

RPAツールとして、ここではUiPathではなく、Power Automate(パワーオートメイト)を使い、単純にChatGPTのウェブUI画面への操作を自動化する作業をデモ用として作成してみました。自動化という側面では、ただのウェブ画面の制御という単純なデモになりますが、業務の側面では、ChatGPTというAI機能を使い、最終的な判断や結果を出してもらえることになりますので、ChatGPT側のAPI仕様は使わず、単純なRPA側のデモとはいえ、使い道によっては、面白いと思います。

このデモ動画に必要な作業として、Power Automate Desktop(PAD.パワーオートメイトデスクトップ)を使ったRPAフローの実装やPower Automate(パワーオートメイト)のクラウドフローの設定などを行いました。

このデモの自動化シナリオは、
まずはOutlookの受信メールの中から、IT人材の提案メールや開発案件紹介メールを抽出し、それぞれファイル(内容、スキルシート)への保存を行います。次は、各案件別に必要な要件を満たす人材情報をフィルタリングし、そのマッチング結果をExcelファイルに保存し、ユーザーに届きます。
1.Outlookの受信メールの中から、IT人材の提案メールや開発案件紹介メールを抽出する。
2.それぞれ、メールの内容はテキストファイルに保存し、人材情報に添付されていたスキルシートファイル(例:Excel,PDFなど)を特定フォルダに格納する。
3.上記2の各ファイルを、案件情報や人情報報に分け、二つのZIPファイルとして圧出する。
4.ChatGPT画面を開き、上記3のファイルをアップロードする上、案件情報に該当する人材情報を探し、そのマッチング結果をExcelファイルに保存し、ダウンロードできるようにする。




※ 動画を拡大してご視聴ください。

4. UiPath Apps(ローコード/ローコードツール)・UiPath Robot・OpenAI(チャットジーピーティ)連携デモ1

ローコード/ノーコードツールとして、UiPath Appsを使い、デモに必要な簡単なウェブ画面を作りました。このUiPath Appsのアプリから、UiPathのロボットにRPAプロセスを実行させますが、RPAプロセスの実装内容としては、必要なプロンプトテキストを持ち、OpenAI(ChatGPT)からの応答を求めました。

このデモ動画に必要な作業として、UiPath Automation Suite上で、UiPath Appsのアプリ作成、Integration ServiceにOpenAI接続用のコネクタ登録、UiPath StudioでのRPA開発(コネクタを使いOpenAIに接続した上、プロンプトの引き渡しや応答結果を受け取る)実装を行いました。接続以外のOpenAIとのAPI連携部分は、単純にUiPath Studio内の関連アクティビティを使いました。

このデモの自動化シナリオは、
各国の番組ジャンル別に、過去10年間人気のあったTop5の番組情報やその人気の理由を教えてもらうことが目的です。
1.UiPath Appsアプリ画面で、国名を選択、番組ジャンルを選択し、検索ボタンを押す。
2.検索内容をUiPathロボットが受け取り、OpenAIへの接続や会話指示機能が実装されているRPAプロセスを実行する。
3.OpenAIの応答メッセージをUiPathロボットが受け取り、さらにUiPath Appsアプリ側に引き渡す。
4.UiPath Appsアプリ画面の結果表示欄に、OpenAIの応答メッセージを表示する。




※ 動画を拡大してご視聴ください。

5. Power Apps(パワーアップス)・Power Automate(パワーオートメイト)・OpenAI(チャットジーピーティ)連携デモ1

ローコード/ノーコードツールとして、Power PlatformのPower Apps(パワーアップス)を使い、デモ用の簡単なアプリ画面を作りました。このPower Appsのアプリから、Power PlatformのロボットにRPAプロセスを実行させますが、RPAプロセスの実装内容としては、検索先となる機能(Function)を、OpenAI側に任さずクライアント側にFunction(ファンクション)として実装し、必要なプロンプトテキストとこのFunctionを一緒に、OpenAI(ChatGPT)に送信する仕組み(OpenAIのFunction Calling機能使用)で実装してみました。

このデモ動画に必要な作業として、Power Appsのアプリ作成、Power Automateクラウドフローの作成、デスクトップフローの実装、OpenAI(ChatGPT)との連携用のPythonコード作成などを行いました。OpenAIのAPI使用料以外は、無料バージョンを使ってみましたので、Power Platform側でのカスタムコネクタ機能などは使えず、多少無駄な実装を増やして実装しました。

このデモの自動化シナリオは、
APIを無料公開している天気情報サイトから、事前指定の都市名や確認したい日に対する天気情報を参考にした上、その日の行事開催などの相談内容を入力し、生成AI(OpenAI)から見解をもらうシナリオにしてみました。
1.Power Appsアプリ画面で、都市名、照会対象日、相談内容を入力し、送信ボタンを押す。
2.Power Automateのクラウドフローから、OpenAI連携部分の実装が含まれているデスクトップフローを実行する。
3.OpenAIのFunction Calling機能を実装したPythonコードが呼び出される。
4.OpenAIの応答メッセージをPower Automateのデスクトップフロー⇒クラウドフローが受け取り、さらにPower Appsアプリ側に引き渡す。
5.Power Appsアプリ画面の結果表示欄に、OpenAIの応答メッセージを表示する。




※ 動画を拡大してご視聴ください。