# Tiktoken Estimatorの統合 tiktokenライブラリを使ってテキストのトークン数を推定し、OpenAI モデルの正確なトークンカウントを可能にします。 ## 機能 - 正確なトークンカウント**:公式の tiktoken ライブラリを使用し、正確なトークン推定を行います。 - マルチモデルサポート**:様々なOpenAI モデル(gpt-3.5-turbo、gpt-4 など)をサポートします。 - 安全制限**:トークンの超過を防ぐためのオプションの安全制限チェック - 設定不要**:設定不要 - 箱から出してすぐに動作 - エラー処理**:説明的なメッセージによるグレースフルエラー処理 ## 利用方法 ### トークンの推定アクション この統合は一つのアクションを提供します: `estimateTokens` **入力パラメータ:** - text` (必須):トークンを推定するテキスト - model` (オプション):トークン化に使用するOpenAI モデル (デフォルトは "gpt-3.5-turbo") - safetyLimit`(オプション):トークン数推定の安全制限。空の場合、リミットは適用されない。 **Output:** - `tokenCount`:テキストに含まれるトークンの推定数。 - `tokenizerName`:使用するトークナイザーの名前 - モデル`:トークン化が行われたモデル - `limitExceeded`: トークン化の際に使用されたモデル:トークン数の見積もりがセーフティリミットを超えたかどうかを示す (safetyLimit が指定されている場合のみ表示される) ### 使用例 **基本的な使用法:** ``` テキスト"こんにちは、世界!" モデル"gpt-3.5-turbo" 結果 - tokenCount:4 - tokenizerName:"tiktoken" - モデル"gpt-3.5-turbo" ``` **安全制限あり:** ``` テキスト"これは安全制限を超える可能性のある長いテキストです..." モデル"gpt-3.5-turbo" 安全制限: 10 結果 - トークン数15 - tokenizerName:"tiktoken" - モデル"gpt-3.5-turbo" - limitExceeded: true ``` ## 対応モデル - gpt-3.5-turbo` - gpt-4 - gpt-4-turbo` - テキスト-ダヴィンチ-003 - テキスト-ダヴィンチ-002 - コード-ダヴィンチ-002 - tiktokenがサポートするその他のOpenAI モデル ## 推奨される安全限界 安全制限を設定する際、実際のAPI呼び出しにはシステムプロンプト、会話履歴、レスポンス生成のための追加トークンが含まれることを考慮してください。以下は保守的な推奨値です: ###GPT.5-Turbo (4,096トークン制限) - 保守的**:2,500トークン(システム・プロンプト+応答用に~1,600を残す) - 中庸**:中程度**:3,000トークン(システム・プロンプトと応答用に~1,100を残す) - 積極的**:3,500トークン(システムプロンプト+応答で~600を残す) ###GPT(8,192トークン制限) - 保守的**:5,000トークン(システムプロンプトと応答用に~3,200を残す) - 中程度**:6,000トークン(システム・プロンプト+応答用に~2,200を残す) - 積極的**:7,000トークン(システム・プロンプト+応答で~1,200を残す) GPTターボ(128,000トークン制限) - 保守的**:100,000トークン(システム・プロンプトと応答用に~28,000を残す) - 中程度**:110,000 トークン(システム・プロンプトと応答用に ~18,000 を残す) - 積極的**:120,000トークン(システム・プロンプトとレスポンスのために~8,000を残す) **注***:注***:これらの推奨は、典型的なシステムプロンプトのサイズ(200~800トークン)と希望する 応答の長さ(500~2,000トークン)を想定しています。特定のユースケースに基づいて調整してください。 ## エラー処理 統合はさまざまなエラーシナリオを処理します: - 無効な入力**:入力漏れまたは無効なテキストに対して明確なエラーメッセージを返します。 - 空のテキスト**:空の文字列に対して 0 トークンを返す - **Unsupported Model**:tiktoken がサポートしていないモデルに対してはエラーを返します。 - トークン化エラー**:tiktoken ライブラリのエラーを優雅に処理します。 - **Safety Limit Warnings**:トークン数が安全限界を超えた場合に警告をログに残す ## 利点 - コストの最適化**:APIコールを行う前にトークンのコストを見積もる - レート制限**:トークンの予算を管理し、安全な制限で超過を防止します。 - ワークフローロジックトークン数と安全閾値に基づく条件付きロジックを有効化 - 透明性**:トークンの使用パターンを可視化します:トークン使用パターンの可視化 - プロアクティブモニタリング安全閾値の設定により、トークン超過の可能性を早期に発見