tonl-dev/tonl

TONL (Token-Optimized Notation Language)

解決する課題

TONL(Token-Optimized Notation Language)は、構造化データのサイズを削減し、大規模言語モデル(LLMs)にデータを入力する際のトークンコストを低減するためのデータシリアル化形式およびプラットフォームです。JSONの代替として人間が読みやすい形式でありながら、バイト数とトークン数の両面で大幅にコンパクトであり、JSONとの完全な双方向互換性を維持しています。

動作方法

TONLは、繰り返し出現するJSONキーと構造的オーバーヘッドを、スキーマ風のヘッダー(例:users[3]{id:u32,name:str,role:str}:)と生データ値に置き換えるコンパクトな表記法を使用しています。JSONPathに似た構文でデータのエンコード・デコード・クエリが可能な包括的なTypeScript APIを提供しています。さらにサイズ削減のために、辞書エンコーディング、デルタエンコーディング、ビットパッキングなどの高度な最適化戦略を採用しています。

対象ユーザー

  • LLM開発者:プロンプト内の構造化データを圧縮することで、APIコストを削減し、コンテキストウィンドウの効率を向上させたい方。
  • データエンジニア:設定ファイルやAPI応答用に高速で軽量かつ人間が読みやすいシリアル化形式が必要な方。
  • フロントエンド開発者:ブラウザでデータ操作に使用できる、小さなゼロ依存のライブラリが必要な方。

主な特徴

  • トークン効率:JSONのサイズとLLMのトークン使用量を32〜45%削減。
  • 強力なクエリ機能:JSONPathクエリ、フィルタ式、ツリー走査をサポート。
  • 高度な圧縮:適応的最適化、数値量子化、ランレングスエンコーディングを含む。
  • 本番環境対応:ランタイム依存なし、100%TypeScript、2,300以上のテストをカバー。
  • 開発者ツール:テーマ付きのインタラクティブCLIダッシュボード、スキーマ検証言語(TSL)、VS Code拡張機能を搭載。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト