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.
 
 

352 lines
13 KiB

WEBVTT
00:00.080 --> 00:07.280
ストリーミングと呼ばれるものを追加することで、 この結果をもう少し満足のいくものにすることができます。
00:07.370 --> 00:27.980
ストリーミングとは、 LLMから情報が戻ってきて、 タイプライタースタイルのインターフェースと呼ばれるものに表示されることです。
00:28.430 --> 00:31.670
その方法は極めてシンプルだ。
00:31.760 --> 00:42.350
OpenAIのチャットコンプリートの呼び出しを作成するときに、 一度にすべてを受け取るだけでなく、 フローバックさせたい場合は、
00:42.380 --> 00:50.480
別のパラメータストリームをtrueに等しく渡すだけです。
00:50.510 --> 00:59.510
クロードを使ってみるとわかるが、 GPTとクロードではAPIが少し違うのだ。
00:59.510 --> 01:02.200
しかし、 それはGPTストリーム・イコール・トゥルーでのやり方だ。
01:02.230 --> 01:03.460
さて、 それは何を意味するのか?
01:03.460 --> 01:10.420
つまり、 ストリームに戻ってくるのは、 単一のテキスト・レスポンスではなく、
01:10.420 --> 01:22.510
反復処理できるようなもので、 反復処理すると、 レスポンスの各チャンクが戻ってくる。
01:22.540 --> 01:28.750
さて、 今回のケースでは、 マークダウンで表示しているので、 もう少しスマートにしたい。
01:28.960 --> 01:37.090
というのも、 マークダウンは、 マークダウンの文字がストリーミングされ始めるかもしれないし、
01:37.090 --> 01:43.990
マークダウンの文字が表示されるかもしれない。
01:43.990 --> 01:53.230
各チャンクの完全なマークダウン・バージョンを書き換えることで、 そのチャンクに目を通すことができるようになる。
01:53.230 --> 02:01.980
しかし、 基本的には、 私はすべての応答、 つまり戻ってきたすべてのチャンクの累積記録のようなものを管理している。
02:01.980 --> 02:09.120
そうして戻ってきたチャンクに対して、 私は基本的に、 そのチャンクを返答に含める。
02:09.120 --> 02:14.070
ええと、 マークダウンという単語が実際にそこにある場合は、 それを取り除いて対応します。
02:14.070 --> 02:18.090
そして最後に、 フルディスプレイを更新して表示する。
02:18.090 --> 02:20.850
だから、 これはちょっと複雑なんだ。
02:20.850 --> 02:24.270
単にテキストを書くだけなら、 これは必要ないだろう。
02:24.270 --> 02:30.990
ええと、 この方法が必要な唯一の理由は、 素敵で派手なマークダウンの方法で表示したいからです。
02:30.990 --> 02:32.880
どういう意味か、 お見せしよう。
02:32.880 --> 02:38.880
もし、 これを人類について繰り返したら、 最初にリンクを見つけてすべてのページを取得する間、
02:38.880 --> 02:42.780
少し待たなければならない。
02:42.810 --> 02:43.560
あれを見ろ。
02:43.560 --> 02:50.760
おなじみのストリーミング・インターフェースが完成した。
02:50.760 --> 02:55.320
マークダウンなので、 ここにリンクのようなものも表示されるのがいいですね。
02:55.320 --> 02:57.680
そして、 私が何を言っていたのかをお見せしよう。
02:57.680 --> 03:03.590
マークダウンで表示させたくない場合は、 もっと簡単な方法として、 ストリーム内のチャンクに対して、
03:03.590 --> 03:10.550
えーと、 えーと、 と表示させることもできる。
03:12.560 --> 03:15.260
ええと、 プリントチャンク。
03:15.260 --> 03:20.060
そして、 end equalsのように、 毎回改行されないようにする必要がある。
03:20.060 --> 03:22.640
そして、 これがうまくいくかどうか、 今見ているところだと思う。
03:23.090 --> 03:30.890
この場合、 一連の小さなテキストとして印刷されるので、 マークダウンの書式は適用されません。
03:31.280 --> 03:33.560
ああ、 それはうまくいかないよ。
03:34.040 --> 03:34.940
あ、 すみません。
03:34.940 --> 03:37.850
もちろん、 これはチャンクであるべきだ。
03:38.810 --> 03:41.720
そうやって全部入れた方がいいかもしれない。
03:41.720 --> 03:43.940
そうでなければ、 流れてくるオブジェクトを取り戻すことになる。
03:43.970 --> 03:47.510
おそらく、 私がそうしているのを見て、 バカ野郎、 これでどうだ、 と思ったことだろう。
03:47.600 --> 03:49.340
これはリアルタイムで表示される。
03:49.550 --> 03:51.560
よし、 もう一度やってみよう。
03:51.590 --> 03:53.180
今よりいい結果が出るかどうか見てみよう。
03:53.990 --> 03:58.990
だから、 ここに単純にprint文を入れるとする。
03:58.990 --> 03:59.770
こんな感じだ。
03:59.770 --> 04:01.090
そして、 また戻ってくる。
04:01.090 --> 04:01.930
どうぞ
04:01.960 --> 04:03.700
戻ってくるのがわかるだろう。
04:03.700 --> 04:05.080
超シンプルだ。
04:05.080 --> 04:07.450
ただ、 きれいなフォーマットにはならない。
04:07.450 --> 04:10.510
しかし、 この方法でやれば、 コードは明らかにシンプルになる。
04:10.510 --> 04:13.570
これが、 結果をストリームバックするために必要なすべてのコードである。
04:13.570 --> 04:18.250
つまり、 streamをtrueにセットし、 それを繰り返しながら戻るのだ。
04:19.180 --> 04:29.170
ところで、 コマンドと除算記号、 ウィンドウズではウィンドウズ・キーと除算記号で、 このようなコードのブロックをコメントアウトしたり、
04:29.170 --> 04:39.010
コメントアウトを解除したりするものです。
04:39.010 --> 04:47.530
このショートカットを使って、 もう一度、 素晴らしいフォーマットでアントロピックを見てみよう。
04:47.800 --> 04:49.180
リンクを見つける。
04:49.180 --> 04:50.800
そして、 またこれだ。
04:50.800 --> 04:55.350
そしてもちろん、 毎回驚くほど違うパンフレットになる。
04:55.590 --> 04:58.860
ええと、 それで......今度はあれだ。
04:58.860 --> 05:00.600
そして今度は別の会社を試してみよう。
05:00.600 --> 05:07.530
AIエンジニアのためのユビキタスなオープンソースプラットフォームとハグしてみよう。
05:07.560 --> 05:09.090
どうなるか見てみよう。
05:09.120 --> 05:10.800
リンクがいくつかある。
05:10.800 --> 05:16.380
そして、 キャリアのチャンスが書かれた抱きつき顔のパンフレットがやってきた。
05:16.380 --> 05:17.010
特典。
05:17.040 --> 05:18.060
ご連絡ください。
05:18.060 --> 05:18.780
そして
05:18.810 --> 05:21.300
そして一緒にAIの未来を築きましょう。
05:21.330 --> 05:22.530
とても素晴らしい。
05:22.560 --> 05:25.740
よし、 これを楽しくするためにもうひとつやろう。
05:25.740 --> 05:31.050
システム・プロンプトを作成したところまで戻ってみよう。
05:31.050 --> 05:32.910
あれはどこだった?
05:32.940 --> 05:34.710
ここにずっと戻ってきた。
05:34.710 --> 05:36.210
システムプロンプト。
05:36.210 --> 05:41.220
つまり、 システム・プロンプトの特徴のひとつは、 やるべきタスクを記述するだけでなく、
05:41.220 --> 05:50.760
LLMがこのコンテンツを作成する際に採用すべきトーンや性格についても語る場所であるということだ。
05:50.760 --> 05:57.690
では、 ここでコメントとバリエーションを解除してみよう。
05:57.690 --> 05:59.730
そして、 このバリエーションはまさにそれを含んでいる。
05:59.730 --> 06:05.610
短い、 ユーモラスな、 楽しい、 冗談のようなパンフレットであるべきで、 私たちはそのコードを実行する。
06:05.820 --> 06:12.600
ええと、 ここでは非常にいたずらっぽく使うので、 システム・プロンプトはグローバル変数のようなもので、 別の場所で参照する。
06:12.600 --> 06:21.600
ハードコードされているので、 再実行する必要はない。
06:21.630 --> 06:29.760
そして、 私の思い違いでなければ、 これから陽気な、 冗談のような、 ははは、 さあどうぞ、 という話になると信じている。
06:29.790 --> 06:33.900
セーフティネットがある人類学へようこそ。
06:34.380 --> 06:39.240
anthropicでは、 あなたが実際に信頼できるAIシステムを構築し、 朝のコーヒーよりも信頼性が高く、
06:39.240 --> 06:43.920
猫の気分転換よりも理解しやすいことを保証しています。
06:44.670 --> 06:50.100
陽光降り注ぐサンフランシスコを拠点に、 私たちはAIを敵ではなく味方にする使命を担っている。
06:50.130 --> 07:03.740
つまり、 システムプロンプトにちょっとした変更を加えるだけで、 会社案内にこれほど素晴らしい別のレンズが使えるというのは驚異的なことなんだ。
07:03.860 --> 07:07.220
本当に、 本当に驚くべきことだと思う。
07:07.430 --> 07:12.860
あなたがそれを見たときに混乱しないように、 コメントを外します。
07:13.010 --> 07:20.990
しかし、 これはもちろん、 私が最初に申し上げたいこと、 つまり、 プロンプトを使用して生成されるものの性格に影響を与えるということがどういうことなのかを深く理解するチャンスであるということを、
07:20.990 --> 07:30.560
この実験を通して実感していただきたいのです。
07:30.560 --> 07:32.840
だから、 もう一歩踏み込むことができる。
07:32.840 --> 07:36.740
皮肉たっぷりのパンフレットを作ろう。
07:36.740 --> 07:38.810
スペイン語のパンフレットを作る。
07:38.930 --> 07:43.790
ええと、 別の言語に翻訳されるようなものを追加してください。
07:43.790 --> 07:46.010
いろいろ試してみて
07:46.160 --> 07:54.910
これは、 プロンプトをどのように使って、 どのような結果を得るかに影響を与えるかを学ぶ上で、 とても重要なことなんだ。
07:55.930 --> 08:01.180
さて、 エクササイズの話をしすぎる前に、 この話をまとめよう。
08:01.180 --> 08:09.010
そこで今日やったことは、 初日にやったことを拡張して、 ウェブサイトを要約するためにLMに1回電話するだけでなく、
08:09.010 --> 08:21.700
関連するリンクを集めるためにLMに1回電話し、 そのすべてのデータをスクレイピングして強固な会社案内を作るために1回電話した。
08:22.000 --> 08:31.600
大きな問題を小さなステップに分割しているんだ。
08:31.600 --> 08:38.410
しかし、 私が皆さんに印象づけたかったのは、 このような情報の統合とその結果としての生成は、
08:38.410 --> 08:43.420
さまざまな種類のビジネス問題に非常に応用できるということだ。
08:43.480 --> 08:49.810
商品を生み出すためのマーケティング・コンテンツを書くために、 このようなことができると想像できるだろう。
08:49.930 --> 08:57.240
パーソナライズされたEメールコンテンツを作成するための、 製品仕様からのガイドのようなチュートリアルです。
08:57.300 --> 08:59.670
たくさんのメールに目を通すことによってね。
08:59.670 --> 09:09.930
このように、 あるデータを合成してJSONにまとめ、 それを何らかのアウトプットを構築する方法として使うという2つのステップを想像する方法はたくさんある。
09:09.960 --> 09:12.120
さまざまな応用が可能だ。
09:12.120 --> 09:17.730
だから、 ぜひやってほしいのは、 これを日々の仕事に応用する方法を考えることだ。
09:17.730 --> 09:19.920
そして、 この商業的なアングルも興味深い。
09:19.950 --> 09:25.860
ええと、 自分の専門分野、 自分が最も得意とする領域について考えることができるようなもの。
09:25.860 --> 09:31.500
そして今、 この新しいもの、 あなたが持っているこのスキルを、 どのように有効活用できるか?
09:31.500 --> 09:33.390
だから、 それについて考えてみてほしい。
09:33.390 --> 09:40.380
いつでも遠慮なく私にアイデアをぶつけてほしいし、 その例をいくつか作ってGitHubに置いてみてほしい。
09:40.380 --> 09:48.600
llmsへの複数のコールを使って情報を合成し、 コンテンツを生成している素晴らしい例がいくつかあるわけだ。
09:48.630 --> 09:50.400
また次のビデオで会おう。