停止トークンと停止文字列は別物で、混ぜると止まらない原因を見誤る

AIが答えの後に、頼んでもいない次の質問まで書き始める。この症状に、停止トークンを設定しましょう、と返す助言は、熱が出たら体温計を、と言うのと同じくらい正しく、同じくらい役に立ちません。停止トークンという言葉が、モデルが自分で選ぶ終わりの記号と、使う側が外から引く切り取り線という、仕組みの違う二つを一緒に呼んでいるからです。この記事では、二つを分けて定義し、止まらない、切れる、という症状をどちらで直すべきかを整理します。

停止トークンは、モデルが自分で選ぶ終わりの記号です

大規模言語モデル(LLM)は、次のトークンを一つ選んでは文章に足す動作を繰り返して文章を書きます。この繰り返しには、それ自体に終わりがありません。

そこで学習の段階で、文章の終わりに終了を表す特別なトークン(EOS、End Of Sequence)を置きます。モデルは、どんな文脈の後にこのトークンが来るかを、ほかの語と同じように学びます。生成のときに内容がひと区切りついた文脈では、EOSの確率が高くなり、それが選ばれると実装側が検知して生成を止めます。停止トークンとは、モデルの語彙の中にある一語です。

停止文字列と最大トークン数は、使う側が外から引く切り取り線です

停止文字列(stop sequence)は、モデルの語彙とは関係なく、使う側がAPIなどの設定で決めるものです。指定した文字列が生成された時点で、外側の仕組みが出力を打ち切ります。OpenAIのAPIなどでは、指定した文字列そのものは返ってくる文章に含まれません。

質問と答えの組を何組も並べた形式でプロンプトを書くと、モデルは答えの後に次の質問まで書き続けることがあります。並べた形式そのものが、続きもこの形で書け、という文脈になっているからです。次の質問の見出しにあたる文字列を停止文字列にしておけば、一つの答えを書き終えたところで切り取れます。

もう一つの外側の止め方が最大トークン数です。文字列ではなく数で、上限に届いたところで生成を止めます。出力が長くなりすぎるのを防ぎ、コストを管理できます。

三つの止め方は、決める人と、止まった後の姿が違います

止め方決めるのは止まった後の出力
停止トークン(EOS)モデル(確率で選ぶ)文章が自然に終わったように見える
停止文字列使う側(設定)指定した文字列の手前で切れる
最大トークン数使う側(設定)文の途中で切れることがある

前提を言葉にするときは、言葉の意味を短く固定するのが基本です。業務効率化が残業削減なのかミス削減なのかで施策が変わるのと同じく、停止トークンがどちらを指すかで直す場所が変わります。一つの言葉で二つのものを呼ぶチームでは、障害の報告書が二通りに読めるので、原因も二つに増えます。報告書では、EOS、停止文字列、最大数と書き分けます。

止まらない、切れる、を診断するときに区別が効きます

  • 文の途中で切れる: 多くは最大トークン数が小さすぎることが原因です。停止文字列を足しても直りません
  • 答えの後に、頼んでいない続きを書く: プロンプトの形式が続きを誘っています。停止文字列で切るか、答えの終わり方を指示で示します
  • 自分で追加学習したモデルが止まらない: 学習データの文章の終わりに終了のトークンが入っていない、生成の側で終了のトークンを止める条件に入れていない、といった点が原因として挙げられます。停止文字列ではなく、停止トークンの扱いの問題です

AIが止まらないとき、モデルの出来を責める前に見るのは、学習データと設定という仕組みの側です。見直すべきは人ではなく仕組み、という原則は、相手がAIでも変わりません。

ただし、この切り分けがいつも綺麗に効くわけではありません。サービスによっては、停止文字列の設定を内部で終了のトークンとして扱うものや、利用者に設定を触らせないものもあります。その場合、使う側にできるのは、症状を記録して、どちらの問題に見えるかを提供元に伝えるところまでです。設定がサービスの内部でどう扱われているかが公開されていなければ、利用者にはどちらの問題なのかを確定する手段がありません。

終わりの形を頼み方で示すと、EOSが選ばれる位置が寄ります

停止文字列や最大トークン数は外から切る道具です。きれいに終わる答えを得るには、モデル自身が適切な位置でEOSを選ぶほうが自然です。そしてEOSが選ばれやすいかどうかは、それまでの文脈で決まります。何を、どの形で、どこまで書けば完了なのかを最初に伝えておけば、終わりにふさわしい文脈が早く整います。

あなたのチームで、止まる、止まらない、という話が出たとき、それはモデルが選んだ終わりと設定で切った終わりの、どちらの話だったでしょうか。その答えに、何が書かれていれば完了かは示してあったでしょうか。

この記事の背景にある考え方は、拙著『GoogleのAI NotebookLM 意思決定の強化書』の1章1節「意思決定の構造と前提の要素」の、定義辞書の話に書きました。前提を対象、目的、制約、評価基準の四つに分けたうえで、その要素に使う言葉の意味が人によってずれていると前提そのものが崩れるとして、業務効率化という一語に、残業の削減を思い浮かべる人とミスをなくすことを思い浮かべる人がいる例を挙げ、大事な言葉の意味を短く固定する辞書を作る節です。そこには「ただし、4つの要素を決めるだけでは前提は安定しません。」とあります。この節を読むと、障害の報告や会議で一つの言葉が二つのものを指していないかを確かめ、どの意味で使うかを先に一行で固定できるようになります。

同じ資料を見ているのに、なぜ結論が割れるのか。

GoogleのAI NotebookLM 意思決定の強化書 表紙

『GoogleのAI NotebookLM 意思決定の強化書』

前提が結論を決める。意思決定を根拠、前提、結論の三層に分け、前提を対象、目的、制約、評価基準の四つで言葉にする本です。

読み終えたとき、手元に残るもの

  • 意思決定の設計図になる前提リスト
  • 資料を事実、意見、噂、ゴミに仕分けるFORT
  • 同じ物差しで比べる選択肢表と採点表
  • 始める条件と止める条件を書いた決定書

NotebookLMは2026年7月にGemini Notebookへ名称が変わりました。本の手法は、使うAIの種類を問いません。

Amazonで見る

出典

著者プロフィール・お問い合わせ