0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

最近話題のTOONを簡単説明

Last updated at Posted at 2025-12-08

はじめに

最近、LLM に大きめの JSON を渡すとやたらとトークン量が増えてしまい、APIの使用料金が多くなってしまいます。
そうでなくても、

それを解決するものとして最近話題になっているのが TOON(Token-Oriented Object Notation) と言う時ものです。
使うにあたっても詳細を知らないと効率的に使えないので、簡単にまとめてアウトプットしようと思います。

そもそも TOON とは

簡単に言えばとLLM にとって都合の良い JSON の軽量版です。

  • JSON と同じようにオブジェクト・配列・プリミティブを扱える
  • 余計な記号や繰り返しを省き、トークン数を30〜60%削減できる
    • 例としては、 {}

つまり JSON を小さくしたものだという解釈でいいでしょう。

具体的にどれくらい違うのでしょうか。
例えば、次のようなテーブルデータを LLM に渡すとします。

json.json
[
  { "id": 1, "name": "Alice", "score": 82 },
  { "id": 2, "name": "Bob", "score": 91 }
]
toon.txt
id name score
 1  Alice 82
 2  Bob   91

これだけで引用符・カンマ・波かっこ等がすべて不要になり、 LLM に投げる際のトークン数も大幅に減ります。
これで請求が少しでも減りますね!(少しだけ)

なお、 TOON は不規則的な構造の場合は不向きなので気をつけましょう。

TOON が使用可能なもの

AI 等で使用されるイメージの強い python にはすでに対応しているようです。

おわりに

実際に触ってみたところ思った以上に使いやすかったです。
いろんな言語にもすでに対応していると言うことも大きいでしょう。
もし LLM に大きめの JSON を渡すときは、一度 TOON を試してみる価値はあると思います。

最後までお読みいただきありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?