TL;DREMBL AI LI…
TL;DR
エージェント型LLMのセッション継続時、毎回全文を再トークン化するのは非効率。TokTierは前回のトークン列を保持し、追記部分とその周辺だけを再トークン化して正確性を検証。さらにGPUによる全文トークン化も実装し、vLLM統合でTTFTを最大34%削減。
解説
ねえ智也くん、このブログのタイトル見た?「エージェント型LLMのトークン化を最大437倍高速化」って、すごくない?
ああ、TokTierのことか。読んだよ。確かに面白いアプローチだと思う。
でも私、そもそも「エージェント型LLM」って何かよくわかってないんだよね。普通のチャットボットと違うの?
簡単に言うと、エージェント型はタスクを達成するために複数回の推論やツール呼び出しをするんだ。セッションが長く続くから、毎回過去の会話を全部トークン化する必要がある。
あー、だから毎回全文を読み直すのは非効率って話なんだね。でも、トークン化ってそんなに時間かかるの?
うん。特に長いセッションだと、毎回同じ部分を再処理するのは無駄が多い。TokTierは前回のトークン列をキャッシュしておいて、新しく追加された部分とその周辺だけを再トークン化するんだ。
なるほど!でも、それって正確性が心配じゃない?前のトークンと新しいトークンの境目がずれたりしない?
そこが肝心なところで、TokTierは再トークン化した部分が元のトークン列と一致するか検証するんだ。もし不一致があれば、その周辺を広げて再計算する。
へえ、賢い!じゃあ、その検証のおかげで正確性は保たれるってこと?
そう。実験でも、通常のトークン化とほぼ同じ結果が得られたらしい。しかも、GPUを使った全文トークン化も実装してて、状況に応じて使い分けるんだ。
GPUも使うんだ!それで実際どれくらい速くなったの?
vLLMに統合したとき、TTFT(最初のトークンが出るまでの時間)が最大34%削減されたって報告されてる。トークン化自体は最大437倍高速化だけど、全体の推論時間に占める割合が小さいから、実際の体感はそのくらい。
なるほどね。でも、なんでそんなに高速化できるのに、全体の改善は34%だけなの?
トークン化は推論全体の一部に過ぎないからね。でも、エージェント型はセッションが長いほど効果が大きい。短い会話だとあまり恩恵がないかもしれない。
なるほど。じゃあ、長いタスクをこなすエージェントには特に有効ってことか。でも、この手法って何か限界はあるの?
うーん、キャッシュの管理にメモリを使うし、検証のオーバーヘッドもある。それに、トークナイザーが変わるとキャッシュが無効になるから、モデル更新時には再計算が必要だね。
なるほどね。でも、それでもかなり便利そう!私もエージェント作ってみたいなー。でも、まずはトークン化の基本から勉強しないとね。
そうだね。でも、君が作るなら、トークン化より先にプロンプト設計を勉強したほうがいいと思うよ。
あはは、それって遠回しに「お前はプロンプトが下手」って言ってる?
いや、ただのアドバイスだよ。でも、君のプロンプトは確かに長い割に情報が少ない気がする。