niieani/gpt-tokenizer

The fastest JavaScript BPE Tokenizer Encoder Decoder for OpenAI's GPT models (gpt-5, gpt-o*, gpt-4o, etc.). Port of OpenAI's tiktoken with additional features.

何を解決するか

gpt-tokenizer は OpenAI モデルで使用される Byte Pair Encoding (BPE) アルゴリズムの高性能 TypeScript 実装を提供します。JavaScript および TypeScript 環境内で、トークンの正確なカウント、テキストの整数へのエンコード、およびトークンからテキストへのデコードを可能にし、tiktoken などの外部の Python ベースのツールに依存する必要がなくなります。

動作方法

このライブラリは OpenAI の tiktoken のポートであり、現在のすべての OpenAI モデルファミリー(GPT-4o、oシリーズ、およびレガシーモデルを含む)をサポートしています。cl100k_baseo200k_base などのさまざまなエンコーディングを実装しています。類似した文字列のエンコードを高速化するための LRU(Least Recently Used)マージキャッシュを備えており、ストリーミングデータ用のジェネレータ関数も提供しています。

対象ユーザー

TypeScript や JavaScript で LLM ベースのアプリケーションを開発し、トークン制限を管理したり、API コストを推定したり、ブラウザまたは Node.js でトークンストリームを処理したい開発者。

主な特徴

  • 包括的なモデルサポート: GPT-5、GPT-4o、oシリーズの推論モデルを含む、現在のすべての OpenAI モデルファミリーをサポート。
  • パフォーマンス: NPM 上で最も高速かつ最小のフットプリントのトークナイザーと主張しており、WASM/node バインディング実装を上回っています。
  • チャット専用ツール: チャットメッセージの特定のトークナイゼーションを処理する encodeChat 関数を含む。
  • コスト推定: 価格データを含む完全な OpenAI モデルカタログに基づく組み込み estimateCost 関数。
  • 制限チェック: 全ての入力をエンコードせずに、テキストが制限を超えていないかを高速にチェックする isWithinTokenLimit 関数。
  • 環境非依存: ブラウザと Node.js の両方で即時利用可能。

関連

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