Toilを無くして徒然なるままに日暮し硯に向かひたい

生成AIアプリケーション開発などを行うエンジニアのブログです。

プロンプトエンジニアリングハンズオン

genai-users.connpass.com

↑上記勉強会の資料です。

shu-kob.hateblo.jp

↑こちらの記事の「プロンプトエンジニアリング」もご覧ください。(上記記事はChatGPT)

先ずは復習してみましょう

Geminiにアクセス

gemini.google.com

お好みで、ChatGPTやClaudeを使用しても構いません。

プロンプトエンジニアリング

JSON形式で出力

カレーのレシピを教えてください。
出力は以下のJSON形式にしてください。
===============
{
  "材料": ["材料1", "材料2"],
  "手順": ["手順1", "手順2"]
}
===============
{
  "材料": [
    "玉ねぎ 1個",
    "にんじん 1本",
    "じゃがいも 2個",
    "牛肉 300g",
    "カレールー 2箱",
    "サラダ油 大さじ2",
    "水 800ml",
    "塩 少々",
    "こしょう 少々"
  ],
  "手順": [
    "玉ねぎ、にんじん、じゃがいもは食べやすい大きさに切る。",
    "鍋にサラダ油を熱し、牛肉を炒め、色が変わったら玉ねぎを加えて炒める。",
    "にんじん、じゃがいもを加えてさらに炒める。",
    "水を加え、アクを取りながら煮込む。",
    "野菜が柔らかくなったらカレールーを加えて溶かす。",
    "塩こしょうで味を調え、5分ほど煮込む。"
  ]
}

出力結果をJSON Formatterで確認

JSON Formatter & Validator

Zero-shotプロンプティング

Zero-Shotプロンプティングとは、大規模言語モデル(LLM)に対して、事前に具体的な例を示すことなく、一度の指示でタスクを実行させるプロンプトエンジニアリング手法です。

以下はニュース記事のタイトルです。「政治」「経済」「芸能」「スポーツ」「科学」「その他」のうち1つに分類してください。
回答だけ一言で出力してください
===========================
紅白出場歌手の選考基準 NHK公開
芸能

Few-shotプロンプティング

Few-Shotプロンプティングは、大規模言語モデル(LLM)に対して、タスクを実行するための具体的な例をいくつか示すことで、モデルの性能を向上させるプロンプトエンジニアリングの手法です。

Zero-Shotプロンプティングとの違い Zero-Shotプロンプティングが、一切の例を示さずにタスクを実行させるのに対し、Few-Shotプロンプティングでは、少数の例を提示することで、モデルがより効率的にタスクを学習できるようにします。

以下はニュース記事のタイトルです。「政治」「経済」「芸能」「スポーツ」「科学」「その他」のうち1つに分類してください。
回答だけ一言で出力してください
===========================
「紅白出場歌手の選考基準 NHK公開」
===========================
以下は例です
「G20 バイデン氏不在で集合写真」:政治
「岡田将生&高畑充希結婚 SNS反応」:芸能
芸能

Zero-shot Chain-of-Thoughtプロンプティング

Zero-shot Chain-of-Thought(CoT)プロンプティングは、大規模言語モデル(LLM)に対して、具体的な例を示すことなく、段階的な推論プロセスを踏ませるように指示するプロンプトエンジニアリングの手法です。

回答だけ一言で出力してください。
10 + 2 * 3 - 4 * 2
8
ステップバイステップで考えてください。
10 + 2 * 3 - 4 * 2
## ステップバイステップで解いてみましょう!

**与えられた式:** 10 + 2 * 3 - 4 * 2

**解き方:**

数学では、**掛け算と割り算**は、**足し算と引き算**よりも先に計算します。これを**優先順位**と言います。

1.  **掛け算を計算する:**
    * 2 * 3 = 6
    * 4 * 2 = 8

    式は、10 + 6 - 8 に変わります。

2.  **残りの計算を行う:**
    * 10 + 6 = 16
    * 16 - 8 = 8

**答え:** 8

**まとめ:**

与えられた式をステップバイステップで解くと、答えは**8**になります。

**ポイント:**
* **優先順位:** 掛け算と割り算は、足し算と引き算よりも先に計算します。
* **計算順序:** 左から右へ計算していきます。

**補足:**

もし、計算の順番を変えたい場合は、**かっこ**を使います。例えば、(10 + 2) * 3 - 4 * 2 のようにかっこでくくると、最初に10と2を足してから3をかけることになります。

**この説明で理解できましたか?** もし、まだ疑問な点があれば、遠慮なく質問してくださいね。

Few-shot Chain-of-Thoughtプロンプティング

Few-shot CoTプロンプティングは、大規模言語モデル(LLM)に、いくつかの例を示しながら、段階的な推論プロセスを踏ませることで、より複雑な問題を解かせる手法です。

このグループの奇数を合計すると偶数になります。: 4、8、9、15、12、2、1。
A: 奇数を全て加えると(9, 15, 1)25になります。答えはFalseです。
このグループの奇数を合計すると偶数になります。: 17、10、19、4、8、12、24。
A: 奇数を全て加えると(17, 19)36になります。答えはTrueです。
このグループの奇数を合計すると偶数になります。: 16、11、14、4、8、13、24。
A: 奇数を全て加えると(11, 13)24になります。答えはTrueです。
このグループの奇数を合計すると偶数になります。: 17、9、10、12、13、4、2。
A: 奇数を全て加えると(17, 9, 13)39になります。答えはFalseです。
このグループの奇数を合計すると偶数になります。: 15、32、5、13、82、7、1。
A:

参考文献

LangChainとLangGraphによるRAG・AIエージェント[実践]入門

10倍速で成果が出る!ChatGPTスゴ技大全