単語数と長さの制限
最大の単語数、文数、段落数、文字数を指定します。
「単語数と長さの制限」はCoddyKit上の無料AI Prompt Engineeringレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Prompt Engineering学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Prompt Engineeringコースには全4レッスンが含まれています。
長さの制約が重要な理由
AIモデルは本来、デフォルトの長さで回答を生成します。通常は、完全な回答だと判断した分量になります。しかし、そのデフォルトの長さが必要なものとは限りません。
プロンプトの長さの制約を使うと、回答の長さを正確に指定できます。これにより、ツイート、スライドのキャプション、メールの要約、500語の記事など、出力を用途に合わせられます。
効果的な長さの制約の書き方と、その制約がうまく機能しない場合を理解することは、実践的なプロンプトエンジニアリングのスキルです。
正確な語数:「N語で正確に」
最も精密な長さの制約は、正確な語数を指定することです。「これを正確に100語で書いてください。」
モデルはこの目標を達成しようとしますが、実際には指定された数にぴったり一致することはほとんどありません。実務上、「正確に100語」と指定すると、通常は±10語の範囲の回答になります。
ほとんどの用途では、これで十分です。厳密な要件(語数制限のある提出物など)がある場合は、必ず確認して手作業で削ってください。精度が重要なら、代わりにより狭い範囲を指定します。「98語以上102語以下で」などです。
文単位の制限
文の数による制限は、語数による制限より信頼性が高いことがよくあります。文のほうがモデルにとって自然な単位だからです。
- 「3文以内で」
- 「これを2文で要約してください」
- 「1文で説明を書いてください」
文による制約は、要約、説明、導入文に特に効果的です。1文が非常に長くなる場合は、語数の上限も追加してください。「2文で、各文を25語未満にしてください」などです。
範囲による制約
範囲による制約では、厳密な境界ではなく目標とする範囲をモデルに示します。そのため、より自然な文章が生成されることがよくあります。
- 「500~600語で書いてください」
- 「回答を150~200語に収めてください」
- 「箇条書きを3~5個にしてください」
範囲は融通が利き、正確な数を指定するより流暢な出力になりやすい傾向があります。プラットフォームの文字数制限やフォーム欄など、用途に厳密な上限がある場合は正確な数を使い、編集目的の文章には範囲を使ってください。
プラットフォーム固有の制限:ツイートの例
多くのプラットフォームには厳格な文字数制限があります。Twitter/Xでは280文字が上限です。プラットフォーム固有のコンテンツをプロンプトで依頼する場合は、制限を明示してください。
- 「製品の発売を告知するツイートを、280文字以内で書いてください。」
- 「160文字未満のSMS通知を作成してください。」
- 「1300文字未満のLinkedIn投稿を書いてください。」
投稿する前に、回答の文字数を必ず数えてください。モデルは文字数を語数ほど正確には見積もれません。単純なPythonのlen(response)による確認で、恥ずかしい思いを避けられます。
モデルが長さの制約を無視する場合
モデルが長さの制約を守れないことがあります。よくある失敗のパターンは次のとおりです。
- タスクが複雑で、指定された長さでは完了できないとモデルが判断する
- 長いプロンプトの末尾に制約が置かれているため、制約の重みが下げられる可能性がある
- 語数の制約と内容の制約が矛盾している(例:「50語で10個のトピックを扱う」)
対策は、長さの制約をプロンプトの冒頭に移すこと、ペルソナの一部にすること(「あなたは常に正確に100語で回答するライターです」)、または長さに合わせて内容の範囲を狭めることです。
コードで長さを検証する
長さの制限をプログラムで適用する必要がある場合は、API呼び出しの後に検証ステップを追加してください。
import openai
client = openai.OpenAI(api_key='sk-...')
def generate_tweet_copy(topic, max_retries=3):
for attempt in range(max_retries):
prompt = f'Write a tweet announcing {topic}. Maximum 280 characters. No hashtags. Be direct and engaging.'
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': prompt}]
)
tweet = response.choices[0].message.content.strip()
char_count = len(tweet)
if char_count <= 280:
print(f'OK ({char_count} chars): {tweet}')
return tweet
else:
print(f'Attempt {attempt+1}: too long ({char_count} chars). Retrying...')
prompt = f'That was {char_count} characters. Shorten to under 280 characters: {tweet}'
return None # Failed after retries内容と長さの不一致の問題
長さの制約が失敗する最も一般的な理由は、内容の範囲と長さの予算が一致していないことです。
モデルに「量子コンピューティングについて、その歴史、現在の応用、将来の可能性を50語で説明してください」と依頼した場合、モデルは不可能なタスクに直面します。語数制限を超えるか、内容を圧縮しすぎて役に立たない回答を生成することになります。
対策は、内容の範囲を狭める(「量子コンピューティングを1文で説明してください」)か、範囲に見合うよう長さの予算を増やすことです。広い範囲を扱うことと、非常に短い出力を同時に求めてはいけません。
長さを思考を促すプロンプトとして使う
長さの制約は、内容を限られたスペースに収めるためだけのものではありません。圧縮と優先順位付けを促す思考を促すプロンプトとしても機能します。
「この10ページのレポートの核心的な洞察を1文で説明してください」という課題は、厳密に1文が必要でない場合でも有用です。この制約によって、モデルは最も重要なアイデアを1つに絞ることを求められます。
短い長さの制約は、長く複雑な資料から本質を引き出し、優先順位を付けるための強力な方法です。
最小長の制約
十分な深さが必要な場合は、最小長の制約を設定することもできます。
- 「少なくとも400語で書いてください」
- 「最低5個の箇条書きを提示してください」
- 「少なくとも3つの例を含めてください」
最小長の制約は、複雑なトピックについてモデルが表面的な回答を返しがちな場合に役立ちます。最小値と最大値を組み合わせると、範囲を作れます。「400~500語で書いてください」などです。これにより、内容不足と不要な水増しの両方を防げます。
システムプロンプトでの長さの制約
すべての回答を一定の長さに合わせる必要があるアプリケーションでは、毎回のユーザー入力で繰り返すのではなく、システムプロンプトに制約を設定してください。
「あなたは簡潔なアシスタントです。すべての回答は3文以内にしてください。より長い回答が必要な依頼を受けた場合は、3文の要約を作成し、詳しい説明もできることを伝えてください。」
システムレベルの長さの制約は、メッセージごとの制約より信頼性が高くなります。一度限りの指示ではなく、継続的な行動ルールを確立できるためです。
理解度チェック:長さの制約
ソーシャルメディア担当者向けのコンテンツ生成ツールを構築しています。すべての投稿を150~200語にする必要があります。しかし、プロンプトの末尾に語数制限を記述しているにもかかわらず、モデルは280~350語の投稿を生成し続けます。
最も効果的な対策は何でしょうか。
要約:語数と長さの制限
長さの制約には、正確な語数、文の数、文字数、範囲による指定があります。これらを使うと、AIの出力を用途に合わせられます。厳密な上限には正確な数が適しており、範囲を指定するとより自然な文章になります。ツイートやSMSなど、プラットフォーム固有のコンテンツに文字数制約を設ける場合は、必ずプログラムで検証してください。
主な失敗のパターンは、内容と長さの不一致です。つまり、長さの予算に対して内容の範囲が広すぎることです。システムプロンプトへの配置とプログラムによる検証が、最も信頼性の高い適用方法です。
次のレッスンでは、長さではなくトピックの範囲を制限する方法を学びます。
AI チューターと学ぶ AI Prompt Engineering — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 53
- レッスン
- 199
よくある質問
「単語数と長さの制限」レッスンは無料ですか?
はい。「単語数と長さの制限」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AI Prompt Engineeringコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AI Prompt Engineeringコースには全4レッスンが含まれています。
「単語数と長さの制限」で何を学びますか?
最大の単語数、文数、段落数、文字数を指定します。 ブラウザで直接実行するハンズオンコードでAI Prompt Engineeringを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
AI Prompt Engineeringを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのAI Prompt Engineeringは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「単語数と長さの制限」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このAI Prompt Engineeringレッスンでコードを書いて実行できますか?
はい。すべてのAI Prompt Engineeringレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。