たのしい工学

プログラミングを学んで、モノをつくりたいひと、効率的に仕事をしたい人のための硬派なブログになりました

[LLM, ChatGPT] プロンプトエンジニアリングの勘所

   

ChatGPTをはじめとした大規模言語モデル(Large Language Model=LLM)に対して、日本語などの自然言語で指示をあたえて欲しい出力を得ますが、どうしたら精度の高い出力が得られるかをまとめてみした。

ChatGPT icon by Icons8

「しないこと」ではなく「すること」を指示する

プロンプトを設計する際の一般的なヒントは、「しないこと」を言わず、「すること」を言うことです。これにより、より具体的になり、モデルから良い回答を得るための詳細に焦点が当てられます。

Chain-of-Thought(=COT)Prompting

とある規則に従い推論をさせる場合、まず具体例をひとつ示します。次に、推論させたい問題を記述することで、具体例から方法を推論して正当を導く手法です。

COT Promptingの例

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

Zero-shot COT Prompting

Zero-shotでCOT Promptingを可能にする方法があります。「段階的に考えてください。」という文言を追加します。この手法は、例示できる内容が少ない場合に有効です。

Zero-shot COT Promptingの例

私は市場に行って10個のリンゴを買いました。隣人に2つ、修理工に2つ渡しました。それから5つのリンゴを買って1つ食べました。残りは何個ですか?段階的に考えてください。

随時加筆中...

参考文献
https://www.promptingguide.ai/jp

 - AI