採用はこちら!

Shinonome Tech Blog

株式会社Shinonomeの技術ブログ
3 min read

【ChatGPT】ワイの妹がChatGPTなわけあらへん(6)【勉強日記】

【ChatGPT】ワイの妹がChatGPTなわけあらへん(6)【勉強日記】第6話「プロンプトエンジニアリングのコツって?~COT/一貫性編~」

自己紹介

  • 名前:yuuki
  • 役職:ChatGPT調査担当

やりたいこと

  • 学生や社員がChatGPTに対して興味を持ってもらったり触るハードルを下げる
  • プロンプトエンジニアリングについて少し詳しくなれる
  • ChatGPTに入れる内容を考えるときの背景知識が得られる

やること

  • 対話形式でキャラクターが話しながらChatGPTについて学んでいく物語をブログにする

登場人物

このブログは以下の登場人物がChatGPTについて学んでいくお話です。

  • 兄者:怪しい関西弁
  • 妹:今回は相づちしまくりじゃない?

前回

【ChatGPT】ワイの妹がChatGPTなわけあらへん(5)【勉強日記】
【ChatGPT】ワイの妹がChatGPTなわけあらへん(5)【勉強日記】第5話「プロンプトエンジニアリングのコツって?~ゼロショット学習/フューショット学習編~」

第6話「プロンプトエンジニアリングのコツって?~COT/一貫性編~」

【兄者】 そしたら、他にもおもしろいテクニックがあるでぇ。聞いてくれや。

【妹】 あ、お兄ちゃん。教えて、教えて!

【兄者】 次は、「COT(コンテキスト・オープン・テキスト)」ってやつだ。

【妹】 COT?何それ?

【兄者】 コンテキストを含むオープンなテキスト生成の手法やで。つまり、与えられたコンテキストに基づいて、自然なテキストを生成することができるんや。

【妹】 うーん、よく分からないなぁ。

【兄者】 例えば、「私は今、カフェでコーヒーを飲んでいる」というコンテキストを与えたら、その後に続く自然な文章を生成するんやで。例えば、「窓の外は雨が降っており、屋内は静かで落ち着いています」とか、そんな感じや。

【妹】 なるほど!でも、それってどういうときに使うの?

【兄者】 これは、文章生成や翻訳などの分野でよく使われる手法なんやで。コンテキストを利用することで、より自然な文章を生成することができるんや。

【妹】 おお、すごいね。他にも、どんなテクニックがあるの?

【兄者】 次は、「一貫性」やで。これも面白いぞ。

【妹】 一貫性ってなんだろう?

【兄者】 前提となる文脈や情報に矛盾しないことを指すんや。プロンプトエンジニアリングでは、生成されたテキストが一貫性を持つことが大切なんや。

【妹】 そうなんだ。一貫性がないと、何か問題があるの?

【兄者】 そうやな。例えば、「あなたが住んでいる場所について説明してください」というプロンプトがあったとするで。生成されたテキストが矛盾してしまう内容だと、読む人にとってわかりづらくなってしまうやろう。

【妹】 あー、なるほど。一貫性って大事なんだね。

【兄者】 そうやで。一貫性を保つためには、生成されたテキストを検証したり修正する技術や手法が必要になるんや。

【妹】 なるほど、他にもおもしろいテクニックがあるの?

【兄者】 おお、聞いてくれや。「知識の利用」ってやつや。

【妹】 知識の利用って、何のこと?

【兄者】 エンティティの属性や関連する事実、あるいは特定のドメインにおける知識などを利用する手法やで。生成されたテキストの品質を向上させるために利用されるんや。

【妹】 具体的にどういうこと?

【兄者】 例えば、「あなたが住んでいる場所について説明してください」というプロンプトがあったとするで。その場合それまでの会話に出た知識を利用することで、生成されるテキストにエンティティや関連する事実を含めることができるんや。

【妹】 それで、より自然な文章が生成されるってこと?

【兄者】 そうやで。知識を利用させることで、生成されたテキストがより詳細になり、自然な文章を生成することができるんや。

【妹】 なるほど。いろいろ勉強になったわ。ありがとう、お兄ちゃん。

【兄者】 いやいや、どういたしましてやで。ただまだまだあるから、もう少し聞いていきや。

あとがき

今回はCOT・一貫性・知識の利用方法についての回でした。
筆者的には、どんな入力を作れば良いかというより、どちらかというとコンテキスト(文脈)について、ChatGPTはどうやって理解しているのか、という感じで認識しています。
次回ももう少しテクニック的な分野が続きますが、お付き合いください…!

まとめ

  • 良いプロンプトを送るには、COT・一貫性・知識を利用させることについて理解しておくと良い
  • COTは既にオープンになっている文脈によって次の会話を生成する手法で、コンテキストを与えることで自然な文章を生成させることができる
  • 一貫性を利用することで、それまでの文脈や情報に矛盾しないことを生成させることができる
  • 特定のドメインにおける知識を与えることで、生成されるテキストをより自然により詳細にすることができる