人事システム「COMPANY」へのRAG実装に取り組むWorks Human Intelligenceが、開発の過程で直面した課題や、それを克服した方法について、AWSのイベントで語った。
AI(人工知能)技術の利用が広がる中で、企業の関心を集めるのが「RAG」(検索拡張生成)だ。RAGは、LLM(大規模言語モデル)の内部知識ではカバーされない外部の情報を参照し、LLMが事前学習していない情報も回答できるように補う手法を指す。ただしRAGを使えば常に精度の高い回答を得られるわけではない。精度を上げるための工夫や、現実的な運用方法の見極めが必要だ。
ソフトウェアベンダーWorks Human Intelligenceは、同社が開発するSaaS(Software as a Service)型のERP(統合業務)システム「COMPANY」にRAGの仕組みを組み込んでいる。本稿は、同社がRAG実装の過程で直面した技術的な課題と、それらを克服するための取り組みについて紹介する。
Amazon Web Services(AWS)が2024年10月31日に都内で開催した「AWS AI Day」で、Works Human IntelligenceはRAG実装の取り組みを発表した。同社が提供するERPシステムCOMPANYは、人事・給与・申請ワークフロー・勤怠管理・雇用手続き管理など、人事領域向けのモジュール群で構成されている。その中の、従業員の人事データを一元管理し、人的資本マネジメントを支援する「タレントマネジメントモジュール」にRAGを実装することで、社内人材を簡単に検索できる機能を構築している最中だ。
ユーザーが自然言語で条件を入力すると、条件に近い従業員リストアップしてくれる仕組みだ。条件とのマッチ度や、マッチしたポイント、従業員プロファイルの要約も併せて提示する(図1)。
RAGの仕組みは次の通り。まずサーバレスコンピューティングサービス「AWS Lambda」を用いてCOMPANYのAPI(アプリケーションプログラミングインタフェース)を呼び出し、月次など定期的に従業員リストを取得する。
従業員データを集約した後は、AWSの生成AIサービス「Amazon Bedrock」上でLLM「Claude 3.5 Sonnet」を使い、各従業員のプロファイルを要約する。生成した要約文はLLM「Cohere」でベクトル(数値のリストや配列)形式に変換し、データベースに格納する。ユーザーが自然言語で条件を入力すると、検索クエリをベクトル化し、ベクトル間の類似性を計算して条件に近い従業員をリストアップする仕組みだ。
Works Human Intelligenceで製品・サービスへの生成AI実装を手掛ける加藤文章氏は、COMPANYへのRAG実装において、大きく3つの課題に取り組んだと話す。
他の従業員の給与や評価などの情報が誰にでも閲覧されてしまうのを防ぐために、アクセス制御の仕組みが必要だった。そのため「権限レベルを4段階に分け、検索者の権限に応じて違う検索結果を表示する仕組みを導入した」と加藤氏は説明する。
具体的には、権限レベルごとに参照できる情報だけを含むように、1人につき4つの異なる要約文を作成してベクトル化した。当初は1人当たり1つの要約文を生成する予定だったが、それでは権限レベルごとに情報を制御するのが難しかったため、要約文を権限ごとに分けて作る方法に変更したという。
当初、生成した内容が冗長かつ曖昧で分かりづらく、事実とは違う内容も含まれたという。対策として、以下のプロンプトエンジニアリングの手法を実践した。
あなたは人事情報から従業員の紹介文を作成するプロフェッショナルです。従業員が新しい部署に異動する際に、人事システムから従業員の情報を確認し、上司に向けてその従業員の情報を要約して紹介します。その紹介文を作ってください。
キャリアヒストリー(異動歴や職歴)、資格を基に、どんな専門知識やリーダーシップなどのスキルを持っているかが分かるようにしてください。
あなたは、要約を厳正に審査する役割を持っています。ルールに従って、総括した評価を厳しく10点満点で実施し、理由も短く添えてください。
以下のような文章構成で、データのある項目のみ要約結果を出力してください。文末は敬体にしてください。
この従業員は◯◯年に<採用区分>入社しました。経歴としては、、、。スキル面では、、、。今後は、、、。
RAGシステムではベクトル検索の仕組みを採用しているものの、特定の特徴をうまく反映できず、意図しない結果が出ることがあったと加藤氏は話す。例えば、強弱の判定が難しく、「データベースに強い人」と検索をかけた結果、データベースに関する十分な知識を持たない人が出てきてしまうことがあった。
検索精度を高めるために、加藤氏は次のような改善策を実践したという。
今後はAmazon BedrockのRAG向け機能「Knowledge Base」を活用し、セマンティック検索(エンドユーザーの意図をくみ取って情報を探す検索手法)など他の検索手法を組み合わせることで、さらなる検索精度改善を図る計画だという。
他の取り組みとしては、Amazon Bedrockのガードレール機能「Guardrails」を活用することで、「責任あるAI」(公平性や透明性、安全性の確保を考慮したAI技術)の強化を進める計画だ。ガードレール機能とは、ユーザーのアクセスを制限する機能を指す。「コンテンツフィルターや機密情報フィルターを自前で実装するのは難しい」と加藤氏は話す。
加えて、人事領域に特化した小規模言語モデル(SLM)のファインチューニングにも取り組んでいるという。「プロンプトだけでLLMに情報を渡すのは限界があり、COMPANYの仕様やマニュアルの内容を事前に学習させることで、精度はさらに高くなると考えている」(加藤氏)
記事公開当初、本文でCOMPANYを構成するモジュールの対象に関する説明に一部誤りがありました。お詫びして訂正します。本文は修正済みです。
Copyright © ITmedia, Inc. All Rights Reserved.
お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。
生成AIに仕事を奪われたくないマーケターのための心得5選(無料eBook)
マーケターやクリエイターにとって、生成AIは2025年も話題の中心であり続けそうです。今...
生成AIの米中依存、地政学リスクに――BCGが警告
ボストンコンサルティンググループ(BCG)の戦略シンクタンクであるBCGヘンダーソン研究...
Webサイトリニューアル時のSEOチェックポイント 順位を落とさないために必須の12の対応を解説
何らかの目的があって進めるリニューアルではあるものの、検索順位がその代償になってし...