自己紹介とテックトーク

London Tech TalkのKen Wagatsumaです。 本日は、Asaiさんが旅行でお休み
ということで、私のほうでゲスト の方を呼びして進行していこう
と思います。今日は、Takaさん、 Watanabe Takayukiさんにお越しいただいています。
今日もよろしくお願いします。

よろしくお願いします。

Takaさん2回目ですね、収録。

2回目ですね。

前回は38回目のエピソードですね。
タイトルが、マシンラーニング でテスト運用を高速化する
ロンチャブルトアという題で出て いただきましたが、結構間も空いて
しまったので、最近から聞いてくれている リスナーの方に向けて、改めて

自己紹介をお願いしてもいいですか。
わかりました。Watanabe Takayukiと申します。 会社とかではTakaさんとかTakaとか呼ばれている
ことが多いんですけども、 Watanabe Takayukiと申します。今はソフトウェア
エンジニア、特にマシンラーニング 周りのソフトウェアエンジニア
をやっていて、マシンラーニング を使ってプロダクト開発を中心に
行っています。

ありがとうございます。ということで、 Takaさんと僕はCookpad時代の同僚
でもあり、とりあえず技術のアンテナ がすごい張っていらっしゃる方で、
とりあえず技術の話をしたかったら 雑に話しに行く人っていう感じ
の中で、いつも参考にさせてもら っているんですが、今日はロンドン
テクトーク初めての取り組みで お便りをいただきまして、そのお便り
の内容を踏まえて話していこう と思っています。数週間前の収録
でお便り募集していますという 公開をしたんですが、その後嬉しい
ことに3通ぐらいお便りがきまして、 その中の1人の方、収録の中で取り上げ
てもいいということだったので、 Takeさんという方からお便りをいただき
ました。最初に読ませていただきます ね。いつも楽しく拝聴しております。
ChatGPTやGitHub CopilotなどAI技術を 業務でどのように利用している
のかお聞きしたいです。また、これら AI技術との向き合い方やエンジニア
の将来についての考察をお聞き したいです。以上よろしくお願いいたします
AI技術の進化と情報収集

というお便りをいただきました。 ありがとうございます。ということで
今日は なんかちょっとラジオっぽくなって

きましたね。
いや、お便りいいですね。自分も 好きですね、こういうの。

めっちゃ嬉しかったですね。タカさん ラジオとか聞いてました?ラジオっ子
ですか?

いや、ラジオはあんま聞いてない けど、ポッドキャスター聞いてる
から、ラジオみたいなもんなん かな。どうなんすかね。ポッドキャスター
みたいな。同じみたいなもんですね。

なかなかフィードバックってもらえない ので、こうやってフィードバック

を入れると結構嬉しいんですよね。 なんかツイッターにツイート

すると。
うん、そうですよね。
そう、なんか最初の頃の方は結構 聞いてくれてる友人にダイレクト
に聞きに行かなきゃわからなかった ですけど、最近こういうのも増えて
きてすごい嬉しいなというところ ですね。ということで、タカさん
をお呼びしたのは、本業の方でも 結構マシンラーニングとかをされている
し、その技術に対する雑談してても いつも僕を面白くさせてもらってる
ということで、このトピックだったら タカさんをお呼びしたいなということで
今日呼んでますということで。AI技術 って結構幅が広いので、お互い
気になってるサービスとか普段どう いったことをしてるかとか、そう
いったことについて雑談していけ たらなとは思ってます。

そうですね。楽しそうですね。

そうそう。いつもタカさんと雑談 するけど、今日トピック縛りでやって
くみたいな、そんぐらいのラフな 感じのイメージ。

トピックだけね。

トピック縛らないといつもいろんな 話あっちこっちしちゃうから。

そうですよね。でも一応ソフトウエア エンジニアとしてってことですよね、

多分。
そうですね。エンジニアの将来について の考察みたいのもあるので、ソフトウエア
エンジニアとして何か考えてること とか意見とかがあればっていうこと
も、もしタカさんのほうであったら ぜひ聞いてみたいなと思ってます。

はいはいはいはい。いや、まあ何 だろうな、時代の流れがすごい早い
なって感じるのは多分皆さん同じ だと思うんですけど、AI、チャットGPT
とか出てき始めてから、なんかこう ツイッターとか見ると毎日なんか
こう驚き話みたいなのが、今朝も そうですけど、何て読むか分かんない
けど、オープン映画ソラーってサービス 流してたじゃないですか、動画を生成
する。

いや、それ持ってないです。どういう やつでした?

テキストインプットすると60秒ぐらい の動画生成できるっていう新しい
モデルをリリース、リリースしてる っていうか今研究中なのかな。多分
セキュリティとかその方法とか、 あと安全性とか今確認してるところ
だと思うんですけど、まあそれの なんかデモみたいな、デモサイト
みたいなの、今朝立ち上げてて、なんか こうわちゃわちゃみんな騒いで
ましたね、朝。

おお、じゃあ例えばテキストっていう イメージで言うとね、ステーブル
ディフュージョンとか読みですけど、 じゃあそれが動画版みたいな感じ

ですか?
そうですね、そうですね、そういう イメージだと思います。あとは
GoogleはGeminiっていう新しいエンタープライズ っていうか、なんだろうな、Google
が推してる生成ファンデーションモデル の新しいやつ、Geminiってやつがあるん
ですけど、それのなんか1.5とか出して きてて、それはなんかこう、今まで
のOpenAのChatGPTっていうかGPT4とか だと、なんかコンテキストのサイズ
が限られてて、みたいなのあったん ですけど、それはなんかこう、いき
なり100万トークン入れられます みたいになってて、だからバチバチ
火花を飛ばしてるんですけど、そういう のが毎日起きてるので、すごい早い
最新のトピックと企業間の競争

ですよね、時代の流れっていうか。
進化早いですよね。そのGoogleの Geminiっていうのは、それは何を指してるん
ですか、具体的に。なんかプロダクト群 みたいな感じ?それとも具体的な

モデル?
モデルですね。モデルで、そのマルチ モーダルなモデルで、OpenAIでいう
ところのGPT4の対コバだと思って いれば間違いないと思いますね。
画像も認識できるし、おそらくYouTube とかを使って学習してるので、画像
も認識できるし、動画も認識できる し、もちろんテキストも音声も認識
できるでしょうと思ってるんですけど、 そういうGCPが出してるところの
トップのモデル、新しく出てきた モデルがGeminiってやつですね。日本語
だと何て言うのかな、Geminiっていう のか。

Geminiみたいな?英語だとGemini みたいな感じですよね。
そうだと思うけど、はい。
トレーニングデータとしてYouTube とか使えるっていうのはめちゃくちゃ
デカいですよね。

そうですよね。でも使ってるでしょう ね、と思いますけどね、OpenAIも勝手
に。
ダウンロードしてるみたいな感じ? 規約が許せばやってるでしょうね。
だってどっから学習データ持って きてんのって言ったら、多分そういう

ことだと思うんですよね。
でもトレーニングデータ合戦 みたいになってるようなところも
あるんですかね。どれだけ品質の いいトレーニングデータを大量に
ぶん回せる計算機資源があるか みたいなところ、体力勝負みたい

になってたりするんですかね。
たぶん計算機資源の勝負だと思 うんですよね。もちろんデータの
質っていうのもあるんですけど、 データの質っていうかデータの量
で、数の暴力じゃないけど、とりあえず 数回してモデルを作るみたいな
のがたぶんデカい企業がやってる ところで、小さいところはデータ
の品質を上げていくみたいなのを セコセコやんなきゃいけない。もちろん
めちゃめちゃ第一だと思うんですけど、 データの品質が良ければ良いほど
学習の精度も上がるっていうのは あると思うんですけど、それより
は思考停止じゃないけど、とりあえず 食わせりゃいいんやっていう感じ
でデータの量を増やしてるって感じ だと思いますけどね。

そうですよね。それに応じて多分 半導体企業とかもだいぶ儲かってる
イメージがありますね。

そうですね。まさしくそうですよね。 GPUなり半導体なり、めちゃめちゃ
儲かってますね。

そうですよね。普段はそういった 情報をどうやって、たぶん無理に
キャッチアップしようとしなくても、 例えばTwitterとか普段の雑談で入って
くると思うんですけど、信頼できる ソース源とかキャッチアップで

意識してたりとかしますか?
自分はTwitterで信頼できる人をフォロー してるってのもあるんですけど、
基本的にはRSSみたいなのを使って OpenAIのリリースノートとGCPのリリース
ノートと、あとAzureのリリースノート を見てますね。AWS単ながらあんまり
ないので、今のところはその3つが 自分はクラウドサービスを使うことが
多いので開発で追ってますね。何か 出てきたら、じゃああっちはどう
なってんだろうみたいな感じで 調べていくと、大体慌てて出して
くるので、似たようなのがあるという 感じですね。

なるほどね。確かにその情報収集 の手段ってソフトウェアエンジニア
ならではというか、モデルがどう とかリサーチペーパーがどうという
プロダクト開発に活かせるレベル のものというか、プロダクトが今
何あるかどうかみたいなところ なんで、そこから入っていくっていう
のはいいですよね。じゃあ実際に 出てきて、今日今週末趣味プロで
作れるかどうかみたいなのほうが 多分新しい。最先端のリサーチで
何が研究されてるかを知るより、 ソフトウェアエンジニアとして

結構生きてくる知識だと思うので。 そうだと思いますね。特にリサーチ
はもう本当に数が多すぎて多分 追えないんでソフトウェアエンジニア
レベルだと。なのでどっちかっていう と、そういうトップを走ってる
企業がどういうAPIを提供しだした とか、例えば去年とかだとマルチ
モーダルっていつできるようになる んだってみんなの関心事だった
と思うんですね。マルチモーダル っていうのはテキストだけじゃなくて
画像とか音声とかそういうのを 入力して新しい言葉なり画像なり
を生成するときにマルチモーダル っていうんですけども、去年の秋
ぐらいまでは多分テキスト一択 だったんですね。テキスト一択って
いうかテキストしかインプット してもできなくて。ですが秋、冬
ぐらいからチャットGPTが画像も 取り込めるようになったりとか
Googleも画像を認識できるモデル を出してきたりとかそういうの
があれですよね。あっちがどっち で来たらやっぱ慌ててこっちも
出してくるみたいなのがやっぱり あるんですよね。

予想原理が働いてますよね。

そうそうそう。すごい働いてるんで なのでトップの企業を追っておく
AI技術との付き合い方

だけでとりあえずいいんじゃない かなと思いますけどね。ソフトウェア
エンジニアとしては。

情報量が多いんでね、本当に効率 よく情報収集しかないと情報の
海に溺れてしまうというか。

そうですね。特に知らない領域 だからどこから足を踏み入れて
いいかみたいなところあると思 うんですけど、それで論文とか
言っちゃうと、論文マジで無限に あるんで、そっちは行かないほう
がいいっていう。

うん。やらないこと、勉強しない ことをちゃんと明確にするって
いうのも結構重要ですよね。

重要ですね、たぶん。

ちょうどいいリストじゃなくて、 やらないことリストみたいな。

あとはトップダウンというか演劇 的な学習と機能的な学習がある
と思うんですけども、使ってって なじんできたらこれが何なんだろう
とか、これがどういう原理で動いて いるんだろうみたいなってたぶん
興味自然と持つと思うんですよね。 そしたらその技術を実現してる
基本的なことを学ぶみたいなのは やってもいいかなと思うんですけど、
全ての最新リサーチペーターの 骨の髄まで噛み締めるみたいな
のはたぶんいくら時間があっても 足りないんで、自分だったらやらない
ですね。

その考え方面白いですね。演劇 的に学ぶか機能的に学ぶかみたい
なことで。
それこそ、立ち上げ一番最初は どっちを意識してやってました?
とりあえずチュートリアルとか を見て、とりあえずいろいろ書ける
ものを書いて、知りたいトピック があったら、今度はちゃんとまとま
ってるテキストとか、ビデオインストラクション とか見に行くみたいな、どっち
でやってました?

それよりもっと浅いところから 始めましたね、自分は。どっちか
というと、すでにプロダクトになっている ものを触るみたいな感じですね。
例えば、チャットGPTなんて一番 最多のものだと思うんですけど、
すごい触りやすいじゃないですか。 ウェブアクセスしてテキストを入れる
なり、画像を入れるなり、何しても いいんですけど、あれでやってる
ことができるんだなみたいなのが わかるじゃないですか。

なるほど。まずはユーザーとして 触れるということですね。

これ何ができるんだろうを理解する っていうのが多分、メンタルモデル
っていうか、今理解しようとしている 技術は何ができるんだろうっていう
のがやっぱり一番大事ですよね、最初に。

なるほど、確かにそうですね。自分が ユーザーとして持っている課題
の何を解決してくれるのかっていう のは、触れてみないとわかんない
ですよね。チャットGPTで面白いネタ とか、例えばポエムとか作ってくれる
のは楽しいけど、じゃあ実際に 普段の業務とかでどう生きてくる
かっていうのは、そこが結構大事 だと思うんですけど、結構チャット
GPTが出てきて、他の人もいろんな こう使ってみましたみたいな情報
も出てきた中で、今現時点で日常 ではどんな使い方してますか、業務
とかプライベート。

そうですね。プライベートでも業務 でも結構使ってますね、チャットGPT
は。例えば一番わかりやすいのは あれですよね、文章構成とかです
よね。チャットGPT、生成AI今出ている チャットGPTとかって、ファクト
をもとにそれをちょっと修正したり とか、新しい文章を作ったりとか
ってすごい得意なモデルだと思 うんですよね。なので例えば、自分
英語で普段業務してるんですけど、 バーって適当に英語を書くじゃない
ですか。その後に、もっとカジュアル にできるとか、あとは違う表現
あるみたいなのを聞いてみると、 自分の勉強にもなるし、間違った
ところを指摘したりするんで、そういう 使い方もできますよね。

そうですよね。そっか、確かにタカさん の現場は英語環境ですもんね。たぶん
読み書きは全部英語ですよね。
読み書きも、はい。
チャットGPTの使い方

なんかこう大事なデザインドック とか、大事なアナウンスメント系
とかは僕もそういうふうな使い方 しますね。なるべくミスをなくしたい
文章。なんかチャット全部、わざわざ チャットGPTに聞いたりはしない
ですけど、スラックのメッセージ とかね。これは良い品質のアウトプット
を出したいみたいなときは、文書 構成とか、あとはタイプ修正したり

とか、あとは言い回しとかやって ますね。
なんか、いくら勉強したところで、 なんかこうネイティブ、どれだけ
ネイティブに我々が近づけるかどうか 知らないですけど、チャットGPTとか
ネイティブの英語から学習してる から圧倒的に構成能力が、てか
あれですよね、そもそも出力のスピード が速いじゃないですか。
速いですね。
あのスピードでタイピングできない から、自分は。

できない、できない。人間にはできない。

そう、だから同じことやるとしても、 例えば何だろうな、自分も書くんだけど
要を挑んで指示であたつしてあっち に書かせながら自分も書いといて
比較するみたいなのは面白いですよね。 やったりしますよね、普通に。

確かに確かに。英語の先生になって くれるって感じですよね。
そうそう。
みんなこうティーチャーというか インストラクターみたいな使い方
をしてる人も結構いますよね。プログラミング の学習をするとか英語の学習をする
とか、それでちょうど今日同僚が やってて面白かったのが、旦那さん
がプログラマーの方なんですけど、 旦那にプログラミングのことを
聞くとすごいオピニオネイティブ でオブセスのような答えが返って
くるんだけど、ちゃんとGPTはニュートラル に返してくれるから超勉強しやすい
って言っていて。なるほど、そういう 考え方もあるなと思って。どんだけ
シリーなクエスチョンをしても ちゃんと丁寧に答えてくれるから

ね。

そうですね。

丁寧にならないみたいな。面白い 確かにそうかもみたいな。
あれですよね、疲れて疲れるのか 知らないけど、気兼ねなく聞ける
っていうのは間違いなくメリット ですよね。人間だとやっぱ時間って
あるじゃないですか。ZGPTもマシン 時間はあるかもしれないけど、ある
と思うんですけど、とはいえ気軽 に聞けるから、アシスタントとして
使うっていうのはすごくいいと思います よね。チャットボートとかそうだ
と思うけど、よくある。

ちなみに他のPodcastでも話して 面白かったトピックとして、チャット
GPTとかモデルとインタラクトする 時に、例えば質問するじゃないですか。
質問の聞き方をどこまで丁寧に してますかみたいなのがあって、
だからこう人だったら例えばCould you please tell me somethingみたいな
感じ、もっとこう相手がロボット だってマシンだって分かってれば
すごいもっと雑に言ってもまあいい っちゃいいじゃないですか。そこら

辺結構いろんな人がいるなと思 って、タカさんそこら辺どうですか。
タカさんは結構丁寧に聞いてる かもしれないですね。日本語でも
英語でも。なんかあんまりそこを 短くしても大差ないし、人間みたい
に聞いてますね。

ねえなんかそこら辺面白いなと思 って、僕どっちも試したんですけど
なんか答えに品質が変わるかって いうのはちょっとまだ分かんないん
ですけど、なんとなく会話的にやる という意味だと多分人間と接している
ようにやった方が自分も多分書く のが楽なので。僕も今のとこは
どっちかというと人間に話す的な 寄りですよね。

まあただ多分話し言葉も読み言葉 もどっちとも使って学習してる

と思うんで、どっちともあんま差はない と思うんですよね、おそらくね。
確かに確かに。なんかこう自分が タイポとかしたりアメリカ英語と
イギリス英語を混在したようなやつ 打っちゃっても、いい感じにコンテキス
読んで返してくれちゃうんで、そこは 自分でちゃんとしないとなと思
ってますね、英語力というか。そこは なんかこう空気かなり読めちゃう
ので、ちゃんとGPTって。

そうですね。

あとはなんかどんな使い方してますか、 文書構成以外では。
オープンコミットの活用法

そうですね、なんかまあ最近やってん のはコミットメッセージ書かせたり
してますね。

あーなるほど。

はい、まあ趣味のプロジェクトでは オープンコミットって会社のやつ
では使ってないんだけど、趣味の プロジェクトではオープンコミット
ってやつ使ってて、それがGitのDiff とかを使って、そこからコミット
メッセージを自動生成するみたいな 処理をしてくれるんですけども、
それ使ってますね。

面白そう。
オープンコミット具体的な使い方 としてはどういうふうに使うん
ですか、ブラウザーアプリですか、 エクステンションみたいな感じ

CLIですね。CLIで手元にノードか何か でインストールして、グローバル
のやつでインストールしてオープン コミットみたいなコマンドを打つ

と、そのGitのDiffからコミットを生成 してくれるっていう感じですね。

面白い。精度とか品質はどうですか、 使ってみて。
バーボースっていうか冗長な突起 が結構多かったりするんですよね。
だけど使ってて、なんでこれがこんな に長いんだろうなとか気になって
その構造とかを読むと、なるほど ね、こういうプロンプトワート
してるんですねみたいなのがあるん で、そういうのは面白かったですけど
そういうのはいいですよね。

なるほど。それでレポジトリの コンテキストとかも読んでくれるん
ですかね。例えばオープンソース のライブラリーとかだとコミット
メッセージの規約の作ってるところ とかあったりするじゃないですか。
例えば小文字で始めてねとかバーブ で始めてねとかそういうところ
にコントリビュートするときには レポジトリの過去のヒストリー
とか規約が書かれているマーク ダウンもしくはリントファイル
みたいなのを見てやってくれたり するかって分かりますか。

いやそれはそこまで知らないけど 多分オープンコミットは純粋に
diffだけですね。っていうのはコード とかを勝手にプロンプトに入れ
ちゃうとすごい量になっちゃう からお金もすごいかかっちゃう
しそれが正しい情報になるかっていう のは微妙だからdiffからそのコミット
メッセージを生成する、diffとファイル名 から生成するっていうのはまあ
メイクセンスですよね。当たら ずも当たらずって感じでコミット
メッセージなんて修正できるし アメンドすれば。

なんかこのdiffからいろんな価値 がある情報を出すみたいなのって
結構パッと思いつくネタだと思 うんですけど、なかなかそれプロダクション
レベルまで持ってくるの難しい なと思って、例えばdiffプルリク
を出すじゃないですか、GitHubの ボットかアクションかなんか作って
そのdiffを見て、例えばそのプルリク のリスクレベルとか、SQLが入ってる
ならスロークエリとかなんでも いいんですけど、これを本番に
デプロイするとバグにつながり そうとか、あとはこれかなりと
ソフトウェアエンジニアとAI技術の付き合い方

ステージングで結構違うよみたいな のか、例えばそういうデプロイした
後の影響みたいなのを読み込ませ ようとするとdiffだけじゃ全然できない
というか、すごいフォルスポジティブ な答えも返ってくるから、結局そう
なるとレポジトリとかdiff以外の コンテキストを読み込ませなきゃ
いけないってなって、そこら辺は まだまだこう結構頑張って作り
込まなきゃいけないシステムだな と思ってますけど

そうですね、ただその効果的なクエリ をかけてるかかけてないか見た
のはスキーマーとクエリを比較 するだけで実行する前にもう分かる
こと、オプティマイザーがちょっと 違うかもしれないけど、簡単には
分かるじゃないですか、インデックス 効いてないよとか典型的にある
と思うんですけど、そういうのは 多分事前にキャッチできると思
うんですよね、実行しなくても

確かに、レポジトリというかサービス ごとに使ってるデータベースの
バージョンとエンジンとかを渡す とそれに最適化した答えは考えて
おくれそうですね

いや、それもそうだけどスキーマー でインデックスとテーブルの絡む
があって、それに対するSQLがさえ あれば考えられると思うんですね
これはオプティマイザーレベル の話じゃないけど、機構造レベル
の話ではないけど、一般的には これは効いてないからインデックス
を貼ってくださいとか、そういう のは簡単に

貼るべきインデックスを貼ってる かどうかとか

うん、これで貼れますとかは出せる と思いますよ

インデックスの貼り方も何インデックス にするのかとか確かに

そうそう、コンポジットインデックス にするとか、ユニーク性を貼って
くださいとか、そういうのはできる と思いますよね

確かに確かに、これぐらいだったら 誰か作ってそんな感じもするけど

うん、できると思いますね

なるほどね、オープンコンピューター 知らなかったですね、面白い、ちょっと
後で使ってみようかなと思います

あとは開発、これから多分開発が このままプログラミング原稿で続く
か知らないんですけど、もしかしたら もっと機械学習が使いやすい言語
にもしかしたら自然言語になって くるかもしれないけど、開発は生成
AI前提でテックスタックを選ぶ みたいなのはちょっと考えたほう
がいい時代に差し掛かってはいます よね
確かに確かに
例えば未熟な、借りた技術と借り てない技術っていうのはすごいある
と思うんですけど、例えばなんだろう な、私AWSとかクラウドサービス好き
だからこれを一つ例に挙げるんですけど インフラストラクチャーズコード
を実現する上で、AWSでインフラストラクチャーズ コードを実現する上で、とり
より選択肢って結構あるじゃない ですか、プラムナイ使うとかあと
テラフォーム使うとかCDK使うとか いろいろ派閥はあると思うんですけ
ど、ただベンダーニュートリアル なのはCDKでなくてテラフォーム
ですよね

そうですよね

そうするとドキュメントの量も 書いてるエンジニアの数も多い
じゃないですか

多いですね

だからGitHub行けばテラフォーム のドキュメントが提供されている
ようなコードがいっぱいあるんですよ ね、おそらく
それで学習してるもんだからドキュメント に近い形で生成できるんですよね
ドキュメントの質が良ければ テラフォームって結構ドキュメント
質いいんで、なのであのまま書いて くださいって感じなんですけど

みんなにはなんですけど、生成AI も多分あのまま書くと思うんですよ
ね

確かに確かに、それで学習してます もんね
だからそういう意味で言うと、自分で 書くこともできるんだけど、書いて
た時に良い結果が出てきやすい とか、あるいは解説してください
みたいな時にバーってそうだよね みたいなのが返ってきやすいじゃない
かなと

うん、そうですよね、ここら辺の ボイラーテンプレートを書くとか
いったものは大体こう変わって くるでしょうね、ツールによって
リプレイされていくというか

ですね

開発が楽になっていくところだと 個人的に思うんですよね

うん、コパイロットとかそうですね なんかタブレンダしてたら何か
生成されると思うんですけど、あれ とかそうですね、例えば何だろう
なフロントエンドで言うと、バーセル とかがこう生成AI使ってフロント
エンドのコードを生成してくれるん ですけど、リアクトとかテールウィンド
CSSとかああいうのは生成AI向き に感じますよね、形を見ると

確かに生成AI向きにそもそもスペック を作るみたいな考え方がもう出て
きそうな感じですよね、分かんない けど
出てくるんじゃないかなと思います けどね
なんか他の場でも話したんですけど ゴーランは生成AI系でやりやすい
コンテンツ

やりやすいと思いますね

スペックになってるから、例えば ルビーとかよりはやっぱり精度

もいいし、コパイロットも使いやすい みたいなの聞いたことありますね
なんか他の人と同じようなコード になりがちな言語ですよね、ゴー
は多分、他の言語と比べたら

もう仕様がそうですからね

そうそう、なんかニール、エラー、 リターンみたいな、ああいうのって

なんかゴーらしさがあるじゃない ですか
ゴーらしさがあるね、確かに

なんかトライキャッチじゃなくて エラー返すみたいな仕草が、あれ
は生成しやすいでしょうね、いや 同じでしょうみたいな

いやめっちゃ分かる、だからソフトウェア エンジニアとして結構楽にはなる
けど別に難易度がどれぐらい変わる のかってちょっとまだ分かってなくて
結局その読み書きの比率が変わる だけな気もしてるんですよね
今までは6割ぐらい読んで4割ぐらい 書くみたいな感じだったのが
ボイラーテンプレートとか書く 割合が減るけど結局そこで出して
くる生成系がAIが出してくるこの タブ補完で出てきたもののその
バリデーションっていうのは自分 でしなきゃいけないんで
8割読んで2割書くみたいな感じ になってくるのかなっていう印象
はあるんですけどそこら辺なんか タカさんの印象とかどうですか

どうでしょうね簡単なのはそれこそ コメント書いたら全部生成する
ところまでいくんじゃないかな と思うんですけど近いうちに
確かに1回のプロンプト渡して生成 されるコードは限られてるんですけど
それをチェインしていくことで 生成Aとかよくチェインとかエージェント
とかって言うんですけど連続で プロンプトを回し続ける生成した
やつをさらに渡して生成Aに渡して さらにそれを改善していくみたいな
開発の自動化とツールの進化

そのループを回すことができるん ですよねなので簡単なコードは
多分書けると思うんですねそれで だけどやっぱり仕様の定義とか
あるいは細かいところとかあとは すごいこみーって実装とかって
絶対実装できないからそういう ところはやっぱり取り変わらない
かなとは思いますけど

仕様確かにそうですよねソフトエンジニア がきちんとまず問いというか仕様
を理解してるかっていうところ は絶対必要で仕様を理解してない
と間違ったことというか聞き方 も違ってくるので間違ったこと
聞いたらもちろん間違った答え が出てくるからまず自分がコード
を書いてもともと解こうとして いた問題をしっかり理解してそれを
渡すとそれはそうすればスクリプト がいい感じに出してくれるっていう
ところなんで確かに仕様の理解 は必須ですね

あとはAPIとか書くのって時間かかる けど簡単みたいなときってある
じゃないですかそういうのがすごい 勝手にやってくれるようになったら
小さなチームがより大きな成果 を上げやすくなる時代に差し掛
かってくるんじゃないかなと思います ね
なるほど小さなチームがね
すごい今までは何十人も何百人 も必要だったけどそれこそすごい
8人すごい人が8人いたらそれで できるみたいな運用はちょっと
よく分からないんですけどその 時の日本は分からないんですけど
コードの量とか出てくるプロダクト としてはいいものが出てきそう
な感じはしますよね

確かに確かに典型的な技術でレバレッジ してる例ですよねなんかSRE観点
でも運用のトイルみたいなのも だいぶ自動化されていくとはや
っぱ思います普段やっていても 例えばメトリクスとかログを読ませ
てそこから何かブラインドスポット 当てるみたいなのは過去の障害
のパターンとか読み込ませて読 ませちゃったほうが現場のエンジニア
のヒューリスティックにとかマッスル メモリーに頼るよりは頼るより
はというか結構サポーティブな 答えを出してくれたりすると思
うんで

そうですよね結局何というか自動化 がより進むっていうより高度な
自動化が進むっていうことだと思 うんですよね今までプログラミング
も自動化するために使ってるところ が多いと思うんですけどもそれが

なんかより新しい次元に差し掛かる っていう感じだと思うんですよね
今まで自動化できなかったもの が自動化できるようになるとか
そうですよね
音声や動画の情報処理と課題

より自動化できるようになるとか そういう感じですよね
画像認識とか動画認識とか音声 認識とかそういうのって最たる
ものだと思うんですけど今まで 人間が一個一個やってたのが音声
をベクトルに変換してそれを検索 できるとかそれをあるいは動画
のここの部分同じようなことを話 してるところを検索するみたいな
多分難しかったと思うんですけど そういうのもそんなに難しくなく

なってきてると思うんですよね 今の生成AIの技術を使えば
そうそれも今ありますよね何だ っけディスクリプトだったかな
プロダクト名なんかその自分が 話した内容の動画をアップロード
するとその何語っていうんですか 何語違うかそれ赤ちゃんの話か
ウーとかアーとかレミフィンとか アーとか言ってるところをカット
してショートバージョンで出して くれるみたいなのもあるのでそういう
ところは自分みたいなヘイネイティブ が60分話してるやつが40分ぐらい
にシュッと綺麗になってたりする と感動しますね自分は無駄なこと

を20分ぐらい喋ってるのかとか思 ったりして
そうですね 編集するコストを肩代わりして

くれてるってことですよねそれは アイアイが
ポッドキャスト系でもあります けどねどうなんすかねでも何か
それで編集されたのを見て思った のは今後改善していくと思うん
ですけど何かこう音と動画の話している 口の動きが合わなくて何か
すっごい不自然な感じで聞こえ ちゃうんですよねそれは多分技術
的な問題だと思うんだけどあとは ポーズがないので例えばプレゼンテーション
ってあえてポーズ入れるところ とかあるじゃないですか何かこう
場を盛り上げるというか何かこう 話し方のテクニック的なそれが
全部消えちゃうので何かこうや つぎ早に情報が入ってくるんですよ
耳の脳の中に何かこれ勝手な偏見 ですけど何かこうウォールストリート
でブルームバーグの情報が朝ずっと 耳に入ってくるみたいな感じひた
すら脳内フルスキャンで何かもっと ポーズあってもいいかなと個人的に
思うんですけどね

まってのは大事ですよね話すの間 にはでもそれも何か技術のプロダクト
の試行してるところで今話し聞いた ところだとそれは単純にこのウー
とかアーとかっていうのをカット したりとかサイレンスの場所を
それは何か普通に何か音声をこう 何か波形なのでそれを見ていく
とそこがへこんでいるところは サイレントだと分かるんでそれを
数値にすれば明らかにサイレント だって分かるんでそれをブッって
切ってるだけに聞こえたのでそう じゃないでしょうねと思います
けどねアプローチは

そうですねそこら辺は今後改善 していくとは思いますねあともう
一つ聞いてみたいのはチャット GPT結構ようやく得意じゃないですか
サマリー

得意ですね

なんか例えばペーパー論文読む ときに論文渡すとサマリー出して
くれるし本もまるまるはまだ渡 せないかもしれないけど既に学習
してるものであればいいサマリー を出してくれるしいろんなコンテンツ
がどんどんサマリーされてい ってるなっていうのが思っていて
そこに対して何かお考えとかあります

サマリーされてる

例えばなんか本とか読むときに エグゼクティブ向けサマリーバージョン
とか売ってたりするんですよね 本当は300ページの本だけど30分で
聞けるようにしましたみたいな そうするとサマリーって必ず何か
の情報落としてるわけで確かに サマリーを聞くと僕が思ってた
のはエッセンスは分かるんだけど その周りのストーリーとか肉付け
の部分が分からないものばっかり を消費すると深い思考力に対して
どれぐらいインパクトがあるの かなっていうのが個人的な悩み
だったりする確かに便利なんですけど ね3時間のコンテンツを30分で読

めるっていうのがすごい便利なんだ けど
なんかそれで終わるって話じゃない と思うんですよね自分的にはその
話を聞いたときにいやサマリー は素晴らしいですとサマリー
はいいじゃないかと思いました とっていうのは結構自分論文とか
読むんですけど論文ってどうやって 読むかっていうと頭から最後まで
読まないんですよねみんなだいたい 先頭のアブストラクトだけ読んで
あるいはコンクリージョンも読んで 興味があるだったら後で読む
リストに入れるみたいな感じで 読んでいくんですよね論文って
全然似た感じですよね本って要約 書いてないからほとんど前書き
とかありますけど要約は多分テーブル オブコンテンツっていうか目次
が要約になっててそれパーって 読んでこういう本なのねみたいな
ことはできないと思うんですけど 本全体の要約が1ページにまとま
ってるみたいなことってほとんど ないんで本にそれがあるのはいい
ですよねむしろやってくれって 感じではありますねできるから
やってくれっていう感じではあるん ですけどそれはいいと思うそれで

興味があったら深く読めばいいん じゃないかな
なるほどなるほどだから最初の フィルタリングとして使うって
ことですねそれは納得ですねそう すると他に読みたいねコンテンツ
とか本とかの二作本との時間も 増えるし無駄なものに損切りの
時間というかを効率化してくれる みたいな感じですよね確かにそれは

すごい納得ですねあとは本の読み方 も変わってきますよね例えば全部
読ませるところとかではないけど 例えば臨読とかするときに臨読
のその章だけチャットGPTなり生成 アイに食わせておいて自分たち
が臨読した後に最後にスーツラに チャットGPTに問題出してもらって
みんな理解してますかってちゃんと 理解してますか皆さんって問題
を出すことは可能ですよねそうすると 理解してませんでしたってところ
はまた勉強できるし理解してる か理解できないかしてないかみたい
なところもインタラクティブな ほうが学習は進むじゃないですか
やっぱりより深くそういうところ では使いやすいと思いますけどね

なるほどねそれ面白いですねそこに 例えばマーケティングとかの観点
が入ってくるとパーソナライズ されたサマリーとかも入ってき
たら面白いですよね

いっぱいあると思いますよもう だからいろんなアイディアが出て
くるのが楽しみですね

ねえなるほどねなんか他に気にな ってるキーワードもしくはプロタクト
ってあったりしますコパイロット とかチャットGPT以外で普段使ってる
ものとかでもいいんですけど

そうですね私は画像生成と音声 生成は結構興味があって調べた
ステーブルディフュージョンとか 音声生成で言うとディープフェイク
みたいなボイスチェンジャーみたい なのあるじゃないですかああいう
のがあってどうやってできてる のかなとかどれぐらいの精度なの
かなみたいなのを個人的に興味 があって調べてたりはするんですけ
どそれも結局基本となってる技術 は興味を持って見ていくと最終的
にどうやって動いてるんだろう って興味が芽生えてくるんで調べ
たりするんですけど最終的には いやトランスフォーマーじゃん
みたいな感じにたどり着くんですよ ね全部だいたいそうなんですね
最近流行ってる音声生成とか画像 生成とかテキスト生成とか最終的
に全部基本はトランスフォーマー ですよねっていうところに落ち
着くのでやっぱり興味があるところ を抑えて基本を抑えると他のやつ
も分かるようになってくるっていう 感じだと思います

おだしょー そうですよね 前回 たかさんと雑談したときもトランスフォーマー
の話になったと思うんですけど ちょっと知らないリスナーの方
トランスフォーマーの基本概念

に向けて簡単に説明してもらって もいいですかトランスフォーマー
さんとは

たかさん 何だろうな分かりやすい 例で言うと
おだしょー 何かいい例があるんですかね
ステーブルディフュージョンっていう 生成AIがあってそれはテキスト
を加わせると画像を入ってくれる っていうモデルがあるんですよね
それはこれはスタビリティAI社 っていうのが作ってるやつだと思
うんですけども それの軸となってる のがトランスフォーマーの話は
エンコーダーとデコーダーって概念 がありますとエンコーダーっていう
のは何か情報を入れたときにそれを 数値にするものを軽く言うとエンコーダー
と言っていてデコーダーってい ったのは数値をもとに何か目的
となるものを生成するステーブル ディフュージョンで言うところ
は画像を生成するっていう目的を 持ってるとしたらデコーダーが
それを取り扱ってるっていうところ なんですね
エンコーダーステーブルディフュージョン はプロンプとつまりテキストを
エンコードするんですねそれを 数値に変化するベクトルとかエンベディング
とかって言うんですけどそれを エンコードはオープン映画作ってる
クリップっていうやつがテキスト と画像をペアにして似たような
ちょっと難しいんですけどクリップ っていうのがテキストエンコーダー
と画像エンコーダーってのを持 っててそれは猫っていうラベル
を持った猫の画像で学習していく みたいなのを繰り返すことによって
猫の画像を与えたときにテキスト と猫のエンコードした値が似た
ような値になるみたいな感じで 学習してるんですねなのでテキスト
を与えたときに画像に近い数値 が数値っていうかベクトルが生成
できるんですねそれがエンコーダー がやってるところでそれを元に
レコーダーそれを受け取っていい 感じに画像を作っていくみたいな
なので基本的にはエンコーダー があって情報をエンコーダーに
渡してそのエンコーダーが情報 を数値化してそれをデコーダー
トランスフォーマーによる生成AIの応用

に渡すことによってその後に生成 されるみたいなのが基本的な生成
AIのロジックなんですねもっと 深いところでいうとトランスフォーマー
みたいなのが出てくるんですけど それを忘れたトランスフォーマー
って言葉を忘れたとしたら基本的には エンコーダーとデコーダーって
のがあってそれがメインになってる っていうところだと思ってます
ね自分は

なるほどありがとうございます だからここら辺多分いきなり
使ってみた例えばプログラミング とか例えば画像をじゃあコンピューター
でどう表現してるかみたいな前提 知識をない状態でStability Fusion
のWebアプリを使ってしまうとなんか 魔法みたいじゃんみたいな思って
しまうけれども裏側ではじゃあ テキストとか画像をどういう表現
をしていてそれが似ているということ はどういうことなのかっていう
のも多分今まで研究されてきた 既に数式的なモデルとかプログラミング
とライブラリーもあってそれを 使い合わせてインプットとアウトプット
のところでちゃんと合わせて使 ってるみたいな印象があるので
いきなり多分ChatGPTとかStability Fusion とか何でもいいですけど最近
出てきたものをいきなり見たら いきなりポッドでのすごいクリエイティブ
なイノベイティブなものが出て きたって思っちゃうかもしれない
ですけど実は過去数十年のいろん なコンピュータサイエンスの発展
の積み重ねでようやく表現できる ようになったっていう印象があります

ね
たぶん全て学習の過程で何でこう なるのかみたいな全ては数式で
表現できてるわけではないと思 うんですね実験的にやってるところ
がすごい多いからだからいろんな 研究があると思うんですけどそういう
難しさはあるものの今まであった ような機械学習とか自然言語処理
だとか音声認識だとかいろんな コンピュータサイエンスの知識
が最近いろんなところでコラボレーション されてるっていう雰囲気は感じます
生成AIの進化とプロダクト開発

よね
それの元になってるのはGoogleの 人が開発してくれたトランスフォーマー
っていうモデルが基本的な元にな ってるってことが多いですね

めちゃくちゃ勉強になりますね ありがとうございますそこら辺を
踏まえた上で最後に聞いてみたい のが2024年今年とか今後1,2年でも
いいですけど去年まではいろんな プロダクトも出てきましたタカ
さんとしてはそこら辺の裏側も ソフトエンジニアとして結構キャッチ
アップできましたじゃあ今後とか はどういう開発をしていきたい
か付き合い方をしていきたいか 何をエキサイトしてるかそこら
辺って何か考えてたりしますか 今までの延長でやっていくのか
とか

そう自分がプロダクトを作るとき には一つ破壊的なイノベーション
を起こす手段にはなり得るなとは 思ってるのでそれはただの一過性
の流行りかどうかは考えたほうが いいと思うっていうか合う分野
では本当に効果的に使えば今まで いけなかったことをすごいいっぱい
できると思うんですよねですし 今例えばもしかしたら価格とか
あるいは与えられるインプット の量とかあとAPIリミットとかそういう
些細なリソースとか制約で実現 できないみたいなことあると思
うんですけどそういうのは時期 に取り払われるものだと思ってる
AI技術のポジショニング

のでそこでそれがボトルネック だからプロダクトを作れないとか
って考えちゃうのはもったいない からそれすぐ多分取り払われる
から多分進んだほうがいいみたいな のはありますよね

たしかに適材適所で使っていく って感じですよねWeb3とかもそう
でWeb3とか仮想通貨自体がいい 悪いいけてるいけてないではなく
あれが生きるサービスとか場所 ってあるし全てにおいて使える
使えないとかそういう話ではなく ここら辺の技術もちゃんと使う
べきところに使っていくそのために ソフトウェアエンジニアとして
は最低限の原理とそれでどうい ったものをプロダクトアウトできる
のかそのコーディングの部分を 学んでいくというかAI技術がちょっと
分かるソフトウェアエンジニア としてのポジショニングだから
こその発揮できるところもある よみたいなところですかね

そうですねいっぱいある技術の 中の一つだと思いますね全部に
設置してるエンジニアっていない と思うんですけどAIに知りたい
なって人がいたら今はチャンス かなと思いますねいろんなモデル
はあると思うんですけどさっき 言ってた基本的なトランスフォーマー
とかそういうのを理解していれば キャッチアップできるので全て
のモデルを理解する必要ないし そこで面白いなと思ったらもっと
他の機械学習の知識も培えるだろう しいろいろ活躍の幅が広がるん
じゃないかなと思いますね

いやなんか綺麗なまとめになってる 気がするここら辺の生まれた上で
タカさんという一種のロールモデル がどういうふうな考えを持って
キャリアを積もうとしているのか とかなくそこら辺はちょっと刺激
になるリスナーの方もいるんじゃない かなと思ってます僕みたいな
AI技術全然分からないみたいな ソフトウェアエンジニアでもアプライ
できるような例えばプロダクト を使ってますみたいなのも結構
市場にマーケットに少なくとも 僕の周りイギリスは結構出てきた
ので別にCSとか大学博士でAIモデル とか研究してましたっていう人じゃ
なくてもここら辺はやって飾る を得ないようなところも増えて
きたなと思いながら一つロール モデルとして聞いてましたありがとうございます
AIの活用と技術開発

はいありがとうございます

そうですね結構聞きたいことを 話せたかなと思うんですが最後
の方にたかさんの方からこれだけ は話しておきたいもしくは何か
触れておきたいみたいなキーワード あったりしますか

いやどうだろうな自分はこのAI とかいっぱい結局ソフトウェア
エンジニアとしたら便利なツール が出てきたなとか便利な技術が
出てきたなぐらいにしか思って なくてクラウドサービスが出て
きた時もそうだったと思うんですけど あれでクラウドが出てきたから
全員職がなくなったかっていう とそうではないと思うんですね
より便利でより自動化とかが進ん でいろんなプロダクトが作れる
ようになったっていうところも あるんでAIももしかしたら簡単な
ところは仕事としてはなくなっちゃう かもしれないんですけどAIを使った
新しい技術開発とかプロダクト 開発とかっていうのは今後楽しみ
ですよね一方で

いや楽しみですねいやなんかこの 竹さんの技術に対する適切なスタンス
の取り方っていうのがいつも聞 いてて参考になりますありがとうございます

ありがとうございますなんかリスナー さんリスナーさんっていうかオリジナル

の質問の答えになってたのかな わからないですけど
もし竹さんが今回のエピソード も聞いてくれたらぜひまたお便り
お待ちしておりますはいじゃあ ということで今回はAI技術編ということで
竹さんをお呼びしました今日は ありがとうございました

ありがとうございました