GoogleのTurboQuantがAIチップ市場を揺るがした

Google・DeepMind・Alphabet
この記事は約20分で読めます。

GoogleがTurboQuantと呼ばれる画期的なAI圧縮アルゴリズムを発表した。このアルゴリズムは特定のメモリ要件を最低6倍削減し、最大8倍の高速化を実現する一方で、精度の損失がゼロという驚異的な性能を持つ。従来の圧縮技術では効率とのトレードオフとして必ず何らかの精度低下が発生していたが、TurboQuantはPolarQuantとQJLという2つの技術を組み合わせることでこの課題を克服した。PolarQuantはデータ表現を直交座標系から極座標系に変換することで効率的な圧縮を実現し、QJLが残存する微小な誤差を補正する仕組みである。この技術により企業のAI運用コストは約50%削減され、同じハードウェアでより長いコンテキストウィンドウや複数のモデル実行が可能となる。発表直後には複数のメモリチップ関連株が下落したが、ジェヴォンズのパラドックスが示すように効率化はむしろAI活用の拡大を促進する可能性が高い。

Google's TurboQuant Crashed the AI Chip Market
The latest AI News. Learn about LLMs, Gen AI and get ready for the rollout of AGI. Wes Roth covers the latest happenings...

TurboQuantの衝撃的な発表

Googleが非常に大きなものをリリースしました。TurboQuantと呼ばれるものです。これはAI向けの圧縮アルゴリズムで、特定のメモリ要件を最低でも6倍削減し、最大8倍の速度向上をもたらします。でも、ここからが重要なポイントなんです。これら全てが精度の損失ゼロで実現されているんです。精度損失ゼロというのは、聞いていて何だか不思議に感じることですよね。

実際、これはワイスマンスコアで5.2という検証済みの評価を受けました。パネルの反応はかなりワイルドでした。みんなが拍手しました。ちょっと待ってください。それはシリコンバレーのテレビ番組ですね。はい、ワイスマンスコアの話はナンセンスでしたが、残りは本当です。さて、これについて話しましょう。一体何が起こっているのか、深く掘り下げていきましょう。

私はまだこの場所を改装中なので、申し訳ありません。ADHDの人が部屋を改装するのに何人必要かというジョークみたいなものですね。何の話をしていたんでしたっけ?ああ、そうそう。GoogleがTurboQuantをリリースしました。見出しは大きく報じられています。これはNvidiaのメモリビジネスをクラッシュさせる可能性のあるアルゴリズムだと人々は言っています。多数のメモリチップ株が下落しました。全体的に大虐殺状態です。これは一体どういう意味なんでしょうか?深く掘り下げていきましょう。これのどこまでが真実で、どこまでが誇大広告なのでしょうか?まず第一に、彼らが実際に何を解明したのかを見ていきましょう。

大規模言語モデルの仕組み

Googleがここで構築したものを理解するには、大規模言語モデルとTransformerが内部でどのように動作しているかについて、ちょっとした時間を取って学ぶ必要があります。なぜなら、シンプルなチャットボットの背後には、実は単語が何を意味するかを理解しようとする非常に複雑なシステムがあるからです。

まず第一に、もし私があなたに「それは何ですか?それは何をしたくなかったのですか?それはどこにありましたか?」と尋ねたら、それは少し混乱するかもしれません。なぜなら、それが何なのか文脈がないからです。それが文中の8番目の単語だったとお伝えすることもできます。しかし、それでも本当にはっきりしません。それについていくつかの文脈が必要なんです。

さて、もし私が「その動物は道路を横断しませんでした。なぜならそれはとても疲れていたからです」と言ったとしましょう。突然、それについてもっと多くのことが分かります。その文を読んだ後、それは何でしたか?それは動物でした。それは何をしなかったのですか?道路を横断しませんでした。なぜですか?とても疲れていたからです。つまり、かなり無意味だったものが、今ではitという単語が私たちが話していることについてはるかに多くの情報を含むようになったのです。私が単にitと言うだけで、あなたは私が何を意味しているか正確に分かるんです。

Googleのattention is all you need論文とTransformerに関する画期的な発見の多くは、これと関係がありました。単語が何を意味するかを、その単語の周りにある他の単語が何を意味するかに基づいて学習する必要があったのです。つまり、それぞれの単語は他のすべての単語に対して何らかのつながり、何らかの関係を持っています。そして、このような文を読むたびに、それらのつながりや関係を書き留めます。いわばそれらを計算し、この小さなキャッシュに保存して、後で取り出して見ることができるようにするんです。すべてをもう一度読み直す必要がないようにするためです。

すでに読んだものを覚えている方法は、このKVキャッシュを通じてです。KはKeyを表し、VはValueを表します。すべての文を読んでいる間、それらをこのキーバリューキャッシュに保存します。これを小さなフォルダのようなものと考えることができます。これがフォルダだと想像してみましょう。

先ほどの例、なぜその動物は道路を横断しなかったのか、なぜならそれは疲れていたからです、という文でitという単語のKVキャッシュを作成しているとしましょう。フォルダの前面に何が入っているかを示す何らかのラベルがあるでしょう。そして、フォルダの中には全ての意味と全てのデータと全てのもの、全てのものが入っています。

itというフォルダのラベルには、非常にシンプルなことが書かれているでしょう。深い意味を持つものではなく、単純なタグのようなものだと考えてください。そうすることで、モデルが後で必要な時に棚から引き出せるようになっています。単数代名詞だとか、文の後半の主語だとか、そういったことが書かれているでしょう。

それがキーで、バリューはフォルダの中に入っているすべてのものです。これは実際にそのものを他のすべての単語にリンクさせ、意味を作り出すものです。つまりフォルダの中にあります。itという単語は前の方の動物を表していて、疲れているものがそれだという具合です。これが大規模言語モデルが単語の意味を理解する方法で、単に他の単語との関係を通じてなんです。

男性が女性に対するように、王は何に対するか、女王です。または大きいが最大に対するように、小さいは何に対するか、最小です。これは誰にとっても非常にシンプルで理解しやすいと思いますが、これが3D空間で起こっていると想像してみてください。宇宙にたくさんの星があって、それぞれがXYZ軸で表現できる独自の位置を持っているようなものです。一定の単位だけ上に、右に、何でもいいですが、XYZ座標で3D空間内の任意の点を決定できます。

極座標による新しいアプローチ

オフィスへの行き方を私に尋ねているとしましょう。オフィスがこの高層ビルにあると想像してください。私たちはここを見ています。私はあなたに「東に2ブロック進んでください」と言うでしょう、これがそうだとすると。それから北に3ブロック進んで、3階まで上がってください、と。つまり、この方向にこれだけ、この方向にこれだけ、そして上にこれだけ進むという具合です。ブロックごとの道順を示しているわけです。左に行って、右に行って、上に行ってなど。

でも考えてみてください。別の方法で、文字通り指を差すことでそれを示すこともできるでしょう。「あそこです」と言ってビルを指すことができます。そこにあります、と。そのビルの上の方にある正確なオフィスを指して、500フィート離れていると言えます。

これもまた、そのものが正確にどこにあるかを示す方法だということに同意していただけるでしょう。それを直接指して、これだけ離れていると伝えることです。人々がお互いに道順を教える方法としては非常に奇妙でしょう。でも大規模モデルの文脈では、これは実は非常に理にかなっています。

そして、それはまさにGoogleが自分たちがやっていることを説明する方法なんです。これは彼らが発表した記事からのものです。ちなみにPolarQuantと言っていますが、彼らがリリースしたこの傘下にはPolarQuantがあり、それからTurboQuantがあります。つまり、両方とも同じものの一部です。PolarQuantは圧縮に対する新しい角度だと言っています。彼らがそこで何をしたか分かりますか?

標準座標を使ってメモリベクトルを見る代わりに、つまり空間内のそれらの位置と、各軸に沿った距離を示す2つの概念または単語間の関係について話しています。この方向に2ブロック、この方向に3ブロック、5階上、といった具合です。PolarQuantは、デカルト座標系を使用してベクトルを極座標に変換すると言っています。これは「東に3ブロック、北に4ブロック進む」を「37度の角度で合計5ブロック進む」に置き換えることに相当します。

これにより2つの情報が得られます。半径はコアデータがどれだけ強いかを示し、角度はデータの方向または意味を示します。このチャートを見ると、年齢が上下にあります。性別が左右にあります。成人です。この方向に進むと男性です。この方向に進むと女性です。年齢を下げると子供になります。左に行くと男の子です。右に行くと女の子です。幼児です。

クイズです。ホットショット。ここには何がありますか?これが分かっていただけるといいのですが。私がそれがどこにあるかを指すと、長さと角度が分かり、そこにどんな単語が入るか、あるいは少なくともその意味が分かるはずです。ここには祖母を置きます。ここには祖父母を置くかもしれません。つまり、この座標を指すだけで、私が伝えようとしている意味をある程度推測できるんです。

この新しいGoogleのブレークスルーでは、ここからここへ行くのに、下にこれだけ、左にこれだけ行くのではなく、そこに矢印を向けるだけで、距離と方向の両方を示すんです。

彼らはここで続けています。角度のパターンは既知で高度に集中しているため、モデルはもはや高コストなデータ正規化ステップを実行する必要がありません。なぜなら、データを境界が常に変化する正方形グリッドではなく、境界がすでに分かっている固定された予測可能な円形グリッドにマッピングするからです。これにより、PolarQuantは従来の方法が持っていたメモリオーバーヘッドを排除できます。

つまり、PolarQuantはステップバイステップの道順ではなく、直接そのものを指すということです。KVキャッシュはそのキーバリューキャッシュで、モデルがテキストを読んでいる間に小さなメモを取るフォルダです。ラベル付きのフォルダに入れて保存し、後でテキストの後の方に進んだときに、ああ、この単語は具体的に何を意味するんだろう、この単語について他にどんな知識があるだろうと考える必要があります。そこで、フォルダを調べ、適切なキーを持つフォルダを引き出し、開いて、話している内容についての深い意味データを得るためにバリューを見るんです。

Googleのユーモアセンス

例を挙げましょう。Googleの新しいブログ投稿で、彼らが「圧縮に対する新しい角度」と言ったのを覚えていますか?今それを読み直すと、おそらく絶対に面白いと感じるでしょう。なぜ面白いのでしょうか?

それは、今ではそれが彼らがデータを圧縮する方法だと分かるからです。彼らは角度を使います。角度はデータの方向または意味を示します。つまり、彼らが角度と言うとき、文字通りと比喩的の両方の意味で使っているんです。新しい視点、新しい角度という意味でも、そして文字通りの角度としても。

そのジョークを理解して面白いと感じるためには、あなたの脳は小さなKVキャッシュフォルダを引き出し、それを見て、「ああ、分かった」と言わなければなりませんでした。これが役立ったことを願います。なぜなら、実際に何を見る前に、物事が正確に何を意味するかを知りたいからです。もしあまり馴染みのない単語の束を見たり、何を意味するかは何となく分かっているけれど正確には分からないという場合、それらが一緒に投げ出されているのを見ると、混乱します。そこから得られるデータがあまり多くありません。KVキャッシュフォルダにかなり詳細なメモが入らないんです。

TurboQuantの実際の性能

さて、それを踏まえて、この新しいTurboQuantアルゴリズムはどれくらいうまく機能したのでしょうか?彼らは多数のオープンソースモデルでテストしました。GoogleのGemmaもそうですし、Mistral、Llamaなども含まれます。そして、NvidiaのH100 GPUで実行していました。つまり、実際のモデルが実際のハードウェア、実際のGPUで動作していたんです。そして、これが彼らが得た実際の数字です。

まず第一に、KVキャッシュメモリが6倍削減されました。つまり、後で参照するためにフォルダからものを引き出すのに、メモリの6分の1しか必要としません。同時に、8倍の高速化がありました。つまり、以前よりも8倍速くそのものを引き出しているんです。

これは必ずしもモデルが8倍速くなったという意味ではありません。その特定のプロセスが8倍速くなっただけです。でも、その2つの数字はそのプロセスにとってかなり大きいものです。

そして最後に、これが良いものから完全に驚異的なものに変わる最後のピースなんですが、常に様々なアルゴリズムやブレークスルーについて見聞きしていて、物事をより速く、より効率的にするものがあります。何かをする方法を見つけてメモリを節約します。画像などについてはみんなよく知っていますよね。カメラで生の画像を撮ると巨大です。ファイルはギガバイト単位です。非常に重いです。でも、それをJPEGに変換すると圧縮され、トレードオフに応じてより多く、またはより少なく圧縮できます。ファイルがどれだけ大きいか、そのファイルをどれだけ速く開けるか、保持したい実際のコンテンツがどれだけあるかの間のトレードオフです。

少しでも鮮明さやシャープさが落ちても大丈夫ですか。画像を送ったり開いたりするのに10分も待ちたくないでしょう。でも通常、圧縮すると何かを失います。小さく速くするということは解像度が少し下がるということです。

これがクレイジーな理由はここにあります。精度の損失がゼロだからです。彼らは様々な干し草の中の針テストでそれをテストしました。つまり、大量のテキストの大量のドキュメントを与えて、その中から特定の意味を見つけようとするんです。Ctrl+Fを押して単語を入力するような特定の単語ではなく、そこに隠されている特定の意味や微妙なニュアンスです。

企業への実際の影響

これがこれらのモデルを実行している企業にとって実際に何を意味するのでしょうか?紙の上では素晴らしく見えるけれど、実運用に入れると1%の効率改善みたいなものなのでしょうか?そういうものなのでしょうか?いいえ。これはもっと50%のコスト削減に近いものです。大規模に大規模言語モデルを実行している企業であれば、コスト削減は約50%と推定されます。

コストが半分になるんです。そしてアテンションは非常に高価です。ADHDの人にとってという意味だけではなく、大規模言語モデルやアテンションを使用するTransformerアーキテクチャ上で動作する他のニューラルネットワークにとってという意味です。非常に計算集約的です。

GPUがそこにあって、タスクを実行するのに1時間かかるとします。必要なメモリ量を削減し、実行速度を上げれば、まあ、物事は安くなります。APIコールが安くなり、速くなり、任意のGPUに対して1秒あたりのリクエスト数が増え、ハードウェアの制限に達することなくより長いコンテキストを実行できるようになります。

推論コストについては、これは基本的に即座に効果があります。Frontierモデルの実行が基本的にほぼ即座に50%安くなります。これは小さな限界的な改善ではありません。これはすべてのプロンプト、すべてのAPIコール、すべてのチャットボット応答、すべてのエージェントワークフローに適用されます。それが重要です。

これにモデルの再トレーニングは必要ありません。ファインチューニングもありません。これは単に切り替えるだけです。モデルは同じままで、その高速化、その割引を固定します。これはコンテキストウィンドウにとって大きな問題です。ハードウェア要件のために特定のコンテキストウィンドウで上限に達していたモデルがあった場合、その制約が解除されるか増加します。

同じハードウェアで、企業が一定量のコンピュート、一定数のGPUを持っているとすれば、特定のコンテキストウィンドウの制限があったかもしれませんが、これは効果的にそれを増やします。つまり、より長いコードベース、様々な長いドキュメントの処理、より大きな会話履歴などが可能になります。

NvidiaとGPUへの影響

これはNvidiaとGPUにとって何を意味するのでしょうか?ある数のGPUで実行している企業があるとしましょう。1つの大規模モデルを実行するために最大限に使用されていたGPUがあったとします。これは効果的に、そこでより多くのモデルを実行できる、またはより大規模なモデルを実行できることを意味します。

これはNvidiaのインフラストラクチャの直接的な乗数です。ビデオゲームで「このアイテムは知能+22を与える」と言うような感じです。Nvidiaが今+22を得たようなものです、数字が何であれ。それは計算効率への直接的な乗数です。

これはGoogleにとって何を意味するのでしょうか?Googleのサーバーコストが下がります。検索の実行、たとえば検索APIと推論の実行コストが下がります。すべてが安く、速くなります。多数のGPUやTPUを持っていることの経済的優位性、彼らは実験をGPUで実行したので、NvidiaのH100を使用しました。それで6倍のメモリ削減と8倍の速度向上が得られたんです。GoogleのTPUは異なるかもしれませんが、似たようなものだと確信しています。

でも要点は、大量のハードウェアと大量のコンピュートを持っている場合、効果的に持っているものを倍増させたということです。

TurboQuantの技術的詳細

TurboQuant、PolarQuant全体について混乱しているかもしれません。彼らは何らかの量子化Johnson-Lindenstraussというものも言及しました。それで、それは何かというと、TurboQuantです。これがみんなが呼んでいる大きなもの、傘となるものです。でもその下には2つの柱、2つの部分があります。

最初のものは、ここで議論したすべてのものとほぼ正確に同じです。ステップバイステップの道順を与える代わりに、指を差してどれだけ離れているかを伝えます。その指差し、それがPolarQuant方式です。それが圧縮方式です。速度とメモリ削減要件の面で実際に重い仕事をするのはPolarQuantです。

でも、2番目の部分があって、これは同じくらい、あるいはそれ以上に興味深いかもしれないと言わざるを得ません。それが量子化Johnson-Lindenstraussアルゴリズムで、隠れたエラーを排除するものです。

TurboQuantは圧縮能力の小さな残余量、わずか1ビットを使用して、第1段階から残った微小なエラーにQJLアルゴリズムを適用します。その量子化Johnson-Lindenstraussアルゴリズムは基本的にエラーチェッカーのようなものですが、超小型で超高速で非常に小さいです。

圧縮によるバイアスを排除します。精度を向上させます。繰り返しますが、精度については、これを実行することによる損失はゼロです。おそらく最初のもの、PolarQuantには圧縮による何か小さな損失があるかもしれませんが、2番目のもの、QJLがここそこで小さなエラーをチェックして、すべてが完璧であることを確認します。

この2つが一緒になったものがTurboQuantです。このニュースが出ます。直後に何が起こったかというと、株式市場の大虐殺、少なくとも特定のチップ株についてです。SK Hynixが6%下落、Samsungが5%下落、SanDiskが5.7%下落、Western Digitalが4.7%下落、Micronが3%下落しました。

市場のロジックは、AIを実行するメモリ要件、これらのAIモデルを実行するメモリ要件が6倍またはそれ以下に下がれば、人々は明らかにチップをより少なく使うだろうということです。需要が減ります。

ジェヴォンズのパラドックス

私は明らかにこれがそうなるとは賭けません。いくつかの理由からです。主な反論は、おそらくこれを聞いたことがあるでしょう、ジェヴォンズのパラドックスです。基本的に、ある資源を使用する効率が上がると、つまり安くなり、より豊富になるということです。必ずしもその資源をより少なく使うとは限らず、資源の使用が実際に増えるかもしれないということです。なぜなら、それに対するより多くのユースケースが出てくるからです。

他の活動のためにはるかに多く使うことを選ぶかもしれません。ガソリンが高価で運転を避けようとしていて、突然ガソリンのコストが10分の1になったら、どこにでも運転し始めるかもしれません。ロードトリップを始めるかもしれません。暑ければ、車をつけてエアコンをつけたまま座っているかもしれません。

芝生を刈るために車を使おうとするかもしれません。分かりません。それに対する何か新しい斬新な用途を見つけるかもしれませんし、SUVにアップグレードすることを決めるかもしれません。何でもいいです。それが安くなったので、そのものをより多く使う方法を見つけるでしょう。

これらのモデルをより良く、より速く、精度の損失なくメモリ効率を上げることは、企業が「ああ、周りにこれほど多くのGPUは必要ないんだな」と言うことにはつながりません。いいえ。何が起こるかというと、人々は様々な大規模言語モデルのためのますます狂ったようなユースケースを見つけるでしょう。それらの多くは明らかに非常に有用でしょうが、ものが安くなればなるほど、ユースケースはより奇妙になります。

飢饉があった時代に時間を遡って、人々が飢えていて、ハロウィンのためにカボチャを彫ることを説明するのを想像してみてください。そう、完全に良い食べ物を取って、怖く見えるように彫って、それから腐るまで外に置くんです。その会話を想像してみてください。どうなるでしょうか?

まとめと今後の展望

さて、大きなポイントをまとめると、TurboQuantはソフトウェアです。新しいチップも、新しい再トレーニングも、新しいモデルも、ファインチューニングも、何もありません。コンピュートに費やされる1ドルあたりのレバレッジが増加しています。これは推論用であることを覚えておいてください。

これはモデルのトレーニング用ではなく、それは少し異なりますが、本番用、いわばトークンが工場のラインから出てくるようなものにとっては、はるかに安くなっています。DeepSeekの瞬間で似たようなことが起こるのを見ました。これはいわばGoogleの瞬間だと思います。これはGoogleにとって素晴らしいと思います。なぜなら、彼らは大量のインフラストラクチャを持っているからです。

これは単に、それを使ってものを生産することを安く、速く、より良くしているだけです。Googleにとってのすべての効率改善は純粋なマージンです。これはNvidiaにとって良いことでしょうか、悪いことでしょうか?私は市場アナリストではありません。聞かないでください。全く分かりません。

とはいえ、そこにいる誰かが、Nvidiaが制約のために、すべてからもう少し多くのお金を絞り出しているという事実について良い議論をするかもしれないと思います。もし物事がそれほど制約されていなかったら、すべてがはるかに効率的になったら、もしかしたら。それが真実だとは言っていません。全く分かりません。繰り返しますが、実際の数字やマージンやそういったものすべてを計算して座っているわけではありませんが、これが例えば自社のTPUを持っているGoogleにとって素晴らしいことは分かっています。

これは大規模に大規模言語モデルや他の同様のAIモデルを実行しているすべての人にとって素晴らしいことです。ところで、これがNvidia対他のハードウェア企業にどう影響するかについて良いアイデアがあれば、表面上ほど明らかではない何かがあれば、ぜひ教えてください。私の見解はジェヴォンズのパラドックスです。価格が下がれば、ユースケースが増えます。何か見逃しているものがあれば、コメントに自由に投稿してください。

ここに誰もが見ていないかもしれない洞察があるかどうか知りたいです。でも他の大きな勝者は、まあ私たちです。具体的には、エージェントを使っている場合、OpenClaudeのようなものを使っている場合です。つまり、今の問題は、例えばAnthropicを使っている場合、Claudeを使っていて、Claude Code用の認証キーを使っている場合、使うべきではないんですが。誰もやっていないと確信していますよね?

でも要点は、クォータを上限まで使っていて、月に200ドル払っている場合です。標準のAPI価格で自分で支払わなければならなかったら、それははるかに高価でしょう。正確にどれくらい高いか分かりませんが、10倍くらいでしょうか。つまり、月に2,000ドル払うことになるかもしれませんし、それよりもずっと多いかもしれません。

トークン使用量の多くはこれらの企業によって補助されています。すべてが半分にカットされれば、第一に、彼らにとって素晴らしいことです。さらに多くを私たちに提供できます。推論、トークンで失うお金が少なくなるか、同じ価格で提供する意思のあるものを2倍にします。

実際のパワーユーザーはこれから大きく勝ちます。Andrej Karpathyが最新のインタビューで話していたのは、誰もが学ぶ必要があるスキルの1つは、クォータで許可されているすべてのトークンを使うことだということでした。24時間、1週間、1か月の特定のトークン数があれば、全部使い切ってください。

それらのトークンを何らかの価値ある出力に変えてください。このようなもので、効果的にそのような可能性のある価値ある出力がちょうど倍増しました。すでに制約の限界まで実行していると仮定すれば。

Googleのオープン性への評価

みんなが理解する必要があると思うこと、これが起こっていることを少なくとも理解することが重要だと思うことが1つあります。GoogleはTransformerを説明したattention is all you need論文を投稿しました。今Googleと競合している企業のほとんどは、その論文の公開のおかげで部分的に存在しています。

そして今、この技術、TurboQuantから恩恵を受けようとしているすべての人々。私たち全員がこれから恩恵を受ける唯一の理由は、Googleがそれを公開したからです。彼らはそれをそこに投稿します。確かに、それは彼らの利益になります。より多く使われます。彼らの会社の利益になりますが、もしこのようなものを持っていたら、多くのビジネスがあります。なぜそれを公開するのでしょうか?

それは彼らのモデル、ハードウェアのコストを削減する能力を与えます。誰にも言う必要はありません。その利益、その優位性を取って、競争に追加のプレッシャーをかけることができます。それが通常のプレイブックです。

でも彼らはそれを公開しました。attention is all you need論文を公開したように。この分野で彼らが公開している他のすべてのもの、継続学習の論文のように、すべてを公開しました。それをどうしたいかは分かりませんが、つまり、Googleに少しだけ評価を与えなければなりません。彼らはここでいい仕事をしています。

さて、それについてどう思うか教えてください。ところで、AnthropicのMythosモデルは、実行するのに非常に高価で、これでは実行可能ではないかもしれないと言われていました。これで実行コストがちょうど半分になったように聞こえます。それがAnthropicのいつリリースするか、どのようにリリースするかの決定に影響するかどうかは分かりませんが、それもそこにあります。

ここまで来ていただいた方、ご視聴いただき本当にありがとうございました。私の名前はWes Rothです。次の動画でお会いしましょう。

コメント

タイトルとURLをコピーしました