Slide 1

Slide 1 text

0 PUBLIC セキュリティチェックシート記⼊AI Azure AI Studio Prompt Flow で作る セキュリティ&データガバナンスセクション クラウドセキュリティアーキテクト ⽥⼝ ⼤智

Slide 2

Slide 2 text

1 セキュリティチェックシート 書いてますか︖ 僕はめっちゃ書いてきました(過去形)

Slide 3

Slide 3 text

2 LTテーマとアジェンダ LTテーマ アジェンダ セキュリティチェックシート記⼊効率化の取り組み (ほぼプライベートプロジェクトとしてやってきた) 1. セキュリティチェックシート記⼊AIの構成と 作った結果 2. 今後試したいこと

Slide 4

Slide 4 text

3 ⽥⼝ ⼤智 (@hirotomotaguchi) Cloud Security Architect ⾃⼰紹介 経歴 l 福岡⼤学附属⼤濠⾼校 / 野球部(太宰府市出⾝) l 明治⼤学 / 野球部 l コンサル会社 / セキュリティコンサルタント l 現職 得意領域 l セキュリティ規格(ISO27000、ISMAP 等) l 新しいこと試してブログ書く(今はAOAIとかが中⼼) 趣味 l ダンス(Lock, Waack) ブログ l https://blog.cloudnative.co.jp/author/hirotomotaguchi/

Slide 5

Slide 5 text

4 会社紹介 企業からITが無くなると事業継続が困難である今の時代、情報システム部⾨は企業のコアと⾔えま す。ITによって⾃在に変化適応できる組織へ再設計し、企業価値を最⼤化するご⽀援をします。 情シスのお悩みを 解決する仕事だ︕ 須藤あい(AI)

Slide 6

Slide 6 text

5 デジタルプラットフォーム 構築条業報告書 ゼロトラストアーキテクチャの概念を 取り込んだ環境を構築する実証実験を ⾏いました。 ⽣成AI(Azure OpenAI) 構築⽀援 独⾃データを組み込んだChatGPTを、 セキュアに構築し、業務へ組み込みむ⽀ 援を⾏いました。 実績 意外と変われる霞ヶ関 ⼤賞 霞が関初、フルクラウド 霞が関初、フルクラウドで業務・働き⽅ を改⾰しました。代表が最⾼情報セキュ リティアドバイザーに就任しました。

Slide 7

Slide 7 text

セキュリティチェックシート 記⼊AIの構成と作った結果 Chapter. 1

Slide 8

Slide 8 text

8 フロー図 セキュリティチェックの質問に対して、関連する情報を検索し、その情報を元にAzure OpenAIが 回答を⽣成します(RAG)。 Azure Azure AI Studio (Prompt Flow) input Hybrid Search Create output output 何か Azure OpenAI Azure AI Search request(質問 response(回答 Hybrid Search Create output 規定のデータを ベクターDB化する︕ MSの世界で1番精度がいい⼿法 (ベクトル検索+セマンティックリランク)

Slide 9

Slide 9 text

9 アウトプットイメージ セキュリティチェックシートの質問に対して、回答と回答の元にした情報ソースを提⽰します。

Slide 10

Slide 10 text

10 ü AIアプリケーション向 け開発ツール ü Pythonのコードを実 ⾏できる ü AIアプリのテストや評 価のための機能を備え ている ü エンドポイントを公開 して、作ったフローを 外部から実⾏できる Prompt Flow とは︖ Azure AI Studio Prompt Flow はAzure上で使えるAIアプリケーションの開発サイクル全体を合 理化するために設計された総合開発ツールです。

Slide 11

Slide 11 text

11 なぜ Prompt Flow を使ったのか︖ <ポジティブ> l Azureの中で完結する l 僕はメインでAzure OpenAI / Azure AI Search を使っているので、Azure の中で完結す るのが嬉しい • Pythonも使えるので⾃由度も⾼い • iPaaS(Logic Apps )もよく使うけど、コードが実⾏できない • バルク実⾏・テスト(評価)が容易 • エクセルにコピペとか、やってらんないし • 回答の期待値に合わせて調整が容易 • チェックシートには「はい/いいえ」で答えるパターンや、 ⾃由記述のチェックシートもある • ⾃由記述も期待される型式が存在する <ネガティブ> l よくわからんエラーが多い

Slide 12

Slide 12 text

12 テストパターン 以下3種類のテストを試しました。 1+クエリ拡張を利⽤ ドキュメントを分割してベクトル化 1+ベクトルDBの構造を変える ü 質問形式から規定形式に変換し てから検索をかける。 ü ドキュメントを分割してベクト ルデータベースを作る。 ü ドキュメントを分割するだけで はなく、QA型式に変更する。 Azure AI Search 規定⽂書 チャンク (JSON) チャンク (JSON) チャンク (JSON) チャンク分割 USB禁⽌してますか︖ MDMでUSB等の取り外し可能な デバイスに対する対策を講じる。 Title Section Conten ts Q A URL 就業規 則 第1条 総則 XXXXXX XXX XXXXXX XXX XXXXXX XXX XXX.co m 就業規 則 第2条 休暇 XXXXXX XXX XXXXXX XXX XXXXXX XXX XXX.co m 就業規 則 第3条 XX XXXXXX XXX XXXXXX XXX XXXXXX XXX XXX.co m 1 2 3

Slide 13

Slide 13 text

13 全体的な精度 「検索」部分が精度に対しての⽣命線になりますが、検索で成功した場合、GPT-3.5を利⽤して もミスが少ないという結果でした。(テストデータは⼿作業で作ったのでバイアスあり 注意︓テストデータセットを作るのが⼤変で、テストデータは⼩規模(50件分)しかテストできてません。これから頑張ります。。 (今まで個⼈プロジェクトとしてやってたから許して。。。) 質問に対応する 規定がある 質問に対応する 規定がない ちゃんと「規定がな い」と⾔えるか︖ 回答の⽣成物が 書き直し不要か︖ 検索のヒット率 (top 1) クエリ拡張を利⽤ ドキュメントを分割して ベクトル化 29/40 ベクトルDBの構造を変える ケース 評価観点 利⽤する技術 6/10 8/10 32/40 38/40 6/10 27/29 30/32 37/38

Slide 14

Slide 14 text

14 おまけ)ベクターDBの構築 ベクターDB⾃体を作るのは難しくありませんが、加⼯処理の⽅法は精度に⼤きく影響があります。 マークダウン (例︓Notion) Word PDF ベクターDB (AI Search) アウトプット インプット(規定) 前処理 LangChain Azure Document Intelligence Open Interpreter Azure OpenAI On your data ⾃作ドキュメントパーサー

Slide 15

Slide 15 text

今後やりたいこと Chapter. 2

Slide 16

Slide 16 text

16 RAG ではなく Gemini Pro 1.5 でやりたい︕笑 最⼤100万トークンを投⼊することができる Gemini Pro 1.5 が登場したら、RAGではなくて、 プロンプトに全ての規定を渡してみたい(期待は裏切られそうな気はするけど・・・) 出所︓https://blog.google/technology/ai/google-gemini-next-generation-model-february-2024/ プロンプト あなたはセキュリティチェックシートを埋める 天才です。質問に回答してください。(指⽰) 多要素認証を⾏っていますか︖(質問) 規定全部 • 情報セキュリティポリシー • セキュリティ基準 • プライバシーポリシー • セキュリティガイドライン • ⼿順書A • ⼿順書B

Slide 17

Slide 17 text

17 精度向上 & テストデータたくさん作ってテスト RAG の精度向上の⼿法はたくさんあるので、これからも試しつつ、テストデータ作るのをだいぶ サボっていたので、テストデータ作るの頑張ります。 出所︓ChatGPT/AOAI⾃社データ活⽤(RAG)の精度向上のプラクティス【情シス向け】 – CloudNative Inc. BLOGs ⼿法をまとめているので ⾒てね〜︕ 須藤あい(AI)

Slide 18

Slide 18 text

18 サービス化 ISMS⾃動化SaaSである「SecureNavi」の「セキュリティチェックシート記⼊サービス」のバッ クエンドに今回紹介したシステムを組み込むプロジェクトを来週開始します。 (会社公認の副業 参考︓https://lp.secure-navi.jp/appointment/checksheet