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

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

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

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をつかって分析結果からインサイトを示すようなこともできそう 使われないチャットボットが一つでも減れば嬉しいです!