ChatGPTは文字数指定を守らない?文字数指定のプロンプトを紹介!

河津大誠

1000字以内で要約して

このようにChatGPTに文字数を指定した上で、何かしらの作業を行わせたことはありますか?

このような場合にChatGPTはうまく動作しないことが多々あります。指定した文字数を超えてしまったり、逆に少な過ぎたりなどです。つまり、ChatGPTは文字数カウントの精度がイマイチなのです。

この記事ではそのようなChatGPTへの文字数指定の際に、精度を向上させられるような方法やプロンプトをいくつか紹介します。

ChatGPTはこちらから利用できます。(リンク)

ChatGPTについてはこちらで詳しく紹介しています。

生成AIハッカソンの詳細情報

第1章 通常の文字数指定の方法

文章要約における文字数指定

要約の際は通常以下のようなプロンプトを用います。

PROMPT『要約させたい文章』 『』内の文章を500文字以上600文字以内で要約してください。

今回は実際に、当サイト内のChatGPTに関する記事を要約させてみました。

5000字程度の文章を文字数指定した上でchatGPTに要約させる指示

画像出典:ChatGPT

こちらの指示に対するChatGPTからの返答

画像出典:ChatGPT

上記のように要約された文章が返ってきました。こちらの文章をカウントしたところ712文字でした。

やはりこちらが指定した文字数とは乖離がありますね。

PDF要約における文字数指定

また、ChatGPTには入力できる文字数に制限があるため、長い文章を入力する際はPDFやWord形式にして『Ask Your PDF』というChatGPTプラグインに読み込ませた上で以下のように指示すると良いです。

PROMPT(PDFのURL)   アップロードしたPDFファイルの内容を読み込んで、500文字以上600文字以内で要約してください。

ChatGPTにPDFを読み込ませる方法については以下の記事で詳しく紹介していますのであわせてお読みください。

https://aitechworld.info/ai-pdf-recommend/

文章の生成における文字数指定

何らかのお題に関する文章を生成させる際の文字数指定は以下のようなプロンプトで行うことができます。

PROMPT(お題)に関する文章を800字以上1000字以内で生成してください

今回は、『AIの未来』に関する文章を生成してもらいます。

AIの未来に関する文章をChatGPTに文字数指定して記述してもらっている画像Part1

画像出典:ChatGPT

AIの未来に関する文章をChatGPTに文字数指定して記述してもらっている画像Part2

画像出典:ChatGPT

今回の回答は892文字で、文字数制限に合致していました。

このように文字数指定がうまくいくかどうかは場合によりますね。

提案に関する文字数指定

ChatGPTに何かの提案を依頼する際、一つの案だけでなくいくつかの案を同時に出してほしい場合にも文字数指定は可能です。

PROMPT(提案してほしい議題)に関する提案を200字以下で3つ出してください

ChatGPTに200文字以下の提案を3つさせている画像

画像出典:ChatGPT

今回も指定通りに回答してくれました。

上記のように通常の文字数指定の方法ではうまくいく場合とそうでない場合があります。次の章では、ChatGPTの文字数指定の精度を上げる方法を紹介します。

第2章 ChatGPTの文字数指定の精度を上げる方法

文字数指定の精度を上げるために必要なことは、基本的に、『ChatGPTにChatGPT自身が生成した文章の文字数をカウントさせ、こちらの文字数指定とずれがないかを確認すること』です。

具体的な手順としては以下のようになります。

第1章で紹介したプロンプトをもとに文字数指定をした上で指示を出す。

ChatGPTにChatGPT自身が生成した文章の文字数をカウントさせる

指定した文字数とズレがある場合はそれを指摘し修正を促す。

となります。実際の例を以下で紹介します。

①文字数指定をした上で指示を出す。

ここでは日本の歴史について500字以上600時以下という指定つきで要求してみます。

ChatGPTに日本の歴史を文字数指定して記述させている画像

画像出典:ChatGPT

②ChatGPTにChatGPT自身が生成した文章の文字数をカウントさせる

次に文字数をカウントさせます。

ChatGPTにChatGPT自身が生成した文章の文字数をカウントさせている様子

画像出典:ChatGPT

682文字ということで500字以上600時以下という指定に従えていませんね。

③指定した文字数とズレがある場合はそれを指摘し修正を促す。

ズレがあるので、文字数指定に従えていないことを指摘し、再度指示を出します。

ChatGPTに文字数指定を超えてしまっていることを認識させ、修正を要求している

画像出典:ChatGPT

こうして生成された文章は594文字となりました!

手間ですが、このように確認を取ることで、指定通りの文章を出力させることが可能となります。

ではなぜ、このように文字数指定に従えないという事態が起こるのでしょうか?原因と考えられるものを次の章で紹介します。

第3章 なぜ文字数指定とズレが生じるのか?

ChatGPTは前述のように文字数指定とズレが生じることが多々あります。

この原因として考えられる最も大きな理由は『ChatGPTが日本語を文字単位ではなくトークン単位で捉えているから』です。

ChatGPTは私たちが普段使う言語をそのまま認識しているのではなく、トークンという別の単位に置き換えて認識しています。

このトークンは日本語1文字に1トークンという単純な対応関係ではなく、ひらがな1文字=1-2トークン 漢字1文字=1-3トークンというように文字の種類によって異なってくるのです。

よって文字数が同じ500文字であっても、700トークンの場合もあれば、1000トークンの場合もあるというふうに、文章内容によってトークン数が大きく異なってしまうためChatGPTはうまく文字数を捉えられないのだと考えられます。

トークンについてはこちらの記事で詳しく紹介しています。

第4章 まとめ

今回はChatGPTの文字数指定について、一般的な方法から、精度を上げる方法、文字数指定に従わない場合がある理由などを紹介しました。

上記の通り、ChatGPTは文字数をトークン数で捉えているため、文字数指定とのずれが多いので、絶対に指示通りの文字数でなければいけない場合などは別のツールによって、文字数のカウントが正しいかを検証することをお勧めします。

執筆者:河津大誠

「AITech」では‘内部から生成AIを使ってDXを進める人材を育てる研修サービス’事業を行なっております。

サービス詳細資料はこちらからダウンロードください。

     

    この記事は役に立ちましたか?

    もし参考になりましたら、下記のボタンで教えてください。

    関連記事

    コメント

    この記事へのコメントはありません。