はじめに
①本記事は、2023年7月開催の「UiPathブログ 発信チャレンジサマー」の30日目のブログです。
ブログの詳細、参加方法については以下のブログを参照ください。
②このブログ情報は、2023/7時点の情報です。
③UiPath StudioはCommunity Edition、Versionは2023.6.1です。
UiPathFriendsわちゃわちゃ会について
UiPathFriendsわちゃわちゃ会とは、あるテーマに基づきみんなで(硬すぎない)議論や相談しながら学ぶ会です。
今回は2023/7/29(土)14時より開催されました!(これまで数回開催していますが、久しぶり?の開催だったとのことです。)
当日は朝から夏の暑さと太陽が輝き、夕方は隅田川花火大会
がありました。それでも熱心なUiPath愛や興味を持った方と交流を深めることができました!
皆様、ありがとうございます
ちなみに自分はわちゃわちゃ会初参戦でした!
Ask GPTアクティビティを使ってみた
①まずはパッケージをインストールしましょう。
パッケージですが、「InternalLabs.GPT.Activities」をインストールします。
【注意】
・現在マーケットプレイスのほうでないと出てこないです。
・似たアクティビティで「ChatGPT.Activities」がありますが、今回は扱いません。
②インストールOK、では使ってみますが...最初はよくわからなくて「?」に。
最初は家電の最安値探すとか、そういう感じで使えるのかしら...と考えていました。とりあえず何か作って理解しようということから始めてみました。
徐々に皆さんの作成の様子やポイントを聞いていくうちに何とか使い方がわかってきました。
ちなみに今回は、推し企業の日立製作所のIR資料「Hitachi Investor Day 2023」の「デジタル戦略」のPDFの内容からテキストを丸ごと取得して、いくつか質問してみようと実装してみました。
(お試しで作ったので、名前の変更など細かいところはまだ対応していません。)
プロパティ
ちなみに説明は全部英語です。
【Input】
QuestionList:Chatに投げる質問について配列型変数(引数)を設定するか、直接配列型で書くときみたいにで記載します。{"あああ","いいい","ううう"}という感じです。
今回は、
{"Lumadaとは何でしょうか","2023年度のEBITDA率はなんでしょう","日立製作所とはどんな会社でしょうか","2023年度の売上は何億円?"}
と記載しました。
今回は上記を変数「lisQuestionList」に格納します。
Text:元データとなるテキストを設定します。
今回は、PDF→String型へ格納したPDFのテキストを格納した変数「strHitachi」で設定します。
【Output】
Responce:今回は未使用
Responce List:Chatからのお返事?というか戻り値を出すところです。
これがちょっとややこしいのですが、変数(引数)は「List(Dictionary(String,String))」という型式です。
【Common】
Timeout:ミリ秒で設定できます。デフォルトは60000ms(60秒=1分)です。
ContinueOnError:エラーが発生した際に実行を継続するか設定できます。今回は何も設定していませんので、エラーが出たら止まります。
確認してみよう
一応、書いていることはあっているのか確認しましょう。
①Lumadaとは何でしょうか
→PDF資料4ページに記載されているところから抽出したのかな?一応正解とします。
②2023年度のEBITDA率はなんでしょう
※EBITDAはEarnings Before Interest,Taxes,Depreciation,and Amortizationの略で、簡単に言うと企業価値評価のうちM&Aの候補先評価で使用する指標のことです。
→日立の資料ではEBITAと書いていて、企業価値算定を記載しているようです。
確認してみると、2023年度は15%とありました。16%は2024年度のほうみたいなので聞き方が悪かったかな...
③日立製作所とはどんな会社でしょうか
→内容はあっています。
※一応オタクな私が補足すると、火力・原子力発電所のプラントや新幹線をはじめ鉄道車両の製造や、都市インフラが快適に機能するためのシステム構築や運用も手掛けており、重電業界の老舗企業として創業110年をこえる世界的な企業です。
ここではGPTに投げたテキストから分析しているのでしょう。
④2023年度の売上は何億円?
→2023年度の売上収益(全社)は2.28兆円で、2.65兆円は2024年度のほうでした。
これも質問の仕方が良くなかったのでしょうかね...
値の出力はどーなっている?
デバッグでResponce Listの出力変数の中身をちょっと覗いてみましょう。
1問目の回答を抽出して見てみると...
Dictionary(3) {
{ "answer", "Lumadaは日立グループのデジタル戦略の一環であり、デジタルの成長エンジンであるGlobalLogicをハブとした「One Hitachi」のシナジー拡大を目指すものである" },
{ "evidence", ""Lumada事業の成長とコア事業 * の高収益化により、日立グループの収益性向上をけん引 Lumada事業の成長 ⚫ GlobalLogicの持続的成長 ⚫ 「One Hitachi」のシナジー拡大"" },
{ "question", "Lumadaとは何でしょうか" } }
...見づらい!!!
なので、メッセージボックスやログ、変数(引数)に入れていく場合は
出力Responce Listの変数か引数(質問の順番*)("answer")と書きましょう。
*開始は0からです。
使ってみて思ったこと
元データをどっから持ってくる?
最初、プロパティの「Text」のところに何を入れていいかわからなくて右往左往していました。。。
回答が一定ではなさそう
「日立製作所とはどんな会社でしょうか」という質問について、何度か回すと以下の回答が出ました。
おそらく、読み込みしたテキストファイルから要約して説明しているのか、元々GPT側で誰かが情報をインプットしていき、そこから拾ってきたのか...いずれにしても学習させればもっと正確な回答ができそう。
まとめ
はじめてのわちゃわちゃ会参加でしたが、最近トレンドのAsk GPTアクティビティの使い方を知ることができたのと、使ってみることで新しい発見もできたので良いイベントでした!
皆さんも次回の開催がありましたら是非参加してみてください!
最後までお読みいただきありがとうございました。
参考URL
EBIT、EBITA、EBITDAとは?違いは?
Hitachi Investor Day
デジタル戦略(PDF)