17K Views
October 27, 23
スライド概要
Claude のクセ強プロンプト特集 - 郷に入っては郷に従え 2023/10/27 Bedrock LT会
補足 サンプルとして使用していたコードに、一部よろしくない点がありましたので、 以下の通り読み替えてください。ご指摘ありがとうございます! 修正前 (最初の <history> が閉じられていない) 修正後 https://docs.anthropic.com/claude/docs/constructing-a-prompt#mark-different-parts-of-the-prompt 2023/10/27 Bedrock 入門&LT会 2
SUEMITSU Kazuki a.k.a はしもと (仮名) s3kzk KDDIアジャイル開発センター 2023/10/27 Bedrock 入門&LT会 3
KAG と 生成系AI ビジつく! 生成AIの社会実装に向け KDDIグループとして AWS と連携 東京リージョンGA発表に合わせて紹介 内部ではあの 2023/10/27 Bedrock 入門&LT会 Claude 2 を使用! 4
本日伝えたいこと 2023/10/27 Bedrock 入門&LT会 5
郷に入っては郷に従え 2023/10/27 Bedrock 入門&LT会 6
郷に入っては郷に従え 郷 = Claude 2023/10/27 Bedrock 入門&LT会 7
Claude に本気出してもらうための Claude-Friendly なプロンプト 2023/10/27 Bedrock 入門&LT会 8
Claude Anthropic 社開発の対話AI (創業者は元 OpenAI 社のアモデイ兄妹) 7月公開 最新モデルの “Claude 2” ・最大 100k トークンの入力に対応 ・日本語含む多言語対応 ・LLMの日本語性能ベンチマークで、 GPT-4 に次ぐ 2位 ・まだ東京リージョンにはいない Bedrock で使える! 2023/10/27 Bedrock 入門&LT会 The Rakuda Ranking of Japanese AI https://yuzuai.jp/benchmark 9
管理画面から試せる (Playgrounds-Text) 2023/10/27 Bedrock 入門&LT会 10
管理画面から試せる (Playgrounds-Text) kwsk!!! 2023/10/27 Bedrock 入門&LT会 11
2023/10/27 Bedrock 入門&LT会 12
_人人人_ > 空白 < _人人人人人人人_  ̄Y^Y^ ̄ > “Human:” <  ̄Y^Y^Y^Y^Y ̄ _人人人人人人人_ > XMLタグ <  ̄Y^Y^Y^Y^Y ̄ _人人人人人人人_ > “H:” “A:” <  ̄Y^Y^Y^Y^Y ̄ _人人人人人人人人人_ > “Assistant:” <  ̄Y^Y^Y^Y^Y^Y ̄
知ってるのとなんか違う… 2023/10/27 Bedrock 入門&LT会 14
OpenAI Completions API ならこう書いた (なるべく寄せた) 2023/10/27 Bedrock 入門&LT会 15
OpenAI Completions API ならこう書いた 2023/10/27 🤷 Bedrock 入門&LT会 16
気になる!! 2023/10/27 Bedrock 入門&LT会 17
ということで、 2023/10/27 Bedrock 入門&LT会 18
Welcome to Claude Village! しばし妄想にお付き合いください
村のしきたりを学ぼう! https://docs.anthropic.com/claude/docs 2023/10/27 Bedrock 入門&LT会 20
村のしきたりを学ぼう! 「PROMPT DESIGN」の セクションのみを取り上げます https://docs.anthropic.com/claude/docs 2023/10/27 Bedrock 入門&LT会 21
プロンプトとは? 大規模言語モデルに対して指示や 質問を行うためのテキスト入力 ユーザーがモデルに何かを尋ねたり、 何かを行わせたりする際に用いる 文章や言葉がプロンプト 2023/10/27 Bedrock 入門&LT会 22
なぜプロンプトの書き方が大事? 2023/10/27 Bedrock 入門&LT会 23
なぜプロンプトの書き方が大事? 出力結果に大きく影響 モデルごとにお作法が違う 2023/10/27 Bedrock 入門&LT会 24
なぜプロンプトの書き方が大事? 出力結果に大きく影響 モデルごとにお作法が違う 2023/10/27 Bedrock 入門&LT会 25
参考:モデルごとに異なるプラクティス Llama 2 (Meta) https://gpus.llm-utils.org/llama-2-prompt-template/ 2023/10/27 GPT-3, Codex (OpenAI) https://help.openai.com/en/articles/6654000-bestpractices-for-prompt-engineering-with-openai-api Bedrock 入門&LT会 26
村に戻りましょう しばし妄想にお付き合いください
Claude村のしきたり その1:合言葉は、 2023/10/27 Bedrock 入門&LT会 28
Claude村のしきたり その1:合言葉は、 ∖n∖nHuman: ∖n∖nAssistant: 2023/10/27 Bedrock 入門&LT会 29
なんで!? 2023/10/27 Bedrock 入門&LT会 30
Claude村のしきたり (意訳) Claude は「∖n∖nHuman:」や「∖n∖nAssistant:」ついたデータ使うて、 性能が上がるよう訓練とか調整されとんねん。ええ回答欲しかったらこれ使わなあかんで! ちなみに、「Human:」と「Assistant:」それぞれの前に2行ずつ改行必要やから、 それも忘れんといてな! 2023/10/27 https://docs.anthropic.com/claude/docs/introduction-to-prompt-design#human--assistant-formatting Bedrock 入門&LT会 31
Claude API を呼び出すと… 2023/10/27 【教えに従う場合】 【教えに反する場合】 認められる 教えを叩き込まれる Bedrock 入門&LT会 32
理解した
Claude村のしきたり その2:重要な情報は、 2023/10/27 Bedrock 入門&LT会 35
Claude村のしきたり その2:重要な情報は、 XML タグで囲う 2023/10/27 Bedrock 入門&LT会 36
Claude村のしきたり (意訳) “<tag>アレ</tag>” みたいな XML タグは、プロンプトの大事な部分、ルールや例、 処理せなあかん入力テキスト区切るのにめっちゃ便利やで! Claude は XML のタグで作られる構造に特に注意を払うよう微調整されてるんや。 https://docs.anthropic.com/claude/docs/constructing-a-prompt 2023/10/27 Bedrock 入門&LT会 37
結果を比較したけど今回は変わらず 2023/10/27 【教えに従う場合】 【教えに反する場合】 認められる 認められる Bedrock 入門&LT会 38
理解した
Claude村のしきたり その3:会話の履歴を使うとき 2023/10/27 Bedrock 入門&LT会 41
Claude村のしきたり その3:会話の履歴を使うとき 区切り文字に、 “Human:”, “Assistant:” を使わない 2023/10/27 Bedrock 入門&LT会 42
Claude村のしきたり https://docs.anthropic.com/claude/docs/constructing-a-prompt (意訳) “∖n∖nHuman:” と “∖n∖nAssistant:” は、Claude が話し手を識別するための 特別なトークンとして訓練を受けてるんや。 このトークンを使うて、実際に会話が行われたとクロードに「思わせる」つもりがない場合は、 うまくいかんプロンプトができてまうことがあるで! 2023/10/27 Bedrock 入門&LT会 43
次のように解釈される “Human:” と “Assistant:” を区切りとして対話を認識 指示と背景情報を明確に分離する https://docs.anthropic.com/claude/docs/human-and-assistant-formatting 2023/10/27 Bedrock 入門&LT会 44
間違っても結果は返ってくる (warning付き) (中略) 2023/10/27 【教えに従う場合】 【教えに反する場合】 認められる 認められたが、罪悪感が残る Bedrock 入門&LT会 (LangChain/boto3どちらでも結果は返る) 45
Playground からやると… 2023/10/27 Bedrock 入門&LT会 46
Playground からやると… 無慈悲… 2023/10/27 Bedrock 入門&LT会 47
理解した
まとめ 2023/10/27 Bedrock 入門&LT会 50
まとめ 🙅「前行った GPT 村ではこう言ってた」 「動かない/結果おかしい」の原因は 意外とこうしたところにあり → たくさんコツ書いてる Docs 読むの大事! 2023/10/27 Bedrock 入門&LT会 51
ありがとうございました