Findy Tools
開発ツールのレビューサイト

Findyの推薦システムのアーキテクチャ図

Xのツイートボタン
このエントリーをはてなブックマークに追加
Xのツイートボタン
このエントリーをはてなブックマークに追加

Findyの推薦システムのアーキテクチャ図

最終更新日 投稿日
image1.png

アーキテクチャの工夫ポイント

ファインディが開発している「転職サービスFindy」のユーザー様に提供している推薦システムのモデル学習と推論において、上記のような学習・推論自動化パイプラインを構築しています。モデルの自動学習にはGoogle CloudのVertex AI Pipelines、モデルの推論にはAWSのElastic Container Service(ECS)のバッチ実行を採用しました。
技術採用の背景や意図として、モデル学習のパイプラインを構築するにあたり、弊社ではサービス運用によって取得したデータをBigQueryに蓄積していることから、同一クラウドサービス上で簡易に実装することのできるVertex AI Pipelinesを採用することにしました。また、GitHub Actions Workflowと連携させた事で、常に学習パイプラインのコードを最新の状態に保ちつつ、週に1度のモデル更新も自動で起動するよう工夫しました。 そのおかげで、基本的にモデルの更新には人手が全くかからない状態を実現できました。
モデル推論は、ファインディのサービス基盤がAWS上に構築されている事から、AWS上で簡易にバッチとしてタスクを実行する事ができるECSを採用しました。週次での学習パイプラインが実行された際に、最新の学習済みモデルを保持した推論用コンテナを同時に作成しており、そのコンテナの受け渡しだけで済むので、運用コストをグッと抑えることができています。コンテナの受け渡しも、GitHub Actions Workflowで実現しています。

現在の課題と今後の改善予定

社内に存在するその他の機械学習プロジェクトにおいても、上記アーキテクチャによるモデルの学習・推論を実現する事で、運用コストが抑えられる取り組みがいくつかありますが、現状は推論システム専用の構築にしてしまっているので、横展開が追いついていない点が現在の課題です。
今後は、本アーキテクチャを横展開し、社内で運用される機械学習プロジェクトに徐々に適応していきたいと考えています。

◆執筆:ファインディ株式会社 CTO室データソリューションチーム 笹野翔太 @Edyyyyon

【サービス公式サイト】
https://findy-code.io/

会社情報

ファインディ株式会社

ファインディ株式会社

従業員規模 51名〜100名

エンジニア組織規模 51名〜100名

エンジニアと組織の転職マッチングプラットフォームやエンジニア組織支援SaaS事業を展開