登壇者の自己紹介

新里祐教氏:こんにちは。僕は、「AI時代~開発者のはたらきかた~」というテーマでお話しします。新里と申します。

まず、自己紹介です。GMOインターネットグループ 代表室 特命担当で、プログラマーをしています。仕事は主にIT全般で、何でもやっています。最近だと時代の流れ的に、AIのようなものの話がメチャクチャ多いですが、企画から営業サイドの折衝をしたり、画面デザインをしたり、運用など突発的な案件をやったり、「Slack」のアプリを作ったり、何でも1人でやっています。

あと個人開発で作ったものをイベントで展示していて、たまに技術誌などを書いています。

2022年や2021年だと、量子コンピューターですね。ゲートの応用セクションで未踏の方でやっていたり、ほかにも作ったものがメディア芸術祭の推薦作品に選ばれたりなど、基本的に個人は好き放題、好きなことをやっている感じです。

今は“AIの進化のスピード感が異常に速い”凄まじい時代

最初に、AI的な物の扱いについて。AIではなくて「AI的」としているのは、そこまで断言してAIだとは思っていなくて、猫も杓子も「AIだ」みたいな感じになる前は、どちらかというと「機械学習」という言葉がよく使われていたと思うんですよね。

それも含めて今はざっくり「AIだ」という感じになっていると思います。ざっくばらんに範囲は広いですがAIでまとまっていますね。例えば、少し前だとルールベース。数年前に流行ったレコメンデーションや協調フィルタリング。今でも使っているところは使っていますが、全部一括りで「AIだ」みたいな感じになってきている感じがしています。

言葉も変わっているのですが、何でしょう。進化が異常に速いなと思っていて、毎日「X」だったり、ニュースでAIの機能もしくは新しい「こんなことできるぞ」みたいなのが出てくるスピード感が異常に速いなと思っています。ちょっとしたライブラリを使うにしても少し前のライブラリを使っていてアップデートすると動かなくなったり、凄まじい時代だなと思っています。

活用事例1「記事掲載報告ツール」

僕がよく使う開発環境はメチャクチャあるんですよね。どれを使います? みたいに思っていたりもするのですが、ローカルの手元のPCで動くものからサーバーで動くもの。あとは組み込み環境で動くものやAPIで叩いたりするものなど、もうメチャクチャあるんですよね。「どれを使えばいいんですかね?」みたいな。

「AIを使え」という指令で来ると、「え、どれですかね?」みたいな(笑)。何でもいいでしょうけれども、ありとあらゆるところにAIが入って来ているなという印象です。

これは僕の利用例です。こちらは、普通の環境かなと思っているんですけれども。これは「VSCode」にCopilotを入れて、Pythonでペッと書いて作ったものです。2023年に作りました。よくある近隣ベクトルの探索とChromaを使いました。最初はFaissを使おうと思っていたのですが、違うのも使ってみようかなと思ってChromaを使って、これにLangChainを噛ませてポコッと動かしたものです。

ネット上にあるGMOインターネットグループに関する記事情報をババッと取得してきて、DBに格納をして、記事の情報をOpenAIに食わせて、要約して、Slackとかに報告するみたいなツールだったんですけど。最初に作っている時には楽しいなと思っていたのですが、作ったあとに問題もなかなかありました。

最初の頃は、こういう情報を全部「Excel」を使って管理していて、自動化したり、AIで要約させたりして記事の情報をサラッと見れるようにしていたのですが、最終的にこの機能においてはAIの機能自体がなくなりました。というのも、これはなかなか切ないポイントで、要約した情報を見せたりしていたんです。

あとはある程度推論した情報とかを出していたのですが、「自分で見たい」みたいな意見がきて(笑)。「あれれー?」と思いました。要約したかったんじゃないの? みたいなことがあって、あまりにUI的な問題もあったのでしょうけれども、「別にAIはいらないから、シンプルに見せて」みたいな感じになって、この機能自体はいらんとなって、なくなっちゃいました。「あら、まぁ」と思って、それでコードごと全部消しちゃいました。

活用事例2「組込み向けセンサーデータ推定モデル」

次はですね、これは2021年か、2022年かに作ったやつです。STM32上で「TensorFlow」を動かしたモデルですね。センサーデータを集めて「Google Colaboratory」上でモデルを作って量子化して、STM32上のARM上でポンッと動かすといった感じで、これの場合は、ARMを使うので環境はもうTensorFlow一択ですね。

これはまぁ普通にデータを集めちゃえば、なんとかなるかみたいな感じだったんですけれども。これも、センサーデータを使う時になかなか切ないポイントがありました。加速度センサーを使う時に人がセンサーデータとそれに対するアクションの組み合わせ、データを集めないといけなくて、例えばこの時は気圧のデータを使いました。この時はトイレのデータだったかな。トイレって閉鎖空間なんですよね。閉鎖空間でドアを開けると、中の気圧が変化して開閉がわかるんじゃないかなと思ってやりました。

開け閉めのアクションと、そのトイレの中で閉めていた気圧センサーのデータですね。(気圧センサーのデータ)をひたすらサンプリングしているんですよね。なのでドアを何百回と開け閉めして、ゆっくり開け閉めしたり速く開け閉めしたりということをザーッと繰り返しました。けっこうデータを集めるのって、時間もそうですが体力も必要になって、そう簡単にセンサーを使う時のデータは集まらなかったりするんですよね。

技術選定において大事なこと

モデルを考えたり、技術選定したりする時のターゲットについてお話しします。先ほどのARMの場合は、TensorFlow Lite一択でしたが、今の生成ものだとモデルが山ほどあって、どれを使えばいいんだみたいなことが起きます。何にしても、最初に触ってみることが重要かなと思っています。

量子化できるのか、メモリのサイズを小さくできるのかとかもあるんですけども。触ってみないと何とも評価できないので、触ってみることが必要かなと思っています。

もう1つ、けっこう重要かなと思っているのが原理や根源的なことを押さえておくこと。AIに限らず、すごく使い回しができることが非常に多いです。

ベクトル化しかり、あとは特徴点のハンドリング、近隣探索、次元の扱いとかですね。ここらへんはAIに限らず、ほとんどいろいろなシステムで出てくるので、こういった根源的なことをキャッチアップというか理解しておくことは非常に大切だと思っています。

AIの業務活用コンテストで受賞

GMOインターネットグループでの取り組みについて。2023年4月から「AI(愛)しあおうぜ!」という社内公募コンテストが、2023年11月からは生成AIプロンプトポータル「教えて.AI byGMO」というサービス提供が始まっています。「AI(愛)しあおうぜ!」は、業務効率アップや新規サービスでAIを活用したアイデアを募る社内コンテストです。

月間の賞と、四半期の賞と、年間チャンピオンというのがあって、それぞれ賞金をいただけます(笑)。

もう1つ、「教えて.AI」というのは2023年11月にリリースされた生成AIプロンプトポータルです。

今回は、「AI(愛)しあおうぜ!」で、受賞したネタを、紹介しようかなと思います。「先端AI研究開発用のハード・サーバーの迅速な提供体制の確立」という企画案を出しました。

「AI(愛)しあおうぜ!」が始まった時に、まだGPUが、社内でノーパソだったり、デスクトップだったり、サーバーで使うGPUがぜんぜんなかったんですよね。個人の自宅に普通にGPUを使ったマシンがあって、いろいろなことで使っているので社内で使うとした時にぜんぜんなくて、「あらららら……」と思って、ここで使える環境を提供しましょうみたいなので出したら、受賞しました。

この、「AI(愛)しあおうぜ!」プロジェクトのおもしろい点は、AI的な技術を使えば何でもありで何回受賞してもOKという……なんか分別をわきまえずにそんなに出していいのかしらって思ったんですけど。

これは何かというと、GMOインターネットグループの中に無料でランチが出されるYoursというコミュニティスペースがあるのですが、なんかすごく混むんですよね。カメラを見ると混雑具合がわかるんですが、このカメラを使えるじゃんと思って。ダークネットのYOLO、これもすぐに使えますよね。

5分ぐらいでササッと作って、定期的に切り替わる画像を使って人の混雑度合いをチェックするみたいなことをシャシャッとやったら、また入賞しちゃって「あらま」と思ったんですけども。

と言ったように何回受賞してもOKで、その都度賞金が出るので、いわゆる流行りのOpenAIだけじゃなく、AI的なものを自分で開発したりもいいですし、(AIを)使ってエントリーできるといったものもあります。

全パートナー向け独自テスト「GMO AIパスポート」を実施

もう1つ、これも導入する時にお手伝いをさせていただいたのですが、GMOインターネットグループにはAIテスト「GMO AIパスポート」というのがあって、全パートナー(社員)が受けなければいけません(笑)。

この「全パートナー」というのは、社長から役員、一般、パートナー全員なんですよね。本当に全員なんですよ(笑)。これは大丈夫なのかなと思いつつ、問題を見たんですね(笑)。こんな「GPT-4やPaLMなどの大規模言語モデルに関する知識を問う問題」。こんなの本当に大丈夫なんですかね、みたいなのを出したりしています。

AIのスピード感が異常に速いので、(独自テストの)アップデートは誰かがやってくれるかなみたいに思っていますけど。(アップデート)されてテストは続いていくと思っています。

GPT-4なんかは聞けば何かしら答えてくれるので、壁打ち相手にもちょうどいいですし、そこで浮いた時間を使って新しくクリエイティブなことだったり、なにかを新しく開発する時間だったりに回せればなと思っています。

エンジニアやプログラマーの働き方はどう変わっていくのか

最後に、エンジニアやプログラマー……。僕はプログラマーという扱いなんですけども、その働き方ですね。AIでどう変わっていくのかな。AIを何かしら社内に導入したり、使うことはほぼマストになってきているので、その中でどういうふうに関わっていけばいいのかなというのはすごく思います。

これは先週あたりか先々週あたりだったかな。Xに書いたらすごくいっぱい書かれちゃったんですけども。よく「AIを使うことでプログラマーは不要になるか?」という話が出てくるのですが、これはもう絶対的に(不要に)なりません。近視眼的に言うと、すごく忙しくなりますし、必要度合いも上がります。

なぜかと言うと、古来、例えば僕が最初にプログラムみたいなことをやっていた時はMS-DOSでFORTRANを使ってみたいな。なんかもういつの時代ですかみたいな、DOSプロンプトでハードもフロッピーディスクだったかな。もうちょっと前になるとテープだったりしたと思うんです。

だけども、そこの人たちが現在のようなWeb上で開発をしたり、JavaScript、TypeScriptを使ったりする環境をプログラミングと言えるのかとか、こういうかたちになるのかを予測できなかったのと一緒で、AIを使うことでプログラミングというプロセスや本質は、方法論は変わると思いますが本質的なところはぜんぜん変わっていかない。

手法は何かしら変わっていくと思いますが、なくなることは絶対にないです。より簡易的にプログラムを使えるようになるので裾野が広がって、より専門性が必要になってくる。それでいろいろなことを学んだりキャッチアップをしていかないといけなくなるので、やたらと忙しくなるというのが僕の直近の感覚です。

AIは人間の敵ではなく良いパートナー

先ほど言った、いわゆる開発プロセスの変化ですね。コードの補助やサポートしてくれてラッキーというのはすごくあるのですが、出してくるコードをそのまま盲信的に信じて、例えばGPT-4に「何かしら作って」と言って出てくるコードをそのまま使うことは、まぁないですよね。まぁないというか、絶対にないですよね。

なにかコードを作って動かなくてバギーになって、「その原因はAIでした」なんてことを言える人間はたぶんいないと思うんですよ(笑)。わからないですけど。「そんなバカな」みたいなことになるので、そのコードが正しいのかどうなのか。チェックしたり、その成果物がきちんと動くのかどうかといったことに対してキュレーション力というか、評価する力はマストで必要になってきます。

それを支えるのは自分自身のプログラミングやシステムに関わる力なので、より専門性やノウハウが必要になってくると思っています。あとはセキュリティなどですね。あらぬことを言ったり、いわゆる妄想。AIも生成の妄想ですね。本当にもっともらしいことを言ってくるので、そこで食わすデータはどうするんだみたいなこととかですね。

いずれにしても、AIを使ってプログラミングを作ったり、システムを考えていったりということは避けられないので、関わりはマストで必要になってくると思っています。AIは敵ではないですよね。AIが入ってくることでプログラマーが駆逐されることは僕はないと思いますが、話のネタでプログラマー、開発者、エンジニアが駆逐されるみたいなことはよく出てくる。

(AIは)敵ではないので、一緒に何かいいものを作り上げていく関係性になるんじゃないかなと思っています。ちょっと違う話になりますが、僕が学生の頃は、(AIが)メチャクチャ弱かったんですよね。今はもうメチャクチャ、人では太刀打ちできない将棋、囲碁、チェスしかり、レベルまで到達している。

そこで人の創造性は発揮できないかと言ったらそうではないんですよね。今がどういう感じになっているかというと、プロの方や先生たちがAIを実際の対局の時に活かしたりしています。先行事例ですが、僕は、特に囲碁……あんなクリエイティブで複雑性のある問題で人間が負ける日が来るなんて僕が生きている間は絶対にありえないと思っていたんですね。

将棋に関してもこんなソフトに負けることはないと思っていたのですが、グイッと一気に強くなってですね、凌駕しちゃいました。今は研究して対局に活かしている。あまりにも計算量の深度が深いので全部見通すことはできないんですよね。なのでAI的なものを使って良い対局にできるか、開発に活かせるかということを考えたほうが、何より建設的だと思っています。

結果的に、人より車のほうが走るのが速いから(人が)走らなくなるかといったら、そうではないですよね。結局使うので。AI技術を活用するのは、本当にマストで必要になってくるので、いろいろと勉強をしたり、利活用の方法を考えたり、忙しくなってくるのは、まぁしょうがないと(笑)。「ずっと忙しいですよね」みたいに思ったりしています。

なので、それはもうそういうものだと思って、良いパートナーになるものとしてAIを使って働いていくことになると思っています。じゃあ以上になります。ありがとうございました。