この記事は READYFOR Advent Calendar 2023 10日目の記事になります。

皆さんこんにちは。READYFOR でコーポレートエンジニアを担当している若林です。
READYFOR では、社内で利活用するITサービスの導入・活用や情報セキュリティを推進している立場にあります。

生成AIがもたらすコーポレートエンジニアリングの変化

世の中に衝撃を与えた ChatGPT の一般公開から1年が経ちましたね(早い…!)
生成AIの登場によりコーポレートエンジニアの業務も大きな影響を受けていると感じます。そしてその影響は、「GASやSQLを瞬時に生成できて業務効率化が加速するよね」というような単純な話では済まないと感じています。

というのも昨今のコーポレートエンジニアが担当する社内業務のITシステムは、ホリゾンタル SaaS の乱立によってコモディティ化が進んできていることもあり、普段の業務のほとんどは「市場にある SaaS から自社にあったものを選定し、導入効果を最大化する」という動きになっています。

これらの業務も決してエンジニアリングスキルが不要というわけではなく、SaaS では手の届かないかゆいところを簡易的なスクリプト開発で自動化したり、SaaS 間の連携を開発して補完したり、何より社内ITシステム全体のアーキテクチャを構想・維持したりするためにエンジニアリングスキルは重要になっています。

一方で、年を追うごとにソースコードやITインフラといったITシステムそのものに向き合う割合は間違いなく減ってきており、アプリケーションやインフラエンジニアの経験を経てコーポレートエンジニアになっているようなメンバーは兎も角、IT未経験の方をコーポレートエンジニアとして迎えて、エンジニアとしての長期キャリアを形成する道筋は難しくなっていると感じていました。(もちろん、個人の努力次第で何とでもなるとは思いますが)

そんな中で今回の生成AIの動向は「AIの民主化」と言われていたりもしますが、「AI活用」が進んだというよりは「AI開発」が進んだフェーズにあると思っています。業務SaaSに加えて、ノーコードやローコードツールの登場により「ITの民主化」と言われるようになったITの現状と比較すると、AIはまだまだ手前にある状況だと言えます。

Generative AI Era

実際、AIの主要プレイヤーが正式に発表している生成AIサービスの利用料金は下記の通り非常に高額に設定されており、高額な費用に見合う効果を確信して全社導入に踏み切る判断は非常に難しいのではないでしょうか。こういったアプリケーションレイヤでのサービス導入判断が難しい一方で、GPT-4をはじめとする基礎モデルのAPIは従量課金制で提供されているので、社内で小さく開発して導入することで安価に価値提供を進めることができます。

つまり、この領域ではまだまだコモディティ化が進んでいないことになるので、コーポレートエンジニアに求められるスキルとしても、生成AIを活用したITシステムを「開発する力」が求められるシーンが再び増えることになると感じています。

この1年の生成AIに対する取り組み

上記の流れもあり、過去数年は労務を始めとする業務側の理解に時間を使っていましたが、この1年間は個人の学習時間を積極的に生成AIを活用した開発に使うようにしてきました。(2022年と比較して GitHub の草も倍以上に)

GitHub Contributions in 2023 GitHub Contributions in 2022

その上で、簡単に振り返ると社内に対しては以下のようなことを行ってきています。

  1. 社内生成AIガイドラインの作成・各種勉強会の実施
  2. 生成AIを利用できる社内Slackアプリ、Google Workspace アドオンの開発
  3. 営業商談の文字起こし活用PJ
  4. 社内AI開発ハッカソンの開催

その中でも前項でお伝えした「開発する力」を必要とした「2. 生成AIを利用できる社内Slackアプリ、Google Workspace アドオンの開発」と「3. 営業商談の文字起こし活用PJ」について簡単に紹介できればと思っております。

なお、当然プロダクト開発チーム内でも生成AIを使ったユーザーへの価値提供にチャレンジしており、メインで取り組んでくれている岡村さんの手軽に始める類似文書検索:最初の一歩目も合わせてご覧ください。

生成AIを利用できる社内Slackアプリ、Google Workspace アドオンの開発

社内Slackアプリに関しては、Slack の瀬良さんが GitHubで公開されていたリポジトリ を元に、機能をカスタマイズ・拡張したものを社内展開しているものになります。
(単純にSlackアプリ開発の文脈で非常に勉強になりました。瀬良さん、ありがとうございます!)

多くの会社で取り組んでいるものになると思うので、基本的な実装は飛ばして特徴的な部分だけお伝えすると以下のあたりでしょうか。

1.画像生成(DALL·E3)や画像入力(GPT-4V)にも対応している(DALL·E3 は Function Calling で呼び出し)

DALL·E3 GPT-4V

2.OpenAI 以外の有名なモデルにも対応している(Google の Gemini が待ち遠しい)

Generative AI Slack App

3.BigQuery にログを吐き出すことで利用状況を可視化し、分析による改善・利用促進しやすくしている(アプリ実行基盤をGCPに移行した9月以降)

Slack App Usage Log

特に3つ目の利用状況ログはもっと早くに着手しておくべきだったなと反省しております。やはり客観的なデータがないと、判断の精度が落ちるので。

Google Workspace アドオンに関しては、Google Docs や Google Sheets から効率よくLLMを使うためのインタフェースを用意している形になります。そこまで高度なものではないので詳細は割愛しますが、Google Workspace アプリを学習するきっかけになったので、今後のコーポレートエンジニアが取れる手段を広げるきっかけにもなったと感じます。

営業商談の文字起こし活用PJ

こちらは前述した社内Slackアプリの展開が終わった後、より業務に密接に活用してもらうため、社内の業務で生成AIが効きそうな業務を洗い出し、PJ化したものになります。

商談の文字起こし自体は従来からサービスが存在することを認知しておりましたが、LLMの活用によりその文字起こし情報を精度高く要約できるようになったことで、商談文字起こしデータの価値が上がったことが今回取り組む背景になっています。

実際に実装したシステム構成は以下になります。

Summary of the Transcription

ポイントとしては以下のあたりでしょうか。

  1. 商談文字起こしには amptalk を活用
    • OpenAI が提供する Whisper API 等を活用して開発することも検討しましたが、商談に活用している複数のサービスに対応するコストを考えて断念
  2. 要約処理は社内で開発
    • 商談のトークスクリプトと出力フォーマットを合わせる形でプロンプトを自社専用にチューニングしていきたいので、社内で開発する方針に
    • amptalk から文字起こしデータがAPIで直接取れるわけではないので、Hubspot から取得する形に
    • GPT-4 Turbo が出るまでは LangChain の Summarizationを活用していたが、GPT-4 Turbo や Claude 2 は1時間の商談で発生する文字数程度であれば一度で処理し切るため、LangChainを外すことに
  3. Slack 通知後に編集できるように
    • ルールベースのシステムと異なり、AIを組み込む際は一定のエラーが入ることを前提にUXを設計する必要があるため、商談担当者が実際に要約結果を見て、内容を最終確認する流れを実装

以前から実用に耐えうる精度は確保されていましたが、GPT-4 Turbo の登場により1回で商談文字情報を処理し切れるようになり、要約精度の観点から大きく改善されたと感じます。とはいえ、そもそも文字起こしの段階で正確に文字起こしできていないと、どれだけ要約がうまくいっても限界はあるので、文字起こしの精度向上にも引き続き期待したいところです。(今の実装だと、amptalkに依存することにはなりますが)

まだまだ社内で活用しきれている状況ではないのですが、さらに精度が上がってくれば Function Calling や JSON Mode を利用することで、現在商談担当者が商談後に Hubspot に手動入力しているプロパティを自動的に挿入することもそう遠くないうちに実現すると感じています。

おわりに

今回、生成AIがコーポレートエンジニアリングに与える影響と、実際の取り組みを紹介させて頂きました。この領域は本当に激しい動きを見せているので、まだまだどうなるか分かりませんね。ただ、こんなに激しい技術革新の真っ只中で開発する機会もそうないので、この荒波を楽しんでいきたいと思います!