LLMをバイト単位で読ませる「Bolmo」、既存モデルを改造する仕組み|2026年10月8日版
LLMに文字の数を尋ねても、答えが安定しない。その一因は、文章を単語や単語の断片に分けて扱う仕組みにある。Ai2の「Bolmo」は、学習済みモデルの中核を引き継ぎながら、入力と出力をUTF-8のバイト単位へ変える研究だ。
2026年10月7日、Ai2は研究のNature掲載と、新たなチェックポイントの公開を発表した。今回の進展は、文字列を細かく扱うモデルを、既存LLMの学習成果を利用して作れる点にある。以下は日本時間2026年10月8日時点の公開資料に基づく。
- 変更点: 固定された単語断片の代わりに、バイト列から処理単位を作る。
- 作り方: 既存モデルを土台に、周辺部の学習と全体の学習を段階的に進める。
- 確認点: 文字理解の改善が、コードの正確さや日本語の処理速度にもつながるか。
今回の発表で何が変わったか
Bolmo自体は2025年12月に発表されている。10月7日の更新は、研究の正式な論文掲載と、他のモデル系列への展開、学習途中のモデル公開だ。
Ai2は、当初のOlmo系列以外へ手法を広げたチェックポイントに加え、元の中核モデルを固定したまま周辺部を学習する「Stage 1」のチェックポイントも公開すると説明した。研究者は、この段階から構成や学習方法を試せる。Ai2の公式発表
事前公開論文は2025年12月17日に提出され、2026年2月9日に更新されている。今回のニュースは、新しい方式の初披露というより、既存研究を検証・拡張するための材料が増えたことに意味がある。arXivの論文情報
バイトをまとめ、中核のLLMへ渡す
バイト単位で文章を読むと、入力の列が長くなる。Bolmoは、その列をすべて大きなモデルへ直接渡す方法を取らない。
処理は次の順序で進む。
- 小さな局所エンコーダーが、各バイトと周囲の関係を表現する。
- 境界予測器が区切りを決め、複数のバイトを「パッチ」にまとめる。
- パッチごとの表現を、既存モデルから引き継いだTransformerへ渡す。
- 結果をバイト単位へ戻し、局所デコーダーで次のバイトを予測する。
細部は局所モデルが扱い、まとまった文脈は大きなモデルが扱う。 この分担によって、文字列の細かい情報を残しながら、中核モデルが処理する列を短くする。Nature掲載論文
ここでいうバイトは文字そのものではない。日本語の文字もUTF-8では複数のバイトで表されるため、「1バイト=1文字」として出力長や速度を比較することはできない。
既存モデルを二段階で改造する
もう一つの要点は、最初からモデル全体を学習し直さないことだ。
まず中核を固定する
Stage 1では、既存モデルの中核を固定し、新しい局所モデルなどを学習する。元のモデルの振る舞いを再現することが、この段階の目標になる。
次に全体を学習する
Stage 2ではモデル全体を学習し、バイト単位の情報を利用できるようにする。原論文は、この二段階の変換によって、従来のバイト方式を上回り、通常の評価でも元モデルに近い能力を得たと報告している。Bolmoの事前公開論文
ただし、文字理解の改善が全用途の性能向上を意味するわけではない。Nature論文の比較では、文字理解や複数候補を生成するコード評価で改善する一方、最初の一回答でコードを正解する評価では悪化する条件も示されている。用途ごとに、正解率と生成条件を分けて読む必要がある。
開発者が気を付けたい「出力長」の違い
公開実装には、試す際に見落としやすい仕様がある。
公式GitHubの推論例では、max_new_tokensは生成するバイト数を指定すると説明されている。通常のサブワード型LLMと同じ数値を入れても、同じ長さの文章が出るとは限らない。公式GitHubのREADME
日本語やコードで比較するなら、次の条件をそろえたい。
- 品質: 文字の数え上げ、文字列の転記、コードの実行結果を個別に測る。
- 出力長: トークン数だけでなく、バイト数と完成した文章の長さも記録する。
- 速度: 同じGPU、同程度の入力・出力で処理時間を比較する。
- 生成条件: 一回の回答と、複数候補から選ぶ評価を区別する。
これらは導入時の評価案だ。今回の資料だけで、日本語業務文書や帳票処理での改善が実証されたとは判断できない。
継続ウォッチ
次に見るべきは、文字理解の改善が実際の処理にどこまで届くかだ。
- 日本語と英数字が混在する入力で、転記ミスや出力の欠落が減るか。
- 他のモデル系列でも、元モデルの能力を維持して変換できるか。
- パッチを大きくして速度を上げたとき、細かい文字列の扱いが悪化しないか。
Bolmoを試すなら、まず既存モデルが間違えた文字列課題を同じ条件で再評価したい。正答数に加えて、出力が途中で切れないか、処理時間がどれだけ変わるかまで測ると、業務に使える改善かどうかが見えてくる。
