toB 向け E ラーニングシステムに ChatGPT を導入して業務効率化を達成した事例について語ってもらいました
はじめに
エンジニアの山田です。
弊社のニュースリリースにあるのですが、ジョブメドレーアカデミー(以下、アカデミー)では Azure OpenAI Service の GPT モデルを駆使した新機能「研修作成アシスタント」をリリースしています。 この生成 AI を活用した機能により研修作成担当者の作業時間を 75%軽減し、業務効率化に寄与するものになっています。
今回はこの研修作成アシスタントの開発について、担当した二人に話を聞きました。
インタビュイー紹介
岸田さん
SES 企業で業務システム開発、オフショア開発をしている会社でブリッジエンジニアという経験を経て、2019 年メドレー入社。 その後ジョブメドレーで開発をリード。現在はアカデミーのプロダクト責任者を務める。アカデミーのプロダクトに関する各施策を統括して管理している。
徳永さん
2022 年メドレーに新卒入社。 入社時からアカデミーの開発に携わる。大学では、対話 AI システム・ AI との対話用プラットフォームの研究開発をしていた。現在は自身も開発をしながら開発のリードにも挑戦している。
ジョブメドレーアカデミーのサービス概要
── 今回アカデミーで採用した生成 AI を用いた新機能について話をしていきたいと思います。その前にアカデミーについてはこのブログでも何度か取り上げていますが、改めてアカデミーというプロダクトがどのようなサービス内容なのか教えてもらってもよいでしょうか?
岸田: アカデミーの概要としては、現在「介護」「障がい福祉」「訪問歯科」「在宅調剤」という 4 つの業種に対応した「オンライン動画研修サービス」となります。
研修については、導入してくださっている顧客である介護施設側が、1 つ 1 つ研修内容に合わせてアカデミーに登録されている動画を組み合わせてカリキュラムを決めていき、職員の方たちはそれらの動画を見て、研修を受けてレポートを書いたりできるプロダクトになります。これに付随して研修そのものを計画したり管理できたりする、というとイメージしやすいでしょうか。
── 介護施設の研修業務を効率化するというプロダクトですね。どのようなミッションを持って、開発しているんですか?
岸田: 大前提として、提供している研修によって施設で働く人のスキルアップに役立たせる、という目的があります。それ以外では BtoB のサービスなので介護施設の事業効率化という点も重要視しています。本来、施設の本業は「介護」になるので、そこに本質的には関係しないような管理業務などは、アカデミーを使うことによって効率的に作業ができるようになる、というところを目指しています。
最近の業務内容
── 介護施設が「介護」以外に時間を取られているという課題を解決するプロダクトなんですね。そんなアカデミーでお二人は現在どのような業務をされているのでしょう。
徳永: 私は直近はチームとしてアカデミーの機能の一番コアな部分である研修システムの割り当ての改修をしています。今までは、施設職員への研修割り当ての機能が、小規模の施設だと少し使い勝手が悪く自由度が高くない機能だったんですが、その割り当て自由度を高めるためにコードレベルでばっさりと書き換えをするというプロジェクトをエンジニア 7 人 + プロダクトマネージャ 1 人で進めており、そのプロジェクトの開発リードをしています。
最初は 5 人で始めたプロジェクトでしたが、プロジェクト自体のボリュームも増えてきて現在の人数になりました。このプロジェクトは 11 月中のリリース予定になっています。
── かなり大きい規模のプロジェクトのリードをされているんですね! 岸田さんはいかがですか?
岸田: 私は最近は開発に直接携わるよりも、プロダクト全体の方針決めなどをメインの業務にしています。次のクォーターではどんな開発をするべきか、来年はどのようにプロダクトを発展させていくかなどを考えるという仕事ですね。他にはアカデミーに在籍しているプロダクトマネージャ達の企画の精査だとか、コードレビューなどをしています。
── メンバーのピープルマネジメントなどは引き続きやっていらっしゃるんですか?
岸田: はい、そちらも引き続きやっています。全員の 1on1 などは最近は他のリードの方にお願いしていたりもします。
徳永: 現在のプロジェクトのメンバーの 1on1 は自分が担当させてもらっていることが多いです。主に話をする内容は開発に関する提案やディスカッションになります。
生成 AI を活用した研修作成アシスタントについて
機能の概要について
── ありがとうございます。最近のお二人のお仕事が分かったところで、本題である生成 AI を利用した「研修作成アシスタント」機能についてお話を伺えればと思います。ニュースリリースにも書いてあるのですが、こちらの機能の説明をざっくりとお願いしてよいでしょうか。
岸田: 先程のサービス説明のときにもお話したのですが、研修を考えるときには施設の方は「どういった研修にするか」を考える必要があります。「どんなテーマの研修にするか」「今月は制度で決まっているから、この研修をしないといけない」など色々な理由はあるんですが、テーマが決まって研修を実施するまでに「テーマに合った動画を探して選択する」というプロセスが入ります。
プロセスとしては他に「いつ誰に受けてもらうか決める」などもあるのですが、研修カリキュラムを作成する一番のペインは「テーマに合った動画を探して選択する」という部分なんです。
今までは、この「動画を選択する機能」としては以下の 2 つをプロダクトとしては用意していました。
- メドレー社内で選定された動画を研修のプリセットとして使える機能(頻出する研修のみ)
- 一つひとつ動画を選んでオリジナルな研修を作成する機能
この 2 つだと 0 か 100 かみたいな形で中間となる 50 にあたる機能がなく、ここに相当するセミオーダーメイドのような機能が欲しいというのが以前からプロダクトで抱えていたニーズだったんです。
今回提供した「研修作成アシスタント」機能では、大まかにどんな研修をやりたいかを研修名として入力してもらえれば、そこから生成 AI が「研修で具体的に学んでほしいこと」(研修の目的)や、「目的にマッチする動画」を提案してくれます。 管理者の方には生成 AI が提案してくる内容を取捨選択・訂正していただく形になっています。
これによって既存の機能が抱えていた「多様なニーズへの対応ができない」「研修作成に時間がかかり過ぎる」という両方の課題を解決する機能というイメージです。
そもそもこの機能を開発した理由
── 「研修作成アシスタント」ですが、元々はどういった経緯で開発をすることになったんでしょうか。
岸田: アカデミーのサービスとしてのウリの 1 つでもあるんですが、動画を内製していてその数も 6,500 本以上に上ります。多くの場合 1 つの研修につき 5 本ほどの動画を設定するのですが、数千本の動画の中から研修にぴったりと合った動画を見つけ出すのは大変な作業でした。
徳永: 研修を作るのに一番大事なのが動画選びなのは間違いないのですが、その他にも研修の目標を考えるのも同じくらい大事です。そもそも目標がないと、受講者もどういう背景でやる研修なのかが分からなかったり、「目標設定をして研修をする」ことが介護保険の加算要件に入っている場合もあるので、この目標設定は大事なんですが、こちらも 1 から考えるとなると中々に苦労する部分だったりしていました。
── 研修動画を選ぶのも、目標設定をするのも今までコストがかかっていたということですね。
徳永: こららのコストを何とか減らせないかというところが開発の立脚点になっています。研修名だけは考えてもらえれば、あとはこちらで自動生成して提案しますよという形になれば、プロダクトが便利になるなという予感がありました。
アカデミーのサービス特性と ChatGPT の相性の良さ
── 実際に作業時間を 75%削減する機能となっており便利になっていますもんね。この機能の開発に ChatGPT を使っていますが、どうして ChatGPT を選んだんですか?
徳永: この機能を作ろうと動き出したのが、2023 年 3 月くらいだったのですが、時期的にちょうど GPT-4 が出るか出ないかというところでした。ですので、Google Bard など他の選択肢がそもそもなかった状態だったというのが理由の 1 つであります。
あとは Azure のほうは生成系 AI を使っても、こちらのデータは学習に使われない環境を提供していて、プライバシーの側面も考えると、しっかりと業務で使える環境が整っていたのが ChatGPT だった…という感じでしたので、選びました。
── こうした新しい技術へ向き合う姿勢という点ではどういったものがありましたか?
徳永: 今回特に ChatGPT など生成 AI が盛り上がってきたタイミングで、このまま行くと生成 AI が使われていないと事業としても不利になっていくタイミングが来るんじゃないかなと考えました。一度触れてみて、技術の進化の分岐点ではないかと感じたので、このタイミングでちゃんと社内の効率化みたいなものをやりたいと最初は考えていました。
── 社内でオペレーションをする方向けの機能を最初は考えていたということでしょうか。
岸田: そうです。アカデミーでは動画は内製しているため、企画の素案作りだとか動画の説明文を生成することなどを最初は考えていたんですが、アカデミーのプロダクトとして価値を高めるため「社内ではなくて顧客向けの機能にしても良いのでないか」と思い直したんです。
こうした点も考えると、生成 AI の導入によるデメリットというものがメリットに比べて限りなく少ないという判断ができましたので、元々課題として考えていた研修生成に使うことを決めました。
徳永: 最初は日本でも生成 AI をプロダクトに取り込んでいるのは数件程度ということもあったので、さっと取り入れてしまったほうがメリットがあると感じました。
研修作成アシスタントができるまで
── 最初はどんな感じで企画など進行したんでしょう?
徳永: 最初は現在アカデミーで感じる課題に対して生成 AI でどのようなソリューションが出せるのかを思考実験という感じで Confluence (社内 wiki)にいくつか並行してまとめていきました。その中で一番費用対効果が高いというか、生成 AI を使わない従来の技術だと一番太刀打ちができない課題が「研修作成アシスタント」の機能でした。
岸田: 生成 AI を使わない場合のアプローチは考えてはいたんですが、結局のところ検索を高性能にしていくか、おすすめをパッケージングするくらいしか効率的に動画を探す方法が見出せずにいました。
── 動画の検索を高性能にということだと…検索に使うメタ情報をちゃんと用意して…というような手段になりそうですね。
徳永: アカデミーの動画だと説明文などが、必要最低限しか記録されていないことが多く、動画内の情報を取ってくるのも難しかったのです。ですので、中々コストがかかってきて改善が現実的じゃなかったんですが「生成 AI を使えばこの問題を解決できそう」という感触がありました。
── なるほど、一番解決が難しい問題を生成 AI でコストを最小限で解決できそうということだったんですね。こうした企画から実際に実装するまではどんな進行をしたんですか?
岸田: 最初は徳永さんと、もう 1 名のエンジニアとで 1 週間くらい検証作業をしていました。実際にちゃんとできるのかや、精度として顧客が満足するくらいまで出せるのかなどを検証していました。
ある程度行けそうという目星が立ったのですが、その途中で先程の動画の説明文不足が、障害になるというのも分かってきました。これを解決するためにGoogle の Speech-to-Text を使って動画内の文字起こしを自動でできるようにしてメタ情報を作るようにしたり、ベクトル検索ができるような外部サービスを導入したんです。それだけだと精度が低かったので、生成したメタ情報をさらに ChatGPT で整形するような方式を取りました。
これらを DB に入れてベクトル検索をかけるようにして検索時に目標やタイトルと関連付けて検索できるようにしたという流れです。
── なるほど 3 段構えくらいで機能を実現しているんですね。
徳永: とはいえ生成 AI は API の出力結果が若干不安定だったりするので、どこで最初はエラーが出たのかというのが分かりにくかったりしたので苦労しました。検索も今の形になるまでは OpenSearch の全文検索を使ったりしたんですが、検索精度が低かったりして紆余曲折はありました。そこから今の形式になり精度を高めて、合計 1 ヶ月くらいでチューニングまで含めてリリースしたという感じです。
今回のプロジェクトでの経験で学んだこと
── 今回のプロジェクトで良い経験だったと思う点はどんなものがありますか?
徳永: 今回はあまり先行事例もないですし、調査と検証を繰り返していました。途中で色々問題も出たりしたのですが、やっぱり未知の状態で物事を進めるにはひたすら PDCA を回していくのが一番良いんだなということを学びました。
元々大学での研究が対話 AI などだったので、言語モデルをどう扱えばよいかなどの知識があったのは良かったなと思いましたね。
── では今回のプロジェクトに適任だったんですね!
岸田: あと学んだことではないですが、今回のプロジェクトの副産物としてベクトル化した動画のメタ情報が手に入ったんで、これを発展させてまたユーザへ価値提供できる機能が作れるなというのは良かった点でした。
今後のアカデミーの技術的な方向性
── これから解決していきたいアカデミーの技術的な課題のようなものってありますか?
岸田: 今回初めてプロダクトに生成 AI を導入しましたが、プロダクトの他の機能にも取り入れることができないかなどは導入前よりスムーズに考えられるようになったので、ぜひ検討していきたいです。また、発展してディベロッパーエクスペリエンスの向上などに使えないかなども考えたいと思います。
徳永: ちょっと話が AI ではなくなりますが、アカデミーのコードベースは DDD を行いつつ開発しているのですが、こちらの構造をもっと最適化し、新しくアサインされたエンジニアもよりスムーズに開発できるようにしたいなとは考えています。
── ありがとうございました!
さいごに
元々アカデミー開発チームは、責任を持ってチャレンジしていこうという雰囲気があったと思うのですが、今回の ChatGPT を使った機能開発にもそうしたチームの雰囲気が良く作用しているなとインタビューをしていて感じました。
また生成 AI の導入も「新しくブームになりそうだから取り入れる」という考えではなく「日頃から解決を考えていた課題を解決できそうだ」という視点から導入していたのが印象的でした。
こんな雰囲気のアカデミー開発チームに興味が出た方は、ぜひカジュアルにお話しましょう!