停止トークン

停止トークンの役割

停止トークンは、モデルが生成を終了する際の基準となる特別なトークンです。これにより、モデルは無限にテキストを生成し続けることを防ぎます。主に以下のような状況で使用されます:

  • EOSトークン(End Of Sequence):これは、モデルが生成を終了することを示すトークンです。モデルがこのトークンを生成すると、出力が停止します[5][8]。
  • 最大トークン長:モデルは、事前に設定された最大トークン数に達すると、自動的に生成を停止します。これにより、過剰な出力を防ぎ、コストを管理することができます[7][9]。

停止トークンの実装方法

停止トークンは、モデルのトレーニングや推論プロセスにおいて重要な役割を果たします。具体的には、以下の方法で実装されます:

  • ユーザー定義の条件:ユーザーが設定した条件(例えば、特定のトークン数に達した場合)に基づいて生成を停止することができます[6][9]。
  • 構造化された入力形式:モデルが生成を停止するための指示を受け取るために、特定のフォーマット(例えば、特定のマーカーや改行)を使用することが推奨されます。これにより、モデルが無関係なトピックに逸脱することを防ぎます[3][4]。

停止トークンの効果

停止トークンを適切に使用することで、以下のような効果が期待できます:

  • 出力の質の向上:モデルが必要な情報を提供した後に生成を停止することで、より質の高い回答を得ることができます[2]。
  • 計算の効率化:生成プロセスを制御することで、計算リソースを効率的に使用し、無駄なトークン生成を避けることができます[6][10]。

このように、停止トークンはLLMの出力を制御し、質の高い生成を実現するための重要な要素です。
[1] https://www.promptingguide.ai/jp/introduction/settings
[2] https://ai-data-base.com/archives/56487
[3] https://news.ycombinator.com/item?id=36741628
[4] https://dalab.jp/archives/journal/vllm/
[5] https://www.louisbouchard.ai/how-llms-know-when-to-stop/
[6] https://www.databricks.com/jp/blog/llm-inference-performance-engineering-best-practices
[7] https://qiita.com/taka_yayoi/items/7efb0df8024daf491b9e
[8] https://newsletter.kaitchup.com/p/my-llm-cant-stop-generating-how-to
[9] https://docs.databricks.com/ja/machine-learning/foundation-models/prov-throughput-run-benchmark.html
[10] https://www.lesswrong.com/posts/5ZFgZbqp6Mi2xpYjK/an-explanation-for-every-token-using-an-llm-to-sample
[11] https://huggingface.co/docs/transformers/v4.32.0/en/llm_tutorial
[12] https://news.ycombinator.com/item?id=35457429
[13] https://twitter.com/ai_database/status/1711631244705009814
[14] https://developer.nvidia.com/ja-jp/blog/mastering-llm-techniques-inference-optimization/
[15] https://github.com/huggingface/transformers/blob/main/docs/source/ja/llm_tutorial.md
[16] https://community.openai.com/t/llm-stop-sequences-tokens-and-params/865763
[17] https://www.reddit.com/r/LocalLLaMA/comments/17761u3/cant_get_your_model_to_stop_after_outputting_a/
[18] https://towardsdatascience.com/stop-wasting-llm-tokens-a5b581fb3e6e
[19] https://hardikr68.medium.com/understanding-tokens-and-overcoming-their-limitations-in-llms-9bca12fcc936
[20] https://jglobal.jst.go.jp/detail?JGLOBAL_ID=202402201960006075