ハッカソン広島#9 - 投稿用

1K Views

October 20, 24

スライド概要

下記イベントでの発表資料を投稿用に修正したものです(操作手順のスクリーンショットの削除版)
詳細は書籍をご購入の上、学習いただけますと幸いです。

ハッカソン広島: https://jpaug-hiroshima.connpass.com/event/333069/

profile-image

Power Platform と Microsoft 365 と時々駄弁

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

『Copilot Studio で作る業務効率化のAIチャットボット』 ― 超訳 Microsoft Copilot Studio ― 2024年10月18日(金) 於 Power Apps でハッカソンしたいけぇ#9 (JPAUG広島)

2.

自己紹介 kuro. : https://kuro.myportfolio.com : https://twitter.com/eigogakuto フリーランス (2023~) Power Platform 講習/内製開発支援/ヘルプデスク Power Platform を起点に、市民開発者の養成を支援しています。 自身が非開発者の出身であることや、非IT部門の方々に対する技術・教育支援の経験を活かし、 みなさまの 「できるようになりたい」 という声に (ほどほどに) 応えます。 職歴 : 高校教員 (外国語科) → 求職者支援事業 (コンピュータ) → 現職 趣味 : 読書、旅、写真撮影 (風景、野鳥、動物ポートレート)、他 近況 : Azure OpenAI や AI Builder など、Copilot Studio も含め技術調査中 2

3.

Fight it not, flight with Copilot 3

4.

目次 01. Microsoft Copilot Studio とは 02. 入門ハンズオン 03. 用語整理 04. 展開と運用 05. まとめ

5.

謝辞 テキスト 自動的に生成さ れた説明 本日の発表内容は、主にコチラの書籍内容に 基づき、発表者なりに整理した情報です。 益森さん、素晴らしい書籍をありがとうござ います。 また1段階レベルが上がりました。 自身 “Copilot Studio” としてチャットボッ トを作成するのは初めてでしたが、他ツール との連携も過不足なく取り込みながら学習を 進められる、刺激的な書籍だと思いました。 ※ 当発表資料における記載内容の誤りは、全て発表者である kuro. が負います 5

6.

凡例 • 本資料の Copilot の表記について ➢ Copilot ✓ Copilot Studio のような、独自にトレーニング/開発された Copilot ➢ 製品版 Copilot ✓ Copilot for Microsoft 365 や Microsoft Edge 等で使用できる Copilot ✓ 製品名でも記載する場合があります 6

7.

01. Microsoft Copilot Studio とは • 前提知識の確認 7

8.

01. 前提知識の確認 • オリジナル Copilot の作成ツール ➢ 独自のデータを基にした Copilot の作成 ✓ 組織内のドキュメントや外部のWebサイトをデータソースとして、 ✓ 社内情報の共有や問い合わせ対応を効率化する、専属的なチャットボットを作成できる ➢ 既存の製品版 Copilot の拡張 ✓ プラグインを作成することで、製品版 Copilot とデータソースを連携できる (※プレビュー) ✓ Copilot がアクセスできるデータを拡張できれば、より生産性を向上させられる 8

9.

01. 前提知識の確認 • セキュリティについて ➢ LLM に組み込まれることはない ✓ 独自データを基にした Copilot が生成する回答は、学習データとして外部に流れない ✓ 利用者が Copilot に入力する情報も、学習データとして外部に流れない ➢ 著作権には注意を払う ✓ 第三者が作成したコンテンツを取り入れた Copilot は、著作権侵害に抵触する可能性がある ✓ 業務で活用すると営利目的と判断されるので、個人利用の域を出ないようにする ※ 責任のあるAI : What is Responsible AI - Azure Machine Learning | Microsoft Learn 9

10.

02. 入門ハンズオン • Web をデータソースにした Copilot 作成 10

11.

02. 入門ハンズオン • ビットゼミのHPをデータソースとした Copilot を作ってみよう 101期生です kuro. は何期生? https://www.bitzemi.com/ 11

12.

02. 入門ハンズオン • Copilot Studio は検索してもヒットしない ➢ 「チャットボット」 として存在する (Power Apps) ピン留めしておくと便利 アプリ起動ツール内で見つからない 12

13.

02. 入門ハンズオン • p.32の手順でホーム画面に到達したら、「新しいコパイロット」 をクリック ① 作成タブ をクリック ② 新しいコパイロット をクリック 13

14.

02. 入門ハンズオン • 入力項目について (後ほど編集可能) ➢ 名前 (必須) ➢ アイコン (任意) ✓ 30KB未満の.pngファイルのみ対応 ➢ 説明 (任意) ✓ 個人的には (管理面から) 利用目的や場面 を書いておく方が望ましい ➢ 指示 (任意) ✓ いわゆる 「プロンプト」 の入力場所 ➢ サポート情報 (後述) 「ナレッジの追加」 をクリック 14

15.

02. 入門ハンズオン • ナレッジ ソースの選択 ➢ knowledge : 情報、知識 ➢ Source : 源 URL を追加して 「作成」 URL は 「2階層以内」 に留める 15

16.

02. 入門ハンズオン • ナレッジのトグルを 「有効」 にして 「テスト」 してみる ① テスト をクリック ② 「有効」 になっているかを確認 16

17.

02. 入門ハンズオン • 期待通りに回答を得られない、の対処法 ➢ 対話を試みる ➢ 「指示」 にプロンプトを入力する ➢ 有害コンテンツはフィルタリングの対象となる ➢ コンテンツモデレーションを操作する (次スライド) ✓ 「より創造的に」 や 「より厳密に」 といった、回答の精度を調整すること ✓ URL内に情報があるのに回答が得られない場合 → コンテンツレベルを低く ✓ 関連性の低い返答の場合 → コンテンツレベルを高く 17

18.

画面操作は書籍をご覧ください 18

19.

02. 入門ハンズオン • ファイルをデータソースにする場合 ➢ 直接アップロードだけでなく、SharePoint サイトのURLを指定する方法もある ➢ 3MB 以内のファイルでなければならない (2024年10月時点) ➢ データソースに下書きファイルなどが存在する場合、削除するか移動させるかして整理する ➢ Copilot 利用者のファイルアクセス権に注意 (p.243に詳しい) ✓ SharePoint サイト : ユーザーにアクセス権を付与しなければ Copilot が回答に使用しない ✓ Dataverse : アップロードされたファイル全てをデータソースにして回答する 19

20.

03. 用語整理 • 午後からの開発に向けて 20 https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/fundamentals-what-is-copilot-studio

21.

03. 用語整理 • Copilot 作成のステップ 1. ナレッジの用意 2. 新規 Copilot 作成 3. 検証 (テスト) 4. 新規作成時に存在する会話の無効化 (変更) 5. 公開と共有 6. 分析と改善 21

22.

03. 用語整理 • トピック : topic ➢ 作成する Copilot のシナリオや会話のテーマにおける定義 ➢ トピックの例 ✓ 商品の返品プロセスを案内する Copilot を作りたい ✓ 予約の変更をサポートする Copilot を作りたい 22

23.

03. 用語整理 • トリガーフレーズ (trigger phrase) ➢ ユーザーがアプリに対して発する最初の言葉やフレーズ。 会話の開始を引き起こすもの ➢ 例 : ユーザーが 「返品したいです」 といった場合 ✓ そのフレーズがトリガーとなり、特定のトピック (返品プロセスなど) が起動されます ➢ 開発手順 ✓ トピックに関連する自然な言葉をいくつか想定して、これをトリガーフレーズとして設定 23

24.

① 編集する をクリック トピック トリガーフレーズ ② トピックの追加→最初から ③ 編集 をクリック フレーズは網羅できていなくても OK ④ 追加後、保存を忘れない

25.

既定のトピック レッスン 1 - 3 をオフに

26.

03. 用語整理 • システムトピック (参考 : pp.61-62 図) ➢ 会話開始時のメッセージやユーザの入力内容を扱えなかった場合の処理 ➢ Conversational boosting (会話の強化) ✓ 会話の流れをスムーズにし、会話の質を向上させるための設定 ➢ フォールバック (Fallback) ✓ 適切に対応できない場合に、エラーハンドリングや代替メッセージで会話を継続させるための設定 26

27.

① システム をクリック システムトピック ② 会話の開始 をクリック ③ 会話開始時のテキストを編集できる システム変数

28.

03. 用語整理 • システム変数 ➢ 対話の進行状況や会話の文脈を追跡したり管理したりするために必要 ➢ 初回の入力で 「kuro.」 という情報が出たら、User.DisplayName には kuro. が格納 名前 説明 Activity.Text ユーザが最後に送信したメッセージ Bot.Name Copilot の名前 User.DisplayName サインイン ユーザーの名前 User.Email サインイン ユーザーのメールアドレス https://learn.microsoft.com/en-us/microsoft-copilot-studio/authoring-variables?tabs=webApp 28

29.

① Conversational boosting を開く ② クリック ③ 選ぶ or 数式を書く

30.

03. 用語整理 • ノード (node) ➢ トピック開始後のアクション (=会話ノード) ➢ 会話の流れを形成する単位で、質問、応答、条件分岐などを管理する ✓ 「どのアイテムを返品しますか?」 といった質問ノード ✓ その後の選択肢や確認ステップの応答ノード 30

31.

① + ボタンをクリック ② 設定

32.

03. 用語整理 • 会話ノードの種類 (参考 : p.65) 種類 補足 メッセージを送信する 画像や動画ファイル等も可 質問する テキスト入力だけでなく、選択肢から選ばせることも可 アダプティブカードで質問する 入力情報は、変数に格納される (Learn) 条件を追加する 質問で選択した結果や変数を利用して条件分岐 (Learn) 変数管理 変数に値を設定する等 (Learn) トピック管理 別のトピックへの移動、トピックの終了、会話の終了など (Learn) アクションを呼び出す Power Automate クラウドフローの呼び出し (Learn) 詳細 生成型の回答アクション、HTTP要求等の呼び出し 32

33.

03. 用語整理 • エンティティ (entity) ➢ ユーザーの入力から特定の情報 (名前、日付、商品名など) を抽出する要素 ➢ 例 : ユーザーが 「10月20日に予約したい」 と言った場合 ✓ 「10月20日」 を日付のエンティティとして認識し、適切な処理を行う ➢ 会話の中で特定のデータを扱う際に、エンティティを設定することで、ユーザーの入力を構造化さ れたデータに変換する ➢ ノード内でエンティティを活用すると、ユーザーが提供する情報を正確に捉えられる ➢ Power Apps でアプリを作らなくても予約管理アプリが作れる…? 33

34.

① 設定 をクリック 確認方法 ② エンティティ をクリック ③ 日付 をクリック

35.

設定方法 ① 質問 ノードを追加 ② 「特定」 の > をクリック ③ 日付 をクリック

36.

03. 用語整理 • 開発手順まとめ ➢ トピックの定義 ✓ アプリのテーマや目的を決め、何をサポートするかを設定 ➢ トリガーフレーズの設定 ✓ ユーザーが使うであろう開始フレーズを想定して登録 ➢ ノードの設計 ✓ 会話のステップや流れを構築し、適切な質問と応答を作成 ➢ エンティティの設定 ✓ ユーザーの入力を正確に処理するため、特定の情報を抽出する仕組みを構築 36

37.

04. 展開と運用 • Teams や Web サイトで運用するために 37

38.

04. 展開と運用 • 外観 1. 認証の設定 2. Copilot の共有 3. Copilot の公開 4. 展開先チャネルの構成 38

39.

04. 展開と運用 • 認証の設定 ➢ 認証されたユーザだけが Copilot を利用できるようになる (p.241) 設定 補足 リンクを知っている人であれば、誰でも Copilot と対話できる設定。 認証なし Copilot を社外公開サイトに展開して誰でも利用できるようにした い時に選択 Microsoft Entra ID で自動認証を行う。 Teams や Power Authenticate with Microsoft Apps 上に展開する時に利用。 既定で有効となっているため、組織 内向けの Copilot であれば、特に認証の設定は要らない 手動で認証する Teams や Power Apps 以外に展開したい、かつ、ユーザーの認 証を行いたい時に選択 (※組織内のアクセス権が優先される) 39

40.

04. 展開と運用 • 手動で認証する 1. Entra ID 側で Copilot 用のアプリケーションを登録 2. アプリケーションのアクセス権を設定 3. Copilot 側でアプリケーションのID、シークレットを登録 (※取り扱い注意) 40

41.

04. 展開と運用 • Entra ID 側で Copilot 用のアプリケーションを登録 (pp.244-250) ➢ 作った Copilot をユーザーとして認証するイメージ 41

42.

画面操作は書籍をご覧ください 42

43.

04. 展開と運用 • アプリケーションのアクセス権を設定 (pp.251-253) ➢ 作った Copilot がユーザーの代わりに SharePoint サイトやファイルにアクセスできるように アクセス権を設定するイメージ 43

44.

画面操作は書籍をご覧ください 44

45.

04. 展開と運用 • Copilot 側で認証の設定 ➢ Entra ID 側で控えた アプリケーションID を Copilot 側の クライアントID に貼り付ける ➢ シークレット を クライアントシークレット に貼り付ける ✓ シークレットは、有効期限を過ぎると Copilot が動作しなくなるため、有効期限 (今回は180日) が過 ぎる前に、新規でシークレットを作成して Copilot 側のクライアントシークレットを置き換える必要があ る点に注意 45

46.

画面操作は書籍をご覧ください 46

47.

04. 展開と運用 • Copilot の共有 ➢ 組織内の特定のユーザーにだけ利用させたい場合に設定 ➢ 認証の段階で 「認証なし」 を選択した場合は設定不要 47

48.

画面操作は書籍をご覧ください 48

49.

04. 展開と運用 • Copilot の公開 1. Teams で運用 2. Web 上で運用 49

50.

画面操作は書籍をご覧ください 50

51.

04. 展開と運用 • Copilot の監視と改善 ➢ Copilot の利用状況などを 分析 タブで確認できる ➢ チャットボットを評価するアンケートを実装しておくと吉 ✓ 「会話の終了」 のシステムトピックにアンケートが含まれている ✓ 必要に応じて編集するとよい ➢ Copilot と利用者の会話のログは残る ✓ csvファイルをダウンロードできる 51

52.

画面操作は書籍をご覧ください 52

53.

05. まとめ • 買え 53

54.

05. まとめ • 体系的に取り組んでみての感想 ➢ Power Virtual Agents のリブランディングではあるが 「体系的な」 書籍の登場は初 ✓ この1冊で 「作成、公開、管理」 のひと通りのスキルが身に付く ✓ 買って積んでおくのではなく、画面構成が変わる前に取り組んでおく方がよい ➢ 個人的に、SharePoint リストをデータソースにできるようになることを期待している ➢ また、Microsoft Loop との連携も期待している (プロジェクト単位での Copilot 利用) ➢ ナレッジの整理とアクセス権周りが課題 ✓ 単にデータ量が大きくなれば良い回答を生成できるというわけではない ✓ Copilot を利用できても、SharePoint サイトのアクセス権がない場合は回答を得られない点に注意 54

55.

おしまい 55