どうやって担当者の知識をスケールするか?
生成AIの活用にあたり、目指した効果は3つ。「効率性」「拡張性」「適応性」だ。
効率性とは、有価証券報告書などのデータから効率よく必要な情報を得られること。Sonnet 3.5を利用して「8~9割の精度」を実現していると堀金氏は満足顔だ。2024年11月末には、上場している約4,000社すべての有価証券報告書の読み込みと抽出作業を終えている。
また、拡張性とは、プロンプトエンジニアリングにおける“ノウハウや知識の拡張”だ。「ここは苦労した点」と堀金氏は明かす。
まずは営業担当者の知見を共有してもらうために「プレイグラウンド」を用意し、自由に試してもらったという。生成AIが想定しているような回答が出ているのかを2~3ヵ月かけて様子見し、最終的に100程度のプロンプトを集めた“プロンプト集”をアプリケーションに盛り込むことができた。
「生成AIは完璧ではない。それらしいことは返ってくるが、要約レベルでは営業に使えない。お客様に刺さるような回答を得るために、営業担当に知見を書いてもらい、生成AIに入れた」と堀金氏。それが営業から見て違和感がない結果を返す、プロンプト集につながった。
そして適応性は、前述したように作ったプロンプトを繰り返し改善していくという作業だ。チャット履歴、実際に顧客に見せた資料とフィードバックを見ながら改善サイクルを回しているという。なお技術的には、既に関係のあるAWSを活用している。
データの抽出では「Amazon S3」に有価証券報告書や財務に関する外部データなどを保存し、機械学習モデルの構築/トレーニング/デプロイのフルマネージドサービス「Amazon SageMaker」で前処理、生成AIサービス「Amazon Bedrock」でSonnet 3.5を用いて抽出している。ここで重宝しているのが、スロットリングエラーなしに大量のリクエストを処理できるBedrockの「バッチ推論機能」だという。
加えて、プロンプトはS3に蓄積、履歴などの情報用に「Amazon DynamoDB」も利用した。これにより、通常より安価に推論でき、出力の安定性も実現している。
WebアプリケーションはReactとNext.jsを利用して作成し、ユーザー認証に「Amazon Cognito」を利用。営業担当者は、社内から安全にアクセスできる仕組みだ。
先述の“適用性”で重要になる改善サイクルにおいて、S3上に提案書を保存し、SageMakerを利用して差分を検出している。「半自動だが、一定以上に達すると中身を確認してユーザーと話し合っている」と堀金氏。プロンプトはデフォルトで複数用意しており、営業担当者がどのように考えるのか、順を追うように再現できるようにした。これにより、経験の少ない担当者が“知見の浅い業界を調べる”ような場合に効率化できることを目指す。
このとき財務諸表に基づく分析、キャッシュフローや市場の評価、競合との比較などができるほか、ダウンロードボタンを用意することで、自動で提案に使うための(パワーポイント形式の)ドラフトを作成できるという。
このようにして有価証券報告書などの財務データを収集から資料の作成まで、通常ならば数時間、経験の浅い担当者なら数日かかるようなプロセスを生成AIで効率化している。
なお、堀金氏によるデモンストレーションでは、実際に同行の営業担当者が使っているアプリケーションを見せてくれた。上図左が生成AIによるやりとり、右側にはAIの出力内容に関連するグラフや表が表示される。「Could you elaborate on the trend of PL(損益計算書のトレンドを詳細に教えてください)」などと入力すると、トレンドを書き出してくれた。