LINEのAIカンパニーとは

金喜俊氏(以下、金):それではAIクライアント開発チームから発表いたします。

まず自己紹介いたします。私はAIクライアント開発チームのマネージャーを務めている金喜俊(キム・ヒジュン)と申します。LINEでは、大きく2つの事業で開発に携わってきました。前半はLINE GAME事業に立ち上げのメンバーとして参画して、モバイルのSDKを開発。さまざまなLINE GAMEのアプリのSDKを導入したり、あとはパートナー会社の技術サポートを行っていました。

2017年10月から、新しいAI事業を立ち上げるというTFに参画して、最初はLinuxベースで、C言語で開発したLINE CLOVAのデバイス開発を担当、CLOVA WAVEやSDKの開発、さらにAI技術を使ったアプリケーションの開発にも携わっています。

今回、AIカンパニーとして、発表で伝えたい要点はこちらです。自ら担当するプロダクトに限定しすぎることなく、領域を飛び越えて、最先端のAI技術に基づくさまざまなプロダクト開発に参加し、活躍してくれるエンジニアをお待ちしています。

なぜエンジニアを募集するか、1つ目はLINE AIカンパニーが目指す世界、2つ目はテクノロジーからプロダクトへ、3番目が組織の体制、4番目がAIクライアント開発業務という内容で話をしたいと思います。

「ひとにやさしいAI」と「これからのあたりまえ」

まずLINE AIカンパニーが目指す世界は、「ひとにやさしいAI」という世界です。「ひとにやさしいAI」が、生活やビジネスに潜む煩わしさを解消し、「これからのあたりまえ」を創出することがAIカンパニーのミッションです。

そしてこの図は、現在LINEが保有しているAIテクノロジーです。上からSpeech、NLU、Voice、Data、Video、Face、OCR、Visionなどの要素技術をLINEのAIカンパニーは保有しています。

AIカンパニーは、このLINE CLOVAが保有する革新的な要素技術を応用することで、高精度なプロダクト開発を推進していて、新規のプロダクトを開発し続けている状況です。

これからさまざまなプロダクトを推進する上で、主にAI カンパニーのCEOをトップに、組織体制が大きく4つの部署に、職種ベースで分かれています。しかし今の組織では、事業の大きさなどを考えて、一人ひとりがプロフェッショナルとして裁量を発揮しながら動いている状況です。

この組織の中で、AIクライアント開発チームは、主にAI開発室の配下で、AI技術の応用開発とシステム開発に携わっています。それ以外でも、先ほどお話したSpeechとVoice、NUL、Face、Visionなどは、AI技術基礎研究を行っているR&Dチームが他にあります。AIクライアント開発室は、現在私を含めて4人のメンバーで構成されていて、その他にも業務委託メンバーが5人で構成されています。

主な開発チームのメンバーは、1名はAndroid開発とWebのフロントエンド開発に携わっていて、もう1人はiOSとAndroid開発、もう1人はCとC++ベースの開発とWebのフロントエンドの開発を携わっています。けっこう1人が複数言語を使って、さまざまなところでプロダクトに参加して開発している状況です。

どんな研究開発をしているか

AIクライアントの開発チームが携わっている業務についてお話しします。その1つは、グループ全社と連携し、LINEのAI技術を活用するプロダクトの開発に携わっています。ここでは公開はできないのですが、今のグループ会社内で、そういうAI技術が貢献できるものはなんなのか、そういうAI技術を使って世の中の課題を解消するところはどこなのか、そういう議論を活発にしている状況なので、これからのグループ会社向けのプロダクトも、ますます増えると思います。

また、グループ会社との連携とは別に、AIカンパニー組織内でLINEが保有するAI技術を使って何ができるか、何か世の中に当たり前なものになれるか、という実現可能そうなアイデアを集めて、それの実行性を試すために、現在いくつかPoC開発にも参画しています。資料に貼っているイメージは、Face技術を使ったFace Detectionの例ですが、それ以外でも音声認識とか音声合成、OCR、Visionなど、技術をうまく活用するために、けっこう試行錯誤しながら研究開発を行っています。

その一方で、大規模汎用言語モデルを活用して何ができるかについての研究開発も参画し、開発を行っています。大規模汎用言語モデルについては、基本的にNLUのR&D研究開発チームがあって、そこで研究開発を行っています。資料に貼っている動画は、大規模汎用言語モデルを使って学習された「CLOVA Chatbot」とやり取りする動画になります。大阪弁で話かけると基本大阪弁で返すような、まるで友だちとチャットするような感覚で実現できます。

このような技術を使って、どこに活用すればもっとシナジーを発揮できるのか、どのようなビジネスにLINEのAI技術をつなげれば、世の中にない新たなビジネスチャンスが生まれるのか。そのようなさまざまな考えを事業部と企画部と開発メンバーが一緒に話し合って、実現可能なところはプロトタイプをまず開発する。そしてプロトタイプを社内でPoCを回し、実際に社内のメンバーにインタビューをし、それをまた検証する……。そういう作業を繰り返しながら、開発を行っています。

技術スタック

これはAIクライアント開発で使っている環境の一部ですが、すべて同じ技術を使うものではなくて、プロジェクトとプロダクトに合わせて必要な技術をまず調査し、技術選定をしてから、開発を行います。アーキテクチャはだいたいプロダクトに使っている部分なんですが、MVVMを使ったりKotlinを使ったりします。

ライブラリとしては、AIを入れるところなので、Androidも10.x以上のものをだいたい使っているので、チャットはJetpackやTypeRocket。動画まわりはhlsを使ったりしています。

あとは学習されたモデルを小型デバイスに活用(エッジデバイス)するため、実際にモデルを軽量化してデバイスに載せられないかという研究開発を行っています。その関係でPyTorchをLibTorchに変換したり、TensorFlow Liteを活用して何かできないかを研究しながら、研究開発をしています。

データベースはJetpackを使っているので、Roomを使ったり、CI/CDまわりはTeamCityのツールを活用して構築しています。

AIカンパニー内でハッカソン

最後にまとめですが、先ほどお話ししたAIカンパニーでは、AI要素技術を強化するために研究開発(R&D)はもちろん、プロダクト開発に力を入れています。そのAI要素技術を応用・活用して、AIカンパニーが最初に目指す世界として、「これからのあたりまえ」の創出を目指し、グループ全社での連携が今も生まれ、企画されたプロダクトが立ち上がったりしています。

その一歩として、組織内で生まれたアイデアに興味があるメンバーが集まって、実効性があるかどうか検証するためにPoC開発したり、それを実際に社内でテストを回して、フィードバックをもらったりして、継続してPoC開発を実行させていきます。直近だと、実際にAIカンパニー内でハッカソンをして、大規模汎用モデルを使った新しいアイデアを活かして、何ができるかというハッカソンを開いたりしています。

そういう状況ですので、今のAIカンパニー、LINEとして出しているサービスはまだありませんが、実はSaaSで企業向けにはサービスを出しているところで、また社内でいくつかの部署にも提供しています。そういう新しいAIテクノロジーやビジネスがけっこう日々変化が激しい業界ですので、そういうスピード感や柔軟性を持って対応が得意な方などを募集しています。

あとは、AIクライアント開発メンバーと一緒に、そういうPoCを開発したり、プロダクトに参画したり、もしくはエンジニアのみなさんが自らアイデアを持っていましたら、こちらにジョインしていただいて、そういうアイデアを提案しながら、積極的にコミットしてプロダクトを作って欲しいと思います。そういうエンジニアのみなさんをお待ちしています。私からは発表は以上になります。ご清聴ありがとうございます。