WEBVTT 00:00.920 --> 00:02.120 お帰りなさい。 00:02.150 --> 00:06.920 私と同じように、 再びロードを再開する間、 コーヒーを飲みに行ったかもしれない。 00:07.220 --> 00:09.140 そしてここに戻ってきた。 00:09.350 --> 00:14.960 ええと、 セッションを再開した後、 もう一度セッションを再開する必要がありました。 00:14.990 --> 00:17.660 インストールを再実行する必要はないが、 インポートを再実行する必要がある。 00:17.660 --> 00:20.270 定数は再び抱き合う顔にログインする。 00:20.300 --> 00:21.740 これを実行してはならない。 00:21.740 --> 00:24.800 そうでなければ、 記憶の中のビッグモデルで元の状態に戻ってしまうだろう。 00:24.830 --> 00:27.470 ええと、 スキップしてセッションを再開してください。 00:27.470 --> 00:31.520 そしてここでは、 8ビットを使ってベースモデルをロードしている。 00:31.520 --> 00:33.770 だから、 前にも見たことがあるだろう。 00:33.770 --> 00:35.060 短い間だった。 00:35.060 --> 00:39.080 ええと、 もし私がそれについてあまり触れなかったとしても、 少なくともコードにはこのことが書かれているはずだ。 00:39.350 --> 00:47.090 そして、 Bits and Bytesという素晴らしい名前のパッケージを使っている。 00:47.210 --> 00:52.850 そして、 Bits and Bytes configというクラスを作り、 そこで、 どのような量子化コンフィギュレーションにするか、 00:52.880 --> 00:58.310 モデルの精度をどの程度下げたいかを指定する。 00:58.310 --> 01:01.940 そして、 私たちは8ビットでのロードを真実だと言っている。 01:02.060 --> 01:07.520 そして、 ベースモデルをロードするときに、 それをパラメータとして渡すんだ。 01:07.520 --> 01:11.000 さっきも言ったように、 私たちは過去にこのようなことをやっていたと思うが、 それについてはあまり話さなかった。 01:11.420 --> 01:21.980 ええと、 こうしてラマ3をロードするんだ。 1ベースモデルで、 精度を32ビットから8ビットに下げた。 01:22.250 --> 01:26.300 ええと、 2、 3分で終わるから、 それを実行したんだ。 01:26.330 --> 01:30.230 次に、 そのメモリフットプリントを見てみよう。 01:30.260 --> 01:34.730 9ギガバイト強を使っている。 01:34.790 --> 01:44.090 リソースを見てもらえばわかると思うが、 9ギガを使い切り、 システム・メモリに注ぎ込む必要がなくなった。 01:44.300 --> 01:48.320 ベースモデルのアーキテクチャーを見てみよう。 01:49.130 --> 01:54.350 これが量子化後のモデル・アーキテクチャだ。 01:54.740 --> 01:59.030 ええと、 ここでちょっと間を置かせてください。 01:59.060 --> 02:01.910 アーキテクチャーで何が変わったか見てみよう。 02:01.940 --> 02:09.620 ええと、 量子化したところで、 ちょっとだけ時間をあげよう。 02:09.740 --> 02:11.330 時間切れだ。 02:11.330 --> 02:14.690 そしてもちろん、 建築に違いがないこともご存じだろう。 02:14.720 --> 02:15.770 トリック・クエスチョン。 02:16.040 --> 02:17.120 私を嫌いにならないで。 02:17.300 --> 02:19.640 ええと、 そうだね、 建築に違いはないよ。 02:19.640 --> 02:24.520 というのも、 量子化の全体的な考え方は、 モデルの各数値、 各重みの精度を下げる一方で、 02:24.550 --> 02:30.160 実際にはモデルのアーキテクチャはまったく変えていないからだ。 02:30.340 --> 02:35.470 そして少々意外なことに、 それはモデルの性能に大きな影響を与えることはない。 02:35.470 --> 02:42.010 だから、 私が何かひどい失言をしない限り、 この建築は上のものと同じであることを願う。 02:42.040 --> 02:44.290 確認とダブルチェックをすればいい。 02:44.320 --> 02:51.850 ひどいミスはしていないけど、 それが量子化の考え方なんだ。 02:51.850 --> 03:09.370 32ギガバイトから9ギガバイトまで、 何も、 うーん、 うーん、 まあ、 まだ見ていないけれども、 大きな影響もなく手に入れたようだ。 03:09.370 --> 03:10.810 何らかの影響はあるだろう。 03:10.810 --> 03:13.930 ただ、 期待するほど大きくはない。 03:14.620 --> 03:17.830 だから、 もう一度セッションをやり直さなければならない。 03:17.830 --> 03:26.410 ええと、 では最後に、 セッションを以前と同じように再スタートさせてください。 03:26.440 --> 03:33.010 この後、 インポート、 定数を実行し、 huggingfaceに再ログインしたら、 03:33.010 --> 03:35.080 1秒後に会おう。