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 模型所使用的字節對編碼(BPE)演算法的高性能 TypeScript 實作。它讓開發者能在 JavaScript 與 TypeScript 環境中準確計算 token 數量、將文字編碼為整數,並將 token 解碼回文字,無需依賴外部的 Python 工具(如 tiktoken)。

工作原理

此套件是 OpenAI 的 tiktoken 的 TypeScript 移植版本,支援所有目前的 OpenAI 模型系列(包含 GPT-4o、o 系列與舊版模型)。它實作了多種編碼方式,如 cl100k_baseo200k_base。透過 LRU(最近最少使用)合併快取加速相似字串的編碼,並提供用於串流資料的產生器函數。

適用對象

使用 TypeScript 或 JavaScript 建構 LLM 驅動應用的開發者,需要管理 token 限制、估算 API 成本,或在瀏覽器或 Node.js 中處理 token 串流。

主要特色

  • 全面的模型支援:支援所有目前的 OpenAI 模型系列,包含 GPT-5、GPT-4o 與 o 系列推理模型。
  • 高效能:聲稱是 NPM 上最快且佔用記憶體最小的 tokenizer,性能優於 WASM/node 綁定實作。
  • 聊天專用工具:內建 encodeChat 函數,專門處理聊天訊息的 token 化。
  • 成本估算:基於完整的 OpenAI 模型目錄與定價資料,內建 estimateCost 函數。
  • 限制檢查:高效率的 isWithinTokenLimit 函數,無需對整個輸入進行編碼即可檢查文字是否超出限制。
  • 環境無關:在瀏覽器與 Node.js 環境中皆可開箱即用。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • Dispatch