Upgrade to Pro — share decks privately, control downloads, hide ads and more …

社内AIチャットの利用状況分析できてますか?

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 社内AIチャットの利用状況分析できてますか?

Avatar for Yosuke Sakaue

Yosuke Sakaue

April 25, 2024
Tweet

More Decks by Yosuke Sakaue

Other Decks in Technology

Transcript

  1. © Saison Technology Co., Ltd. 2024 2 Speaker 株式会社セゾンテクノロジー Yosuke

    Sakaue <担当領域> 生成AI研究開発 エンジニア育成 開発者向けインフラ導入、維持運用 Azureクラウド技術支援 Azure関連資格: AZ-900 AZ-104,204,500,700 AZ-305,400 @Yosuke_Sakaue @sakaue_yosuke
  2. © Saison Technology Co., Ltd. 2024 3 本日お話しする内容 ⚫ 社内AIチャットボットをリリースしたけど、社員が活用しているのかわからない

    ⚫ あまり語られることのないAIチャットボットの運用について考えてみます ⚫ 構築中のダッシュボードのデモをお見せします ⚫ 少しでも皆様のヒントになれば幸いです
  3. © Saison Technology Co., Ltd. 2024 6 システム構成 Azure vNet

    Private Endpoint Azure Open AI Service (AOAI) 社内ネットワーク subnet subnet ⑥AOAIが回答を生成 ユーザー (ブラウザ) Web アプリケーション フロントエンド WebApp VPN ユーザー (ブラウザ) ①フロントのコンテンツ を取得 ⑤検索結果 を含め、 AOAIの APIを実行 ⑦ユーザーに回答を返却 vNet Integration AzureEntra ID 認証 Web アプリケーション バックエンド WebApp プ ロ キ シ IP制限 ②ユーザーにコンテンツを返却 ③バックエンドに APIを実行 ④関連ドキュ メントを検索 社内文書 格納Blob Azure AI Search ④検索結果取得 Private Endpoint ログ保管 CosmosDB
  4. © Saison Technology Co., Ltd. 2024 7 システム構成 Azure vNet

    Private Endpoint Azure Open AI Service (AOAI) 社内ネットワーク subnet subnet ⑥AOAIが回答を生成 ユーザー (ブラウザ) Web アプリケーション フロントエンド WebApp VPN ユーザー (ブラウザ) ①フロントのコンテンツ を取得 ⑤検索結果 を含め、 AOAIの APIを実行 ⑦ユーザーに回答を返却 vNet Integration AzureEntra ID 認証 Web アプリケーション バックエンド WebApp プ ロ キ シ IP制限 ②ユーザーにコンテンツを返却 ③バックエンドに APIを実行 ④関連ドキュ メントを検索 社内文書 格納Blob Azure AI Search ④検索結果取得 Private Endpoint ログ保管 CosmosDB このログを活用したい!
  5. © Saison Technology Co., Ltd. 2024 8 ログの分析、運用で実現したいこと ⚫ 利用状況の把握

    • セッション数やユーザー数(部門ごと) ⚫ ユーザーエクスペリエンスの向上 • AIがユーザーの期待する内容を生成できているか ⚫ 利用パターンの把握 • どんな質問が多いのか ⚫ FAQや知識ベースの充実 • データソースにどんな情報を追加すればよいか ⚫ トレーニングデータの収集 ⚫ 不適切なコンテンツや行動の発見 現状の把握 アクション こんなダッシュボードが欲しい!
  6. © Saison Technology Co., Ltd. 2024 13 ログの中身 [ {

    "_id": "099d3b70-dc7d-4068-b146-xxxxxxxxx", "model": { "id": "gpt-4-turbo", "name": " gpt-4-turbo", "maxLength": 24000, "tokenLimit": 8000 }, "messages": [ { "role": "user", "content": "メーリングリストの修正について、手続きを教えて下さい。", "extractKeyword": "メーリング リスト 修正 手続き" }, { "role": "assistant", “content”: “AIからの回答", "extractKeyword": “xxxxxxxxxx" } ], “prompt”: “システムプロンプト", "temperature": 1.0, "searchOption": "default", "updatedAt": "2024-03-12 05:11:27.299000", "user": “yosuke_sakaue", "createdAt": "2024-03-12 05:11:27.299000", "resolve": true } ] ⚫ JSON形式でAzure Cosmos DBに保存 ⚫ 入れ子になっている配列はPower BI側 で展開
  7. © Saison Technology Co., Ltd. 2024 14 ログの中身 – ユーザーの情報

    [ { "_id": "099d3b70-dc7d-4068-b146-xxxxxxxxx", "model": { "id": "gpt-4-turbo", "name": " gpt-4-turbo", "maxLength": 24000, "tokenLimit": 8000 }, "messages": [ { "role": "user", "content": "メーリングリストの修正について、手続きを教えて下さい。", "extractKeyword": "メーリング リスト 修正 手続き" }, { "role": "assistant", “content”: “AIからの回答", "extractKeyword": “xxxxxxxxxx" } ], “prompt”: “システムプロンプト", "temperature": 1.0, "searchOption": "default", "updatedAt": "2024-03-12 05:11:27.299000", "user": “yosuke_sakaue", "createdAt": "2024-03-12 05:11:27.299000", "resolve": true } ] ⚫ AppServiceのEasyAuthで認証機能を実装 ⚫ 認証トークンからユーザーを特定 ⚫ 社員マスタと結合 https://learn.microsoft.com/ja-jp/azure/app-service/overview- authentication-authorization
  8. © Saison Technology Co., Ltd. 2024 15 ログの中身 – 検索オプション

    [ { "_id": "099d3b70-dc7d-4068-b146-xxxxxxxxx", "model": { "id": "gpt-4-turbo", "name": " gpt-4-turbo", "maxLength": 24000, "tokenLimit": 8000 }, "messages": [ { "role": "user", "content": "メーリングリストの修正について、手続きを教えて下さい。", "extractKeyword": "メーリング リスト 修正 手続き" }, { "role": "assistant", “content”: “AIからの回答", "extractKeyword": “xxxxxxxxxx" } ], “prompt”: “システムプロンプト", "temperature": 1.0, "searchOption": "default", "updatedAt": "2024-03-12 05:11:27.299000", "user": “yosuke_sakaue", "createdAt": "2024-03-12 05:11:27.299000", "resolve": true } ] ⚫ 検索オプション
  9. © Saison Technology Co., Ltd. 2024 16 ログの中身 – 解決状況

    [ { "_id": "099d3b70-dc7d-4068-b146-xxxxxxxxx", "model": { "id": "gpt-4-turbo", "name": " gpt-4-turbo", "maxLength": 24000, "tokenLimit": 8000 }, "messages": [ { "role": "user", "content": "メーリングリストの修正について、手続きを教えて下さい。", "extractKeyword": "メーリング リスト 修正 手続き" }, { "role": "assistant", “content”: “AIからの回答", "extractKeyword": “xxxxxxxxxx" } ], “prompt”: “システムプロンプト", "temperature": 1.0, "searchOption": "default", "updatedAt": "2024-03-12 05:11:27.299000", "user": “yosuke_sakaue", "createdAt": "2024-03-12 05:11:27.299000", "resolve": true } ] ⚫ 解決したかどうかのフィードバック ⚫ 5段階やメッセージ入力も検討
  10. © Saison Technology Co., Ltd. 2024 17 ログの中身 – キーワード抽出

    [ { "_id": "099d3b70-dc7d-4068-b146-xxxxxxxxx", "model": { "id": "gpt-4-turbo", "name": " gpt-4-turbo", "maxLength": 24000, "tokenLimit": 8000 }, "messages": [ { "role": "user", "content": "メーリングリストの修正について、手続きを教えて下さい。", "extractKeyword": "メーリング リスト 修正 手続き" }, { "role": "assistant", “content”: “AIからの回答", "extractKeyword": “xxxxxxxxxx" } ], “prompt”: “システムプロンプト", "temperature": 1.0, "searchOption": "default", "updatedAt": "2024-03-12 05:11:27.299000", "user": “yosuke_sakaue", "createdAt": "2024-03-12 05:11:27.299000", "resolve": true } ] ⚫ Python Mecabで形態素解析 ⚫ 名詞を抽出 ⚫ 辞書をメンテナンスすればさらに精度が 上がるかも ⚫ 更新方法はCosmos DBの変更フィード かバッチでFunctionsを起動
  11. © Saison Technology Co., Ltd. 2024 18 ログの中身 – キーワード抽出

    キーワード抽出なし キーワード抽出あり
  12. © Saison Technology Co., Ltd. 2024 19 まとめ ⚫ メンバー間で共有するならPower

    BIのライセンスが必要 ⚫ スクラッチで構築するよりも手軽に始められる ⚫ 情報は可視化されることで「気づき」になり「アクション」が生まれる ⚫ 今後は生成AIをつかって分析結果からインサイトを示すようなこともできそう 使われないチャットボットが一つでも減れば嬉しいです!