エムスリーテックブログ

エムスリー(m3)のエンジニア・開発メンバーによる技術ブログです

【Sansan x エムスリー】gokartで爆速開発!MLOps勉強会をSansan株式会社と共同開催しました!

こんにちは! エムスリーエンジニアリンググループ AI・機械学習チームの氏家です。 最近同僚におすすめされたチーズグレーターを使ってチーズを削るようになり、市販の粉チーズと比べて格段に風味が良くて感動しています。

さて、エムスリーは7月10日にSansan株式会社と共同で「【Sansan x エムスリー】gokartで爆速開発!MLOps勉強会」を開催しました! 今回のイベントはハイブリッド開催で、オフラインでは満員の30人、オンラインでは101人もの方に参加いただきました。参加いただいた皆様ありがとうございます。 おかげさまで当日は懇親会も含め大盛り上がりで、タイトルの通り「gokartで爆速開発!」するための知見で溢れた勉強会になっていたと思います。

本記事では、参加できなかった方のために当日の様子をお届けしたいと思います。

sansan.connpass.com

勉強会の様子

gokartで爆速開発!MLOps勉強会

今回の勉強会では、gokartを使ってMLOpsを推進しているエムスリー・Sansan両企業から、gokartでMLプロジェクトを開発している事例や実践テクニックを紹介しました。

github.com

gokartとはエムスリーでメンテナンスしている機械学習パイプラインOSSです。 Spotifyが開発しているLuigiのwrapperであり、キャッシュなどを用いてパイプラインの再現性を担保しつつ実行を効率化できるのが特徴です。 gokartについては以下の記事が詳しいので、gokartの詳細はこちらをご参照ください。

www.m3tech.blog

勉強会開催のきっかけ

以下のテックブログの紹介ツイートに、Sansan株式会社 VPoEであり元エムスリーAIチーム、gokartの生みの親である西場(@m_nishiba)さんが反応した事から始まりました。 私達エムスリーも西場さんのツイートに即座に応答したところ、Twitter上で打ち合わせが行われ、あれよあれよと言う間に爆速で企画が決まりました。

今振り返ると、6/13にテックブログが公開され、7/10に勉強会を開催しているため、ものすごいスピードでした。 この「早く強く技術を磨いていこう」というひたむきさで前に進める所も、自社でOSSを開発する魅力の1つです。

発表

当日は以下の6人でLT形式で発表を行いました。 概要とともにスライドを載せていますので、是非スライドもご覧ください!

gokart をどこでどのように 使っているか? / 小松 尚太 (Sansan株式会社)

Sansan技術本部研究開発部でのgokartの活用事例を紹介いただきました。実際の活用方法のみならず、gokartを活用することで開発リードタイムがどう変化したかなど、実際に業務にgokartを導入した事例として大変参考になります。

speakerdeck.com

今日から使えるgokart小技集 / 氏家 翔吾 (エムスリー株式会社)

gokartのハマりがちな罠や実践的な機能を、本記事の著者氏家が紹介しました。あまり知られていないマイナーな機能も紹介していますので、gokartを使っている方の参考になれば幸いです。

speakerdeck.com

テーブルデータの推論結果をS3に出力するpipelineをgokartを使って書く / 齋藤 慎一朗 (Sansan株式会社)

テーブルデータを使った推論の一連の流れについて、実際のコードも踏まえてgokartで実装する方法について紹介いただきました。 gokartでの実装方法だけでなくデータバリデーションの方法まで実践的なgokartの活用方法がカバーされており、初心者から普段gokartを使っている方まで参考になる発表です。

speakerdeck.com

gokartのキャッシュ衝突防止ロック / 池嶋 大樹 (エムスリー株式会社)

gokartのキャッシュ競合を防ぐ機能であるロック機能について弊社池嶋が紹介しました。ロックシステムの課題やその解決方法がわかりやすく示されており、gokartの実装の中身に気軽に踏み込める発表となっています。

speakerdeck.com

gokartで動かすバッチのコストと実行時間の両立戦略 / 新井 和弥 (Sansan株式会社)

gokartのキャッシュとAWS EC2のスポットインスタンスを用いて実行時間と費用を抑える方法について紹介いただきました。gokartのキャッシュシステムはスポットインスタンスと相性が良いことを利用し、その他様々な工夫によってcronjobを早く、安く、上手く実行しています。Kubernetes上でgokartを使おうと思っている方は必見です。

speakerdeck.com

gokartの分散並列化ライブラリkannonの紹介 / 小栗 悠太郎 (エムスリー株式会社)

gokartのタスクパイプラインの一部をKubernetes上で簡単に分散並列化できるライブラリkannonを弊社小栗が紹介しました。並列実行可能なgokartタスクを実際に並列実行する際の戦略など、gokartのみならず純粋にCS領域としても面白い話となっています。また、kannonはOSSとして絶賛開発中です!コントリビュートお待ちしています。

speakerdeck.com

github.com

懇親会

発表の後はオフライン参加者で懇親会を行いました! 弊社取締役CTOの山崎も参加し、大人数で美味しいお寿司とお酒を楽しみながら、発表の質疑をしたり、gokartに関する知見をざっくばらんにお話しすることができました。 gokartコントリビュータに囲まれながらgokartパイプラインの実装についてホワイトボードで議論する場面もあり、オフラインで技術の話をわいわいとする楽しさを再確認できる懇親会になったと思います。

懇親会の様子

まとめ

本記事ではgokart勉強会での様子を紹介しました。 私自身登壇者として参加させていただきましたが、いずれの発表もgokartの知見が満載で、両社内に閉じていたgokartの知見を共有する機会としてこれ以上ない場となったと思います。

We're hiring!

AI・機械学習チームでは、gokartを使ってMLプロダクトを爆速開発しています!gokartを使ってMLシステムを作っていきたい方は是非ご応募ください! また、エムスリーではgokart(Python)以外にもさまざまな技術スタックで100を超えるプロダクトを開発していますので、ピンときた方は是非ご応募ください。

jobs.m3.com