You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

379 lines
13 KiB

WEBVTT
00:00.110 --> 00:02.570
そこでGPT4に電話をかける。
00:02.600 --> 00:11.000
ああ、 これはリンクのセットに目を通し、 どれが関連性のあるリンクかを把握し、 完全修飾リンクに置き換えるように要求しているのだ。
00:11.270 --> 00:18.740
特に、 どのリンクが関連性があるのかを選択する必要があるからだ。
00:18.740 --> 00:21.620
一種のニュアンスのある推論プロセスが必要なのだ。
00:21.890 --> 00:27.560
この目的のためにGPT 4を使うだけでなく、 必要な情報を正確に指定する方法で、
00:27.560 --> 00:35.390
JSONの形で応答するよう依頼するつもりだ。
00:35.420 --> 00:45.080
さて、 この後、 構造化出力と呼ばれるテクニックを取り上げますが、 これはLLMに非常に特殊なフォーマットでの応答を要求する場合です。
00:45.110 --> 00:48.950
私たちは効果的に、 応答するために必要なフォーマットを指定する。
00:48.980 --> 00:50.300
今日はやらない。
00:50.300 --> 00:52.670
単純にJSONを返してもらうだけだ。
00:52.700 --> 00:56.000
そして、 返信に必要な書式を指示する。
00:56.000 --> 00:57.380
素晴らしいものになるだろう
00:57.410 --> 01:00.590
ええと、 このような単純なリクエストには効果的です。
01:00.590 --> 01:04.120
もっと高度になると、 構造化出力を使う必要が出てくるかもしれない。
01:04.120 --> 01:09.370
第8週では、 エージェントAIのフレームワークを構築する。
01:09.370 --> 01:11.560
でも今は、 これが僕らの仕事だ。
01:11.560 --> 01:14.290
そこで、 システム・プロンプトを作成することにする。
01:14.350 --> 01:19.960
システム・プロンプトはもちろん、 目の前のタスクと、 それをどのように進めるかを説明する場所だ。
01:19.960 --> 01:22.570
そこでこの情報を提供することになる。
01:22.570 --> 01:24.250
これがシステム・プロンプトだ。
01:24.280 --> 01:28.720
ウェブページにあるリンクのリストが提供される。
01:28.720 --> 01:34.810
これらのリンクのうち、 会社概要ページや会社ページ、 採用情報ページへのリンクなど、
01:34.810 --> 01:41.800
会社案内のパンフレットに掲載するのに最もふさわしいものはどれかを決めることができます。
01:41.830 --> 01:46.210
この例のようにJSONで応答してください。
01:46.210 --> 01:49.150
そして、 渡された例がある。
01:49.150 --> 01:54.400
一発プロンプトで作業していると言ったのは、
01:54.400 --> 02:07.000
アバウトページやキャリアページで使用できる具体的な例を示したというのが本当の意味です。
02:07.030 --> 02:09.880
属性リンクは1つになる。
02:09.880 --> 02:16.570
そしてそのリンクは、 それぞれの辞書に種類とURLが記載された再度の辞書のリストになる。
02:16.570 --> 02:19.420
そしてそのURLは完全なURLである。
02:19.420 --> 02:21.430
では、 このセルを走らせてみよう。
02:21.430 --> 02:27.190
念のため、 リンクのシステム・プロンプトをプリントしておこう。
02:27.190 --> 02:28.840
これで変数ができた。
02:28.840 --> 02:31.330
そして、 その変数に含まれているのがこれだ。
02:31.330 --> 02:32.410
印刷するんだ。
02:32.440 --> 02:34.540
キャリッジリターンも取得する。
02:34.540 --> 02:35.830
これを見てみよう。
02:36.910 --> 02:37.990
これだ。
02:38.500 --> 02:44.890
だから、 システム・プロンプトでLLMに指示するのはまさにこれなのだ。
02:45.370 --> 02:50.110
次に、 ユーザー・プロンプトのリンクを取得する関数を書いてみよう。
02:50.110 --> 02:51.400
そして、 こんな感じだ。
02:51.430 --> 02:53.770
ウェブサイト・オブジェクトを取る。
02:53.770 --> 02:59.800
そして、 ここには「blah」のウェブサイト上のリンクのリストが表示される。
03:00.070 --> 03:04.630
会社案内に関連するウェブリンクを決定してください。
03:04.660 --> 03:17.160
あなたのURLは含めないこと、 含めないことをいくつか挙げて、 リンクをひとつずつリストアップして返す。
03:17.160 --> 03:20.490
だから、 これは実際の例を見ればもっと理解できるだろう。
03:20.490 --> 03:26.580
では、 リンクス・ユーザー・プロンプトを取得して、 エディターを渡すことにしよう。
03:26.580 --> 03:27.510
これはこの上ですか?
03:27.510 --> 03:29.520
これらのリンクを見ることになる。
03:29.520 --> 03:32.100
では、 このユーザー・プロンプトがどんなものか見てみよう。
03:32.130 --> 03:34.800
そして、 これを実行して感覚をつかむべきだ。
03:34.800 --> 03:36.930
ユーザー・プロンプトはこのように表示される。
03:36.960 --> 03:40.020
今言ったことと同じことが書いてあって、 申し訳ない。
03:40.110 --> 03:45.270
このウェブサイトを見ている、 あの素晴らしいウェブサイトを見ている、 と教えてくれるんだ。
03:45.540 --> 03:47.430
それから、 ここにリンクがある。
03:47.430 --> 03:55.080
中には相対的なものもあるかもしれないので、 まとめるべきだし、 関連性のあるものを選ぶべきだ。
03:55.680 --> 03:56.580
オーケー。
03:56.610 --> 04:01.920
そして今、 このすべてをOpenAIを呼び出す関数に入れる時だ。
04:01.920 --> 04:04.890
そして、 ここにリンクのURLがある。
04:04.890 --> 04:08.430
そこで、 そのURLに対して新しいウェブサイト・オブジェクトを作成する。
04:09.120 --> 04:11.130
そして今、 私たちはこう呼んでいる。
04:11.130 --> 04:15.930
前回は手短に済ませたが、 今回はもう少し時間をかけよう。
04:15.930 --> 04:24.330
OpenAIのチャットを呼び出します。 これは、 チャットの完了のための主要なAPIで、 私たちがほとんど常に使うものです。
04:24.330 --> 04:33.720
APIは標準APIで、 あなたのタスクはこの会話を続けることです。
04:33.720 --> 04:42.690
そして、 completion APIで何かを作成し、 先ほどと同じようにモデルを受け取り、 そのモデルをメッセージで送ります。
04:42.690 --> 04:43.410
それは変数だった。
04:43.410 --> 04:46.350
GPTのミニ4枚を最初にセットした。
04:46.410 --> 04:47.820
メッセージ
04:47.820 --> 04:51.120
もうお分かりいただけただろうか。
04:51.120 --> 04:56.370
メッセージに使うフォーマットは辞書のリストだ。
04:56.400 --> 05:08.670
これは辞書のリストであり、 各辞書は、 システムまたはユーザー、 関連するシステム・メッセージまたはユーザー・メッセージのキー・コンテンツを持つキー・ロールを持つ。
05:08.670 --> 05:09.270
だから
05:09.270 --> 05:11.600
システムシステムメッセージユーザー。
05:11.630 --> 05:15.890
メッセージリストに表示されるユーザーメッセージ。
05:15.890 --> 05:17.360
簡単なことだ。
05:17.360 --> 05:20.300
これがあなたにとって完全につながることを願っている。
05:20.330 --> 05:28.010
細かいことだが、 1つだけ特別なことがある。
05:28.100 --> 05:34.970
だから、 OpenAIに、 レスポンスにJSONオブジェクトを返すように指示することができる。
05:34.970 --> 05:39.500
そのためには、 JSONオブジェクトを渡す。
05:39.500 --> 05:45.800
クロードはJSONオブジェクトを要求するようなことはしない。
05:45.890 --> 05:46.940
OpenAIはそうだ。
05:46.940 --> 05:56.570
しかし、 OpenAIのドキュメントには、 これを使う場合でも、 JSONレスポンスが必要であることをプロンプトに記載することが重要であると記載されています。
05:56.570 --> 06:00.950
これは、 プロンプトにそのことを明記している場合にのみ機能する。
06:01.700 --> 06:03.620
だからそうするんだ。
06:03.650 --> 06:06.440
戻ってきたものは、 この変数コンプリートに入る。
06:06.440 --> 06:12.770
実は、 前回と一貫性を保つために、 前回そう呼んでいたので、 レスポンスに変更しようと思う。
06:14.540 --> 06:15.410
これでよし。
06:15.590 --> 06:24.080
そして、 最終的な返答を得るために、 ドット選択肢ゼロを選ぶ。
06:24.080 --> 06:25.490
それで、 これは何なんだ?
06:25.490 --> 06:36.890
まあ、 実際にAPIリクエストで複数のバリエーションをリクエストすることは可能だ。
06:36.890 --> 06:37.970
私たちはそれをやっていない。
06:37.970 --> 06:39.680
だから1本しか返せない。
06:39.740 --> 06:43.250
そして、 そのバリエーションが選択肢という形で戻ってくる。
06:43.250 --> 06:44.840
でも、 1人しかいない。
06:44.840 --> 06:50.000
つまり、 選択肢ゼロは、 唯一無二の選択肢である。
06:50.000 --> 07:00.050
そのため、 常にレスポンス・ドット・チョイス・ゼロ・ドット・メッセージ・ドット・コンテンツが表示されるわけだが、 これは単に、 実際にテキストメッセージが返されるところまでドリルダウンしているだけである。
07:00.050 --> 07:06.680
APIを呼び出すのは何度も何度も同じだからだ。
07:06.710 --> 07:12.410
OpenAIのドットチャット、 ドットコンプリート、 ドットクリエイト、 そして返ってくるのはレスポンスのドットチョイス、
07:12.410 --> 07:16.840
ゼロメッセージのコンテンツだ。
07:17.380 --> 07:21.370
寝ている間に暗唱するようになるだろう。
07:21.700 --> 07:31.150
そして、 戻ってきたものにはJsonを使う。 文字列をロードして、 それをJSONとして戻す。
07:31.180 --> 07:32.710
それを実行しよう。
07:32.980 --> 07:33.910
オーケー。
07:33.910 --> 07:35.290
だから、 思い切ってやるんだ。
07:35.290 --> 07:40.210
その関数を呼び出して、 ウェブサイト "anthropic comm "を渡す。
07:40.210 --> 07:41.770
では、 何を期待しているのか。
07:41.800 --> 07:50.950
そのページ上のすべてのリンクを収集し、 GPTフォーミニを呼び出して、 この中から関連性があると思われるリンクをいくつか選んで回答してください、
07:50.950 --> 07:57.460
と言うことを期待しています。
07:57.460 --> 07:58.990
では、 何が出てくるか見てみよう。
07:59.020 --> 07:59.890
さあ、 始めよう。
08:01.210 --> 08:02.860
今、 OpenAIに行っている。
08:02.890 --> 08:06.550
まず、 人類学のページを集めなければならなかった。
08:06.550 --> 08:09.910
そして、 これがアバウトページのタイプだ。
08:09.910 --> 08:17.980
そして、 会社概要ページ、 採用情報ページ、 チームページ、 リサーチ・エンタープライズ価格、 API、 ニュースへのリンクがある。
08:17.980 --> 08:18.760
どうだ?
08:18.760 --> 08:26.380
これはすべて、 パンフレットに掲載したい素晴らしい情報であり、 掲載されていないリンクが山ほどあることは間違いない。
08:26.380 --> 08:28.270
そう自分を納得させよう。
08:28.270 --> 08:37.330
人間工学はウェブサイトであり、 これを渡すだけだ。
08:39.700 --> 08:47.500
そして、 "anthropic dot links "をクリックすると、 そのページにあったすべてのリンクが表示されます。
08:47.500 --> 08:48.310
みんなそうだ。
08:48.340 --> 08:52.360
支援された国とか、 他にもたくさんある。
08:52.360 --> 08:58.690
また、 ホスト名を含む完全なURLになっていないものが多いこともわかるだろう。
08:58.690 --> 09:09.490
そして、 GPT4ミニへの問い合わせは、 これらのサブセットを非常にうまく選択し、 完全に修飾して、 それらが何であるかを説明していることがわかるだろう。
09:10.060 --> 09:11.470
素晴らしい結果だと思う。
09:11.470 --> 09:17.380
これは、 会社案内を作るために必要な2つのステップのうち、 第1ステップに過ぎない。
09:17.380 --> 09:19.900
ステップ2については、 また次のビデオで。