WEBVTT 00:00.080 --> 00:05.510 初めてのエクササイズを紹介できることに興奮している。 00:05.510 --> 00:11.270 リマインダーとして、 PCを使用している場合はAnacondaプロンプトに、 ターミナルウィンドウを表示してください。 00:11.270 --> 00:15.110 もしあなたがマックを使っているなら、 プロジェクトのルート・ディレクトリに行くはずだ。 00:15.140 --> 00:24.710 LMエンジニアリングは、 conda activate LMS、 もしくはvirtualenvを使用している場合はそれに相当するコマンドを実行してAnacondaを起動し、 00:24.710 --> 00:29.180 JupyterLabと入力してJupyterラボを呼び出した。 00:29.180 --> 00:33.590 左側のファイルブラウザで、 このように週が表示されるはずだ。 00:33.620 --> 00:38.240 あるいは、 すでに1週目のフォルダに入っている場合もあり、 その場合は次のように表示される。 00:38.240 --> 00:45.500 そして、 2日目のエクササイズ・ノートを見てほしい。 00:45.500 --> 00:47.840 そして、 これがその計画だ。 00:47.840 --> 00:53.240 これからやるのは、 コードからラマを呼び出す方法だ。 00:53.240 --> 00:59.060 Pythonのコードを使って、 あなたのコンピューターで動いているラマ・モデルを呼び出します。 00:59.060 --> 01:02.320 そして、 これから何をするかというと、 最初にそれをセットアップするんだ。 01:02.320 --> 01:05.170 だから、 それをうまく使って、 結果を目にすることができるだろう。 01:05.170 --> 01:18.370 そして、 昨日完了した要約プロジェクトを更新し、 OpenAIへの呼び出しの代わりに、 Olamaを使用してローカルモデルを使用する練習をしていただきます。 01:18.370 --> 01:23.260 そして、 もしあなたがOpenAI APIにサインアップしていないのであれば、 これは初めてのチャンスだ。 01:23.740 --> 01:30.550 それで、 まず最初に、 ラマを使うことを説明します。 01:30.580 --> 01:34.300 ラマを使うメリットは、 もちろんAPI料金がかからないことだ。 01:34.300 --> 01:35.110 オープンソースだ。 01:35.110 --> 01:36.190 あなたのボックスで動いている。 01:36.190 --> 01:37.300 無料だ。 01:37.330 --> 01:41.080 もうひとつの利点は、 データがあなたの箱から出ることがないことだ。 01:41.080 --> 01:46.030 だから、 クラウドに絶対に出してはいけない機密データであろうと、 何かに取り組んでいるのであれば、 01:46.030 --> 01:54.280 もちろん、 データをインターネットから出さずにローカルで作業するテクニックが得られる。 01:54.490 --> 02:06.950 デメリットは、 明らかにフロンティア・モデルは、 オープンソース・モデルよりも何倍も何十倍も大きく、 強力だということだ。 02:06.950 --> 02:10.730 だから、 結果はそれほど強くないと予想すべきだ。 02:10.880 --> 02:16.970 でもね、 その分、 通話料がかかるんだ。 02:17.660 --> 02:22.400 まず最初に、 OlamaにアクセスしてOlamaをインストール済みであることを願う。 02:22.400 --> 02:27.260 ダウンロードボタンを押すだけで、 レースが始まるのだ。 02:27.260 --> 02:37.670 そうすれば、 このリンク(localhost 11434)にアクセスすると、 Olamaが実行中であることを示すメッセージが表示されるはずだ。 02:37.670 --> 02:46.910 もし表示されない場合は、 ターミナルかPowerShellを立ち上げ、 Olama serveと入力すれば実行されるはずだ。 02:46.910 --> 02:50.750 そしてそこに行けば、 またラマが走っているのを見るはずだ。 02:50.750 --> 02:55.910 もしそうならなかったら、 デバッグとリサーチを少しやってみて、 それから僕に連絡してくれれば、 02:55.910 --> 02:58.240 力になるよ。 02:58.240 --> 03:00.550 だから、 いくつか輸入するつもりだ。 03:00.580 --> 03:02.620 これからいくつかの定数を設定する。 03:02.620 --> 03:14.860 これは僕のローカル・ボックスのURLで、 このポートはスラッシュAPIスラッシュ・チャットで動作するポートだ。 03:14.860 --> 03:19.180 リャマ3となるモデルという定数も持つつもりだ。 2. 03:20.170 --> 03:29.800 さて、 このメッセージだが、 うまくいけばこの構成がわかるだろう。 03:29.830 --> 03:31.420 もう少し違う言い方をしよう。 03:31.420 --> 03:36.610 これは前に話したメッセージと同じだ。 03:36.640 --> 03:39.730 OpenAIで使っているものだ。 03:39.760 --> 03:43.750 メッセージは辞書のリストである。 03:43.750 --> 03:53.170 各ディクショナリは、 roleをキーとし、 値はユーザーまたはシステムであり、 contentをキーとし、 値はユーザーメッセージまたはシステムメッセージである。 03:53.170 --> 04:00.940 つまり、 非常に簡単に言えば、 「ジェネレーティブAIのビジネス・アプリケーションをいくつか説明してください」というユーザー・プロンプトが欲しいということだ。 04:01.180 --> 04:02.290 それを実行しよう。 04:02.470 --> 04:11.080 ペイロードと呼ばれるJSONオブジェクトに、 モデルやメッセージを指定する。 04:11.080 --> 04:12.910 結果を取り戻したいだけなんだ。 04:13.150 --> 04:23.680 そして、 Pythonパッケージのrequestsを使って、 このURLにJSONでリクエストをポストします。 04:23.680 --> 04:33.850 そして、 戻ってきたJSONをメッセージ・コンテンツ・フィールドで見てみる。 04:33.850 --> 04:39.610 だから今はもちろん、 僕のボックスから僕のボックスへローカルにウェブリクエストをしている。 04:39.880 --> 04:46.390 そして、 リャマ3とつながっている。 2 llamaがサーブしているモデル。 04:46.390 --> 04:48.070 その結果がこれだ。 04:48.070 --> 04:50.860 そして、 その答えが実に良いものであることをお伝えしたい。 04:50.890 --> 04:56.720 だから、 私たちは商業的な応用について学ぼうとしているのだから、 その回答のいくつかに目を通して、 04:56.720 --> 05:00.890 何か興味のあるものがあるかどうか確認しても損はないだろう。 05:01.160 --> 05:05.330 さて、 ここでお見せしたかったのは、 その裏側で何が起こっているのかを正確に説明したかったからで、 05:05.330 --> 05:10.970 基本的にはこれらのURL、 つまりローカル・ボックスへのウェブ・リクエストを行っているのだ。 05:11.270 --> 05:17.960 しかし実は、 Allamaの親切な人たちがPythonのパッケージを作ってくれていて、 これを使えばもっと簡単だ。 05:17.960 --> 05:19.430 だから、 これを1行で済ませることができる。 05:19.430 --> 05:27.410 だから、 ここから始めてもよかったのだが、 ウェブリクエストを作る手順をお見せすることで、 実際に何が起こっているのかを直感的に理解していただきたかった。 05:27.470 --> 05:33.890 しかし、 Allamaという素晴らしいパッケージがあり、 それをインポートすれば、 Allama dot 05:33.890 --> 05:40.640 chatと言って、 モデルを渡し、 メッセージを渡し、 レスポンスの内容を受け取ることができる。 05:40.640 --> 05:46.700 それを実行すれば、 基本的に同じものが得られることが期待できる。 05:46.760 --> 05:48.620 そして、 これだ。 05:48.650 --> 05:49.640 あれだ。 05:50.060 --> 05:56.970 ああ、 想像するに、 彼らとの間に違いがあるのはもうわかるよ。 05:57.000 --> 05:59.070 もちろん、 その都度多少の違いはある。 05:59.160 --> 06:01.650 ええと、 これはもっと長いレスのようだ。 06:01.860 --> 06:05.310 よし、 これで私のティーアップは終わりだ。 06:05.310 --> 06:06.840 あとは君の出番だ。 06:06.840 --> 06:18.390 初日に、 ウェブサイトを要約するソリューションを構築し、 それを実現するためにOpenAIに呼びかけたことを覚えているだろう。 06:18.840 --> 06:23.550 実際、 ここにOpenAIへの呼びかけがある。 06:23.760 --> 06:32.430 あなたへの挑戦は、 この2日目の練習ラボを続けて、 同じサマライザーのコードを追加し、 あなたの地元のウラマのオープンソースモデル、 06:32.430 --> 06:45.000 llama 3を使用したウェブサイト、 サマライザーを構築できるようにすることだ。 06:45.000 --> 06:45.000 2または別のモデルで要約を行いたい場合。 06:45.000 --> 06:46.650 それが練習だ。 06:46.650 --> 06:50.220 解決策はソリューション・フォルダーにあります。 06:50.220 --> 06:55.290 でも、 このビデオは完成したと思うし、 完成したらまた次のビデオで会おう。