3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【ChatGPT無】Chain-of-Verificationとは。そして、自分のPromptに組み込んで育成。

Last updated at Posted at 2023-09-25

 どうも、カーブミラーです。

 今回は、Meta AIの研究グループが報告したハルシネーションを減らす手法『CoVe(Chain-of-Verification)』のご紹介と、それをPromptに組み込んで、自分なりのPromptに育成したものを提出します。最後に、自分なりの感想を書きます。

本記事は、ChatGPT(無料版)で
行なっております。GPT4での確認
はできておりません。あしからず。

 今回の報告
  (X-Twitterにツイート)が、
   こちらです。
LLMのハルシネーション(事実とは異なる情報の出力)を減らす新たな手法

 ごめんなさい。
  上記は、リンクが切れている
   みたいです。2024/01/24確認。
    下記を参照してください。
LLMのハルシネーション(事実とは異なる情報の出力)を減らす新たな手法『CoVe(Chain-of-Verification)』が発表されました。

 詳しい内容は、
  上記記事を参照してください。

 とりあえず、
  GoogleSGEに
   聞きました。

チェーン・オブ・ベリフィケーション(CoVe)とは、モデルが初期応答を起草し、その後検証を計画する手法である。CoVeは、エラーなどの生成AIの問題に対処することを目的としたプロンプト・エンジニアリングの手法である。

 また、
  YouTuberかわごんさんが
   実演した動画も
    アップされました。
【ChatGPT】ハルシネーション(事実とは異なる情報の出力)を減らす新たな手法:『CoVe(Chain-of-Verification)』

 Promptとしては
  以下の処理手順のとおりです。

CoVe組み込みPrompt
# 質問
「✘✘✘」について教えてください。

# 処理手順
1. まずは上記の問いに対して、回答の初稿を作成してください。
2. 回答を細かく分解して複数の小さな問い(検証質問)を生成してください。
3. それぞれの小さな問いに対して細かく回答してください。

 やり取りは割愛します。

 これは、
  問いをまず初稿として
   処理します。

 次に、回答から、
  複数の問いを生成して、
   おのれで回答していく。

 最終的に、
  問いの回答を出す。
   (ここは記載されていない)


 初稿と、
  生成した問いの答えから
   正しい答えを導き出す、
    というのが、
     このPromptの目的
      のようです。


 しかし、
  ChatGPT無料版では、
   生成した問いが、
    初稿を否定する内容で
     あっても、
      初稿が正しい、と
       なってしまいます。

 また、その初稿も、
  Regenerateを繰り返すと、
   二転三転する、という
    信頼できぬ結果に。


 それでも、
  Promptの育成を続けて、
   なんとか、目的物の出力に
    成功しました。

 そのPromptをごらんください。

# 目的
「月スタイルのカレンダーを条件に従って作成して表示してください」

# 条件
・使えるものは、ChatGPTのみ。
・2023年9月。
・祝祭日を問題視しない。
・Pythonは、使用しない。
・ほかのツールやアプリやライブラリは、使用しません。
・出力形式は、テキスト。

# 注意事項
・処理手順は、必ず自己解決せよ。
・処理の終了まで、処理を止めないでください。
・処理の説明は、不要。
・目的を達成することが、重要です。
・処理の終了の条件は、以下のとおり。
 a. 情報が足りない。
 b. 目的が達成された。

# 処理手順
1. 目的を細かく分解して複数の小さな問いを生成してください。→A
2. Aに対して、あなた(ChatGPT)自身で、すべて回答してください。
3. 最終的な検証結果をお願いします。
4. 処理を進めるために、情報が足りない場合は、そのことを表示して、なんの情報が足りないのかを明示して、5を
処理せずに、6へ。
5. 検証結果から得た情報をパラメーターとして表示、目的を処理してください。
6 処理の終了。

 初稿の出力を
  意図的に、外してあります。
   うまく動かないので。

 欲しい出力が、
  次のとおり。


ChatGPT

  1. 2023年9月の月カレンダーを作成するために、各日付の曜日が必要です。
  2. 月カレンダーの見出し(年月)を設定する必要があります。
  3. カレンダーの表示形式(週ごとに日付を配置するなど)を指定する必要があります。
  4. カレンダーの日付部分に数字を配置するために、1日から30日までの連続した数字が必要です。

Aに対する回答

  1. 了解しました。各日付の曜日を含む月カレンダーを作成します。
  2. カレンダーの見出しは「2023年9月」に設定します。
  3. カレンダーの表示形式は、週ごとに日付を配置する形式にします。
  4. 数字の配置に関して、1日から30日までの連続した数字をカレンダーの適切な位置に配置します。

検証結果

月カレンダーを生成しました。以下がその内容です:

2023年9月
日 月 火 水 木 金 土
                1   2
 3   4   5   6   7   8   9
10  11  12  13  14  15  16
17  18  19  20  21  22  23
24  25  26  27  28  29  30

これにて目的を達成しました。処理の終了です。


 目的と条件を
  書き換えれば……
   イケそうで、イケません。

 上記のカレンダー生成も
  Regenerateを何度も
   繰り返して、
    三回四回に一度という
     ありさまです。

 途中の問いを生成して、
  そこで停止してしまうのです。

 また、目的と条件を
「西日本で一番高い山はどこですか?」
「・使えるものは、ChatGPTのみ。」
  として、やってみたところ、
   回答が、二転三転する始末。

 正直に言いまして、
  ハルシネーション云々どころか
   ムダな労力ではないか、と
    思う結果でした。


 YouTuberかわごんさんの
  結論どおりの使い道は、
   ありますので、
    今後の研究に
     期待することにして
      終りたいと思いますw

 今回は、以上。


 追伸。

 本当は、
  下記の出力が
   得たかったです。

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?