tiktoken-go/tokenizer
Pure Go implementation of OpenAI's tiktoken tokenizer
何を解決するか
このプロジェクトは、OpenAIのトークナイザーの純粋なGo実装を提供し、Go開発者がOpenAIのモデルと互換性のあるトークンにテキストをエンコード・デコードできるようにします。これにより、LLMの入力処理時に外部依存関係やJavaScriptラッパーに頼る必要がなくなります。
動作方法
ライブラリはテキストをトークンID(エンコード)に変換し、そのIDを元のテキストに戻す(デコード)します。OpenAIの語彙はGoのマップとして埋め込まれており、バイナリに直接コンパイルされます。これはPython版のtiktokenが実行時に辞書をダウンロードするのとは異なり、コンパイル時に語彙を含むことで、起動時間とパフォーマンスが向上します。
対象ユーザー
Goエコシステムから離れずに、OpenAIのモデル用にテキストを準備したり、トークン数を計算したいGo開発者。
特徴
- 純粋なGoポート: 外部のCやJavaScript依存関係なし。
- 複数のエンコーディング対応:
cl100k_base、o200k_base、r50k_base、p50k_base、p50k_editのエンコーディングをサポート。 - 統合CLIツール: エンコード、デコード、トークン数の計算に使えるコマンドラインツールを備えています。
- コンパイル済み語彙: 語彙はマップとして埋め込まれており、パフォーマンスと起動速度が向上します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト